John Benediktsson
|
ceb75057da
|
change ERROR: words from throw-foo back to foo.
|
2015-08-13 16:13:05 -07:00 |
Doug Coleman
|
02008979d9
|
factor: Change ERROR: foo ; to define ``throw-foo`` instead of having ``foo`` throw implicitly. The old ``foo`` still throws implicitly because this is a big change to get right in one patch, but it should be removed soon.
|
2015-08-12 15:26:18 -05:00 |
Doug Coleman
|
5a9e7cd374
|
classes.builtin: Add the BUILTIN: keyword which lets builtin classes show up in source files. Probably could use save-location to allow editing, but it seemed to break things.
|
2013-03-10 12:05:38 -07:00 |
John Benediktsson
|
f70932040d
|
classes.builtin: fold type>class.
|
2012-09-21 11:44:14 -07:00 |
John Benediktsson
|
559b5bfa5b
|
using the new H{ } make.
|
2012-07-19 09:50:09 -07:00 |
Doug Coleman
|
cab0369fec
|
classes: Make methods dispatch on maybes. Fix a couple bugs in the implementation of maybe. classoid? is now a dumb test if an object could be a well-formed classoid; valid-classoid? tests for well-formedness. Move maybe tests. Make pprint* work better on methods.
|
2011-11-22 15:12:20 -08:00 |
Doug Coleman
|
f9257959fd
|
Rename class to class-of
|
2011-10-24 06:47:42 -05:00 |
Slava Pestov
|
0f4c5d2bff
|
classes.algebra: make it work better to fix bug reported by Sascha Matzke
|
2010-07-29 19:57:23 -04:00 |
Slava Pestov
|
e929d906ce
|
classes: If a tuple class with subclasses is redefined into something that's not a tuple class, subclasses are changed to inherit from 'tuple' instead of being forgotten. Also, changing the metaclass of a union or intersection member no longer removes it from the union or intersection. Finally, make some internal words private
|
2010-02-01 02:48:39 +13:00 |
Slava Pestov
|
e6d1388dcc
|
Clean up class algebra a bit, and change mixins to recompile less, taking advantage of new semantics
|
2010-01-30 09:28:52 +13:00 |
Slava Pestov
|
c693587018
|
classes.algebra: cleanup
|
2009-11-10 17:41:47 -06:00 |
Slava Pestov
|
e4ad642134
|
vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress)
|
2009-11-02 04:25:54 -06:00 |
Slava Pestov
|
030b1b816c
|
Add inline declarations for various assorted methods
|
2009-08-17 22:32:21 -05:00 |
Slava Pestov
|
926c46841b
|
classes.intersection: make flatten-class more accurate. It is still not perfect, but it fixes the case where a generic word has a method on a tuple class, and another method on an intersection of a mixin with another tuple classes
|
2009-08-07 22:30:57 -05:00 |
Slava Pestov
|
a14e5a4a3b
|
Better local cache
|
2009-04-26 08:06:37 -05:00 |
Slava Pestov
|
37e278ed02
|
Use [ ] [ ] map-reduce instead of unclip [ ] reduce
|
2009-04-06 17:50:54 -05: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 |
Doug Coleman
|
b1d26e100a
|
use if/when/unless-empty, docs
|
2008-09-06 17:10:32 -05:00 |
Slava Pestov
|
48671cfca7
|
Fix classes.algebra unit tests
|
2008-07-05 04:42:58 -05:00 |
Slava Pestov
|
44c1c1f679
|
Move tuple-class to classes.tuple where it belongs
|
2008-07-05 00:59:39 -05:00 |
Slava Pestov
|
f7b7001f39
|
BOA constructors now check types
|
2008-06-30 01:44:58 -05:00 |
Slava Pestov
|
0be00f03e6
|
Mirrors now check sot t slot types, support type coercion for setters, instance? now infers, better transform for 'new', more efficient 'case' where keys are all wrappers
|
2008-06-29 02:12:44 -05:00 |
Slava Pestov
|
5a29b2e273
|
Class linearization
|
2008-05-02 02:51:38 -05:00 |
Slava Pestov
|
cc2f512287
|
New classes.builtin vocab
|
2008-04-03 21:19:20 -05:00 |