1 comment

[ 2.4 ms ] story [ 10.5 ms ] thread
For people who don't have time to watch the entire talk, the highlights:

- An editor which allows near-arbitrary nesting of languages (for example, SQL in Python in HTML, then exporting the whole thing as Python code to generate a web-page from a database query)

- A "bridge" interpreter implemented in RPython that allows communication between the PyPy (Python) and HippyVM (PHP) runtimes.

- As an example, they had a 'hello world' script where "hello" was a global variable in PHP, "world" was a local variable in a Python function, and the string concatenation was done by a PHP lambda defined inside the Python function, and then invoked by Python. Note that PHP doesn't support dynamic scoping, so that was added by their glue code.

- The combined VM, after being processed by RPython into a tracing JIT, could process monolingual PHP code about as fast as HippyVM (still many times faster than ZEND PHP).