On 02/01/2011 03:03, William "Chops" Westfield wrote: > Whatever happened to P-code (for pascal), anyway? It seems (?) that > interpreters in general have advanced in the relatively recent past; > were there enough advantages in the p-code runtime environment to > think about doing that again, or have the (older) advances made in > compiler technology made it uninteresting anyway? (I never noticed > whether P-code added run-time capabilities to a typical CPU, or was > just a crutch so people wouldn't have to write code generators.) > > BillW Doesn't Java, VB6 and .Net all use a type of "p-code" on a virtual=20 machine. I believe true ".net code" is not x86 but portable to .net=20 implemented on any architecture being derived from MS Java machine, the=20 J++ project? So I go and have a look ... MS P-Code as produced by VB6, may or may not be related=20 http://en.wikipedia.org/wiki/Microsoft_P-Code << Microsoft's P-Code, short for packed code, is an intermediate=20 language that provides an alternate binary format to native code for any=20 compiled binary (eg: DLLs, ActiveX controls, or Applications). >> << Programs written for the .NET Framework execute in a software (as=20 contrasted to hardware) environment, known as the Common Language=20 Runtime (CLR). The CLR is an application virtual machine so that=20 programmers need not consider the capabilities of the specific CPU that=20 will execute the program. >> http://en.wikipedia.org/wiki/.NET_Framework << James Gosling cites UCSD Pascal as a key influence (along with the=20 Smalltalk virtual machine) on the design of the Java virtual machine.>> http://en.wikipedia.org/wiki/UCSD_p-System ARM has Jazelle which is added Java byte code support. That's a bit like=20 P-Code support. There was Western Digital chip set that ran UCSD p-code =20 as its instruction set in 1980s. http://en.wikipedia.org/wiki/Jazelle Also intermediate stage of many languages prior to final pass to native=20 code uses *a* "p-code" language to make porting the language (new back=20 end p-code to assembler) and split optimisation between source=20 optimisation and target cpu optimisations. JALV2 is one. On 02/01/2011 03:03, William "Chops" Westfield wrote: << Whatever happened to P-code (for pascal), anyway? >> Seems the concept is alive and well ^_^ --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .