Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposal remove ANTLR from source #5364

Closed
bmFicg opened this issue Jan 10, 2018 · 4 comments
Closed

Proposal remove ANTLR from source #5364

bmFicg opened this issue Jan 10, 2018 · 4 comments

Comments

@bmFicg
Copy link

bmFicg commented Jan 10, 2018

#3054
Ongoing story since 3 Years zero development, and we are in beta for Java 10 and can't use simpel Java 8 features in Processings IDE. What more to say.

I use Processing for very small scetches to relax and have fun. I think many users do. For newbies their could be and an warning msg: "Check your code". We can also phrase the "default" Java SDK jdb to extract the line nummer to a String msg: "look closer at Line 9 ". Maybe an emoj somewhere (optional) 🌞.

// would be nice for Processing
// works in Eclipse Oxygen.2 Release (4.7.2)
int n = 4;
int[][] array = new int[n][n];
java.util.stream.IntStream.range(0, n).map(i->array[i][i] = 1).toArray();
java.util.Arrays.stream(array)
  .forEach(x->processing.core.PApplet.println(java.util.Arrays.toString(x)));

Check this out it works in my browser.
http://es6-features.org/#Constants

if i use the native Java compiler java -cp * Code.java | jar -cf exe.jar *.class | java -cp * Code and have a bug, the phraser will print me the point where the error occur into my console window. Maybe it is possible to use a simpel String method to print that message into Processing IDE

Maybe their is also a simple hack to ANTLR, when ANTLR would sees something from Java 8 just igonere it in processsing.

for (string in error messages) 
    if (string == "->") continue;
    else print(🌞)
@benfry
Copy link
Contributor

benfry commented Jan 12, 2018

Removing the preprocessor would break nearly all code in the examples and on the site, there's simply no way we're going to do that.

If you know how to compile on the command line, or use an IDE, and want those language features, then use them. We've designed Processing to work in different environments this way; you don't have to use the PDE itself.

@benfry benfry closed this as completed Jan 12, 2018
@bmFicg
Copy link
Author

bmFicg commented Jan 12, 2018

Ok, thank you. Just summerize what everyone else is thinking, if you follow this hole topic and threads, i'm not the only one who requested some changes here. To have a heavyweight MB dependency and not a guy around, who into thouse stuff, nearby to make recent updates, seems not a good choice for me.
So the Processings IDE is a pretty much dead project. Thanks for letting me know.

@benfry
Copy link
Contributor

benfry commented Jan 23, 2018

That has nothing to do with what I wrote. I'll repeat:

  1. Removing ANTLR would break 99.9999% of Processing projects. It's simply not possible to remove it because you don't like it.

  2. We have always encouraged the use of other IDEs for people who don't want a simple environment like the PDE (and to use newer Java features like streams, which are not used in, or necessary for, the Processing API). It's a central part of how designed the project to work in layers since its inception.

@bmFicg
Copy link
Author

bmFicg commented Jan 27, 2018

@benfry
Thank you for taking time. I was not fully aware how things internally work, as i wrote this. I thought more of an c++ish Template Generic Methods, which can cast (processing) types, or just rip half of the ANTRL source and make it work for our needs. First time i realized Java is a scripting language.
And yes i don't like it, simple becourse i'm more progressive and experimental nature & for reasons mentioned above: - If i want to update it be myself, i had to invest a lot of energy.

  1. Analogy: when i do my driver's license, It is better to start in a parking lot with a person i trust, then on a highway with dimitry three o'clock at night after the club. In some languages ​​I know only how to programm a simple Hello World, talking about Java features like streams, we are already i the higher topics of a programing language (highway). As a beginner sometimes i just never came that far to get on the highway.
    That said: To have an possibility to do Lambda Expressions or not is a difference.
    2.1: If you look at the map of programing Languages, my guess is that many of them has some shortcuts, (you don't have to use Lambda, it's just a time saver), & how the history progresses. Their was a time programming languages had only to deal with arrays, later functions were invented. If you look on p5js this young branch of processing enjoys more popularity (on github) and the users can use ES6 with Lambda, Steam etc. (and as i said, many languages have thouse kind of things) but i don't think the the majority actually does. BUT they have the possibility to do it.

... for people who don't want a simple environment

It don't has to be that simple. But i totaly okay, with it.

Best 🌞

@processing processing locked as off-topic and limited conversation to collaborators Jan 23, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants