You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ooc-in-ruby: ooc interpreter written primarily in ruby
...and a lot of automagically-generated C. The hell if I'm duplicating all of that.
The idea is to write as much of it as possible in ruby.
I gave up writing a custom parser for now, so it uses nagaqueen.
Hellooooo, 9,350 SLOC of generated C, tied together with 33 SLOC of hand-written C.
Good news: this means I should be albe to get away with ./get-nagaqueen.sh && ./generate-boilerplate.rb and coding some ruby any time nagaqueen changes.
Building it
Here's all the files related to generating the shitton of C and compiling it all.
./util/get-nagaqueen.sh: tries to find NagaQueen.c, copies it to ./nagaqueen/nagaqueen.c.
./util/generate-boilerplate.rb: generates approximately 960 lines of ruby/C interop boilerplate in ./nagaqueen/boilerplate.h.
./util/generate-nagaqueen-boilerplate.rb: generates approximately 590 lines of ruby/C interop boilerplate in ./lib/nagaqueen-methods.rb.
./build.rb: builds this monstrous thing.
./test.rb: test this monstrous thing.
In most cases, all you should need is ./build.rb and ./test.rb.
About
ooc interpreter in ruby. Purely for shits and giggles and possibly experimentation. Don't assume it's entirely compliant.