blob: e3433b3966e32551347cffb45c1fa10e7d4872f9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
execution path:
parse the entire file recursively
imports are definitely inline
what I'm trying to resolve is:
can the entire thing be parsed and then executed, or do the objects
need to be able to take into account the results of execution?
most other languages make a clear differentation between values
and executables, so why shouldn't we? as long as we support some
kind of executable, it should be fine
i need to keep in mind that the definitions of operations and objects
will not actually change as a result of execution, merely the details
does this matter?
objects are created during parsing
this means that i have the choice of:
--not creating operations at parse time
--dealing with this nasty interface to parse-time operations
if we don't have this nasty interface, then execution can't affect
the contents of operations
would that make sense? a file with multiple operations whose
different operations can change the values
here's the crucial question:
is there a difference between executing the code and performing the operations?
|