Commit Graph

249 Commits

Author SHA1 Message Date
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
Yuichi Nishiwaki 27d642ecaf use proc_env in callcc.c 2015-06-02 06:58:02 +09:00
Yuichi Nishiwaki 5df4e4f64e rename functions related to continuation 2015-06-02 06:18:09 +09:00
Yuichi Nishiwaki dbcd81c8c1 [bugfix] calling dead escape continuation causes segv 2015-06-02 06:01:16 +09:00
Yuichi Nishiwaki d0e10b49a7 pic_env -> pic_context 2015-05-30 22:34:51 +09:00
Yuichi Nishiwaki 92bed39fae merge file/load/mutable-string/system/time contribs into r7rs 2015-05-30 19:39:18 +09:00
Yuichi Nishiwaki 0d12c11b0a replace regexp cmake with nitro.mk 2015-05-30 18:27:24 +09:00
Yuichi Nishiwaki bf0e388b3e support environments without libedit 2015-05-30 18:13:55 +09:00
Yuichi Nishiwaki 708f3c2d67 replace readline cmake with equivalent pkg-config call 2015-05-30 17:58:25 +09:00
Yuichi Nishiwaki ab9c33fc22 update repl 2015-05-29 20:43:05 +09:00
Yuichi Nishiwaki cd4b1be54c abandon cmake 2015-05-29 20:42:26 +09:00
Yuichi Nishiwaki 9b7eb2f996 unify all headers into picrin.h 2015-05-28 23:57:10 +09:00
Yuichi Nishiwaki 6a692541a6 s/pic_alloc/pic_malloc/g 2015-05-28 16:42:16 +09:00
Yuichi Nishiwaki 15449354c6 switch string implementation to picrin's 2015-05-27 23:34:40 +09:00
OGINO Masanori 52624460cd Don't import vector-map from R7RS in SRFI 43.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-05-13 12:10:04 +09:00
stibear 48faa9ac98 fixed vector-map/map! 2015-05-13 12:02:01 +09:00
Sunrin SHIMURA (keen) e3d2330df7 Use strict ERE 2015-05-11 16:05:40 +09:00
Sunrin SHIMURA (keen) cc9de3295d Merge branch 'master' into c89-porting 2015-02-01 12:30:35 +00:00
Yuichi Nishiwaki a7b3123405 don't use dynamic variable length array 2015-01-31 21:43:32 +09:00
zeptometer dab403a065 fix document 2015-01-26 16:14:59 +09:00
zeptometer 7d772fc904 add document for escape 2015-01-26 15:46:19 +09:00
zeptometer 4972de640f rename benz's call/cc to escape in (picrin control) 2015-01-26 15:03:04 +09:00
Yuichi Nishiwaki 1e8f49872e s/pic_noreturn/PIC_NORETURN/g 2015-01-26 12:22:38 +09:00
Yuichi Nishiwaki 1b637d1763 refactor pic_deflibrary macro. don't declare variables in for statements 2015-01-25 20:44:35 +09:00
Yuichi Nishiwaki f2eb51e53d some procedures are moved to contrib/
system related procedures are moved to contrib/

file related procedures are moved to contrib/

