On 8 April 2011 15:03, Josh Cheek <josh.cheek / gmail.com> wrote:
> On Thu, Apr 7, 2011 at 11:46 PM, Julian Leviston <julian / coretech.net.au>wrote:
>
>> I think it might be actually quite interesting for the original poster to
>> take some of FONC's work such as OMeta, and then the Rubinius project... and
>> use it to build Ruby in OMeta, which could then be used quite easily to plug
>> this Ruby implementation in OMeta into the JavaScript implementation OMeta
>> which is already existing...
>>
>> For an example of SmallTalk already written in OMeta/JS (ie SmallTalk
>> running inside Javascript, through OMeta), please see:
>>
>> http://tinlizzie.org/ometa/ometa-js-old/
>>
>> Given that JavaScript is pretty much the *only* fully realised
>> cross-browser cross-platform implemented programming language that we have
>> available to us (ie guaranteed to be on EVERY machine for the last 10
>> years), and also given that so much work is continually put into making
>> these interpreters fast and small, I think writing things on top of
>> JavaScript is a brilliant idea.
>>
>> The other interesting thing about targeting OMeta as an implementation
>> language for a VM in Ruby, while incredibly technically challenging, is that
>> it would be infinitely rewarding, as there are versions of OMeta written in
>> most common programming languages already (which means the target language
>> base of the Ruby implementation in OMeta would grow without any additional
>> effort on the part of the programmers)... people are writing OMeta
>> implementations in various languages, and there are already ones written in:
>>
>> OMeta itself, C#, SmallTalk, Scheme, Lisp, Python and Ruby (I'm fairly sure
>> there are some written in id.st (or Cola, whatever you want to call it) as
>> well ;-))
>>
>> Just my two cents.
>>
>> "You are now able to program any browser in the world with any language you
>> want"
>> http://www.youtube.com/watch?v=YEx4jfdFp1k
>>
>> Julian.
>>
>>
> That is incredibly cool! But can you really implement *any* language? What
> about languages that are completely different from javascript? In Haskell,
> for example, everything happens lazily, data is immutable, there is a
> complex type system. Can you really map this right to javascript? (or am I
> misunderstanding OMeta?)
>

This is incredibly cool but can you really translate any language into
machine code?
What about languages that are completely different from machine code?
In Haskell, for example, everything happens lazily, data is immutable,
there is a complex type system. Can you really map this right to
machine code? (Or am I misunderstanding your question?)

Thanks

Michal