Commit Graph

59 Commits (e6a6ac035bdbffde8da60334597baf26ef18a7f3)

Author SHA1 Message Date
Slava Pestov 6c0986f8b2 Add definition mixin in definitions vocab to replace hard-coded union in ui.tools.operations; add ?execute to kernel to replace dup word? [ execute ] when calls in unicode.breaks and opengl 2009-03-26 21:27:45 -05:00
Slava Pestov 356bff6424 kernel doesn't need to depend on classes.tuple.private 2009-03-23 01:18:39 -05:00
Slava Pestov be4fb1e7d9 Move call( and execute( to core 2009-03-16 20:11:36 -05:00
Samuel Tardieu 087d931c36 Remove the tail argument from do/until/while 2009-02-18 02:41:14 +01:00
Samuel Tardieu 3c859a77bf Simplify most 2009-02-18 01:56:54 +01:00
Slava Pestov a550c9874c kernel: add {bi,tri}-curry{,*,@} combinators from new_ui branch 2009-02-12 04:23:35 -06:00
Slava Pestov 7780c5d983 Fix two small typos 2009-01-27 05:05:46 -06:00
Slava Pestov af49278d3f Add 2tri* and 2tri@ combinators, clean up (3each), and fix failing unit test for 3map 2009-01-05 18:12:34 -06:00
Slava Pestov b154b21aaa Add new until combinator, and a new do word which acts like a modifier: do while, do until for loops which iterate at least once 2008-12-08 23:37:18 -06:00
Slava Pestov a56d480aa6 Various optimizations leading to a 10% speedup on compiling empty EBNF parser:
- open-code getenv primitive
- inline tuple predicates in finalization
- faster partial dispatch
- faster built-in type predicates
- faster tuple predicates
- faster lo-tag dispatch
- compile V{ } clone and H{ } clone more efficiently
- add fixnum fast-path to =; avoid indirect branch if two fixnums not eq
- faster >alist on hashtables
2008-12-06 09:16:29 -06:00
Slava Pestov e304d3c9f8 Local DCE 2008-12-04 06:02:49 -06:00
Slava Pestov c27faa3de4 Remove 3compose: nothing in core used it, and basis code can use fry 2008-12-02 00:25:23 -06:00
Slava Pestov 6466ebaed7 Add comment explaining what's going on 2008-11-23 02:46:43 -06:00
Slava Pestov a4d9cdfeb3 Refactor all usages of >r/r> in core to use dip, 2dip, 3dip
Non-optimizing compiler now special-cases dip, 2dip, 3dip following a
literal quotation: this allows us to break the dip/slip meta-circle
without explicit calls to >r/r>
2008-11-23 02:44:56 -06:00
Slava Pestov d62a6c4b09 Minor core cleanup 2008-11-18 22:08:02 -06:00
Slava Pestov 1c1333fbe9 Compile not and >boolean as branchless intrinsics by having the CFG builder detect certain code patterns 2008-11-06 09:09:21 -06:00
Slava Pestov af6b8c4e97 Merge branch 'master' into new_codegen 2008-10-20 01:59:52 -05:00
Slava Pestov f721105993 Add 3dip 2008-10-20 01:58:17 -05:00
Slava Pestov c54668596d More efficient hi-tag accessor 2008-10-11 13:58:41 -05:00
Slava Pestov c19f2257f4 Fix permission bits 2008-10-02 08:34:49 -05:00
Slava Pestov ac97c1e14c Working on removing delegation slot 2008-09-02 23:21:08 -05:00
Slava Pestov a4ac751605 Starting to remove delegation 2008-08-22 23:20:49 -05:00
Slava Pestov 9bd8e88318 Minor improvement to xor word 2008-08-01 17:22:58 -05:00
Slava Pestov d66f887736 Create basis vocab root 2008-07-28 22:03:13 -05:00
Slava Pestov c6915b1023 Working on tuple slot propagation 2008-07-25 02:07:45 -05:00
Slava Pestov 53f4d365b7 'not', 'and' are no longer inline to enable compiler optimizations 2008-07-23 00:16:41 -05:00
Slava Pestov ac2bf0b87d Adding inline recursive declarations 2008-07-18 19:22:59 -05:00
Slava Pestov 776b245c39 Cleaning up some usages of -roll 2008-07-08 13:22:57 -05:00
Slava Pestov f7b7001f39 BOA constructors now check types 2008-06-30 01:44:58 -05:00
Slava Pestov b36e06d0d6 Builtinn types now use new slot accessors; tuple slot type declaration work in progress 2008-06-28 02:36:20 -05:00
Slava Pestov 685d53e264 Add gather word; faster 'implementors' using inverted index 2008-06-12 05:49:46 -05:00
Slava Pestov 4ca59470ce Minor cleanup 2008-06-07 10:40:40 -05:00
Slava Pestov 56852d3ab8 Little cleanups 2008-05-22 15:45:30 -05:00
Slava Pestov f9db3f8b50 Documentation updates 2008-05-11 17:42:48 -05:00
Doug Coleman 15402ed1b4 core changes:
index* -> index-from
last-index* -> last-index-from
1 tail -> rest
1 tail-slice -> rest-slice
subset -> filter
prepose
find* -> find-from
find-last* -> find-last-from
before, after generic, < for integers
make between? work for timestamps
2008-04-25 23:12:44 -05:00
Doug Coleman 30b75a797a construct-boa -> boa
construct-empty -> new
2008-04-13 15:06:09 -05:00
Slava Pestov d5667fd4b1 Better hashcodes 2008-04-05 07:35:51 -05:00
Slava Pestov 9e227d394e Remove redundant code 2008-04-04 05:09:58 -05:00
Slava Pestov 5346e1899f Working on call-next-method, and identity-tuple 2008-04-02 21:27:49 -05:00
Slava Pestov 8fde3fb914 More inheritance debugging 2008-04-02 18:50:21 -05:00
Slava Pestov fa8b578370 Rewriting method dispatch to support inheritance 2008-04-02 00:28:07 -05:00
Slava Pestov 2d19b38683 Documentation fixes 2008-03-30 00:40:43 -05:00
Slava Pestov 48501f1f6e Documentation fixes 2008-03-29 23:11:45 -05:00
Slava Pestov c22af5c7a6 Rename 2apply to bi@ 2008-03-29 20:36:58 -05:00
Slava Pestov adb1dd14d0 Rename tuples vocab to classes.tuple for consistency 2008-03-29 03:34:48 -05:00
Slava Pestov 1f3e6fd0b7 combinators.cleave is now core 2008-03-28 23:00:20 -05:00
Slava Pestov e1ad21a439 Working on shapes 2008-03-26 03:57:48 -05:00
Slava Pestov dd9ace7707 Don't need version number anymore 2008-02-26 15:24:30 -06:00
Slava Pestov 98d8621ac1 First class compose, curry is now a tuple class 2008-02-11 13:50:29 -06:00
Slava Pestov e66e6d70e4 Moved dispatch to sequences.private 2008-02-11 01:19:53 -06:00