load related procedures are moved to conrib/
2015-01-18 01:03:29 +09:00
Yuichi Nishiwaki ab2f2790de add (picrin class) and (picrin protocol) 2015-01-12 15:39:25 +09:00
Yuichi Nishiwaki 438b4739d2 remove repl echo (appearing when lines are continuous) 2015-01-07 20:09:09 -08:00
Yuichi Nishiwaki 9303fcf34b safer names for utility macros 2015-01-07 13:11:48 -08:00
Sunrim KIM (keen) 1c48239521 Merge branch 'doc' 2014-10-25 09:02:26 +09:00
Yuichi Nishiwaki aa3982890a Merge pull request #226 from KeenS/repl-batch
Repl batch
2014-10-02 00:37:01 +09:00
Yuichi Nishiwaki f9967b7e77 Merge pull request #222 from omasanori/optional
Add (picrin optional).
2014-10-02 00:36:43 +09:00
Sunrim KIM (keen) 0864957061 cosmetic change 2014-09-30 21:23:22 +09:00
Sunrim KIM (keen) 2e0fab5a26 make repl tty sensitive 2014-09-30 21:21:59 +09:00
Yuichi Nishiwaki 9d694ac5ae generalized attribute 2014-09-25 19:12:56 +09:00
OGINO Masanori ed86a8e28d Add (picrin optional).
The library provides some macros to handle optional arguments. The
macros are compatible with those in Chicken, Gauche, etc.

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2014-09-22 23:44:58 +09:00
Yuichi Nishiwaki 6556a2ec1d spill out mutable-string nitro 2014-09-21 15:34:14 +09:00
Yuichi Nishiwaki 92e0961bb7 Merge pull request #217 from omasanori/exact-integer-sqrt
Fix exact-integer-sqrt.
2014-09-20 20:31:57 +09:00
Yuichi Nishiwaki 38a1f92abd add callcc nitro. 2014-09-20 20:31:42 +09:00
OGINO Masanori 95cf997b9f Fix exact-integer-sqrt.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2014-09-20 20:12:15 +09:00
Sunrim KIM (keen) 36394c8ebb fix link 2014-09-20 17:04:53 +09:00
Sunrim KIM (keen) 7a0890fbd7 move docs to contribs 2014-09-20 17:04:19 +09:00
Sunrim KIM (keen) 738618b925 Merge branch 'master' into doc
Conflicts:
	CMakeLists.txt
