6 ms·
I really like Racket, but the potential breaking massive syntax change in Racket2 makes me really uncomfortable in using or recommending Racket to other people,
by AlexeyBrin 7y ago
I really like Racket, but the potential breaking massive syntax change in Racket2 makes me really uncomfortable in using or recommending Racket to other people, at least until the situation is clarified.
- chessturk 7y agoI keep hearing about this, where is something I can read / listen to about the announcement?
- gekkonier 7y ago#lang racket is here to stay parallel to #lang racket2 Racket is a lot of languages, not only one. You can mix in Racket as you like. You can mix #lang racket and #lang typed/racket with #lang datalog in one application if you like. With racket2 those options will not fade away I guess.
- memling 7y agoOne of the barriers for my adoption might be addressed here: > * Make the language constructs more generic > In many ways, the current Racket language and libraries encourage the use of concrete data structures instead of abstract datatypes. Matt Flatt goes on to mention that map only works with list types, for example (you need to use hash-map to work with hash tables, vector-map for vectors, et c.). This makes refactoring a bit of a pain and feels like a legacy holdover that shouldn't exist in a modern programming language.
- neilv 7y agoI'm pretty confident that `#lang racket` will not only keep working (as already said, from the start), but also remain a first-class citizen. There's even more community support for parentheses than I would've guessed. For various objective and subjective reasons I won't regurgitate here. Some of the work in non-parens syntaxes (especially the Honu paper) are very interesting, and deserve more prominent exposure, and to be well-supported, so that people can try and adopt them with confidence. I'll be interested to see how people use them. But there's no need to alienate half the community by declaring any of the non-parens approaches the default or normative, especially when Racket already famously has all the meta to support all of them, well. I suppose it might even turn out that `#lang racket2` ends up looking almost exactly like `#lang racket`, just with tweaks to names and semantics, and that any non-parens syntaxes are separate and layered. And they all interoperate. Which Racket supports well. My guess is, probably after everyone gets back from well-deserved vacations, this will to start to clarify, probably in September.
- GavinMcG 7y agoWhat's unclear about the situation? A developer tossed out an idea at a con. That's it, and `#lang racket` is and always will be a first class citizen. If you're hesitant to recommend Racket because of a potential `#lang racket2`, it seems like you're missing the point of Racket as a workbench for creating new `#lang`s.
- neilv 7y agoIn all fairness, the concern about effective second-class status is/was valid, but I now think the community support for it means it will remain first-class, one way or another.
- DonaldPShimoda 7y ago> A developer tossed out an idea at a con. Uh... calling him "a developer" is like just calling Ruth Bader Ginsburg "a judge". Matthew Flatt is the #1 contributor to Racket in terms of any quantifiable metric, and he was also one of the original researchers on the project (next to Findler and Krishnamurthi, under Felleisen). I totally agree with you that any syntax change in Racket2 will not be so big a deal as many are making it out to be, but I think it's a bit disingenuous to understate Matthew's involvement with the community to such an extent.
- jkxxkxjkjx 7y agoWhat?! parenthesis are a feature not a bug. Parenthesis is part of what makes lisps so nice to use. Such a stupid decision. Makes no sense at all. Maybe they are on drugs or something or just bored.
- hnbroseph 7y agowhat about parentheses has turned you into such a fan?
- DonaldPShimoda 7y agoI'm gonna go out on a limb and suggest that maybe the people who originally built Racket 20+ years ago and have spent their entire careers doing research related to it know what they're doing when they say they're considering changing the syntax. I dunno, maybe that's just crazy talk...
- dTal 7y agoThe whole point of Racket is that syntax changes are not breaking, and furthermore the proposal was very clear that #lang racket would continue to be fully supported. The proposal should be regarded as an exciting extra feature, not a deprecation of anything. Honestly, the community overreaction to this really disappoints me.