23 lines
831 B
Markdown
23 lines
831 B
Markdown
## Async conversion
|
|
|
|
convert host to async non-send
|
|
|
|
convert extension's SysCtx to a typed context bag
|
|
|
|
## alternate extension mechanism
|
|
|
|
The Macro extension needs to be in the same compilation unit as the interpreter because the interpreter needs to proactively access its datastructures (in particular, it needs to generate MacTree from TokTree)
|
|
|
|
Ideally, it should reuse `orchid-extension` for message routing and decoding.
|
|
|
|
`orchid-host` accepts extensions as `impl ExtensionPort`
|
|
|
|
## Preprocessor extension
|
|
|
|
Must figure out how preprocessor can both be a System and referenced in the interpreter
|
|
|
|
Must actually write macro system as recorded in note
|
|
|
|
At this point swappable preprocessors aren't a target because interaction with module system sounds complicated
|
|
|
|
Check if any of this needs interpreter, if so, start with that |