-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTODO
16 lines (16 loc) · 879 Bytes
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
- call/1 has to be implemented properly. Current plan:
- Implement in PIR, as normal predicate.
- The input argument is then converted to a goal (this requires refactoring
the compiler to move PAST-generation logic from Parrotlog::Compiler to
Term).
- Use PAST::Compiler to create POST, POST::Compiler to get PIR, and
compreg('pir') to get the PIR compiled to bytecode (see Rakudo's
src/cheats/eval.pm for how to embed it in a lexical scope).
- Invoke the callable.
- Ideally, the compiler should flow differently.
- Any file arguments are compiled as Prolog text
- Any -e arguments, and anything input on the REPL is run as a query
- Maybe it's possible to implement the REPL in Prolog, once enough of
the scaffolding is in place?
- Ultimately, this might be best done by adding a few more points where
HLL::Compiler can be extended.