Fix Typos in Internal Docs (#11735) [ci skip]
This commit is contained in:
parent
ec9d0ee86d
commit
8550a8127c
3 changed files with 7 additions and 7 deletions
|
|
@ -220,7 +220,7 @@ Source URLs are generated as `href="${url}/tree/${commit}/${path}#L${line}"` by
|
||||||
You can edit ``config/nimdoc.cfg`` and modify the ``doc.item.seesrc`` value with a hyperlink to your own code repository.
|
You can edit ``config/nimdoc.cfg`` and modify the ``doc.item.seesrc`` value with a hyperlink to your own code repository.
|
||||||
|
|
||||||
In the case of Nim's own documentation, the ``commit`` value is just a commit
|
In the case of Nim's own documentation, the ``commit`` value is just a commit
|
||||||
hash to append to a formatted URL to https://github.com/Araq/Nim. The
|
hash to append to a formatted URL to https://github.com/nim-lang/Nim. The
|
||||||
``tools/nimweb.nim`` helper queries the current git commit hash during doc
|
``tools/nimweb.nim`` helper queries the current git commit hash during doc
|
||||||
generation, but since you might be working on an unpublished repository, it
|
generation, but since you might be working on an unpublished repository, it
|
||||||
also allows specifying a ``githash`` value in ``web/website.ini`` to force a
|
also allows specifying a ``githash`` value in ``web/website.ini`` to force a
|
||||||
|
|
|
||||||
|
|
@ -37,8 +37,8 @@ pragmas semantic checking of pragmas
|
||||||
|
|
||||||
idents implements a general mapping from identifiers to an internal
|
idents implements a general mapping from identifiers to an internal
|
||||||
representation (``PIdent``) that is used so that a simple
|
representation (``PIdent``) that is used so that a simple
|
||||||
id-comparison suffices to say whether two Nim identifiers
|
id-comparison suffices to establish whether two Nim
|
||||||
are equivalent
|
identifiers are equivalent
|
||||||
ropes implements long strings represented as trees for
|
ropes implements long strings represented as trees for
|
||||||
lazy evaluation; used mainly by the code generators
|
lazy evaluation; used mainly by the code generators
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -184,7 +184,7 @@ How the RTL is compiled
|
||||||
|
|
||||||
The ``system`` module contains the part of the RTL which needs support by
|
The ``system`` module contains the part of the RTL which needs support by
|
||||||
compiler magic (and the stuff that needs to be in it because the spec
|
compiler magic (and the stuff that needs to be in it because the spec
|
||||||
says so). The C code generator generates the C code for it just like any other
|
says so). The C code generator generates the C code for it, just like any other
|
||||||
module. However, calls to some procedures like ``addInt`` are inserted by
|
module. However, calls to some procedures like ``addInt`` are inserted by
|
||||||
the CCG. Therefore the module ``magicsys`` contains a table (``compilerprocs``)
|
the CCG. Therefore the module ``magicsys`` contains a table (``compilerprocs``)
|
||||||
with all symbols that are marked as ``compilerproc``. ``compilerprocs`` are
|
with all symbols that are marked as ``compilerproc``. ``compilerprocs`` are
|
||||||
|
|
@ -246,14 +246,14 @@ The symbol's ``ast`` field is loaded lazily, on demand. This is where most
|
||||||
savings come from, only the shallow outer AST is reconstructed immediately.
|
savings come from, only the shallow outer AST is reconstructed immediately.
|
||||||
|
|
||||||
It is also important that the replay involves the ``import`` statement so
|
It is also important that the replay involves the ``import`` statement so
|
||||||
that the dependencies are resolved properly.
|
that dependencies are resolved properly.
|
||||||
|
|
||||||
|
|
||||||
Shared global compiletime state
|
Shared global compiletime state
|
||||||
-------------------------------
|
-------------------------------
|
||||||
|
|
||||||
Nim allows ``.global, compiletime`` variables that can be filled by macro
|
Nim allows ``.global, compiletime`` variables that can be filled by macro
|
||||||
invokations across different modules. This feature breaks modularity in a
|
invocations across different modules. This feature breaks modularity in a
|
||||||
severe way. Plenty of different solutions have been proposed:
|
severe way. Plenty of different solutions have been proposed:
|
||||||
|
|
||||||
- Restrict the types of global compiletime variables to ``Set[T]`` or
|
- Restrict the types of global compiletime variables to ``Set[T]`` or
|
||||||
|
|
@ -286,7 +286,7 @@ We only know the root is ``someGlobal`` but the concrete path to the data
|
||||||
is unknown as is the value that is added. We could compute a "diff" between
|
is unknown as is the value that is added. We could compute a "diff" between
|
||||||
the global states and use that to compute a symbol patchset, but this is
|
the global states and use that to compute a symbol patchset, but this is
|
||||||
quite some work, expensive to do at runtime (it would need to run after
|
quite some work, expensive to do at runtime (it would need to run after
|
||||||
every module has been compiled) and also would break for hash tables.
|
every module has been compiled) and would also break for hash tables.
|
||||||
|
|
||||||
We need an API that hides the complex aliasing problems by not relying
|
We need an API that hides the complex aliasing problems by not relying
|
||||||
on Nim's global variables. The obvious solution is to use string keys
|
on Nim's global variables. The obvious solution is to use string keys
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue