kanaka / mal

mal - Make a Lisp
Other
10k stars 2.53k forks source link

BQN implementation #619

Open dancek opened 2 years ago

dancek commented 2 years ago

This is an implementation in BQN, a modern array programming language. The code is idiomatic where possible but sometimes overly verbose. Also, parts of the MAL guide forced a non-array-y implementation – but I still followed the guide.

I didn't implement optional functionality; specifically with-meta would be quite annoying to add due to all data types and every match expression needing to be changed accordingly. The language doesn't have builtin support for properties, hashmaps or such.

CBQN is currently the main implementation of the language, and it's the only one supported as documented in README. Adapting to another implementation would be very simple, though, as the _while_ 2-modifier could be implemented in a line of BQN and the terminal goodies are not strictly necessary.

dancek commented 1 year ago

Anything I can do to get this merged?

dancek commented 1 year ago

@kanaka is there anything I could do to help get this PR merged?

dancek commented 8 months ago

Still hoping to get this merged!

dancek commented 3 weeks ago

Glad to hear from you! Thanks for the pointers. It may take me a while but I do intend to finish this PR.