3 ms·
Not that I'm aware of, sorry. Some of things it does: * type specialization. It looks at repeated executions of a piece of code, and if the type of a variable
by perlgeek 12y ago
Not that I'm aware of, sorry.
Some of things it does:
* type specialization. It looks at repeated executions of a piece of code, and if the type of a variable or parameter is stable, it assumes it'll be always that way, and specializes the code for that (for example, always picks a method from the same class). And of course it inserts a guard clause to ensure that if the type should change, it takes the slow (but correct) path
* inlining
* container removal. In Perl 6, things generally become mutable by being inside a container (think pointer), and if the specializer finds cases where that's not needed, it generates better code for them
* reachability analysis and elimination of allocations are being worked on, iirc.
- chrisseaton 12y agoDo you know who it might be best to talk to about the AST/bytecode specialisation? I work on a compiler with AST specialisations and I'm interested in their approach.
- colomon 12y agoCheck out #moarvm on irc.freenode.net.