-
Notifications
You must be signed in to change notification settings - Fork 27
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
Upgrade to Rescript 11 #94
Conversation
Woah, Murphy! It's funny, I was just thinking the other day that I haven't heard from you in a while. This looks like a much needed upgrade, thanks for working on this! I've only taken a brief look, but I have a few questions:
I haven't worked on Reason stuff in a while, and I trust that the changes you've made here are necessary and correct, so I probably won't give this more than the cursory review that I already have. Thanks again! Edit: sorry, just noticed the PR is in a draft state so maybe wasn't ready for me to look at yet |
Hey @ryb73 long time no see! Thank you for looking so quickly 🙇 I figured you hadn't worked on Reason stuff in a while, and I'd be on my own with this so I didn't take much time to explain. Sorry about that! The context I'm working from is that from my perspective, most of the people who were using Reason before have moved to Rescript, which now focuses on JavaScript only and doesn't market native as a target (I don't even know if native is supported as a target, actually). My company fully adopted ReScript, and we rely heavily on Decco. The ReScript 11 upgrade broke decco with its uncurried by default approach, and so we need to upgrade Decco before we can upgrade Rescript. 🎉
I moved to Dune and ml syntax to simplify the toolchain and maintenance complexity for Rescript programmers. That way if/when my team members come back to make fixes in the future they don't have to learn the almost-the-same-but-not Reason syntax and tooling in addition to native OCaml. (Also, I'm new to this ecosystem and felt more comfortable just using Dune instead of trying to figure out esy as well)
I think I do!
Yeah, I'm stuck right now on some substantial changes? Higher order decoders are generating a chain of single-argument functions instead of a single function with multiple args:
I'm not sure if that's because of a change I made, or if it was always working that way, but the tests call the decoder as a 2-arity function:
So I'm sloshing around in the ml code learning the ast types as I go and trying to figure out how to get to the right place. Any chance you'd be into some real-time pairing?! |
Oh I forgot to mention the calls that are made also, so I need to figure out how to get what's currently being generated:
into non-curried versions:
|
Update, I've made it past that problem, and am cruising through the rest of the changes. |
Awesome! Let me know if you have more questions. I apologize for the messy
code, it was one of my earlier Reason projects and I wasn't totally sure
what I was doing 🙈
…On Fri, Apr 26, 2024 at 7:10 AM Murphy Randle ***@***.***> wrote:
Update, I've made it past that problem, and am cruising through the rest
of the changes.
—
Reply to this email directly, view it on GitHub
<#94 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAHGK5H666BCSLIMGZK32ELY7IY3LAVCNFSM6AAAAABGY6ZODSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANZZGE3TSMBZGM>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Well, @ryb73, for not being sure what you were doing you sure wrote some damn useful stuff 🤣 |
Thank you Murphy!!!! 😭 ❤️ |
WIP!