rubyx/lib/mom/macro/README.md

20 lines
873 B
Markdown
Raw Normal View History

2018-03-11 11:41:15 +01:00
## Builtin module
The Builtin module contains functions that can not be coded in ruby.
2015-03-25 16:29:39 +01:00
It is the other side of the parfait coin, part of the runtime.
2018-03-11 11:41:15 +01:00
The functions are organised by their respective classes and get loaded in boot_classes! ,
2015-10-22 17:16:29 +02:00
right at the start. (see register/boot.rb)
These functions return their code, ie a Parfait::CallableMethod with a MethodSource object,
2015-07-03 19:13:03 +02:00
which can then be called by ruby code as if it were a "normal" function.
2018-03-11 11:41:15 +01:00
A normal ruby function is one that is parsed and transformed to code. But not all
functionality can be written in ruby, one of those chicken and egg things.
C uses Assembler in this situation, we use Builtin functions.
2017-01-01 23:29:20 +01:00
Slightly more here : http://ruby-x.org/2014/06/10/more-clarity.html (then still called Kernel)
2018-03-11 11:41:15 +01:00
The Builtin module is scattered into several files, but that is just so the file
doesn't get too long.