Commit Graph

2501 Commits (29404db2d967431533b8116c94f2168b5add3fc2)

Author SHA1 Message Date
Slava Pestov d5bc1ceca2 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 d9ebfe5f48 syntax: improve T{ docs 2009-09-10 15:53:14 -05:00
Slava Pestov 7f2e2b1777 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 924ccca457 sequences: privacy please 2009-09-08 16:25:41 -05:00
Joe Groff f2212acd46 Merge branch 'master' into strong-typing 2009-09-08 15:53:20 -05:00
Slava Pestov a0e1af5891 Merge branch 'master' of git://factorcode.org/git/factor 2009-09-08 14:22:52 -05:00
Doug Coleman b9eb3a791f deprecating nth for integers is annoying 2009-09-08 14:18:26 -05:00
Slava Pestov bbca00e2ae Fix conflicts 2009-09-07 23:51:25 -05:00
Jon Harper 1c97d33854 Fix documentation errors 2009-09-06 19:00:03 +09:00
Joe Groff 1bc97b4624 add unit tests for comparisons against nan 2009-09-03 17:27:06 -05:00
Slava Pestov e3b967fe67 Merge branch 'master' of git://factorcode.org/git/factor 2009-09-02 06:22:44 -05:00
Slava Pestov 389f47086a classes.tuple: don't run out of memory inside 'instances' quotation if optimizing compiler is off 2009-09-02 05:19:20 -05:00
Joe Groff 65fa9cf301 Merge branch 'master' into strong-typing 2009-09-01 21:35:29 -05:00
Joe Groff 1106fb10f1 let's not forget about hex literals 2009-09-01 21:28:23 -05:00
Joe Groff dc0944bad1 Merge branch 'master' into strong-typing 2009-09-01 21:18:50 -05:00
Joe Groff 1a04bc1124 require numeric literals to begin and end with a digit/decimal point so that stuff like "," and "1," don't parse as numbers 2009-09-01 21:14:26 -05:00
Joe Groff 19b10fb85e bring back ( x: type y: type -- ) stack effect syntax, and automatically hint words based on types in their declared effect 2009-09-01 14:39:22 -05:00
Doug Coleman 26cc551049 fix another tuple definition bug 2009-09-01 11:36:06 -05:00
Doug Coleman d46d063f5f inheriting from itself would hang a tuple definition. only breaks if tuple is being redefined 2009-09-01 04:02:44 -05:00
Slava Pestov ab45402d04 Minor doc improvements 2009-08-31 05:46:57 -05:00
Doug Coleman d88cdffa47 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-29 23:39:20 -05:00
Slava Pestov ec70e1d714 More minor documentation tweaks 2009-08-30 06:32:20 -05:00
Doug Coleman 0be2e17246 put a method on M\ tuple string>alien that calls underlying>> 2009-08-29 19:55:27 -05:00
Joe Groff d26735c98f mark integer sequence methods as deprecated 2009-08-29 10:29:41 -05:00
Slava Pestov 2bb6293217 compiler: add fixnum-min/max intrinsics; ~10% speedup on benchmark.yuv-to-rgb 2009-08-28 19:02:59 -05:00
Slava Pestov d957ae4e44 Performance improvements to make struct-arrays benchmark faster
- improved optimization of ##unbox-any-c-ptr on ##box-displaced-alien; convert it to ##unbox-c-ptr where possible using class info stored in the ##bda instruction
- make fcos, fsin, etc inline again; everything in math.libm inline again, except for fsqrt which is an intrinsic
- convert min and max on floats to float-min and float-max
- make min and max not inline, so that the above can work
- struct-arrays: rice a bit so that more fixnums come up
2009-08-28 05:21:16 -05:00
Doug Coleman e40ac73085 fix typo in gensym reported by mnestic 2009-08-27 16:10:00 -05:00
Doug Coleman 9a876a5255 remove duplicate usings 2009-08-26 22:23:03 -05:00
Doug Coleman bbcf08cdc3 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-26 09:15:33 -05:00
Joe Groff 75b3bc655a allow alien.strings:alien>string to take an object with underlying>> slot 2009-08-26 09:13:30 -05:00
Doug Coleman 3a5c7d8908 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-25 09:33:42 -04:00
Slava Pestov c925724d7b Improve destructors docs, fix bug where debug-leaks? wasn't being switched off 2009-08-24 21:44:48 -05:00
Slava Pestov e44a0158e6 tools.destructors: leaks now tracks leaks globally 2009-08-24 20:45:06 -05:00
Slava Pestov a2529717ba Merge branch 'master' of git://factorcode.org/git/factor 2009-08-24 20:34:15 -05:00
Slava Pestov adc154e06b destructors: already-unregistered error had the wrong content, also don't throw an error when disposing a disposable twice 2009-08-24 20:27:22 -05:00
Slava Pestov b12bbaf7ec tools.destructors: destructors. and leaks words now output a 'show instances' link which lists all relevant disposables 2009-08-24 20:21:38 -05:00
Joe Groff 54ff361331 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-24 18:04:44 -05:00
Doug Coleman 16ad61021f Merge branch 'master' of git://factorcode.org/git/factor 2009-08-24 09:58:48 -04:00
Slava Pestov 46045c882e Disposables are now registered in a global disposables set. To take advantage of this, subclass disposable instead of providing a disposed slot and call new-disposable instead of new. tools.disposables defines two words, 'disposable.' and 'leaks', to help track down resource lifetime problems 2009-08-24 02:26:13 -05:00
Doug Coleman bea1e3732e revert replicate change again...the world is not ready 2009-08-23 01:00:46 -04:00
Doug Coleman f18aef2afb Merge branch 'master' of git://factorcode.org/git/factor 2009-08-22 21:24:02 -04:00
Doug Coleman 3dce2eda19 use iota in replicate 2009-08-22 21:00:18 -04:00
Doug Coleman 7b7f22fae2 Revert "use iota in replicate"
This reverts commit 88d1f0d78a.
2009-08-22 20:59:56 -04:00
Doug Coleman 87a6e9cb31 use iota in replicate 2009-08-22 20:59:36 -04:00
Doug Coleman 679a7c9b01 temporary fix for core/effects 2009-08-22 20:56:28 -04:00
Doug Coleman a6c7e9d9d4 use iota in a couple of places 2009-08-22 20:56:16 -04:00
Joe Groff cb54ca6402 clarify 'deprecated' docs 2009-08-20 18:36:34 -05:00
Joe Groff 93c93a392b Merge branch 'master' of git://factorcode.org/git/factor 2009-08-20 16:21:58 -05:00
Joe Groff 6089251574 move deprecation to tools.deprecation; load with bootstrap.tools 2009-08-20 16:17:36 -05:00
Joe Groff 400c89daf0 "deprecated" declaration, "deprecation" vocab to track deprecations in the error log 2009-08-20 15:10:42 -05:00
Slava Pestov 79cdc45339 math: move float methods to math.floats 2009-08-20 03:55:19 -05:00
Joe Groff 06ecb30140 make slot initial-values check the class for an "initial-value" word prop; set this word prop on classes.c-types types 2009-08-19 21:28:20 -05:00
Joe Groff c898593983 decouple struct parsing/printing from tuple parsing/printing a bit 2009-08-19 18:53:44 -05:00
Joe Groff 15a7148de0 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-19 15:48:07 -05:00
Doug Coleman fadede137c use iota 2009-08-19 08:27:28 -05:00
Doug Coleman 3313098936 use iota 2009-08-19 08:21:45 -05:00
Slava Pestov cfe54f8968 classes, words: fix unit tests for method inlining change 2009-08-18 17:20:17 -05:00
Slava Pestov 507e2b7f3a Fix some unit test failures 2009-08-18 03:49:05 -05:00
Doug Coleman 0cbad41547 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-18 03:45:20 -05:00
Doug Coleman 308d383ccd small fix for lexer 2009-08-18 00:10:23 -05:00
Daniel Ehrenberg 8120bdebea Merge branch 'master' of git://factorcode.org/git/factor 2009-08-18 00:02:29 -05:00
Daniel Ehrenberg 62cd1d280c Fixing docs typo in math.floats 2009-08-18 00:02:19 -05:00
Slava Pestov 030b1b816c Add inline declarations for various assorted methods 2009-08-17 22:32:21 -05:00
Joe Groff 24d9a8635c Merge branch 'struct-classes' of git://factorcode.org/git/factor 2009-08-17 21:26:19 -05:00
Slava Pestov bf57d78b09 compiler.tree.modular-arithmetic: >fixnum elimination and value info annotations were too aggressive 2009-08-17 01:20:25 -05:00
Doug Coleman 2f125eeb93 fix docs 2009-08-15 14:02:18 -05:00
Doug Coleman 7c92ab1ea5 move if-zero etc to math, remove 1-/1+ from math 2009-08-14 14:27:23 -05:00
Joe Groff 6fe7fe72c7 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-14 10:55:05 -04:00
Doug Coleman 3f3d57032b Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places, minor refactoring 2009-08-13 19:21:44 -05:00
Joe Groff fd02e59ea1 fix bootstrap 2009-08-13 12:05:20 -04:00
Joe Groff ca592b9654 extend T{ } syntax to build structs 2009-08-12 15:40:06 -04:00
Joe Groff 25c3434892 pprint structs with tuple syntax 2009-08-12 13:16:43 -04:00
Doug Coleman 686b3e348e use ERROR: in several places instead of throwing strings 2009-08-11 23:09:02 -05:00
Joe Groff 3ac907cbc2 tuple-ish structs 2009-08-11 22:13:18 -04:00
Doug Coleman 02becc26fc add docs for if-zero etc, add docs for 10^ 2009-08-11 18:45:01 -05:00
Doug Coleman 15ae8fb673 fix sgn docs 2009-08-11 18:15:24 -05:00
Doug Coleman 14ef1649d4 add if-zero/when-zero/unless-zero to core/ and update usages 2009-08-11 17:59:40 -05:00
Brad Christensen f8405e9c55 A number of documentation fixes.
* Short-circuit combinators now show correct stack effect for quots
 * Groups and Clumps unchecked examples corrected, made runnable in listener
 * Class operations had duplicate link to class-types
 * Protocol slots readability fixed
 * Tuple word property for "tuple-layout" corrected to "layout"
 * cond>quot sentence started in lowercase
 * Method precedence code example missing stack effect for GENERIC:, M: integer explain changed to detail an integer
 * Motivation for default streams readability
 * Default input and output streams duplicate readln link removed from output stream words section
 * Looping combinators do description clarified
 * Make philosophy missing space
 * Linear order protocol duplicate after? link removed
 * Parsing words readability fix
 * Copied note regarding with-compilation-unit from define to define-declared and define-inline
2009-08-10 23:34:25 -07:00
Joe Groff 0376cf0f9d allow commas in numeric literals 2009-08-10 19:33:27 -04:00
Philipp Brüschweiler 230061783a misc small documentation fixes, some fixes for factor.vim, changed permissions of vm/* to 644 2009-08-10 21:33:07 +02: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 805b0b2430 Merge branch 'master' of git://github.com/bogiebro/factor into bogie 2009-08-05 22:20:40 -05:00
Slava Pestov 3b2fd98e7c Refactor source-file-errors a little bit to remove some code duplication, and so that clicking 'Edit' in error list tool works for parse errors in unit tests 2009-08-04 21:01:21 -05:00
Sam Anklesaria 1145f49a47 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-03 20:09:05 -05:00
Slava Pestov 07ea78df57 sequences: map, 2map, 3map use new map-integers combinator; last two no longer depend on integers-as-sequences 2009-08-03 13:30:55 -05:00
Sam Anklesaria 07b34c6d0a Merge branch 'master' of git://factorcode.org/git/factor 2009-08-03 10:13:27 -05:00
Doug Coleman a67a424644 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-02 23:18:09 -05:00
Joe Groff 7c5ef08aab [ [ ... ] compare ] sort => [ ... ] sort-with 2009-08-02 20:09:23 -05:00
Joe Groff cdf964579d sorting: sort-with and inv-sort-with combinators to simplify common [ [ ... ] compare ] sort idiom 2009-08-02 20:01:54 -05:00
Doug Coleman eb61ffc56d use itoa in more places 2009-08-02 18:18:31 -05:00
Slava Pestov 67fd6b34dc Merge branch 'master' of git://factorcode.org/git/factor 2009-08-02 10:27:10 -05:00
Joe Groff 7392013d46 to-fixed-point combinator + docs 2009-08-02 09:51:15 -05:00
Slava Pestov c1c8424605 Compiler speedups 2009-08-02 09:16:21 -05:00
Joe Groff 06eeedcb4c change-tracking-tuple class. subclasses will have a "changed?" slot that gets set to true when any slot is modified 2009-07-31 21:48:17 -05:00
Joe Groff dd3c90bf11 add file-stem word to io.pathnames as the counterpart to file-extension. write docs for both 2009-07-30 20:58:32 -05:00
Sam Anklesaria c54189ce19 Merge branch 'master' of git://factorcode.org/git/factor 2009-07-29 15:51:33 -05:00
Slava Pestov 4359a10259 sequences: add declaration so that array-flip compiles better 2009-07-28 21:33:12 -05:00
Sam Anklesaria fe86d9f56e Merge branch 'master' of git://factorcode.org/git/factor 2009-07-28 16:42:38 -05:00
Slava Pestov f1683f9fcf Move set-last from circular.private to sequences 2009-07-28 11:51:47 -05:00
Slava Pestov fb33ee3002 classes.algebra: stack effect fix 2009-07-28 06:49:09 -05:00