Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Complete reorganization of bootstrap. Addition of kernel/platform. FF…
…I fixed. New restrictions for meta-programming in core bodies (not in methods). kernel/platform is now where platform specific code, mainly related to FFI, lives. A bunch of FFI bugs have been fixed and it should be working much better now. FFI Note: you may now only specify :state as your first argument, and you must leave it off when you call the method (rather than passing nil like before).
- Loading branch information
Showing
98 changed files
with
2,804 additions
and
2,564 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,7 +5,7 @@ code-cache | |
.hg | ||
COMMIT | ||
.load_order.txt | ||
|
||
CI-specs | ||
*.rbc | ||
|
||
!runtime/loader.rbc | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
The point of the bootstrap step is to build up just enough functionality to: | ||
|
||
1) use alias | ||
2) run FFI (for platform code) | ||
3) provide basic error reporting (primary related to method_missing) | ||
|
||
It also serves ot attach all primitives. Primitives are ONLY allowed to be | ||
attached in bootstrap. | ||
|
||
All functionality provided by bootstrap may be redefined in core to provide | ||
a 'proper' implementation. | ||
|
||
Rules of bootstrap: | ||
|
||
1) limited to no metaprogramming. The bootstrap should be a container of code only. | ||
if it runs code, then order starts to matter and things fall apart. |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.