Commit Graph

60 Commits (b61f9f6903359282f8e63adf43372a61d3eec3b1)

Author SHA1 Message Date
Doug Coleman b61f9f6903 Forget some classes after unit tests so that running "classes" test succeeds multiple times in a row 2011-10-24 16:59:46 -07:00
Doug Coleman 7bfbe17861 Rename c-type to lookup-c-type. Fixes #230. 2011-10-24 14:37:24 -07:00
John Benediktsson fd853f9958 Cleanup some lint warnings. 2011-10-15 19:19:44 -07:00
Doug Coleman 921c81d92a Document reset-class, forget-class, forget-method. Use lookup-method in see, fix gpu.render for method->lookup-method renaming. Fixes #232. 2011-10-04 10:40:48 -07:00
Doug Coleman e75e2b1f14 Make M\ throw an error upon lookup failure. Change method -> ?lookup-method, lookup-method is the throwing version of ?lookup-method. Fixes #229. 2011-10-03 15:49:49 -07:00
Doug Coleman 0a198ccdf1 Less use of eval( in unit tests 2011-10-03 13:54:34 -07:00
Doug Coleman f82de335e5 Fix using list in classes.struct tests 2011-10-03 01:06:02 -07:00
Doug Coleman b78fa2c9d9 Define reset-class for struct-classes, add unit tests. Fixes #206. 2011-10-02 20:08:23 -07:00
John Benediktsson 0e3d598e69 specialized-arrays: performed some cleanup.
Specifically,
    •   Created >c-array to be replacement for >T-array.
    •   Created cast-array to be generic replacement for all T-array-cast words.
    •   Created c-array@ to be generic replacement for T-array@ words.
    •   Replaced usages of <T-array> with T <c-array>
    •   Replaced usages of <direct-T-array> with T <c-direct-array>
    •   Replaced usages of >T-array with T >c-array
    •   Replaced usages of T-array-cast with T cast-array
    •   Replaced usages of malloc-T-array with T malloc-array.
    •   Removed malloc-T-array.
    •   Removed T-array-cast.
    •   Removed T-array@.
    •   Removed >T-array.

I also added (but didn't change any code to use):
    •   T c-array-type, returns T-array
    •   T c-array?, returns T-array?
    •   c-array{ T ... }, returns T-array{ ... }

Bootstraps just find on Mac OS X.  Also `load-all test-all` works for me.
2011-09-26 11:37:51 -07:00
John Benediktsson 9da1297c57 classes.struct: add test cases for see on structs. 2011-09-25 17:25:28 -07:00
Slava Pestov eea41b6d17 Merge classes.struct.packed into classes.struct and remove duplication 2011-08-25 21:02:25 -07:00
Erik Charlebois 1ed2bc6231 32 and 64 bit Linux PPC support 2011-05-23 23:36:14 -04:00
Slava Pestov 206508e016 classes.struct: fields with a type that's an array of pointers (eg int*[3]) now work 2010-08-15 02:44:21 -07:00
Slava Pestov bd473cb970 classes.struct: make hashcode and equal? work on structs wrapping null pointers, to fix another obscure issues arising with tuple arrays 2010-08-06 00:15:22 -07:00
Slava Pestov c7e5055eb3 classes.struct: remove conflict marker from unit tests 2010-06-22 14:35:49 -04:00
Doug Coleman 2403486156 conflicts 2010-06-16 16:23:29 -05:00
Joe Groff 99bc1b483e classes.struct: fix some bugs in binary-zero?, add unit tests 2010-06-16 16:23:29 -05:00
Joe Groff 2ab97370da alien.data: make binary-zero? public and move it from classes.struct.private 2010-06-10 17:05:43 -07:00
Joe Groff 7e0ade0972 classes.struct: fix some bugs in binary-zero?, add unit tests 2010-06-10 16:49:59 -07:00
Joe Groff e45373d1ce classes.struct: implement "group-words" method on struct-class so that struct classes can be used as a CONSULT: protocol 2010-06-08 12:52:46 -07:00
Slava Pestov ae24eb8f97 alien.c-types: cleanup 2010-05-04 19:33:55 -04:00
Slava Pestov f733693ec7 classes.struct, specialized-arrays: fix unit tests to work when forget-tests? is on 2010-04-12 18:29:47 -07:00
Joe Groff 0f34795200 classes.struct: raise an error in STRUCT: if there are duplicate slot names 2010-02-25 11:52:21 -08:00
Joe Groff 96ab4492d2 rename current string-mangling "char*" to "c-string". char* is now just a boring old pointer to char 2010-02-23 11:42:02 -08:00
Joe Groff 4d89097467 add missing using to classes.struct tests 2010-02-21 22:04:23 -08:00
Joe Groff 64e6f08b59 use a "pointer" wrapper tuple to indicate pointer types instead of the current slipshod approach 2010-02-21 16:27:36 -08:00
Joe Groff 75359a59d5 remove string c-types from classes.struct tests 2010-02-21 13:01:29 -08:00
Joe Groff 866f6ada18 ditch string c-types 2010-02-21 10:58:21 -08:00
Slava Pestov 1100861204 Add support for final tuple classes which cannot be subclassed: TUPLE: foo ... ; final 2010-02-18 02:19:57 +13:00
Slava Pestov 08b6ebc7fa Factor source files should not be executable 2009-11-21 17:50:43 -06:00
Slava Pestov d630e1494c Fix struct field alignment on PowerPC 2009-11-10 19:34:14 -06:00
Daniel Ehrenberg 6b8233e350 Refactoring bitfields to not use number tower 2009-10-07 21:35:12 -05:00
Daniel Ehrenberg 635aa1860c Adding bit fields to STRUCT: 2009-10-07 01:43:32 -05:00
Doug Coleman 026761ed62 Merge branch 'master' of git://factorcode.org/git/factor
Conflicts:
	basis/classes/struct/struct-tests.factor
	basis/functors/functors-tests.factor
	basis/specialized-arrays/specialized-arrays-tests.factor
2009-09-20 23:02:49 -05:00
Doug Coleman 47fab85a00 replace usages of <" with """ 2009-09-20 22:42:40 -05:00
Joe Groff 4a1422e7fe move some allocation words that don't really have much to do with c types out of alien.c-types into a new alien.data vocab 2009-09-17 22:36:05 -05:00
Joe Groff 18c59bd43e update classes.struct tests to use word c-types 2009-09-15 22:43:11 -05:00
Joe Groff 334e93bbbf get things to a point where they bootstrap again 2009-09-15 21:43:18 -05:00
Joe Groff fa79e86743 fix failing classes.struct tests 2009-09-15 19:10:05 -05:00
Joe Groff 02b797f11b struct classes now make their own C type without help from alien.structs. remove alien.structs dependencies from everywhere outside of alien and compiler, and have the FFI handle both alien.structs and classes.struct c-types 2009-09-15 17:38:49 -05:00
Slava Pestov 8aecdf13ab classes.struct: fix some bugs
- STRUCT: foo<ENTER> in listener threw an error
- S{ did not throw an error when used with non-struct types
- attempting to subclass a struct class now fails
- forgetting a struct class now removes the corresponding C type
- 'see'ing a struct class now indents correctly
2009-09-10 15:59:27 -05:00
Slava Pestov 527db8995a Specialized array overhaul
- Replace hand-written specialized-arrays.* subvocabularies with new system; instead of USE:ing specialized-arrays.T, do SPECIALIZED-ARRAY: T
- Ditto for specialized-vectors; use SPECIALIZED-VECTOR:
- io.mmap.functor: removed entirely, use <mapped-array> instead
- struct-arrays and struct-vectors have been removed because specialized arrays and vectors subsume them entirely
2009-09-09 22:33:34 -05:00
Slava Pestov 0b35d79aee compiler.tree.propagation.call-effect: stronger call( inlining; now can inline 'a [ b ] curry call(' where 'a' is literal, [ b ] doesn't infer, but [ a b ] does infer. This simplifies classes.struct:memory>struct 2009-09-07 17:45:03 -05:00
Slava Pestov 9fca70d965 Fix unit tests for specialized-arrays.direct change 2009-09-05 02:26:06 -05:00
Slava Pestov 430f4a83f9 specialized-arrays.direct is no more; instead, every specialized-array.<foo> vocabulary has a <direct-T-array> constructor 2009-09-04 22:01:55 -05:00
Joe Groff f58abdcea2 put a more useful mirror over structs 2009-08-31 22:26:03 -05:00
Joe Groff a3b54377e2 update classes.struct tests, and make struct prettyprinting work again 2009-08-31 20:46:33 -05:00
Joe Groff 57ed942dfa hashcode* for structs 2009-08-31 10:51:45 -05:00
Joe Groff 69f258c521 refactor struct slot parsing so that there's a <struct-slot-spec> word for easily constructing struct slots outside classes.struct 2009-08-30 22:37:37 -05:00
Joe Groff 486f04607c Merge branch 'master' of git://factorcode.org/git/factor 2009-08-30 21:14:33 -05:00