Hacker News new | past | comments | ask | show | jobs | submit login

You can read about the ReScript change here: https://rescript-lang.org/blog/bucklescript-is-rebranding

I wouldn't go so far as GP as to call it "drama", but the split left Reason without a reason (pun intended) to exist or any activity for that matter. Most of the people who liked Reason for frontend usecases moved to ReScript since that at least had some momentum behind it. Since the split, Reason itself has been largely on life support, with no significant changes and almost no forum activity in the past year. So newcomers to Reason see a dead community for a language which is a syntax extension for another language with a (relatively) alive community. The fact that Reason hasn't seen a surge in enthusiasm corresponding to the enthusiasm in the OCaml community with the advent of 5.0 and multicore is proof enough that Reason is dead, and projects written in Reason should probably consider moving to OCaml entirely considering there are planned changes to the OCaml syntax for effects which I don't think are going to make it to Reason.

Some people in the Reason world blame the ReScript people for this, which I think is entirely misplaced. The only reason (pun not intended this time) Reason has died off is that there is absolutely no clarity on the future of Reason. The creator of Reason, Jordan Walke, has been entirely MIA for about two years now. A version 4.0 was planned in 2020 and as of now hasn't come up. This issue was opened in Nov 2020 asking for future plans and is still unresolved, and the latest comment from a new developer just makes my point: https://github.com/reasonml/reason/issues/2634.




Agree with you, Reason is effectively dead, the "drama" part is that the decision came from nowhere, leaving the native devs with a sour taste and the frontend devs with a "Hey, we just changed the syntax without warning and will not support the old one anymore, good luck", which made me move all my projects out of reason ASAP, if the developers can pull out giant changes like that without warning, sorry, I will not use it, too unpredictable.

Also, rebranding instead of starting a new project sounds just like "it's my baby, I'm gonna kill the old project so no one that disagrees with my decisions can continue it".

> Some people in the Reason world blame the ReScript people for this, which I think is entirely misplaced.

I mean, the way that the creator of ReScript behaved on discord to any criticism to his decisions at the time didn't helped...


> "Hey, we just changed the syntax without warning and will not support the old one anymore, good luck"

I think this is slightly uncharitable. The people working on BuckleScript had been unhappy about syntax for a while, and wanted to make it simpler for people coming from JS. They also kept supporting Reason syntax - it's quite literally in the announcement and forum threads from the time that old code will continue to work.

I can't speak to why the rebrand went down the way it did, as none of us can know for sure, but I think it might have more to do with internal communication between team members than any one person taking their toys and going home, so to speak.

> I mean, the way that the creator of ReScript behaved on discord to any criticism to his decisions at the time didn't helped

I didn't hang around on the Reason discord (for good reason, I now suppose :P) but I don't think that had anything to do with Reason dying out. No matter how the ReScript people behaved, Reason native could've gone its own way, but it didn't, and the responsibility for that is on Reason. As much responsibility as there is, ofc. I don't mean to imply that the team behind Reason should've continued developing if they didn't want to, I just don't think the ReScript people should be held to account for how Reason evolved.

(FWIW, I was interested in Reason only for native, and have zero interest in ReScript, so I say this as someone who is "on your side".)


> The people working on BuckleScript had been unhappy about syntax for a while, and wanted to make it simpler for people coming from JS.

Yeah, but as far as I remember the new syntax and all changes were discussed and developed behind closed doors and dropped like a bomb, I mean, it is their project and they could do whatever they want, but two points left a pretty sour taste in my mouth:

1. You know that there are a lot of native projects and your changes will cause ripples through the entire ecosystem, warning people would be nice, they have no obligation to do so, but they can't really complain that people were pissed about it.

2. The rename and using all the old bucklescript resources instead of passing these resources for the community and saying "ok, now we're working on ReScript, it is a new language that follows our long term vision for the future of webdev, follow us". They own the project, but they don't "own" the community.

> I didn't hang around on the Reason discord (for good reason, I now suppose :P)

Yeah, it wasn't a nice place.

As for reason dying out, most of the devs that embraced native ReasonML were also OCaml devs and tooling was being developed to facilitate the transition from web to native code with the more approachable syntax of reason (esy.sh and revery were two of these initiatives).

ReScript dropping support for OCaml was like "ok, no point in trying to bring web people to native now, let's stick with OCaml syntax, they aren't the same language anymore".

And as "my side", I did use Reason syntax in native just because I was already using the syntax in web projects, otherwise I would just write OCaml, but after seeing how the changes were announced I gave up on Reason for web and didn't even bother with ReScript, don't get me wrong, it is a really nice language for webdev, but I have no interest in waking up in a Monday just to discover that the language I'm using is being completely changed without any warning in the next week.


This. The reason for Reason to exist was to be a bridge, bring native OCaml devs to web deployment and bring front end devs to native apps. It was a brilliant strategy I think. While the failure of the project certainly stems for the absence of development for more that two years, the ReScript project was the last nail the coffin because it stated that they wanted to blow up the bridge that was Reason's reason to exist. Why they thought the world needed yet another compile-to-javascript dialect when there's already typescript, dart, elm, and probably many others is beyond me.


To be fair, you can still use Reason code in a ReScript project. However, the community has diverged.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: