Commit Graph

2776 Commits (1d3205c69ef589ce75533490a4eca6f6b7a9c220)

Author SHA1 Message Date
Chris Double d002e02948 Use left recursive grammar in peg.expr 2008-03-30 17:23:11 +13:00
Chris Double af9e27823a Add => action rule for an entire sequence 2008-03-30 17:17:31 +13:00
Slava Pestov 726806b1c1 More robust concurrency.distributed unit test 2008-03-29 23:11:54 -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 d7742af90e Merge branch 'master' of git://double.co.nz/git/factor 2008-03-29 20:27:58 -05:00
erg 9df74f9b6f help lint fixes for random 2008-03-29 20:12:22 -05:00
Chris Double 691d26068d Refactor peg compiler cache
Instead of a cache stored in a global variable, the compiled parser is stored in a slot in the parser delegate.
2008-03-30 14:00:45 +13:00
Slava Pestov f72336e70e Fix conflict 2008-03-29 15:53:33 -05:00
Doug Coleman 606445f790 improve png 2008-03-29 15:31:31 -05:00
Daniel Ehrenberg fbdf62bb1c Making [ mpg ] undo work 2008-03-29 16:18:46 -04:00
Doug Coleman 72cedcaf47 add using 2008-03-29 14:51:50 -05:00
Doug Coleman a15159af69 add summary on error 2008-03-29 14:50:52 -05:00
Doug Coleman cee0eb5be3 fix secure-random-generator for windows 2008-03-29 14:25:57 -05:00
Slava Pestov 9e13e61a74 Fix some load errors 2008-03-29 04:07:06 -05:00
Slava Pestov adb1dd14d0 Rename tuples vocab to classes.tuple for consistency 2008-03-29 03:34:48 -05:00
Slava Pestov f5e2389c04 Clean up tuple code and get hierarchy changes working 2008-03-29 02:46:29 -05:00
Slava Pestov aec04edbda Phasing out get-slots and cleaning up some code 2008-03-29 00:59:05 -05:00
Slava Pestov 2aafe074b2 Merge branch 'master' of git://double.co.nz/git/factor 2008-03-29 00:38:31 -05:00
Chris Double ca4f775756 Fix PEG: 2008-03-29 18:33:37 +13:00
Chris Double 8105e66aec Add box parser to docs 2008-03-29 17:45:21 +13:00
Slava Pestov e300fd10ea Merge branch 'master' of git://factorcode.org/git/factor 2008-03-28 23:43:16 -05:00
Chris Double 86653e7a46 Don't use 'delay' parser in ebnf 2008-03-29 17:42:21 +13:00
erg cbc6865217 fix teh docs 2008-03-28 23:40:18 -05:00
Slava Pestov ea45fe2b45 Move more cleave stuff into core 2008-03-28 23:38:03 -05:00
Slava Pestov 2c3c66c6af Update peg for words being moved 2008-03-28 23:37:52 -05:00
Slava Pestov daa6855dae Fix conflict 2008-03-28 23:37:42 -05:00
erg 211749ed3d re-add docs for random 2008-03-28 23:20:33 -05:00
Slava Pestov 2ffd5a1b0d Merge branch 'master' of git://factorcode.org/git/littledan 2008-03-28 23:08:15 -05:00
Slava Pestov 4ed86f1d1f Merge branch 'master' of git://double.co.nz/git/factor 2008-03-28 23:04:38 -05:00
Slava Pestov 1f3e6fd0b7 combinators.cleave is now core 2008-03-28 23:00:20 -05:00
Chris Double 0db0d9cd44 Move towards having ebnf infer 2008-03-29 16:24:13 +13:00
Chris Double 5f37b4fc72 compiled pegs infer 2008-03-29 16:11:08 +13:00
Chris Double 3f7d214dfa Merge commit 'origin/master' 2008-03-29 15:11:23 +13:00
Doug Coleman 482efc9c58 fix load errors 2008-03-28 15:09:21 -05:00
Doug Coleman 8cf2fd88a5 allow random-32* or random-bytes* to generate randomness in terms of each other 2008-03-28 13:50:23 -05:00
Doug Coleman 3e2a867c3a implement touch-file on windows 2008-03-28 13:37:05 -05:00
Chris Double 7bf27a5eb2 EBNF test using Java Primary production 2008-03-29 03:41:40 +13:00
Daniel Ehrenberg e61287b99d Merge branch 'master' of git://double.co.nz/git/factor 2008-03-28 10:15:12 -04:00
Chris Double 25eea7ea1b Fix ebnf tests for left recursion 2008-03-29 02:51:49 +13:00
Chris Double 261539a86a Unit test for left recursive grammar 2008-03-29 02:47:03 +13:00
Chris Double dd979c8b3b Indirect Left recursive grammars working 2008-03-29 02:45:21 +13:00
Chris Double 68cbdf76aa Handle direct left recusion 2008-03-29 01:17:54 +13:00
Chris Double 010ce80076 Handle left recursion by failing again 2008-03-29 00:49:39 +13:00
Chris Double cca4700e49 Fix ebnf for peg changes 2008-03-29 00:41:41 +13:00
Chris Double 4b353c7529 Rewrite peg internals 2008-03-29 00:37:40 +13:00
Chris Double 1d87e513f5 lr2 wip 2008-03-28 21:17:08 +13:00
Slava Pestov bbd1ac7180 Fix launchers 2008-03-28 01:22:51 -05:00
Eduardo Cavazos 0934473b72 builder: cd changed 2008-03-27 22:22:19 -06:00
Eduardo Cavazos 248c88554e builder.release: update 'common-files' 2008-03-27 22:18:43 -06:00
Chris Double d2190fd1ec Direct left recurson working 2008-03-28 14:30:10 +13:00
Chris Double 749f10ba9f Implement direct left recursion
As per VPRI Technical Report TR-2007-002 section 3.2
2008-03-28 14:30:10 +13:00
Chris Double f596aa2d71 Handle compilation of circular parsers 2008-03-28 14:26:05 +13:00
Daniel Ehrenberg 31de812987 renaming parse-unit to scan-until 2008-03-27 20:52:53 -04:00
Daniel Ehrenberg 7ad1686590 Factoring out parse-unit 2008-03-27 20:50:41 -04:00
erg 36f51b46f2 fix ultraedit 2008-03-27 19:06:24 -05:00
Chris Double f96a251f8a Refactor pegs to remove MEMO: and use unique id's 2008-03-28 12:35:47 +13:00
Doug Coleman 2cf1bcdeb2 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-27 17:43:38 -05:00
Doug Coleman 146bdbccbb fix rng on windows 2008-03-27 17:43:00 -05:00
Chris Double 89c7698738 Fix MEMO problem with seq* and choice* 2008-03-28 11:30:46 +13:00
Doug Coleman 251fe25689 fix bootstrap for random 2008-03-27 06:36:34 -05:00
Doug Coleman f317b97221 stack effect typos 2008-03-27 06:30:59 -05:00
Doug Coleman 2426fc44bb remove random.backend 2008-03-27 06:27:36 -05:00
Chris Double fa8b311b27 Add packrat-parse, etc 2008-03-28 00:04:08 +13:00
Chris Double f6b7f8197e Add tests for left recusion in pegs 2008-03-27 23:54:34 +13:00
Doug Coleman 89cacd416b fix load errors on windows 2008-03-27 05:51:48 -05:00
erg 7185683663 test with-secure-random 2008-03-28 22:12:11 -05:00
erg 37cffc50fa fix random
add with-secure-random
2008-03-28 22:10:01 -05:00
Chris Double 4e29081e93 Make left recursion in pegs a failed parse
Eventually left recursion will work fine, but this is prevents an infinite loop for now.
2008-03-27 18:15:22 +13:00
Chris Double 4c50daed22 Testcase for packrat behaviour 2008-03-27 17:58:08 +13:00
Chris Double bc5f82255f peg refactorings 2008-03-27 17:24:05 +13:00
Chris Double 8bd7c51c10 Merge commit 'origin/master' 2008-03-27 15:51:20 +13:00
Chris Double 708726d208 Add with-packrat word and more memoization 2008-03-27 15:50:27 +13:00
Chris Double 7c0535884e Fix up peg memoization of compiled parsers 2008-03-27 15:34:49 +13:00
Chris Double e6da3bc43a Use cache in compiled-parser in peg 2008-03-27 14:55:14 +13:00
Slava Pestov e2f3888389 UI listener fix 2008-03-26 20:42:24 -05:00
Chris Double c0f4e37427 Fix usage of cache in pegs 2008-03-27 12:58:53 +13:00
Chris Double 5986ccd47a Merge commit 'origin/master' 2008-03-27 12:51:01 +13:00
Doug Coleman dfb638e30c Merge branch 'master' of git://factorcode.org/git/factor 2008-03-26 18:49:30 -05:00
Doug Coleman d823c4a287 working on random 2008-03-26 18:48:55 -05:00
Doug Coleman 9120865157 fixing the launcher 2008-03-26 18:47:56 -05:00
Slava Pestov e9fbbd0c9f Merge branch 'master' of git://factorcode.org/git/factor 2008-03-26 18:42:14 -05:00
Eduardo Cavazos 7b1bd2f558 builder.release: upload binaries to factorcode.org 2008-03-26 18:22:25 -06:00
Chris Double 2614792254 Implement packrat algorithm 2008-03-27 12:31:13 +13:00
Slava Pestov 690621ffb6 Change PREDICATE: syntax 2008-03-26 18:23:19 -05:00
Chris Double c793a381fe Add hook for packrat implementation 2008-03-27 11:24:06 +13:00
Chris Double 85a3ee3e5b Remove memoization in 'compile' word in pegs
This creates issues when recompiling a an existing EBNF parser for reasons I've not yet tracked down. Disabling it slows things down but makes things work correctly till I investigate the issue.
2008-03-27 11:24:06 +13:00
Slava Pestov 67eea75f4a Merge branch 'master' of git://factorcode.org/git/factor 2008-03-26 17:08:56 -05:00
Slava Pestov 89a531d4a2 Fixing unit tests 2008-03-26 17:07:50 -05:00
Doug Coleman d4dd93e316 move some io files unit tests to unix 2008-03-26 16:22:34 -05:00
Doug Coleman 603a55bde5 run deploy as +low-priority+ 2008-03-26 15:59:11 -05:00
Doug Coleman 92b912bce9 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-26 15:56:28 -05:00
Doug Coleman 65a12660a7 implement priorities on windows 2008-03-26 15:55:55 -05:00
erg bc55f67a49 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-26 15:29:49 -05:00
erg 719e6388b1 remove a unit test 2008-03-26 15:25:20 -05:00
erg eed26edf23 fix bootstrap 2008-03-26 15:24:54 -05:00
Doug Coleman b2a430629b fix wordpad 2008-03-26 14:55:04 -05:00
erg 84a2a32a4e Merge branch 'master' of git://factorcode.org/git/factor 2008-03-27 18:14:13 -05:00
erg d8fc446622 add unit tests and fix lots of words for normalize-pathname 2008-03-27 18:13:55 -05:00
Slava Pestov 7616eefbfc Fix editor integration 2008-03-27 18:00:55 -05:00
Doug Coleman b6818e75f4 cleanup windows normalize-path 2008-03-27 16:22:24 -05:00
Eduardo Cavazos 0133824805 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-26 12:00:52 -06:00
Eduardo Cavazos ecee19e6ed Add a docs file for openssl. Mention where to get OpenSSL for Windows. 2008-03-26 12:00:09 -06:00
U-FROGGER\erg 783d7a20da fix windows bootstrap 2008-03-26 10:17:20 -05:00
erg f54d12682a add more unit tests for windows 2008-03-27 09:01:48 -05:00
erg e39894155c add windows-absolute-path? and move unit tests 2008-03-27 09:00:59 -05:00
erg 3dde03bb4d Merge branch 'master' of git://factorcode.org/git/factor 2008-03-27 07:36:18 -05:00
Slava Pestov 65bfc09265 Fix HTTP server 2008-03-27 05:18:07 -05:00
Slava Pestov febcd88459 Unit test fixes 2008-03-27 05:13:52 -05:00
Slava Pestov b008f69c25 Fix serialize 2008-03-27 03:27:22 -05:00
Slava Pestov 3a9839a168 Fix conflict 2008-03-27 01:43:32 -05:00
Slava Pestov 8903ba3a32 Fix Windows bootstrap 2008-03-27 01:41:22 -05:00
erg 15c68a23f8 remove ?resource-path and resource-exists? 2008-03-26 23:47:51 -05:00
Daniel Ehrenberg caf3ebb31d Fixing 8-bit encodings 2008-03-27 00:32:41 -04:00
Slava Pestov a90c3ddf5d Merge branch 'master' of git://factorcode.org/git/factor 2008-03-26 23:12:44 -05:00
erg 5f38dca1e5 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-26 22:39:37 -05:00
erg 24466cfc57 normalize-pathname all ova tha place 2008-03-26 22:39:16 -05:00
Daniel Ehrenberg 64203f762d Docs improvements; simplification of design of io.encodings.8-bit 2008-03-26 14:41:09 -04:00
Slava Pestov e1ad21a439 Working on shapes 2008-03-26 03:57:48 -05:00
Slava Pestov 257a03ace5 Fix multi-methods load error 2008-03-26 01:30:44 -05:00
Slava Pestov 5319ba1ae1 Merge git://double.co.nz/git/factor 2008-03-25 22:34:05 -05:00
Slava Pestov 2f73edb3a2 Fix stat on linux/x86.64 2008-03-25 22:26:33 -05:00
Chris Double de3e4e049f Use cleave instead of get-slots in peg 2008-03-26 16:21:33 +13:00
Chris Double 1ec945ba4c Use new slots in peg.ebnf 2008-03-26 16:16:23 +13:00
Chris Double 8569d18068 Use new slots in peg 2008-03-26 16:08:14 +13:00
Slava Pestov b3f99d1746 Merge git://factorcode.org/git/littledan 2008-03-25 21:56:52 -05:00
Slava Pestov 0fa98ea10d Merge git://double.co.nz/git/factor 2008-03-25 21:56:14 -05:00
Daniel Ehrenberg 2bc882bf5a XML reports its encoding as UTF-8 2008-03-25 22:45:26 -04:00
Chris Double b1561de0f6 Reduce amount of generated code for peg token parser 2008-03-26 15:40:17 +13:00
Chris Double 9b7246555a Fix just parser in pegs 2008-03-26 15:26:54 +13:00
Daniel Ehrenberg 06848c8e75 UTF-16 native order; better encodings docs 2008-03-25 21:17:37 -04:00
erg 1070685db7 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-25 19:52:29 -05:00
erg 807c84918b minor cleanup in windows path handling 2008-03-25 19:52:07 -05:00
erg b13e0f7042 redo path handling 2008-03-25 19:50:39 -05:00
Daniel Ehrenberg 514c626e56 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-25 19:43:09 -04:00
Eduardo Cavazos c106a35b38 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-25 04:41:06 -06:00
Eduardo Cavazos 1c75abce23 lsys.ui: Add a '500 sleep' workaround 2008-03-25 04:40:36 -06:00
Slava Pestov a0e1659a3e Fix 2008-03-24 20:44:39 -05:00
Slava Pestov 577c670631 Test fix 2008-03-24 20:15:42 -05:00
Slava Pestov 8d7367674c Class algebra refactoring 2008-03-24 19:52:21 -05:00
Slava Pestov 09d8c8eb88 Launcher documentation 2008-03-24 19:47:30 -05:00
Slava Pestov 99b9ab367b Move priority code to io.launcher 2008-03-24 18:02:39 -05:00
Slava Pestov 87208627cc Merge branch 'master' of git://factorcode.org/git/factor 2008-03-24 17:41:10 -05:00
Doug Coleman fd0d489543 finish rename process to priority 2008-03-24 17:25:19 -05:00
Doug Coleman 1ff27e7de5 rename process to priority 2008-03-24 17:25:03 -05:00
Doug Coleman b68e79726f move priority bindings to extra/unix 2008-03-24 17:20:42 -05:00
Doug Coleman 1fe0e73a9f fix bug in find-all-files 2008-03-24 17:19:22 -05:00
Doug Coleman c5cc14de91 inline new-effects
use new-effects for mersenne-twister
2008-03-24 12:02:57 -05:00
Doug Coleman 598127c0e2 add new stack effects library 2008-03-24 12:02:10 -05:00
Doug Coleman dfc734cda8 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-24 11:51:38 -05:00
Daniel Ehrenberg b8434788bd Merge branch 'master' of git://factorcode.org/git/factor 2008-03-23 01:01:24 -04:00
Daniel Ehrenberg d967d04e4c Changing 8-bit encoding names; documentation 2008-03-23 00:43:43 -04:00
Slava Pestov 678b9f041e Merge branch 'master' of git://factorcode.org/git/littledan 2008-03-22 14:17:05 -05:00
Matthew Willis 297978b7d2 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-22 00:28:47 -07:00
Doug Coleman 3d1ba04462 add remove-nth 2008-03-22 01:21:21 -05:00
Daniel Ehrenberg 86efc8467c Strict wrapper for encodings 2008-03-21 21:47:16 -04:00
Slava Pestov 8d7ccf2596 Add unit test for ifte 2008-03-21 17:48:01 -05:00
Daniel Ehrenberg 4cfd62c373 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-21 16:59:40 -04:00
Daniel Ehrenberg fae69bd092 Final fix for 8-bit encodings 2008-03-21 16:57:13 -04:00
Doug Coleman e60d8a49c1 add more priority constants, priority functions 2008-03-21 15:36:49 -05:00
Doug Coleman 08fe32a268 fix priority loading 2008-03-21 15:25:18 -05:00
Doug Coleman 9c745c44d3 add set-priority and get-priority
add clear_err_no and check-errno for dealing with get-priority
2008-03-21 14:53:11 -05:00
Doug Coleman 17356ece95 dont error on USE: unix 2008-03-21 14:22:57 -05:00
Slava Pestov ea95cc017e Merge branch 'master' of git://factorcode.org/git/factor 2008-03-21 14:10:02 -05:00
Slava Pestov f24eb0f362 Merge branch 'master' of git://double.co.nz/git/factor 2008-03-21 14:07:51 -05:00
Daniel Ehrenberg 88baf7c3b7 latin1 -> iso-8859-1 2008-03-21 14:07:17 -04:00
Daniel Ehrenberg 7adef0c613 Completing 8-bit changes 2008-03-21 14:01:50 -04:00
Doug Coleman 9018a9093f fix using 2008-03-21 11:52:47 -06:00
Daniel Ehrenberg 3586b5a35d More 8-bit encodings 2008-03-21 12:30:13 -04:00
Chris Double 943b02ab2f Fix performance regression in pegs
delay parser is improved to use a memoized quotation so the
construction and compilation of the parser at runtime only
occurs once.
Changed compile so it would use equality rather than identity
for memoization purposes.
2008-03-22 01:59:16 +13:00
Chris Double d1e0aa6e80 Get peg subvocabs working again 2008-03-22 00:58:53 +13:00
Doug Coleman 9402b9b11e fix stat on netbsd 2008-03-20 19:15:16 -05:00
Doug Coleman 36d02462ce add netbsd to targets
add stat/types for netbsd
fix type for openbsd
2008-03-20 19:12:06 -05:00
Slava Pestov 2bdfc46331 Move bitmaps 2008-03-21 00:31:00 -05:00
sheeple 9584be2981 finally fix openbsd stat 2008-03-20 18:02:19 -05:00
Slava Pestov 18a9bc3355 Merge branch 'master' of git://double.co.nz/git/factor 2008-03-20 15:34:08 -05:00
Slava Pestov 02727576c2 New slots are now in the core 2008-03-20 15:30:59 -05:00
Slava Pestov d517bad9ca Fix race 2008-03-20 14:25:39 -05:00
Slava Pestov c5eae01930 Small cleanup 2008-03-20 14:25:23 -05:00
Slava Pestov e20762e0cb Fix errors 2008-03-20 14:25:08 -05:00
Chris Double a14854520d Compile pegs down to words 2008-03-21 03:05:21 +13:00
Chris Double 1c6882b32c Rip out packrat stuff
It was broken since the transition to generating compiled quotations. As far as I know, no one was using packrat-parse anyway.
Rework in progress...
2008-03-21 01:26:20 +13:00
Slava Pestov e049e9b6f6 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-19 23:59:03 -05:00
Eduardo Cavazos 7084e1982e builder: update timeout to 2 hours 2008-03-19 23:33:17 -06:00
Slava Pestov 37906ed524 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-19 23:32:56 -05:00
Slava Pestov 1ba4294bb2 Update smtp for random changes 2008-03-19 23:29:35 -05:00
Chris Double d1e7ede35d Add support for & syntax in ebnf 2008-03-20 17:25:27 +13:00
Chris Double dbd0583044 Tidy up expr groups 2008-03-20 17:19:41 +13:00
Chris Double 8ade4f9b5b Fix vocab name in expr tests 2008-03-20 17:16:50 +13:00
Chris Double 44954753bd Change <EBNF .. EBNF> to [EBNF .. EBNF] 2008-03-20 17:13:27 +13:00
Chris Double e7980ebc61 More refactoring of EBNF
<EBNF .. EBNF> now produces a quotation that when called does the parsing
EBNF: foo ... ;EBNF creates a 'foo' word with stack effect (string -- result)
when called it parses the string and returns the result.
2008-03-20 17:11:09 +13:00
Chris Double 7dc772db26 Refactor ebnf parser generation 2008-03-20 16:05:10 +13:00
Slava Pestov e9d7e2523c Clean up random and fix circular 2008-03-19 21:48:29 -05:00
Slava Pestov 0d9947198c Bootstrap fixes 2008-03-19 21:41:39 -05:00
Slava Pestov 4675811d68 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-19 21:26:13 -05:00
Slava Pestov 27e87292f0 Add [let* syntax 2008-03-19 21:16:09 -05:00
Chris Double c1f69f01be Change ordering of [[ ... ]] 2008-03-20 14:57:12 +13:00
Chris Double 39c228db6d Update peg.pl0 to use range pattern syntax
This allows removing the words for ident and number, replacing them
with EBNF expressions.
2008-03-20 14:22:14 +13:00
Chris Double 68388fbed9 Updated peg.expr to use range-pattern for digits 2008-03-20 14:15:06 +13:00
Chris Double ec4f964e4f Fix pl0 for EBNF syntax changes 2008-03-20 14:06:21 +13:00
Chris Double 795ef0ae3b Add ranges to EBNF syntax
This works:
  <EBNF letter = [a-zA-Z] EBNF>
and
  <EBNF not-digit = [^0-9] EBNF>
2008-03-20 13:55:19 +13:00
Chris Double 264284d0c4 Add range-pattern parser 2008-03-20 13:40:22 +13:00
Doug Coleman f5e678c380 work on gmt-offset on windows 2008-03-19 19:37:04 -05:00
Doug Coleman 3e7940216e swap append to swap append
refactoring path+ to append-path
swap path+ to prepend-path
calendar gmt-offset to duration
2008-03-19 19:15:32 -05:00
Doug Coleman 1802e7c443 add random bootstrap 2008-03-19 16:22:06 -05:00
Doug Coleman 3e14b0fac0 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-19 16:21:17 -05:00
Doug Coleman 077df62492 add 2bi* 2008-03-19 16:20:14 -05:00
Doug Coleman 274c7d8cad 256 random-bits 2008-03-19 16:19:54 -05:00
Doug Coleman cd4f2028cd random-256 -> 256 random-bits 2008-03-19 16:19:37 -05:00
Doug Coleman 9c74ba2f2f remove extra crypto file 2008-03-19 16:19:15 -05:00
Doug Coleman 5296c907d9 remove random-bits 2008-03-19 16:19:00 -05:00
Doug Coleman b3527a17df redo random/ 2008-03-19 16:18:03 -05:00
Doug Coleman 40aab45282 add do-while and use it in generate 2008-03-19 16:16:35 -05:00
Slava Pestov 5904d3fffa Fix set-timeout with dan's new encoding stuff 2008-03-19 15:24:49 -05:00
Slava Pestov 30171f41df Merge branch 'master' of git://factorcode.org/git/factor 2008-03-19 14:53:41 -05:00
Slava Pestov f78b626b58 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-19 14:40:09 -05:00
Slava Pestov 3591ed402d Simplify vocab.loader even further 2008-03-19 14:39:08 -05:00
Slava Pestov 005de25156 Cocoa UI cleanup 2008-03-19 14:25:53 -05:00
Slava Pestov ea7301062d Merge git://double.co.nz/git/factor 2008-03-19 14:18:26 -05:00
Slava Pestov e826f1fe4a Merge branch 'master' of git://factorcode.org/git/littledan 2008-03-19 13:23:55 -05:00
Slava Pestov 8f521b07f2 Merge branch 'master' of git://pgdn.org/factor 2008-03-19 13:20:36 -05:00
Chris Double 97b58580a7 Add expression evaluator example for EBNF 2008-03-20 03:30:53 +13:00
Chris Double 92d8140d87 Change ebnf-action to properly nest with attached parser
This allows removal of last-parser hack. Syntax of EBNF changes though.
Now an action must attach to a group:

  <EBNF foo = (a b c) [[ ...act on group... ]] EBNF>
2008-03-20 03:05:40 +13:00
Chris Double 65fabeec11 remove => action and replace it with [[ code ]] in EBNF
Previously the action had to be a factor word and could only appear at the end of a rule:

  : aword ( ast -- ast ) drop V{ 1 2 } ;
  <EBNF foo = "a" "b" => aword EBNF>

Now actions can appear anywhere after an element, and can be any factor code between [[ ... ]] delimiters:

  <EBNF foo = "a" "b" [[ drop V{ 1 2 } ]] EBNF>
  <EBNF foo = "a" [[ drop 1 ]] "b" [[ drop 2 ]] EBNF>

Unfortunately since this means the ebnf>quot code uses the equivalent of eval, it no longer compiles nicely since it can't be inferred. The generated parsers however do compile.
2008-03-20 02:16:30 +13:00
Chris Double c0b7bdf823 Add *, + and ? to list of non-allowed ebnf identifier characteres 2008-03-20 01:25:57 +13:00
Chris Double 82d54d3776 EBNF syntax change
[ ... ] is now ( ... )?
{ ... } is now ( ... )*
Added ( ... )+
2008-03-20 01:18:09 +13:00
Slava Pestov 36c94f357c Fix shaker's libc stripping 2008-03-19 02:43:36 -05:00
Chris Double 64135b73e1 Add support for ensure-not and parsing any single character to EBNF
This allows, for example:
  foo = {!("_" | "-") .}

This will match zero or more of any character, except for _ or -
2008-03-19 19:15:52 +13:00
Joe Groff 11d28109cf Merge branch 'master' of git://factorcode.org/git/factor 2008-03-18 23:02:44 -07:00
Joe Groff 46c21e2580 Correct perms on windows/ tree 2008-03-18 23:02:21 -07:00
Joe Groff ede3e068a0 Get COM interface working. Add IShellFolder interface to shell32.dll to play around with 2008-03-18 22:56:54 -07:00
Chris Double 208c88c449 Update pl0 for ebnf changes, and add more tests 2008-03-19 18:35:45 +13:00
Chris Double eef6ae7827 Remove need for '.' to terminate rule lines in EBNF 2008-03-19 18:07:31 +13:00
Chris Double 9403d97e22 Add syntax-pack and grouped to ebnf refactoring 2008-03-19 17:52:22 +13:00
Chris Double 708d55fb8e Add syntax word for ebnf 2008-03-19 17:37:08 +13:00
Chris Double 7578538122 Minor tidyup of ebnf 2008-03-19 17:34:47 +13:00
Chris Double cc9a17b551 Use choice* and seq* in ebnf 2008-03-19 17:00:53 +13:00
Chris Double 4b37c9098e Use multiline for parsing EBNF string 2008-03-19 16:54:42 +13:00
Slava Pestov d3997fbe08 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-18 21:43:58 -05:00
Slava Pestov 848c340ae9 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-18 21:43:42 -05:00
Slava Pestov da7f10804a Refactor vocab loader 2008-03-18 20:27:09 -05:00
Doug Coleman 55a8c991ad fix gmt-offset on windows 2008-03-18 18:59:37 -05:00
Doug Coleman 693f3b9193 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-19 22:20:26 -05:00
Doug Coleman 84160c8f75 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-19 21:36:51 -05:00
Doug Coleman 5515c7aacb Merge branch 'master' of git://factorcode.org/git/factor 2008-03-19 19:54:51 -05:00
Doug Coleman a855846b76 cairo dll update 2008-03-19 19:43:36 -05:00
Slava Pestov cb4974aa34 Fix fs-events issue 2008-03-18 18:17:25 -05:00
Slava Pestov f31c521c47 Assorted bug fixes 2008-03-18 17:46:25 -05:00
Daniel Ehrenberg d496065f89 Merge branch 'master' of git://factorcode.org/git/factor 2008-03-18 17:02:48 -04:00
Daniel Ehrenberg b362175d43 Initial optimization of encodings 2008-03-18 17:01:14 -04:00