Commit Graph

249 Commits

Author SHA1 Message Date
Yuichi Nishiwaki 417a44b786 change the behavior of pic_define 2016-02-14 13:25:18 +09:00
Yuichi Nishiwaki 271a4b6586 make-register -> make-ephemeron 2016-02-10 21:57:20 +09:00
Yuichi Nishiwaki 205ca79626 remove pic->argc/argv/envp 2016-02-10 01:38:05 +09:00
Doug Currie 21fc081e41 Merge upstream master into record-vector-optimization 2016-02-08 11:52:01 -05:00
Yuichi Nishiwaki c7f8293368 add pic_intern_(str|cstr|lit) 2016-02-08 04:10:22 +09:00
Yuichi Nishiwaki 3e4abf8949 optimize string construction from literal 2016-02-08 02:33:22 +09:00
Yuichi Nishiwaki d710fa3a11 import more libraries to (picrin user) 2016-02-07 04:57:16 +09:00
Yuichi Nishiwaki ed14348c08 bugfixes 2016-02-07 04:54:55 +09:00
Yuichi Nishiwaki 0d29322b64 fix a test of srfi-106's on OSX 2016-02-07 04:38:39 +09:00
Yuichi Nishiwaki 7a128aab3b fix #314 2016-02-07 04:23:46 +09:00
Yuichi Nishiwaki cc75877a76 simplify struct pic_record 2016-02-07 02:58:18 +09:00
Yuichi Nishiwaki fe994667fa remove pic_get_proc and add "&" format for pic_get_args 2016-02-07 00:53:12 +09:00
Yuichi Nishiwaki e51d3db812 symbol is an identifier 2016-02-06 23:15:53 +09:00
Yuichi Nishiwaki 337ba027f2 attribute as a macro 2016-02-03 21:49:55 +09:00
Doug Currie 469ae52ba4 Merge branch 'master' into record-vector-optimization 2016-02-01 18:08:55 -05:00
Doug Currie 87ae66d706 Fix roundtrip -0.0 2016-01-23 16:30:40 -05:00
Doug Currie 9b7e0cf019 Optimize records to use vector rather than a dict for field storage. 2016-01-15 23:04:51 -05:00
Doug Currie db36d7040f Add a few tests to contrib/10.roundtrip 2016-01-10 10:06:09 -05:00
Doug Currie 30f220316c Fix dtoa for +nan.0 +inf.0 -inf.0 2016-01-09 12:52:38 -05:00
Doug Currie fa2b72b020 Use emyg_atod instead of emyg_strtod 2016-01-09 00:15:49 -05:00
Doug Currie 5116220d62 Fix more c99isms 2016-01-08 23:51:51 -05:00
Doug Currie 3f7c5034d7 Fix some c99isms 2016-01-08 23:47:16 -05:00
Doug Currie 5fd8f8287f Plug in emyg_dtoa and emyg_atod for round trip double conversion 2016-01-08 23:34:51 -05:00
Yuichi Nishiwaki 6f3083c3ca never use size_t 2015-08-26 19:04:27 +09:00
Yuichi Nishiwaki b96846dc6e don't use @@type property 2015-08-11 01:34:45 +09:00
Yuichi Nishiwaki eec7d1754b arena_idx is of size_t 2015-07-26 16:44:13 +09:00
Yuichi Nishiwaki 9365eb4c7f no relloc on restore_cont 2015-07-26 16:39:34 +09:00
OGINO Masanori 16b427b8c4 Fix typo, alerm -> alarm.
This commit also enables some tests to catch more regressions.

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-07-22 23:06:46 +09:00
OGINO Masanori 1018a7cce8 Use lset= to compare list sets.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-07-21 15:35:56 +09:00
OGINO Masanori 643d86c709 Merge pull request #299 from omasanori/extend-test
Extend test
2015-07-21 15:25:46 +09:00
OGINO Masanori f345832b44 Add an optional comparator argument to test.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-07-21 15:16:04 +09:00
OGINO Masanori 1455c7d4a5 Compare expected value and the result only once.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-07-21 15:12:43 +09:00
OGINO Masanori aa2e11874f Export cons* from SRFI 1.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-07-21 14:52:46 +09:00
Yuichi Nishiwaki 24b4cafe65 fix srfi-26 2015-07-21 00:59:53 +09:00
Yuichi Nishiwaki a1d8af908b [bugfix] include macro broken 2015-07-21 00:57:59 +09:00
Yuichi Nishiwaki bfdf60eee1 add (picrin logic) library 2015-07-20 22:10:39 +09:00
Yuichi Nishiwaki d11b569abf keep (picrin user) empty unless picrin is started in repl mode 2015-07-20 19:26:33 +09:00
Yuichi Nishiwaki c2754509f2 remove PIC_ENABLE_FLOAT flag 2015-07-20 02:19:41 +09:00
Yuichi Nishiwaki a5317898cb don't define number classifying procedures such as real? and complex? in C 2015-07-20 01:45:21 +09:00
Yuichi Nishiwaki 57e4942ae2 move abs and expt 2015-07-20 01:24:35 +09:00
Yuichi Nishiwaki 6551506160 move more procedures 2015-07-20 01:22:29 +09:00
Yuichi Nishiwaki fcb6b1ead8 rename (picrin number) to (picrin math) 2015-07-20 01:16:06 +09:00
Yuichi Nishiwaki d66ae479cc move some math procedures to math nitro 2015-07-20 01:12:37 +09:00
Yuichi Nishiwaki 0f9c7f0c2c refactor (picrin control list) by following the mannar other monadic
libraries do
2015-07-19 15:13:17 +09:00
Yuichi Nishiwaki 43aac4dd29 add (picrin control option) 2015-07-19 15:12:49 +09:00
Yuichi Nishiwaki 1c13076f01 give priority to importing (picrin procedure) 2015-07-19 15:06:09 +09:00
Yuichi Nishiwaki 32441845b4 add TODO 2015-07-18 22:30:58 +09:00
Yuichi Nishiwaki e23bfa5565 add (picrin parser) library 2015-07-18 22:27:22 +09:00
Yuichi Nishiwaki 34028172f2 add (picrin procedure) 2015-07-18 18:04:33 +09:00
Yuichi Nishiwaki 3d170afac8 redefine shift and reset as syntaxes 2015-07-18 15:39:34 +09:00
Yuichi Nishiwaki 3739387160 register now returns #f or a pair 2015-07-18 15:28:53 +09:00
Yuichi Nishiwaki 238f5999bc dictionary-ref now returns a pair or #f 2015-07-18 15:22:33 +09:00
koba-e964 d01b72835d Merge branch 'master' of https://github.com/wasabiz/picrin 2015-07-16 21:39:28 +09:00
koba-e964 c18c12f197 Fix functions pair-fold-right, any, and every in contrib/40.srfi/srfi/1.scm 2015-07-16 21:36:47 +09:00
OGINO Masanori 2a2dce97cb Add TEST_RUNNER variable to makefiles.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-07-16 17:44:34 +09:00
OGINO Masanori 3cc9fb6b8d Add test cases for SRFI 1.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-07-13 22:00:12 +09:00
Yuichi Nishiwaki 5635661b3c remove pic_make_str_fill 2015-07-13 09:03:32 +09:00
Yuichi Nishiwaki 5c2cbb9e55 pic_load_port -> pic_load 2015-07-13 08:20:07 +09:00
Yuichi Nishiwaki 71d1d4837d pic_intern_cstr -> pic_intern 2015-07-13 08:16:04 +09:00
Yuichi Nishiwaki 8cc6307eaa change tmp file path 2015-07-09 04:13:50 +09:00
Yuichi Nishiwaki ca33c6f425 [bugfix] guard is still broken 2015-07-09 04:13:35 +09:00
Yuichi Nishiwaki 2fb17afdfc move picrin/macro.scm. remove piclib/ 2015-07-09 04:07:12 +09:00
Yuichi Nishiwaki ad38eb9202 move picrin/syntax-rules 2015-07-09 04:02:55 +09:00
Yuichi Nishiwaki 9514bab879 rewrite guard definition 2015-07-09 03:58:08 +09:00
Yuichi Nishiwaki 370f7eb4f1 fix array test 2015-07-09 03:57:17 +09:00
Yuichi Nishiwaki 738c04a1af move picrin/test.scm 2015-07-09 02:21:57 +09:00
Yuichi Nishiwaki 19e82389f1 avoid redefinition 2015-07-09 02:19:09 +09:00
Yuichi Nishiwaki 685d08301a move experimental/lambda.scm 2015-07-09 02:18:56 +09:00
Yuichi Nishiwaki 3bcc4b15fc define 'define-record-type' macro in scheme/base.scm 2015-07-09 01:59:14 +09:00
Yuichi Nishiwaki 5f454626f6 move picrin/array to contrib/ 2015-07-09 01:51:55 +09:00
Yuichi Nishiwaki 25f80dc87d don't cons in call-with-values 2015-07-04 18:01:30 +09:00
Yuichi Nishiwaki 4905aab416 remove pic->file and pic->read 2015-07-02 08:50:28 +09:00
OGINO Masanori 11e3d7741f Get stats of SRFI 106's test.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-07-02 06:26:42 +09:00
OGINO Masanori 7685b84ad6 Rename initialize funtions of SRFIs to srfi_<n>.
To avoid conflictions of inits between SRFIs and others, inits in the
srfi nitro should be prefixed with srfi_. Without the convention, we may
need to use generic words such as string, vector, random, array, etc.

