You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@netbeans.apache.org by Meir Kalter <me...@gmail.com> on 2022/01/01 20:12:32 UTC

Re: Add support for other programming languages

I would happy to join to:
1. C#
2. Adda

Meir

בתאריך יום ו׳, 31 בדצמ׳ 2021, 16:42, מאת John Kostaras ‏<jkostaras@gmail.com
>:

> If you are interested in contributing in maintaining other programming
> languages support for NetBeans, please reply to this thread.
>
> There are many programming languages that have been dropped from Apache
> NetBeans, for various reasons. A list can be found here
> <https://cwiki.apache.org/confluence/display/NETBEANS/Community+plugins>.
> Some of them need little effort to provide at least some basic
> functionality.
>
> The task is not easy, as there are different technologies (JavaCC, ANTLR,
> LSP) that these plugins have been written into, and the NetBeans APIs have
> been changed during time. A draft wiki page on how to add language support
> to NetBeans can be found here
> <
> https://cwiki.apache.org/confluence/display/NETBEANS/Adding+New+Language+Support
> >
> .
>
> We could have a separate thread or organise in slack, e.g. to create a
> better overview of what needs to be done and how to proceed.
>
> Thank you in advance.
>
> K/r,
>
> John.
>

Re: Add support for other programming languages

Posted by John Kostaras <jk...@gmail.com>.
Thanks Tim. It would be great if you could.

Even if it's not perfect we could make it an official delivery for now, and
have NetBeans support Rust language, too.

Kind regards,

John.

On Mon, 10 Jan 2022 at 20:06, Tim Boudreau <ni...@gmail.com> wrote:

> FWIW, I took a crack at making https://github.com/drrb/rust-netbeans work
> better a few years ago, with limited results. In particular, their Antlr
> grammar generates insanely deep trees that are not great for performance.
>
> I have been working on something more performant, also based on an ANTLR
> grammar, but using Antlr's lexer modes to handle things like macro_rules!
> which is almost an embedded language, based off of the generic Antlr
> language support I built here:
> https://github.com/timboudreau/ANTLR4-Plugins-for-NetBeans (all of the
> parser and lexer glue is generated for you from a few [big] annotations).
>
> There are a few things I'm looking forward to trying:  Rust's borrow
> checker is really just a reference-graph cycle checker with a few rules
> about when cycles are allowed (things that implement the Copy trait, e.g.
> primitives and things with #[derive Copy]);  the Antlr stuff lets you hang
> arbitrary analyzers off a parse that collect patterns you describe in
> source trees and store them in a couple of very tight int-array-based data
> structures that are binary-searchable, so you can collect a tree of
> variable references (yes, you *can* build a tree with a pair of int[]'s -
> https://j.mp/31O7Ir6 ), build a graph (just some arrays of bit-sets where
> intersection operations are cheap - this is how graphs should be modeled in
> code, not as actual trees of objects) and the analysis is pretty simple.
>
> This has been a spare-time kind of thing, but I could share it somewhere if
> anyone is interested.
>
> -Tim
>

Re: Add support for other programming languages

Posted by Tim Boudreau <ni...@gmail.com>.
FWIW, I took a crack at making https://github.com/drrb/rust-netbeans work
better a few years ago, with limited results. In particular, their Antlr
grammar generates insanely deep trees that are not great for performance.

I have been working on something more performant, also based on an ANTLR
grammar, but using Antlr's lexer modes to handle things like macro_rules!
which is almost an embedded language, based off of the generic Antlr
language support I built here:
https://github.com/timboudreau/ANTLR4-Plugins-for-NetBeans (all of the
parser and lexer glue is generated for you from a few [big] annotations).

