File History
Not logged in

History of polemy/eval.d

2010-11-30
11:21
[f4751e4eb7df513a] part of check-in [3fb4d6f9ad] during @userdefinedlayer function evaluation, if lift(bottom) fails, the recursion is not memoized (user: kinaba branch: trunk) [diff] [annotate]
2010-11-28
08:46
[969111acf2042a22] part of check-in [576c494e53] fixed: literal "..." is now lifted in user-defined layers (user: kinaba branch: trunk) [diff] [annotate]
2010-11-27
23:28
[271574033e4f3a71] part of check-in [950fc6d3d4] no. lift _|_ for corecursion checking again. Current choices is, if it failed we instead assing _|_ itself. Maybe the better choice is to give up memoization when it failed to lift... (user: kinaba branch: trunk) [diff] [annotate]
23:23
[09f6f71388735bcb] part of check-in [005474ba5b] changed: not to lift _|_ (user: kinaba branch: trunk) [diff] [annotate]
21:49
[6063476e92f43069] part of check-in [a795c97dc3] changed Let.init to Let.vdef. IT IS VERY DANGEROUS TO USE .init MEMBER NAME in D!!!!!!!! (user: kinaba branch: trunk) [diff] [annotate]
20:46
[9460508c714f0a1b] part of check-in [203e4cb208] fixed automatic memoization bug (whole part of the contexts are now used as the memo key) (user: kinaba branch: trunk) [diff] [annotate]
00:13
[10da2d7378e56ec4] part of check-in [6760e0dd02] evaluator refactoring done. x6 speed up. (user: kinaba branch: trunk) [diff] [annotate]
2010-11-26
16:42
[8d6e708eceba536a] part of check-in [f7e9e77316] introduced "..." expression, and replaced the pattern match failure with this. (user: kinaba branch: trunk) [diff] [annotate]
16:14
[47affa2343c633ca] part of check-in [94f0382499] changed the semantics of def foo(x @macro) {}, the @macro-layered parameter. - in @macro( foo(e) ), e is run in @macro (this is ok) - in @value( foo(e) ), e is run in (rawmacro)!! - in @rawmacro( foo(e) ), e is run in (rawmacro)!! (user: kinaba branch: trunk) [diff] [annotate]
15:46
[1c0a1caee00496c7] part of check-in [552d43f567] one-by-one M&E memoizer (user: kinaba branch: trunk) [diff] [annotate]
14:29
[56f0a662740b0906] part of check-in [f8684f4d69] changed the desugaring of >>@macro x=e from >>@macro x=e in x to >>@macro x=e in "(macro definition)" for convenience during REPL interaction (user: kinaba branch: trunk) [diff] [annotate]
14:03
[74dd93745d781116] part of check-in [207cea338a] changed hiding mechanizem of x in let x = ... for @macro layer. Old: set(x,ValueLayer,undefined) Nee: set(x,NoopLayer,null) (user: kinaba branch: trunk) [diff] [annotate]
2010-11-25
02:44
[bc3c32f1d9aafc10] part of check-in [b993a8ad16] auto memo and re-run feature of non @value/@macro layers re-re-re-implemented. (user: kinaba branch: trunk) [diff] [annotate]
2010-11-24
22:22
[197c2cfb75326106] part of check-in [f9c31f3cd8] Fixed the null dereference bug when directly wrote "case 1 when 2: 3" in REPL. It was due to null LexPosition in the AST. Now AST.pos !is null is an invariant of AST. (user: kinaba branch: trunk) [diff] [annotate]
21:14
[bd6a863bd24c7016] part of check-in [3ae09b8cbf] changed if-then-else syntax (user: kinaba branch: trunk) [diff] [annotate]
20:20
[4eba423d1304ad73] part of check-in [153a14cec0] if-then-else without {}s. some cosmetic changes (user: kinaba branch: trunk) [diff] [annotate]
12:30
[e0978d70034e5fac] part of check-in [20be503cae] set up referece manual (user: kinaba branch: trunk) [diff] [annotate]
03:28
[cd1c3d2598ac30ce] part of check-in [ba11f1d551] fixed the macro scoping rules concerning non-macro let (user: kinaba branch: trunk) [diff] [annotate]
2010-11-23
22:55
[a7c677ad83621b47] part of check-in [2134cd44cc] further clean-up for polemy2d (user: kinaba branch: trunk) [diff] [annotate]
19:09
[ca0ab118700475a8] part of check-in [36c517dfc4] refactored d-value and polemy-value conversion (user: kinaba branch: trunk) [diff] [annotate]
18:36
[5a9949a1eb8839b1] part of check-in [b97bd4f713] automatic AST to table encoder (user: kinaba branch: trunk) [diff] [annotate]
16:42
[b119954d6ce43301] part of check-in [6ac127ddd0] new evaluator (user: kinaba branch: trunk) [diff] [annotate]
2010-11-22
00:48
[9a9618fb0277f966] part of check-in [f86026acb8] macro cache and automemoization reloaded. auto re-run implemented. but automemo and autorerun is currently disabled. we need Table.opCmp... we also need to think more about the memoization (user: kinaba branch: trunk) [diff] [annotate]
2010-11-21
23:24
[c85d31e67d8ceb4b] part of check-in [3995a5eb6a] added iikagen pattern match (user: kinaba branch: trunk) [diff] [annotate]
18:53
[0e6e0e9d77fcbedc] part of check-in [435fa085ec] refactored predefined layer names, and filled readme.txt. (user: kinaba branch: trunk) [diff] [annotate]
17:18
[27ad20bc14df9938] part of check-in [a5fe6233c1] layered parameters implemented (user: kinaba branch: trunk) [diff] [annotate]
01:35
[97875541a42dbc7a] part of check-in [3464a035ec] source code cleanup (user: kinaba branch: trunk) [diff] [annotate]
2010-11-20
23:29
[360da420d41dfbbf] part of check-in [060f267779] fixed the bug that the first declaration inside a function cannt be recursive: def foo() { def bar() { bar() }; bar() }; foo() # bar cannot be found (user: kinaba branch: trunk) [diff] [annotate]
23:04
[84ee94a6f293fac0] part of check-in [8e3db9ef20] macro worked! (user: kinaba branch: trunk) [diff] [annotate]
21:57
[4f24d3bd11889ec1] part of check-in [3f6f41b558] ast - table conversion (NOT AT ALL TESTED) (user: kinaba branch: trunk) [diff] [annotate]
18:20
[6db0ce492da06d00] part of check-in [515502e8d1] table get, init, ask expressions addded (user: kinaba branch: trunk) [diff] [annotate]
2010-11-13
21:16
[5c2f449580dd9555] part of check-in [5afe8e3f26] Memoization on non "@v" layer. Now simplest metalevel computation works!! Also, added -l option. (user: kinaba branch: trunk) [diff] [annotate]
14:38
[2bd159f2e71889e8] part of check-in [078444a806] additional primitives for doing typechecking (user: kinaba branch: trunk) [diff] [annotate]
13:58
[232a7f3469a1ed88] part of check-in [3a2762fca5] _isXXX (user: kinaba branch: trunk) [diff] [annotate]
13:32
[a63938dc88b0c424] part of check-in [8474ae68d9] rising mechanism (user: kinaba branch: trunk) [diff] [annotate]
12:55
[d315cdb0d9e5cf48] part of check-in [c368edbcb1] @@lay(x) { ... } declaration and value rising. (user: kinaba branch: trunk) [diff] [annotate]
11:48
[a16d8d322739557e] part of check-in [1c01f44f52] simplepatternmatch (user: kinaba branch: trunk) [diff] [annotate]
2010-11-11
11:40
[9d70fd9339035713] part of check-in [8e6fa743ee] added layered parameter AST (only AST. no parser and no evaluator). (user: kinaba branch: trunk) [diff] [annotate]
2010-11-10
21:38
[ab3a0c217b77981b] part of check-in [38fcc662be] cleaned up documentation comments (user: kinaba branch: trunk) [diff] [annotate]
2010-11-09
23:59
[050eab1743a45f8b] part of check-in [7465fcdd7f] layered function invocation (user: kinaba branch: trunk) [diff] [annotate]
23:24
[62b3543f769fc9c9] part of check-in [2459e9a821] refactored eof-driven REPL (user: kinaba branch: trunk) [diff] [annotate]
19:28
[cdb82702a34f8def] part of check-in [dc93ad8cf6] layered exec expression @lay(...) added (user: kinaba branch: trunk) [diff] [annotate]
16:27
[73d121b46bcd4718] part of check-in [0f02103885] let, var, def became layer-neutral definition (not @val). scope splitting (let x=1;let x=2;let y=(let x=3);x is 1) is correctly implemented now. (user: kinaba branch: trunk) [diff] [annotate]
15:02
[c3d65954914654a5] part of check-in [7de80acfb8] Added ultra tenuki REPL (user: kinaba branch: trunk) [diff] [annotate]
14:19
[1a40d715cf0caee4] part of check-in [8de5b49cdf] split tricks module into a separate package. (user: kinaba branch: trunk) [diff] [annotate]
2010-11-08
20:42
[003971cb94b55966] part of check-in [5e407d7cf8] Lexer Refactored so that it can accpet multi-symbol token (user: kinaba branch: trunk) [diff] [annotate]
17:45
[baaa1d71de4dc9d8] part of check-in [8d297342aa] Replaced Token.Kind with bool quoted (user: kinaba branch: trunk) [diff] [annotate]
17:01
[bcefce47daacc4a5] part of check-in [b0d8d7875b] polemy.runtime renamed into polemy.value. Also, in process of changes to use unittest helpers. (user: kinaba branch: trunk) [diff] [annotate]
01:33
[5b490c90826e242f] part of check-in [172a537bea] operator < and > for integers, for writing Fibonacci function. (user: kinaba branch: trunk) [diff] [annotate]
01:31
[70846dfa5638c8e7] part of check-in [633e700889] If-expression implemented. Factorial now works. (user: kinaba branch: trunk) [diff] [annotate]
00:03
[f2bd29fa05629861] part of check-in [820e7198cc] Made helloworld work. (user: kinaba branch: trunk) [diff] [annotate]
2010-11-07
23:34
[cea762cacb86424f] part of check-in [0569f7b8c2] - Added function literal evaluator (i.e., closure). - Workaround for d2stacktrace's infinite-loop bug. (when std.demangle.demangle use exception inside it, it will go into an infinite loop. to avoid this, I choose to unset TraceHandler during stacktrace generation. This is far from the complete solution, but at least it should work as expected under single-thread environment...) (user: kinaba branch: trunk) [diff] [annotate]
21:46
[c5ee9ab6830c78bd] part of check-in [3f5dc76a75] Added funcall expression parser and function literal parser. (user: kinaba branch: trunk) [diff] [annotate]
21:20
[0a7ac481ec249b42] part of check-in [5d4cb856d8] Added FuncallExpression (user: kinaba branch: trunk) [diff] [annotate]
19:32
[c82fe33ef6c72ef2] part of check-in [4198578702] Changed several documentation comments into ddoc compatible ones. (user: kinaba branch: trunk) [diff] [annotate]
19:18
[bedecb22284cfae9] part of check-in [423f308350] Initial commit. Just for setting up the environment. (user: kinaba branch: trunk) [annotate]