intern.rst: minor formating improvements

(cherry picked from commit 03a05ca456)
This commit is contained in:
Araq
2018-10-18 12:04:48 +02:00
committed by narimiran
parent 8637ca6983
commit 0d5355b5fd

View File

@@ -16,9 +16,9 @@ Directory structure
The Nim project's directory structure is:
============ ==============================================
============ ===================================================
Path Purpose
============ ==============================================
============ ===================================================
``bin`` generated binary files
``build`` generated C code for the installation
``compiler`` the Nim compiler itself; note that this
@@ -32,7 +32,7 @@ Path Purpose
``lib`` the Nim library
``web`` website of Nim; generated by ``nimweb``
from the ``*.txt`` and ``*.tmpl`` files
============ ==============================================
============ ===================================================
Bootstrapping the compiler
@@ -386,8 +386,9 @@ So now ``G.c`` MUST contain both ``P1`` and ``P2``, but we haven't even
loaded ``P1`` from the symbol file, nor do we want to because we then quickly
would restore large parts of the whole program.
Solution
~~~~~~~~ 
~~~~~~~~
The backend must have some logic so that if the currently processed module
is from the compilation cache, the ``ast`` field is not accessed. Instead
@@ -517,6 +518,7 @@ Code generation for closures
Code generation for closures is implemented by `lambda lifting`:idx:.
Design
------
@@ -665,5 +667,3 @@ important the hidden formal param is ``void*`` and not something more
specialized. However the more specialized env type needs to passed to the
backend somehow. We deal with this by modifying ``s.ast[paramPos]`` to contain
the formal hidden parameter, but not ``s.typ``!