Moreover, there are SRFIs those subject is same (e.g. array may be used
by SRFI 25, 47, 58 and 63). Thus, we need a clear and conflict-free
naming convention.

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-06-29 19:32:31 +09:00
OGINO Masanori 555048c146 Implement SRFI 0.
Reference: http://srfi.schemers.org/srfi-0/

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-06-29 17:17:01 +09:00
Yuichi Nishiwaki ddcf96f689 remove pic_proc_name (for a moment) 2015-06-27 19:02:18 +09:00
Yuichi Nishiwaki 087e65ef1c don't define (picrin control escape) in callcc.c 2015-06-26 13:19:32 +09:00
OGINO Masanori f836c4db47 Correct visibility of symbols in (srfi 106).
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-06-24 18:44:44 +09:00
Yuichi Nishiwaki f323e9d232 [bugfix] call/cc will get caught in an infinite loop if the machine
stack grows upward
2015-06-24 16:02:46 +09:00
Yuichi Nishiwaki aae1b8792a remove struct pic_picjmp 2015-06-23 03:14:00 +09:00
OGINO Masanori b0e6f14442 Move r7rs-tests.scm into a nitro.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-06-22 11:07:56 +09:00
OGINO Masanori 7d880f6f00 Implement SRFI 106.
Reference: http://srfi.schemers.org/srfi-106/

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-06-20 08:14:58 +09:00
Yuichi Nishiwaki 500113d1bb renumber contribs 2015-06-20 03:42:56 +09:00
Yuichi Nishiwaki 6449731bf4 [bugfix] bin/picrin -e option broken 2015-06-20 02:35:13 +09:00
Yuichi Nishiwaki 9dbcb2a605 [bugfix] repl failed to import default libraries 2015-06-20 02:34:46 +09:00
Yuichi Nishiwaki 20cb77bbbe file.h is now stdio.h-free 2015-06-19 05:14:18 +09:00
Yuichi Nishiwaki a0d6c5800c add pic_open_file 2015-06-19 05:00:36 +09:00
Yuichi Nishiwaki 78bd3047f8 don't use global mutable variable! 2015-06-19 03:06:57 +09:00
Yuichi Nishiwaki 0b66447e79 remove port->status property 2015-06-18 23:26:31 +09:00
Yuichi Nishiwaki 0fe4df3c15 [bugfix] repl broken 2015-06-17 02:58:37 +09:00
Yuichi Nishiwaki 63d3510de8 move features procedure defun to state.c benz 2015-06-17 00:13:00 +09:00
Yuichi Nishiwaki 4f69cb8ec3 eval procedure now takes environment object for the second argument 2015-06-16 22:51:49 +09:00
Yuichi Nishiwaki 1570bd1cd4 syntax-rules: rewrite case-lambda.scm. (p ... . var) pattern is not supported 2015-06-16 19:16:23 +09:00
Yuichi Nishiwaki 9ace96dd19 rewrite scheme/lazy.scm with syntax-rules 2015-06-15 02:17:27 +09:00
Yuichi Nishiwaki 448bbf679d change dictionary interface.
use #undefined object as sentinel
2015-06-09 17:06:19 +09:00
Yuichi Nishiwaki 2a1b7cf287 remove picrin/dictionary.scm 2015-06-09 17:05:47 +09:00
Yuichi Nishiwaki 5185a73cd2 replace none with undef 2015-06-09 16:34:45 +09:00
Yuichi Nishiwaki 53a9e72413 optimize var implementation 2015-06-08 22:28:17 +09:00
Yuichi Nishiwaki 5def1df320 s/pic_winder/pic_checkpoint/g 2015-06-08 21:04:04 +09:00
Yuichi Nishiwaki 72baa9a52d remove pic_throw function 2015-06-04 13:23:20 +09:00