2014-08-28 17:27:04 +02:00
|
|
|
### Builtin module
|
|
|
|
|
|
|
|
The Builtin module contains functions that can not be coded in ruby. It is the other side of the parfait coin, part of
|
|
|
|
the runtime.
|
|
|
|
|
|
|
|
The functions are organized by their respective class and get loaded in boot_classes! , right at the start.
|
|
|
|
|
|
|
|
These functions return their code, ie a Virtual::CompiledMethod object, which can then be called by ruby code
|
|
|
|
as if it were a "normal" function.
|
|
|
|
|
|
|
|
A normal ruby function is one that is parsed and transformed to code. But not all functionality can be written in ruby,
|
2014-08-28 21:32:53 +02:00
|
|
|
one of those chicken and egg things. C uses Assembler in this situation, we use Builtin functions.
|
2014-08-28 17:27:04 +02:00
|
|
|
|
|
|
|
Slightly more here : http://salama.github.io/2014/06/10/more-clarity.html (then still called Kernel)
|
|
|
|
|
|
|
|
The Builtin module is scattered into several files, but that is just so the file doesn't get too long.
|
|
|
|
|