Yuichi Nishiwaki
7b251a7129
change record API; remove record-of? and add record-type
2014-08-06 11:30:14 +09:00
Yuichi Nishiwaki
1a7df924ab
export destructuring-bind
2014-08-06 03:09:36 +09:00
Yuichi Nishiwaki
5a3443a881
add destructuring-define
2014-08-06 03:09:36 +09:00
Yuichi Nishiwaki
b0b60d3f01
renaming export in d-lambda
2014-08-06 03:09:36 +09:00
Yuichi Nishiwaki
f37c2c25f7
refactor destructuring-lambda
2014-08-06 03:09:36 +09:00
Yuichi Nishiwaki
41f1c9962a
add missing files
2014-08-06 02:15:29 +09:00
Yuichi Nishiwaki
772c59dead
add (picrin symbol)
2014-08-06 02:14:43 +09:00
Yuichi Nishiwaki
bc47968ea1
add (picrin list) and (picrin base list)
2014-08-06 02:07:02 +09:00
Yuichi Nishiwaki
f70b6c5240
add (picrin base macro) primitives
2014-08-06 01:46:59 +09:00
Yuichi Nishiwaki
1d42771b54
define 'define' as a user-level macro
2014-08-06 01:34:07 +09:00
Yuichi Nishiwaki
610e1013f7
add (picrin base) library
2014-08-06 01:17:01 +09:00
Yuichi Nishiwaki
261c592d79
move core syntaxes from (scheme base) to (picrin base core)
2014-08-06 01:14:43 +09:00
Yuichi Nishiwaki
d669d48aa7
add destructuring lambda
2014-08-05 12:53:33 +09:00
Yuichi Nishiwaki
f44c5189f0
reorder functions following the guide by r7rs.
2014-08-05 02:20:05 +09:00
Yuichi Nishiwaki
a022941c98
inline cxr functions
2014-08-05 02:08:14 +09:00
Yuito Murase
ef38874850
add predicate record? to (picrin record), and fix bug of record-type predicate
2014-08-04 23:01:47 +09:00
Yuito Murase
cd96014104
record-ref and record-set! don't check type
2014-08-04 12:45:11 +09:00
Yuito Murase
8934c99ac2
move (picrin record-primitive) to (picrin record)
2014-08-04 07:38:27 +09:00
Yuito Murase
0c4d2b9cef
Merge remote-tracking branch 'upstream/master' into native-record
...
Conflicts:
piclib/scheme/base.scm
2014-08-03 16:19:54 +09:00
Yuito Murase
fa0de0c3fa
Merge remote-tracking branch 'upstream/master' into native-record
...
Conflicts:
include/picrin/value.h
piclib/prelude.scm
src/codegen.c
src/gc.c
src/init.c
src/macro.c
src/vm.c
src/write.c
2014-08-03 15:48:24 +09:00
Yuichi Nishiwaki
0095fa6a57
prelude to base
2014-08-03 15:47:25 +09:00
Yuito Murase
c76dfcb861
implement native record
...
native record primitives are defined in (picrin record-primitive)
- (make-record rectype)
- (record-of? record rectype)
- (record-ref record rectype field-name)
- (record-set! record rectype field-name value)
define-record-type is defined using these primitives
2014-08-03 15:30:48 +09:00
Yuichi Nishiwaki
c2982a4252
no need to overwrite eval
2014-08-03 14:46:08 +09:00
Yuichi Nishiwaki
e16de03b65
abort execution when an error occurred during running a file program
2014-08-03 14:38:38 +09:00
Yuichi Nishiwaki
9375aadf4b
split files
2014-08-03 14:19:55 +09:00
Yuichi Nishiwaki
a2fc679fab
inline 'with' macro
2014-08-03 14:18:47 +09:00
Yuichi Nishiwaki
e795b4a75a
small refactor
2014-08-03 14:18:27 +09:00
Yuichi Nishiwaki
82f82da213
remove old code that has been commented out for a long
2014-08-03 14:04:26 +09:00
Yuichi Nishiwaki
3f2b1d85bf
remove unused helper function
2014-08-03 14:02:13 +09:00
Yuichi Nishiwaki
48b5d6b578
[bugfix] interleave newline
2014-07-29 15:57:26 +09:00
Yuichi Nishiwaki
1a891036f2
[bugfix] print should print a newline to given port
2014-07-29 15:56:50 +09:00
Yuichi Nishiwaki
a15ec868ba
-h option should return exit status 1
2014-07-29 15:44:22 +09:00
Yuichi Nishiwaki
36f4a8fa66
support file execution
2014-07-29 15:43:43 +09:00
Yuichi Nishiwaki
96f8a969e0
print takes an optional argument for output port, and returns obj itself
2014-07-29 15:42:52 +09:00
Yuichi Nishiwaki
f09a27cd0a
[bugfix] case doesn't compare string equality
2014-07-29 15:42:35 +09:00
Yuichi Nishiwaki
2f7a51c096
move the repl source to under piclib
2014-07-29 15:23:40 +09:00
Yuichi Nishiwaki
28c486261c
move test-read-error to r7rs-tests.scm
2014-07-27 18:39:27 +09:00
Yuichi Nishiwaki
9c1f8809ed
add missing files
2014-07-27 14:33:46 +09:00
Yuichi Nishiwaki
137a01e74e
add environment procedure
2014-07-27 14:29:29 +09:00
Yuichi Nishiwaki
076698c84a
add null-environment and scheme-report-environment
2014-07-27 14:29:08 +09:00
Yuichi Nishiwaki
01061efc5a
move test-numeric-syntax to r7rs-tests.scm. test-numeric-syntax is a
...
test runner specific to r7rs-tests.scm. It should not be placed in
generic test library.
2014-07-27 12:46:10 +09:00
Yuichi Nishiwaki
b7c76ccc2a
[bugfix] test statistics displays failures in reverse order.
2014-07-27 12:42:14 +09:00
Yuichi Nishiwaki
27b157fb19
grammer error
2014-07-26 16:20:26 +09:00
Yuichi Nishiwaki
f922a7a0cd
reimplement identifier=? in scheme
2014-07-26 14:54:44 +09:00
Yuichi Nishiwaki
e53472d9cc
add strip-syntax
2014-07-26 14:13:12 +09:00
Yuichi Nishiwaki
c584b7baa9
add guard macro
2014-07-24 11:03:40 +09:00
Yuichi Nishiwaki
2f44145d3e
refactor vector-map
2014-07-23 09:41:55 +09:00
Yuichi Nishiwaki
aeb9c2bcee
define current-*-ports in port.c
2014-07-23 09:24:28 +09:00
Yuichi Nishiwaki
8846776f2f
refactor (picrin parameter)
2014-07-23 09:18:58 +09:00
Yuichi Nishiwaki
4d108ac299
move include syntax to core-syntax library
2014-07-22 14:34:39 +09:00
Yuichi Nishiwaki
b17a2002f3
refactor dynamic-wind
2014-07-22 14:28:30 +09:00
Yuichi Nishiwaki
bdd15261b1
rewrite bytevector-append in c
2014-07-22 14:14:58 +09:00
Yuichi Nishiwaki
cba4a6ebf5
remvoe unused helper function
2014-07-22 14:08:54 +09:00
Yuichi Nishiwaki
4676550961
rewrite vector-append in c
2014-07-22 14:08:48 +09:00
Yuichi Nishiwaki
5244b2f45d
rewrite bytevector-copy in c
2014-07-22 13:55:35 +09:00
Yuichi Nishiwaki
3f6ec5f878
implement assoc and member in c
2014-07-22 13:19:25 +09:00
Yuichi Nishiwaki
44e80e62f4
Merge pull request #176 from KeenS/test-values
...
fix a bug of `test-values` and unlock the test cases that use `test-valu...
2014-07-22 09:28:23 +09:00
Yuichi Nishiwaki
09bb977c50
rewrite vector-fill! in c
2014-07-22 09:24:30 +09:00
Yuichi Nishiwaki
4e895c97d0
rewrite symbol=? in c
2014-07-22 09:15:16 +09:00
Yuichi Nishiwaki
0d59eee27b
rewrite boolean=? in c
2014-07-22 09:13:42 +09:00
Yuichi Nishiwaki
b1ae2c24e5
rewrite exact-integer-sqrt in c
2014-07-22 09:07:25 +09:00
Yuichi Nishiwaki
3caf070043
rewrite floor/ and truncate/ in c
2014-07-22 09:07:09 +09:00
Yuichi Nishiwaki
b834553c34
rewrite vector-copy in c
2014-07-22 08:58:48 +09:00
Sunrim KIM (keen)
341e4048eb
fix a bug of `test-values` and unlock the test cases that use `test-values`
2014-07-21 22:58:38 +09:00
Yuichi Nishiwaki
1e4bc04112
rewrite list<->vector converters in c
2014-07-21 22:51:33 +09:00
Yuichi Nishiwaki
f8904d199f
Merge pull request #173 from KeenS/test
...
separate (picrin test) and import some test macros from chibi scheme
2014-07-21 00:01:42 +09:00
Sunrim KIM (keen)
720eb94395
separate (picrin test) and import some test macros from chibi scheme
2014-07-20 17:24:03 +09:00
Yuichi Nishiwaki
7a2f8abd9c
rewrite let-syntax in scheme
2014-07-20 14:55:17 +09:00
Yuichi Nishiwaki
240c5d9ac4
implement define-macro in scheme
2014-07-20 11:15:00 +09:00
Yuichi Nishiwaki
3e5fd1a54b
vector-map is no longer used
2014-07-19 18:46:09 +09:00
Yuichi Nishiwaki
8b82498cd7
inline some trivial functions
2014-07-19 18:29:41 +09:00
Yuichi Nishiwaki
63c34327b9
fix a bug in walk function
2014-07-19 18:26:09 +09:00
Yuichi Nishiwaki
1297ef9fb8
add memoize function
2014-07-19 18:26:03 +09:00
Yuichi Nishiwaki
03cc21953f
walk-symbol by default
2014-07-19 18:15:38 +09:00
Yuichi Nishiwaki
2c1db4472b
add walk-symbol
2014-07-19 18:14:11 +09:00
Yuichi Nishiwaki
346494524f
share cache between wrap and inject
2014-07-19 18:10:14 +09:00
Yuichi Nishiwaki
34f7497f4f
Merge branch 'memq-in-c'
...
Conflicts:
piclib/prelude.scm
2014-07-19 16:15:02 +09:00
Yuichi Nishiwaki
5779fcd4e4
no need to override vector? with export syntax
2014-07-19 15:13:47 +09:00
Yuichi Nishiwaki
88d86e1312
rename (picrin multiple-value) to (picrin values)
2014-07-19 15:11:32 +09:00
Yuichi Nishiwaki
c148f74618
include core-syntax at early stage
2014-07-19 15:11:17 +09:00
Yuichi Nishiwaki
c468b343d2
missing file
2014-07-19 14:59:34 +09:00
Yuichi Nishiwaki
d5a314b186
refactor define-values
2014-07-19 14:30:29 +09:00
Yuichi Nishiwaki
6a203d236a
eliminate (scheme cxr) dependency
2014-07-19 14:26:09 +09:00
Yuichi Nishiwaki
301c97245c
split prelude into files
2014-07-19 14:15:53 +09:00
Yuichi Nishiwaki
02ebced87b
prelude cosmetic changes
2014-07-19 13:22:24 +09:00
Yuichi Nishiwaki
ad2434cde7
implement memv and assv with C
2014-07-19 12:51:19 +09:00
Yuichi Nishiwaki
a2c00017ea
implement memq and assq with c
2014-07-19 12:48:27 +09:00
Yuichi Nishiwaki
e715ca10ea
add capture-syntactic-environment. close #96
2014-07-19 11:23:14 +09:00
Yuichi Nishiwaki
8a1d068519
fix many bugs around sc
2014-07-19 11:20:54 +09:00
Yuichi Nishiwaki
f66bea4e97
add close-syntax
2014-07-17 16:47:50 +09:00
Yuichi Nishiwaki
690bdcb83d
add srfi 111
2014-07-17 16:43:25 +09:00
Yuichi Nishiwaki
b99bddcad0
rename built-in.scm to prelude.scm
2014-07-17 16:22:53 +09:00
Yuichi Nishiwaki
5b41b979d9
[bugfix] abuse compare of er-macro
2014-07-17 16:11:33 +09:00
Yuichi Nishiwaki
e5511027e8
add type check guards to comparators
2014-07-17 13:58:08 +09:00
Yuichi Nishiwaki
f4d68d691b
remove c impls of ir/er macros
2014-07-17 13:44:18 +09:00
Yuichi Nishiwaki
c0b83759a8
re-implement ir-macro-transformer in scheme
2014-07-17 13:40:45 +09:00
Yuichi Nishiwaki
2e35f03f35
remove type check guards in compare function
2014-07-17 13:40:18 +09:00
Yuichi Nishiwaki
5e8c4af84b
fix bugs introduced in prev commit
2014-07-17 13:39:28 +09:00
Yuichi Nishiwaki
cf509a4922
[bugfix] move define-auxiliary-syntax to the beginning. This made
...
mac-env and use-env of cond expression different
2014-07-17 11:32:52 +09:00
Yuichi Nishiwaki
73a6eaf9da
rewrite er-macro-transformer in scheme
2014-07-17 11:32:41 +09:00