El mié, 20-01-2010 a las 09:20 +0100, Stefan Marr escribió:
> You mean how their approaches compare? (I would guess, there is no direct 
> involvement of people in both projects.)
> 
> PyPy is a generator approach, your language specification i.e. the 
> interpreter is used
> to generate a VM.
> You use a high-level language i.e. RPython to implement a classic 
> interpreter, which is then transformed by a powerful tool-chain to your C 
> implementation (and a JIT). Stuff like GC is just generated for you.
> The result is one specific VM, which is generated for your language.
> 
> 
> With Parrot it is much like with a classic VM like JVM or CLR/.NET.
> You are using one existing VM.
> Language developers use the Parrot Assembly language (PASM) or the Parrot
> Intermediate Representation (PIR) which can then be compiled to the bytecode 
> set.
> Furthermore, they can extend the bytecode set with their own instructions 
> (primitives).
> So, you are basically compiling your target language while using all the 
> runtime features of the Parrot VM. So, here the 'power' is in the VM, not in 
> a transformation tool chain.
> 
> Best
> Stefan
> 

Very interesting, thanks for the info.


> 
> 
> On 20 Jan 2010, at 09:02, Stéphane Ducasse wrote:
> 
> > stefan 
> > 
> > do you know how this is linked with pypy?
> > 
> > Stef
> > 
> > On Jan 20, 2010, at 8:50 AM, Stefan Marr wrote:
> > 
> >> 
> >> On 20 Jan 2010, at 06:12, Miguel Enrique Cobá Martinez wrote:
> >> 
> >>> Parrot has just been released:
> >>> http://www.parrot.org/news/2010/Parrot-2.0.0
> >>> 
> >>> I would like to know, from the VM experts from the community, if this VM
> >>> can be used to run Smalltalk.
> >> Well, as someone mentioned, there seems to be Smalltalk implementation...
> >> 
> >> But, probably it is hard to get it fast.
> >> Parrot uses a very unique approach.
> >> Actually, they try to provide a language runtime for all kinds of 
> >> languages, and the right tools to build them: 
> >> http://www.linux-mag.com/cache/7373/1.html
> >> 
> >> Eliot mentioned primitives, well, there is no concept of a primitive in 
> >> Parrot.
> >> Instead, they have a unification of bytecodes and primitives. The idea is, 
> >> to give you the tools to develop the bytecode you need for your language, 
> >> which can be loaded dynamically during execution.
> >> It will be interesting to see, how they can get their JIT fast with this 
> >> strategy.
> >> 
> >> Best
> >> Stefan
> >> 
> >> 
> >>> The site says that 
> >>> 
> >>> "Parrot is a virtual machine aimed at running all dynamic languages.".
> >>> 
> >>> but I don't know anything about VM so this sounds to me a bit like black
> >>> magic. 
> >>> 
> >>> Is there something in the squeak vm that is specific to the way
> >>> smalltalk works or a generic virtual machine (maybe with a upper layer
> >>> understanding Smalltalk specifics) can be used.
> >>> 
> >>> Thanks for the answers
> >>> 
> >>> -- 
> >>> Miguel Cobá
> >>> http://miguel.leugim.com.mx
> >>> 
> >>> 
> >>> _______________________________________________
> >>> Pharo-project mailing list
> >>> [email protected]
> >>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> >> 
> >> -- 
> >> Stefan Marr
> >> Software Languages Lab
> >> Vrije Universiteit Brussel
> >> Pleinlaan 2 / B-1050 Brussels / Belgium
> >> http://soft.vub.ac.be/~smarr
> >> Phone: +32 2 629 3956
> >> Fax:   +32 2 629 3525
> >> 
> >> 
> >> _______________________________________________
> >> Pharo-project mailing list
> >> [email protected]
> >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> > 
> > 
> > _______________________________________________
> > Pharo-project mailing list
> > [email protected]
> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> 

-- 
Miguel Cobá
http://miguel.leugim.com.mx


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to