top | item 10047324

(no title)

istvan__ | 10 years ago

Is there more information available on this one? I am not getting the concept of it...

discuss

order

soegaard|10 years 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.

akkartik|10 years ago

A more developed variant with these goals, that got discussed a fair bit in the arc forum, is https://github.com/arclanguage/arc-nu. It hasn't received much kicking on wheels by anyone other than its author(s), though, so be prepared for some rough edges if you decide to try it out. In the long term I think it might be much nicer than the original prototype.

(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.)

stijlist|10 years ago

If it's helpful, the original implementation of Arc was actually quite similar to this - a bunch of macros that compiled down to MzScheme (which eventually became PLT scheme, which eventually became Racket!).

sigzero|10 years ago

That's pretty nifty.

jcr|10 years ago

The Arc programming language [1] was created by Paul Graham (and Robert T. Morris). Arc was used to create the original "Startup News" site which eventually became "Hacker News". Kogir is one of the developers at Y Combinator that currently works on the HN code.

[1] http://arclanguage.org/

kogir|10 years ago

I wrote this when I started working on HN, though I've since left YC and no longer work on HN.