(hello

‘world)

Fuck it.

After too many attempts at compensating for C’s lack of a usable goto turning into reinventions of trampolines or ucontext.h, I said fuck it. I wasn’t having *fun* anymore. C as a “portable assembly language” simply fails.

NekoVM however has been a fucking delight to work with. I don’t even need to bother with half of the conversion as it supports XML which matches damn near 1:1 with sexps to begin with. I can pretty much just go (display (xml-conv (cps-conv (simplify (parse (read)))))) and be done. Hot.

February 20, 2010 - Posted by | Programming, Scheme

3 Comments »

  1. Out of curiosity, why not using LLVM or C– backends?

    Comment by Volkan YAZICI | February 21, 2010 | Reply

    • I don’t grok C++ particularly well, LLVM’s API docs suck, and I wound up having better luck just spitting out LLVM IR and letting llvm-as deal with it. And doing it that way just seemed silly to me. Although hooking my half baked GC into it wasn’t nearly as painful as I had expected it to be. Probably, I just need to study up more on C++ or OCaml.

      C– is like that cute chick who likes you, but didn’t say anything before you found someone else. I already had Neko installed and all I needed to do was write a couple trivial snips to go from sexps to xml and use Neko’s primitives rather than C’s. And its C FFI is easy enough that I really just don’t care at this point.

      Pretty much, I’m lazy, Neko’s easy. =)

      Comment by prael | February 24, 2010 | Reply

      • Hmm. After some dicking around it seems it’s not entirely maddening to just wrap LLVM’s C++ API in C. Slow and boring, but most issues havn’t been too hard to deal with. Just what I need, another project. Maybe in a few weeks when I get bored of playing with graph reduction =)

        Comment by prael | February 24, 2010


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: