I just read about this because it was posted on reddit.. http://www.zedshaw.com/projects/earing/ It just made me wonder.. it actually sounds like it would make an interesting back-end for something like ChucK. It assembles a sort of high-level assembler code, loads it into memory dynamically and compiles it to actual machine code to run at 100% CPU speed. Features (from the site): * You can swap the contents of functions or alter them as if they were data. * You can plug in any memory management you need. * It can open dynamic libraries and run the functions like they are another module. * You can ship the code to other machines and they'll just run it. * It's still fast because, after the first compile, it runs at CPU speed. Pretty interesting! The thought of using an alternative VM for running ChucK code more efficiently is kind of interesting.. ChucK could compile down to this EaRing bytecode and then let its VM and "assembler" take care of the heavy lifting to make things run at top speed. Steve
On Mon, 2008-10-06 at 11:33 -0400, Stephen Sinclair wrote:
I just read about this because it was posted on reddit..
http://www.zedshaw.com/projects/earing/
It just made me wonder.. it actually sounds like it would make an interesting back-end for something like ChucK. It assembles a sort of high-level assembler code, loads it into memory dynamically and compiles it to actual machine code to run at 100% CPU speed.
Features (from the site):
* You can swap the contents of functions or alter them as if they were data. * You can plug in any memory management you need. * It can open dynamic libraries and run the functions like they are another module. * You can ship the code to other machines and they'll just run it. * It's still fast because, after the first compile, it runs at CPU speed.
Pretty interesting! The thought of using an alternative VM for running ChucK code more efficiently is kind of interesting.. ChucK could compile down to this EaRing bytecode and then let its VM and "assembler" take care of the heavy lifting to make things run at top speed.
Steve _______________________________________________ chuck-dev mailing list chuck-dev@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-dev
I had a brief convo with Zed about this a few months back. He insists it's alpha-level code and only has scattered time to hack on it. Then I pointed him at Anton Ertl's gForth / vmgen works on writing efficient interpreters / virtual machines. He was quite impressed with what some of these ideas did for EaRing. -- M. Edward (Ed) Borasky ruby-perspectives.blogspot.com "A mathematician is a machine for turning coffee into theorems." -- Alfréd Rényi via Paul Erdős
participants (2)
-
M. Edward (Ed) Borasky
-
Stephen Sinclair