Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 17:24:16 < notk0> I am looking at the lambda_switch code and what does sw_consts and sw_blocks
- represent?
- 17:24:30 < notk0> sw_consts are the constructors and blocks the code to execute in case of a
- match?
- 17:24:31 < notk0> and lambda_switch =
- 17:24:31 < notk0> { sw_numconsts: int;
- 17:24:31 < notk0> sw_consts: (int * lambda) list;
- 17:24:31 < notk0> sw_numblocks: int;
- 17:24:32 < notk0> sw_blocks: (int * lambda) list;
- 17:24:34 < notk0> sw_failaction : lambda option}
- 18:16:13 -!- notk0 [~notk0@unaffiliated/notk0] has quit [Quit: Leaving]
- 18:33:23 < def-lkb> notk0: lambda_switch makes the distinction between constant constructors
- (without arguments, like None) and constructors with arguments (like Some
- v)
- 18:34:58 < def-lkb> constant constructors are represented as integers, so I guess sw_consts is
- a list associating the code to execute to a particular integer value
- 18:37:09 < def-lkb> blocks are represented as pointers to a memory area with a tag and one or
- more words/values : sw_blocks works the same way except that there is one
- more indirection and the dispatch is done on the tag value
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement