|
|
|
|
|
by soegaard
3958 days ago
|
|
Judging from the code, the main idea is to implement the Arc (or Arc-like) language using the standard techniques used to implement new languages in Racket. This approach will make it easy to use the tools/infrastructure of Racket without any changes (correct highlighting, arrows between a variable and its binding, scope aware renaming of variables, profiler, etc.). The new language compiles via macro expansion to Racket which is then compiled and jitted as normal. If I recall correct the original implementation of Arc was written as an interpreter - and thus the Racket set of tools are not available. The main benefit is that the new language will run faster than standard Arc. As a bonus it will be possible to use module written in Rark from Racket code - and use modules written in Racket in Rark modules. |
|
(Disclosure: I'm one of the owners of the https://github.com/arclanguage community. Also check out https://arclanguage.github.io, which is a more up-to-date statement of the Arc state of the world.)