Yuichi Nishiwaki
9b226afd1f
move {vector,string}-{map,for-each}
2014-09-19 18:21:28 +09:00
Sunrim KIM (keen)
489535e156
let `min` and `max` preserve exactness
2014-09-18 23:26:07 +09:00
Yuichi Nishiwaki
6fdf082bdd
update benz (exception API refactoring)
2014-09-17 00:51:01 +09:00
Yuichi Nishiwaki
ec0f9a952b
delete null.scm, move declarations to r5rs.scm
2014-09-15 16:46:22 +09:00
Yuichi Nishiwaki
1e29ad51a0
update benz. (parameterize, object dictionary)
2014-09-15 16:00:19 +09:00
Yuichi Nishiwaki
b9707debaf
update benz
2014-09-13 18:55:16 +09:00
Yuichi Nishiwaki
c82c23b93d
dictionary-delete -> dictionary-delete!
2014-09-13 16:54:41 +09:00
Yuichi Nishiwaki
ecdc6ffd66
update benz (dictionary-api)
2014-09-13 16:52:42 +09:00
Yuichi Nishiwaki
22a04a59a2
update benz (conversion functions)
2014-09-12 21:21:29 +09:00
Yuichi Nishiwaki
8117a95b0d
update benz. define `include' in scheme/base.scm
2014-09-12 18:54:12 +09:00
Yuichi Nishiwaki
96609de180
string conversion functions
2014-09-10 20:10:09 +09:00
Yuichi Nishiwaki
0dbf238f83
update benz (call-with-port)
2014-09-10 17:43:19 +09:00
Yuichi Nishiwaki
9f5a1512b5
char comparators moved to benz core
2014-09-10 17:18:41 +09:00
Yuichi Nishiwaki
a0ab746fc8
fix #197
2014-09-10 03:11:45 +09:00
Yuichi Nishiwaki
3aced33d84
small refactoring
2014-09-09 02:29:24 +09:00
Yuichi Nishiwaki
d2e5ca6985
lcm should do abs
2014-09-09 02:24:19 +09:00
Yuichi Nishiwaki
afe547f1c3
r5rs is missed
2014-09-09 02:15:55 +09:00
Yuichi Nishiwaki
64d7861bf3
bytevector-copy is missed. added port-open?c
2014-09-09 02:14:48 +09:00
Yuichi Nishiwaki
3c396b5f3c
gcd and lcm take variable-length arguments
2014-09-09 01:48:28 +09:00
Yuichi Nishiwaki
df18df8868
[bugfix] even? and odd? broken
2014-09-09 01:31:25 +09:00
Yuichi Nishiwaki
9ab446ab92
support strings
2014-09-09 01:28:08 +09:00
Yuichi Nishiwaki
27322a3c80
update benz (_ and ...)
2014-09-09 00:59:12 +09:00
Yuichi Nishiwaki
230c87d455
update benz (boot.c)
2014-09-08 23:55:47 +09:00
Yuichi Nishiwaki
1ac0ccb05e
change dictionary interface
2014-09-08 20:49:28 +09:00
Yuichi Nishiwaki
8b9a3f513a
update benz
2014-09-08 20:45:34 +09:00
Yuichi Nishiwaki
0ad4daa338
more fixes
2014-09-08 20:37:44 +09:00
Yuichi Nishiwaki
3919c17fdc
WIP
2014-09-08 20:20:08 +09:00
Yuichi Nishiwaki
c3ef97992d
move core syntaxes
2014-09-08 17:16:05 +09:00
Yuichi Nishiwaki
685d21a1e2
move define-record-type
2014-09-08 17:15:50 +09:00
Yuichi Nishiwaki
c15999cc76
update benz
2014-09-08 17:08:38 +09:00
Yuichi Nishiwaki
268191d1c5
reorder base.scm
2014-09-05 03:08:11 +09:00
Yuichi Nishiwaki
6f40dcc5df
refactor define-record-writer
2014-09-04 19:14:43 +09:00
Yuichi Nishiwaki
85ccc30821
remove scheme implemetation of identifier=?
2014-09-04 19:14:27 +09:00
Yuichi Nishiwaki
7a2b897f17
add scheme/read.scm and scheme/write.scm
2014-09-04 18:59:25 +09:00
Yuichi Nishiwaki
055ec2538d
update prototypes (picrin/symbol.scm, picrin/list.scm, picrin/base.scm)
2014-09-04 18:59:10 +09:00
Yuichi Nishiwaki
7f092cb9ab
managed to make it work
2014-09-01 09:53:19 +09:00
Yuichi Nishiwaki
9fefa80466
Merge branch 'repl-and-readline'
2014-08-31 01:47:59 +09:00
Yuichi Nishiwaki
75ae0cad12
repl moves to contrib
2014-08-30 23:30:04 +09:00
stibear
6a52aa2610
setter -> @@setter
2014-08-30 15:31:26 +09:00
stibear
607e961525
fixes small mistakes
2014-08-30 15:26:21 +09:00
stibear
a85de7ff73
implement by using (picrin attribute)
2014-08-30 14:47:47 +09:00
stibear
688c41a402
Updates CMakeLists.txt
2014-08-30 14:47:47 +09:00
stibear
64bcf68692
implements srfi-17(generalized-set!)
2014-08-30 14:47:47 +09:00
Yuichi Nishiwaki
3b3a74e114
let dictionary-ref return two values
2014-08-29 23:57:55 +09:00
Yuichi Nishiwaki
6533fc9b5b
[bugfix] identifier=?
2014-08-08 13:59:15 +09:00
Yuichi Nishiwaki
fff22f253f
use define-record-writer to set custom writer to <array> type
2014-08-07 11:52:00 +09:00
Yuichi Nishiwaki
75138db4db
add define-record-writer
2014-08-07 11:50:52 +09:00
Yuichi Nishiwaki
97bb9085af
import (picrin library) to (picrin user) by default
2014-08-07 11:20:12 +09:00
Yuichi Nishiwaki
6996b80f10
Merge branch 'reader-constructor'
2014-08-07 00:30:02 +09:00
Yuichi Nishiwaki
8a5a3e6b97
refactor record type bootstrap
2014-08-06 22:15:35 +09:00
zeptometer
a35dd8463c
in syntax-rules, literals is prior to underscore
2014-08-06 21:48:54 +09:00
zeptometer
4f59e07539
fix bug that errors when matching vector rule with non-vector expression
2014-08-06 21:05:20 +09:00
zeptometer
b91939f5aa
fix bug when syntax-rules expand rules including vector
2014-08-06 20:11:59 +09:00
Yuichi Nishiwaki
0eecddb5da
set array printer
2014-08-06 17:00:32 +09:00
Yuichi Nishiwaki
7de95e2817
user-defined printers for record objects
2014-08-06 16:54:18 +09:00
Yuichi Nishiwaki
0f89e04548
small refactoring on <record-type>
2014-08-06 16:27:12 +09:00
Yuichi Nishiwaki
9316ba468b
import (picrin array) and (picrin dictionary) in (picrin user) by default
2014-08-06 15:54:16 +09:00
Yuichi Nishiwaki
b0c9c468c0
s/<type>/<record-type>/g
2014-08-06 14:34:46 +09:00
Yuichi Nishiwaki
86698f974f
add <type> type
2014-08-06 11:45:03 +09:00
Yuichi Nishiwaki
0610c0e95b
use <foo> style in naming record type
2014-08-06 11:33:07 +09:00
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