3 ms·
The mailing list traffic on this topic took the wind out of my sails for wanting to spend my tinker time in Racket. On the one hand, it’s probably overreacting
by peatmoss 7y ago
The mailing list traffic on this topic took the wind out of my sails for wanting to spend my tinker time in Racket. On the one hand, it’s probably overreacting for me to throw in the towel on Racket at just the suggestion of this change. On the other hand, part of what makes me interested in writing Racket for projects where I have broad latitude is the sense that I’m both using an exciting technology, and a technology with a history of relative stability.
By signaling a switch to some bland surface syntax I feel that it’s eroding the exciting part as well as the stability benefits of the language. For data science (the domain I’m most invested in) Julia has attracted a decent mindshare, is lispy (even if not as much as I want), and is fast. Racket with a bland syntax is likely to be about as lispy as Julia, much slower, and have fewer of the data science libraries I care about.
I only have so many hours in my life to dedicate to not-making-money programming endeavors. I was sort of hoping that Racket would be the vehicle for those hours. But right now, I’m worried that Racket is Perl 6-ing itself, and that’s a hard place to spend hours. Especially with people like Greg leaving the community.
A while back there was a thread about a prominent member of the Common Lisp community saying that he’d probably eventually leave CL for Racket. But then later he signaled that he’d settled on Gerbil Scheme. Maybe that’s the right life raft from Racket.
- dmix 7y agoAny sort of politics would ruin the fun for me. I don't know how you OSS people do it while maintaining sanity. Those types of arrangements always attract some bad actors (intentional or not). There needs to be a strong limited vision for any project and a conservative approach to not try to fix what's not broken. Getting rid of s expressions without it being part of a more cohesive improvement (like better supporting a new type system or something) just for mainstream appeal seems like an odd choice to me.
- neilv 7y agoI'm familiar with a lot of other open source projects and people, and I can guess what you mean about the occasional unintentional or intentional bad actor. FWIW, IMHO, there are no bad actors (as I see it) in Racket. What I think just happened is a little growing pains, when a few new things happened all at once, and everyone (including in core) was caught off-guard by at least one surprise. I think it all arguably reduces to areas of communication to improve. I absolutely agree about the strong vision, and I think that such a vision probably mostly exists, in core, but that it's not yet been made really-super-clear to everyone else, nor has there then been a chance for everyone else to comment on and influence an unambiguous draft vision. Until everyone comes to shared understanding and agreement on the top-level requirements, I think an RFC process on features and tactics seems not only premature, but also perpetuates misconceptions/misalignments.
- neilv 7y agoPlease don't be turned off by the recent commotion. (I'm sorry some of the commotion that might've discouraged you was by me.) Commotion happens because people care about Racket, and there are reasons they care. Racket actually has a couple-decade history of very good stability, other than a couple oopses that might've helped prompt the current attempt at greater community involvement in decisions. The history is too long to summarize here, but some quick evidence you can look at is, when the language evolution really wants to change an interface or how something works, the old way either still remains in the main language/library, or is preserved in a legacy language or module, which you can see at the bottom of the page: https://docs.racket-lang.org/ https://docs.racket-lang.org/ For further evidence that's fairly easy to find, you can also look at the very careful and conservative process for introducing the new Chez-based backend.
- peatmoss 7y agoNo, to be clear, the commotion that has me concerned about Racket’s future is the substance of the proposal that was signaled on the list, not any sort of flamewar fatigue. One of the nice things about the Racket community is how thoughtful and earnest people are. I also tend to view your commentary as reasoned and agreeable, so no apologies needed! To me, I’m just not that excited about the “maybe direction.” I guess I’m one of the parentheses clutchers who loves parediting in emacs. I’m sure the transition toward some other syntax will be cautious and careful, and that the resulting preferred #lang will be a fine one. It just sounds like the center of mass for the Racket community won’t be quite what I was looking for when I came to Racket. I’ve got plenty of experience in at least one language, R, that started as a Scheme and then syntaxed itself to something less than Scheme (the language I mean, not the libraries—I'd kill for a #lang racket with R’s libraries). Maybe Racket2 will be the bland syntax that succeeds in not obscuring the Music of the Spheres. If anyone can do it, this community will. On the other hand, I’ve got a healthy skepticism, uninformed by any deep understanding of the issues. I’m not sure what the benefits of sticking it out to see are. The proposed change has anti-network effects in that Greg is already signaled his departure, and I’d already stopped reaching for Racket as the answer to “what lisp should I learn?” I simply don’t have a good answer to that question where I felt like I did a month or so ago. But I’d be disappointed if Racket changed direction based on opinions of people like me. It’s not like I have any grand contributions to the community that are going away! I’m a dilettante who writes a little bit of Racket to scratch a personal itch once in a while. My primary takeaway from my one in-person RacketCon (Seattle) was, “woah, I don’t understand anything but these people are smaaaart.” I am not the right person to cater a language to.
- traderjane 7y agoFor pedagogical potential Python and Julia also competes against Racket due to connection to the data science ecosystem.