-
Notifications
You must be signed in to change notification settings - Fork 5
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
Thanks! #1
Comments
Thanks for showing interest in this project! Cool that you have worked on a similar project :-) Have you tried to run the Erlang code generator on some Idris 2 code? If not, I just pushed some updates to the documentation that might help to get started. Note that installation method 1 and 2 in the README.md is not quite ready, which means that one needs to have Later this week I will start to migrate my notes onto to the issue tracker. Hopefully that will make it easier to see if there is anything interesting that you want to tackle. Contributing to Idris 2 itself is also very helpful to this project. If you have any questions, feel free to ask! |
I just came across it, so haven't even cloned yet. I'll audit the docs and PR with updates if I have any trouble. I use NixOS which might make things more interesting, too. Re: notes -> issues. Sounds good, thanks! Why target Erlang instead of Core Erlang, given the stated non-goal of making the generated code readable. I'm not sure how outdated it is, but the simplicity and brevity of the Core Erlang 1.0.3 language specification from 2004 seems appealing to me. |
When I started working on the Erlang code generator I was only somewhat familiar with Erlang. Before that I had built a project using Elixir and Phoenix (which was a nice experience). It seemed easier to get something working by generating Erlang source code. I have since then added two intermediate representations: The Erlang codegen is able to generate both Erlang source code ( As a reference, the Idris 2 compiler (including the Erlang codegen) has the following intermediate representations:
I am still not very familiar with Core Erlang. What benefits do you think targeting Core Erlang could bring? If it can bring performance gains I would be very interested in such a change. |
Thanks for that explanation. That makes a lot of sense. I'm still using Idris 1.x, and had forgotten about the compiler redesign. This is very exciting. I'm not sure there would be any meaningful efficiency boost. The main benefit, I think, would be that Core Erlang is smaller and easier to reason about. It's also more explicit about scoping. But if you're already targeting the Erlang Abstract Format, I'd say it would be just for the novelty. I'll have a play, maybe tonight or tomorrow. Great stuff. |
Some progress here, but I'm not yet able to build successfully.
|
Very cool! The error message that you pasted ( There are a few steps this repository could do to improve the installation process:
In the short-term I will try to fix the Chez bootstrap process so that it is possible to build the Erlang code generator without relying on an existing installation of |
Yeah, the version of
Også så jeg på CV-en din at du studerte ved NTNU. Før pandemien jobbet jeg i Trondheim nesten hver måned på Sportradar. Jeg elsker den byen. (jeg prøver å lære meg norsk, så dette er god praksis, sammen med å lese Naiv Super 😉) |
I have now fixed the Chez bootstrapping process. It might still be easier for you to depend on the I have also updated the Erlang code generator with the latest changes in Idris 2. It compiles using the latest commit of Idris 2 (idris-lang/Idris2@d56b090). Regarding building via Nix: I don't have much experience using/configuring Nix packages so can't help with that, but if you see something Idris 2 can improve to make it easier to use with Nix, I will gladly assist to fix this upstream. For et sammentreff 😄 Trondheim er en flott by! |
Thanks. I've updated to use idris-lang/Idris2@d56b090 now, and the Nix build works, as well as all the samples. |
Nice, that's great to hear! 😃 Hope you will enjoy Idris 2 as much as I do 😁 Thanks for the PR! I will look at it tomorrow (Sunday) 😊 |
@chrrasmussen can you block the spammer mesidharth from your repo? I've reported to GH. |
New form of phishing by getting tagged in a random repository. |
Thanks for reporting! I blocked and reported the spammer. |
I'm very interested in this. Somewhere, I have a totally bitrotten attempt at a Core Erlang backend for Idris 1.x, but this seems much more promising. Realistically, I probably only have a few hours a week, but is there anything I might help with?
Thanks for this project!
The text was updated successfully, but these errors were encountered: