
F*dging up a Racket - sea6ear
https://www.hashcollision.org/brainfudge/
======
tonyg
Nice article. One thing that people are doing these days is using the #lang
mechanism to easily turn a Redex [0] model into a quick-and-dirty prototype
implementation of a new language, integrated with the Racket tooling (IDE
etc.).

[0] [http://docs.racket-lang.org/redex/tutorial.html](http://docs.racket-
lang.org/redex/tutorial.html)

------
616c
If anyone does not recognize dyoo, the owner of hashcollision.org is also the
author of Whalesong, a Racket->Javascript system. I think it has been
discussed before on HN.

[https://github.com/dyoo/whalesong](https://github.com/dyoo/whalesong)

Needless to say, if this guy is fudging Racket, I am not sure what we can say
about the rest of us and what we do with the language. Haha.

EDIT: Was the author, it seems he passed it off to another Racketer now that
he is busy with other stuff. Should have clicked the link before posting.

[https://github.com/soegaard/whalesong](https://github.com/soegaard/whalesong)

------
soegaard
If anyone is interested in seeing how the principles in the article can be
used to implement a traditional language, I offer MiniPascal.

[https://github.com/soegaard/minipascal](https://github.com/soegaard/minipascal)

The reader (lexer and parser) turns the source program into syntax objects.
The main idea is to make a Racket macro for each Pascal construct. The Racket
macro expands into normal Racket.

[https://github.com/soegaard/minipascal/blob/master/minipasca...](https://github.com/soegaard/minipascal/blob/master/minipascal/compiler-
simple.rkt)

------
codemac
Overriding `read` is really neat!

While I was reading this I realized just about any scheme implementation could
probably override their `read` like this as well. Obviously racket as an
implementation has focused on making this work well.

------
kd0amg
This is still the first place I look when I'm trying to remember what bits and
pieces go where in building a #lang.

------
RickHull
Since when does _Fidging_ need character masking?

~~~
cgtyoder
Makes the article seem "edgy"