2014-09-20 17:00:57 +09:00
Sunrim KIM (keen) 0a4ea0704d Merge branch 'master' of github.com:picrin-scheme/picrin 2014-09-20 16:31:30 +09:00
Sunrim KIM (keen) 90542fad8b (ref #215) fix libedit include pathes 2014-09-20 16:30:26 +09:00
Yuichi Nishiwaki 912d1237bc resolve interreference between (picrin user) and (scheme *) 2014-09-20 12:23:52 +09:00
Yuichi Nishiwaki 527217e94a s/scheme/r7rs/g 2014-09-20 12:22:43 +09:00
Yuichi Nishiwaki b54818b5d9 spill out r7rs nitro 2014-09-20 12:21:22 +09:00
Yuichi Nishiwaki 260f993d87 mkdir srfi 2014-09-20 12:08:36 +09:00
Yuichi Nishiwaki 42a8fe555f move srfis to contrib/ 2014-09-20 11:54:53 +09:00
Yuichi Nishiwaki d8cbcde157 improve error handling mechanism 2014-09-19 17:15:27 +09:00
Yuichi Nishiwaki f0ed3b655a custom marker 2014-09-17 13:00:51 +09:00
Yuichi Nishiwaki b84004770a update benz (new->make) 2014-09-12 20:02:41 +09:00
Sunrim KIM (keen) 6e71dd3f1d add -l option 2014-09-01 22:51:04 +09:00
Yuichi Nishiwaki a290bb0b04 [repl] support multiple line input 2014-09-01 01:00:30 +09:00
Sunrim KIM (keen) 883a38ecde move contrib's docs into thir directories 2014-08-31 23:04:35 +09:00
Yuichi Nishiwaki 2a69894bbd add commentary for future work 2014-08-31 01:41:53 +09:00
Yuichi Nishiwaki 96a90810af import (picrin readline) only when exists 2014-08-31 01:41:12 +09:00
Yuichi Nishiwaki ac15ac6e2d use readline in repl 2014-08-31 01:00:13 +09:00
Yuichi Nishiwaki 029d98338d split repl and main loop 2014-08-31 00:36:20 +09:00
Yuichi Nishiwaki 75ae0cad12 repl moves to contrib 2014-08-30 23:30:04 +09:00
Sunrim KIM (keen) 99081590a5 wrap variable expantion with ${} 2014-08-11 23:11:13 +09:00
Sunrim KIM (keen) 5097c522e8 include picrin's headers before editlines' so as they can refer <stdio> 2014-08-11 23:10:27 +09:00
Sunrim KIM (keen) 9b390a58d3 Find readline.h in both editline/ and edit/readline/ 2014-08-11 21:39:04 +09:00
Sunrim KIM (keen) df471bd5a2 find exactly required header file 2014-08-11 15:16:00 +09:00
Sunrim KIM (keen) 8cc74a6c87 remove redundant code 2014-08-11 15:14:43 +09:00
Sunrim KIM (keen) ea18e54517 separate example from test 2014-08-09 15:09:21 +09:00
Sunrim KIM (keen) 114d4b5163 add history-expand and its test cases 2014-08-09 15:00:45 +09:00
Sunrim KIM (keen) d3acad378c add test and description comment 2014-08-09 06:32:46 +09:00
Sunrim KIM (keen) 54eed63df6 implement history manipurating procedures 2014-08-09 06:32:13 +09:00
Sunrim KIM (keen) 9583cfa4e0 comment out `read-history` test 2014-08-09 03:53:53 +09:00
Sunrim KIM (keen) cc35671a0a Merge branch 'master' into editline 2014-08-09 02:56:02 +09:00
Yuichi Nishiwaki d9ffc9be20 add srfi-27 2014-08-08 14:59:08 +09:00
Sunrim KIM (keen) a64439232a cosmetic changes 2014-08-08 07:16:09 +09:00
Sunrim KIM (keen) 8b88b73d74 add tests 2014-08-08 06:28:00 +09:00
Sunrim KIM (keen) 88f9fac5a2 implement useful procedures 2014-08-08 06:27:43 +09:00
Sunrim KIM (keen) beee153074 don't initialize history (it seems not to be necessary, though I'm not confident 2014-08-07 18:07:18 +09:00
Sunrim KIM (keen) 6b9a7788e1 add scratch 2014-08-07 16:35:33 +09:00
Yuichi Nishiwaki 91d2dd0b02 Merge pull request #174 from KeenS/refactor-contrib
Refactor contrib
2014-08-06 02:41:08 +09:00
Yuichi Nishiwaki e680b4a6bb change deflibrary API 2014-07-27 14:47:14 +09:00
Sunrim KIM (keen) 52a58e5231 add test case for `null` of (picrin control for) 2014-07-22 21:54:02 +09:00
Sunrim KIM (keen) 2b9d877d66 fix the test cases of `regexp-replace` 2014-07-22 21:49:06 +09:00
Sunrim KIM (keen) 0842983363 add test for `for` 2014-07-22 21:35:03 +09:00
Sunrim KIM (keen) 561cfc9816 add test for regexp 2014-07-22 21:34:23 +09:00
Sunrim KIM (keen) 973f8156ea Merge branch 'master' into refactor-contrib 2014-07-21 22:53:47 +09:00
Sunrim KIM (keen) 6bc0a64255 mv FindREGEXP.cmake to under 10.regexp 2014-07-21 22:43:25 +09:00
Sunrim KIM (keen) c78e60f41a Revert "make contribs independant of the directory structure of picrin"
This reverts commit cdee9d9134.
2014-07-21 22:39:27 +09:00
Sunrim KIM (keen) 0462299bc1 remove miscommited test 2014-07-20 18:03:37 +09:00
Sunrim KIM (keen) cdee9d9134 make contribs independant of the directory structure of picrin 2014-07-20 17:54:08 +09:00
Yuichi Nishiwaki 6a038bc926 change init_contrib API 2014-07-20 09:36:18 +09:00
Yuichi Nishiwaki e9c84536bd fix #160 2014-07-17 16:17:47 +09:00
Yuichi Nishiwaki ed01546f8e add (picrin pretty-print) 2014-07-16 20:42:12 +09:00
Yuichi Nishiwaki 5e12794467 sort contrib libraries before include them 2014-06-29 01:29:09 +09:00
Yuichi Nishiwaki c26fc144f3 added null operator to (picrin control list) 2014-06-28 12:08:53 +09:00
Yuichi Nishiwaki f37c88c174 add for macro library 2014-06-28 11:32:23 +09:00
Yuichi Nishiwaki e82a688a66 add number prefix to contrib libraries 2014-06-28 11:31:13 +09:00
Yuichi Nishiwaki 8388e8ed33 shift/control broken 2014-05-19 20:35:31 +09:00
Yuichi Nishiwaki 5c59dcd564 add implementation note 2014-05-19 14:45:38 +09:00
Yuichi Nishiwaki 5ba1d4eb39 add partcont library 2014-05-19 14:38:32 +09:00
Yuichi Nishiwaki 8fa9502fd4 automatic contribution library detection 2014-05-19 13:14:29 +09:00
Yuichi Nishiwaki 3e8d64fdb7 initial regexp support 2014-03-31 20:43:36 +09:00