Sponsored Link •
|
Summary
File this under 'tooting my own horn'.
Advertisement
|
Every once in a while I do something that I am particularly proud of. In this instance I am bursting with pride because I am currently using Heron code inside of the HeronScript interpreter. HeronScript is written in C++, but I use the Heron to C++ translator (HeronFront) in order to make functions and objects dynamically accessible to the interpreter.
One big problem with implementing an interpreter is that you have to register low-level types and functions so that they can be called dynamically by the interpreter. With Heron this is relatively trivial because all Heron objects provide a reflective API. C++ classes generated using HeronFront also have these reflective API calls, for instance: object AnyGivenHeronClass::_invoke(char* name, list<object> args). And yes even your basic int classes have these.
This means that if nothing else, Heron would be useful for those who want more dynamicism from their C++ code by generating class hierarchies with reflective API's. Anyway, after spending the last 12 hours hunting down a dangling memory block bug in my C++ code, I will be glad when I am finally able to rid myself of the shackles of C++ for good.
Have an opinion? Be the first to post a comment about this weblog entry.
If you'd like to be notified whenever Christopher Diggins adds a new entry to his weblog, subscribe to his RSS feed.
Christopher Diggins is a software developer and freelance writer. Christopher loves programming, but is eternally frustrated by the shortcomings of modern programming languages. As would any reasonable person in his shoes, he decided to quit his day job to write his own ( www.heron-language.com ). Christopher is the co-author of the C++ Cookbook from O'Reilly. Christopher can be reached through his home page at www.cdiggins.com. |
Sponsored Links
|