There are a few things I'm looking forward to trying:  Rust's borrow
checker is really just a reference-graph cycle checker with a few rules
about when cycles are allowed (things that implement the Copy trait, e.g.
primitives and things with #[derive Copy]);  the Antlr stuff lets you hang
arbitrary analyzers off a parse that collect patterns you describe in
source trees and store them in a couple of very tight int-array-based data
structures that are binary-searchable, so you can collect a tree of
variable references (yes, you *can* build a tree with a pair of int[]'s -
https://j.mp/31O7Ir6 ), build a graph (just some arrays of bit-sets where
intersection operations are cheap - this is how graphs should be modeled in
code, not as actual trees of objects) and the analysis is pretty simple.

This has been a spare-time kind of thing, but I could share it somewhere if
anyone is interested.

-Tim

AW: Add support for other programming languages

Posted by Christian Lenz <ch...@gmx.net>.
Hey all,

for rust, we need help here: https://github.com/drrb/rust-netbeans
and for C# and .NET we need help here: https://github.com/Chris2011/DotNetCore-for-NetBeans


Cheers

Chris


Von: Eric Bresie
Gesendet: Samstag, 1. Januar 2022 21:33
An: dev@netbeans.apache.org
Betreff: Re: Add support for other programming languages

Python 😀

Get Outlook for iOS<https://aka.ms/o0ukef>
________________________________
From: Meir Kalter <me...@gmail.com>
Sent: Saturday, January 1, 2022 2:12:32 PM
To: dev@netbeans.apache.org <de...@netbeans.apache.org>
Subject: Re: Add support for other programming languages

I would happy to join to:
1. C#
2. Adda

Meir

בתאריך יום ו׳, 31 בדצמ׳ 2021, 16:42, מאת John Kostaras ‏<jkostaras@gmail.com
>:

> If you are interested in contributing in maintaining other programming
> languages support for NetBeans, please reply to this thread.
>
> There are many programming languages that have been dropped from Apache
> NetBeans, for various reasons. A list can be found here
> <https://cwiki.apache.org/confluence/display/NETBEANS/Community+plugins>.
> Some of them need little effort to provide at least some basic
> functionality.
>
> The task is not easy, as there are different technologies (JavaCC, ANTLR,
> LSP) that these plugins have been written into, and the NetBeans APIs have
> been changed during time. A draft wiki page on how to add language support
> to NetBeans can be found here
> <
> https://cwiki.apache.org/confluence/display/NETBEANS/Adding+New+Language+Support
> >
> .
>
> We could have a separate thread or organise in slack, e.g. to create a
> better overview of what needs to be done and how to proceed.
>
> Thank you in advance.
>
> K/r,
>
> John.
>


Re: Add support for other programming languages

Posted by Eric Bresie <eb...@gmail.com>.
Python 😀

Get Outlook for iOS<https://aka.ms/o0ukef>
________________________________
From: Meir Kalter <me...@gmail.com>
Sent: Saturday, January 1, 2022 2:12:32 PM
To: dev@netbeans.apache.org <de...@netbeans.apache.org>
Subject: Re: Add support for other programming languages

I would happy to join to:
1. C#
2. Adda

Meir

בתאריך יום ו׳, 31 בדצמ׳ 2021, 16:42, מאת John Kostaras ‏<jkostaras@gmail.com
>:

> If you are interested in contributing in maintaining other programming
> languages support for NetBeans, please reply to this thread.
>
> There are many programming languages that have been dropped from Apache
> NetBeans, for various reasons. A list can be found here
> <https://cwiki.apache.org/confluence/display/NETBEANS/Community+plugins>.
> Some of them need little effort to provide at least some basic
> functionality.
>
> The task is not easy, as there are different technologies (JavaCC, ANTLR,
> LSP) that these plugins have been written into, and the NetBeans APIs have
> been changed during time. A draft wiki page on how to add language support
> to NetBeans can be found here
> <
> https://cwiki.apache.org/confluence/display/NETBEANS/Adding+New+Language+Support
> >
> .
>
> We could have a separate thread or organise in slack, e.g. to create a
> better overview of what needs to be done and how to proceed.
>
> Thank you in advance.
>
> K/r,
>
> John.
>