-
-
Notifications
You must be signed in to change notification settings - Fork 15
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
Experiments #2
Comments
I'd like to help test these out -- especially the formatter. I could not get the release binaries to work, so I built locally. My naive approach was to just try compiling the beam file for the mix format task to see what would happen. That fails with this error:
I tried translating the getting started example from the Readme to Elixir, and I get the same error when I try to build:
I'm sure I'm doing something obviously wrong, but I'm not sure what. |
I think you're running the right stuff! Could you send me over the The error being reported there is essentially saying "LAM doesn't know how to deal with this BEAM instructions yet", so its work on my end 😅 |
Hej @rubysolo I've decided to take a step back and do some more testing before continuing to add features to make sure we're building on really solid ground. Let me know if you'd like to help me figure out how to make sure we have good Elixir support here :) -- eg, I'm rewriting the test suites from examples to actual unit tests, and having a good suite for Elixir would be good 🙌🏼 |
That sounds like a good plan! Do you already have a strategy in mind for Erlang tests? I could probably help with writing/maintaining some equivalent Elixir tests, if that would be helpful. |
Hola @rubysolo! There's 2 layers of testing to do here. The first layer is "translational" (?), in other words, we wanna take a snapshot of the translated bytecode so that we can see if we're changing something in a weird way. For any
The second layer is "behavioral". Aka, "is the translated bytecode equivalent", and for any Erlang module
This also means that the tests would have to be written in a way that they would print out a specific result that we could inspect. Like a debug data structure or something like that. Hope this makes some sense! I haven't been able to put more time into this yet since I've devoted more energies to Caramel, but I'm balancing out my hours now and it'd be great to chat more about this if you're interested :) -- feel free to join the discord here: https://discord.gg/v5aAqKq6Rs |
Here's a list of things to try out and see where we are:
mix-format
-- compile and run the Elixir formatter as a binarycloc
-- a tool that counts lines of code using a map-reduce patterncrane
-- a tiny distributed build systemThe text was updated successfully, but these errors were encountered: