| Age | Commit message (Collapse) | Author |
|
so, in particular, "hex" now builds with the new syntax
to implement this, "enchant" now passes the full structure through to "output-contents", which makes it easier to extend.
additionally, when inscribing, the source of "evoke" needs to be included in the scope of the hex transform even when the program being compiled is something else, so that it can carefully interfere with the other transforms. this is now implemented, though in an inelegant way that could do with some cleanup. (that last sentence could be the slogan of the whole project :D)
Change-Id: I553afadba350a62d6e97a21df2b3e821685b9c0c
Force-Push: yes
|
|
Force-Push: yes
Change-Id: Id3bfde4a2053c9f07fd596def8381afc505949eb
|
|
the migration process was a pain - order of operations for the rebuild was rough to figure out - but the actual implementation is way easier than all that stack juggling
Force-Push: yes
Change-Id: I8bbe4dfb39e5f0ed69f9759e87ac6ab79ec7558b
|
|
this also includes some slightly better facilities for handling temporary strings
Change-Id: Idf5e6fd8ade675d7ceb73264d10895fe8da578d6
Force-Push: yes
|
|
it looks better this way, subjectively
Force-Push: yes
Change-Id: Iab60ad726cd8711326a19839bd6f8141238f23a7
|
|
you may infer from the size of the CL that we've been wanting this for QUITE A WHILE
Force-Push: yes
Change-Id: Iaa6ff8f40bd4020a75b81aadd87874cc8d512123
|
|
this word is like ' and is shorthand to look up an execution token
Force-Push: yes
Change-Id: I672eb0c56f8eadc02a8aca14c2b5c6028a218b1b
|
|
it's more declarative now. however, at the moment it only produces the one type of executable, so it's only for building "evoke", not "hex". hopefully that can be fixed soon.
Change-Id: Id970b9952fcd73ba6da4fa503ae2f784afe1b8a7
Force-Push: yes
|
|
Force-Push: yes
Change-Id: I1418c077e16cd9d7d1e1ac99ff85e5e78b38768d
|
|
Force-Push: yes
Change-Id: I94592083435e024d9a87122f4d5529cdb98f8e06
|
|
this means it's now always available
it does make evoke.hex significantly larger!
Force-Push: yes
Change-Id: I4017b2a666fd456b851dc1b77d1ee7ef5360b35b
|
|
this will help with the boot-source
there's a lot of nuanced decisions that go into this; the comments explain in depth
Change-Id: I391c937a04398115849f4308940d3b4df519c9ab
Force-Push: yes
|
|
Change-Id: I2a903031c08c1182c0c4811e7b137c2db08195fe
Force-Push: yes
|
|
and use it where appropriate
this substantially reduces the runtime of the hex transform
Change-Id: I910dd3bfaf669ff2c96646d52664824268025108
Force-Push: yes
|
|
now strings no longer have to be a hardcoded feature, though they still are.
this was part of a larger exploration most of which turned out not to be the best immediate direction, so the parts that are worth keeping are being checked in now to allow exploring in a different direction.
Force-Push: yes
Change-Id: Iafe70bd5b3f5756e1d9f3c0b400d7644d3149054
|
|
this will allow us to have compiled-in code that wouldn't run under the transforms, though we don't add anything of substance just yet
this strategy was used early in bring-up, in the historical flatassembler version of Evocation, so the design space of it is already well-explored in Irenes' head. how pleasant. :)
Force-Push: yes
Change-Id: I722cddb77657df9ca518c0d9841aa587bf63feb3
|
|
and rename one, linux-dynamic.e to language/dynamic/linux.e.
also make sure all references in comments and documentation refer to the new locations and names.
this directory structure reflects code organization which had existed in Irenes' head, but was likely not obvious to other readers. now hopefully it is more discoverable.
Force-Push: yes
Change-Id: Icfef3eae812a50fe20202191999e68e1f7db445a
|