Yuichi Nishiwaki
3b3a74e114
let dictionary-ref return two values
2014-08-29 23:57:55 +09:00
Yuichi Nishiwaki
79417040e6
Merge branch 'trie-reader'
2014-08-24 15:23:46 +09:00
Yuichi Nishiwaki
8d06a00483
don't refer to invalid memory region by ci->ip
2014-08-13 14:56:18 +09:00
Yuichi Nishiwaki
b2e1c523bc
refactor the last change
2014-08-13 14:55:26 +09:00
Yuichi Nishiwaki
8039ddf9c5
[bugfix] rhs of assignment may modify lhs pointer
2014-08-13 14:47:26 +09:00
Yuichi Nishiwaki
e1fededa1e
dispatch by string
2014-08-12 19:43:43 +09:00
Yuichi Nishiwaki
0dd7e85e72
[bugfix] plus reader broken
2014-08-12 19:42:54 +09:00
Yuichi Nishiwaki
252debb489
remember dispatch string
2014-08-12 19:40:32 +09:00
Yuichi Nishiwaki
7f3bbe88af
s/read_unsigned_blob/read_blob/g
2014-08-12 11:06:55 +09:00
Yuichi Nishiwaki
e34b580182
refactor boolean readers
2014-08-12 10:59:49 +09:00
Yuichi Nishiwaki
d78026ac05
refactor comma reader
2014-08-12 10:52:35 +09:00
Yuichi Nishiwaki
058de5b7e9
reader by readtable
2014-08-12 09:14:43 +09:00
Yuichi Nishiwaki
8dae333bbd
use int for character variables
2014-08-12 09:09:24 +09:00
Yuichi Nishiwaki
d922fb9747
unused type alias
2014-08-12 09:09:03 +09:00
Yuichi Nishiwaki
d2a06d8efa
add unmatch handler
2014-08-12 08:32:52 +09:00
Yuichi Nishiwaki
aec33d59da
read_pipe didn't satisfy reader signature
2014-08-12 08:31:00 +09:00
Yuichi Nishiwaki
e3fc2d5009
add reader struct
2014-08-11 18:39:04 +09:00
Yuichi Nishiwaki
bf9db30059
cosmetic changes
2014-08-11 18:38:59 +09:00
Yuichi Nishiwaki
afe0e5a1e0
add in-library
2014-08-11 18:16:33 +09:00
Yuichi Nishiwaki
57d3618c5a
more detail error message on car/cdr error
2014-08-09 20:03:58 +09:00
Yuichi Nishiwaki
bd98dda5d0
support exponential literal
2014-08-08 15:38:29 +09:00
Yuichi Nishiwaki
977345392f
no need char conversion
2014-08-08 15:19:10 +09:00
Yuichi Nishiwaki
a023db8054
drop support for rational literal
2014-08-08 15:08:08 +09:00
Yuichi Nishiwaki
d98cb495a3
[bugfix] define standard functions before loading piclibs
2014-08-07 11:20:28 +09:00
Yuichi Nishiwaki
7653cb4bb1
add libraries function
2014-08-07 11:14:58 +09:00
Yuichi Nishiwaki
474a625349
inline push_sym macro
2014-08-07 11:06:38 +09:00
Yuichi Nishiwaki
448e3caeaa
don't use user printer for records in debug mode
2014-08-06 22:15:49 +09:00
Yuichi Nishiwaki
7de95e2817
user-defined printers for record objects
2014-08-06 16:54:18 +09:00
Yuichi Nishiwaki
2b66b7c5a2
allow arbitrary objects at codegen time
2014-08-06 15:53:54 +09:00
Yuichi Nishiwaki
a4a2bde6ba
use read-time eval literals for eof-object and dictionries
2014-08-06 15:53:29 +09:00
Yuichi Nishiwaki
d62727bef9
add read-time eval
2014-08-06 15:53:22 +09:00
Yuichi Nishiwaki
e339b7c64a
external form using srfi-10 for dictionaries
2014-08-06 15:10:48 +09:00
Yuichi Nishiwaki
312914fa0d
use #, reader literal to write eof-object
2014-08-06 15:02:19 +09:00
Yuichi Nishiwaki
b64cdd6724
remove redundant code
2014-08-06 14:58:23 +09:00
Yuichi Nishiwaki
7a98c3619a
store rectype information to slot hash
2014-08-06 11:36:36 +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
bac96b2e54
s/slotname/slot/g
2014-08-06 11:26:35 +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
261c592d79
move core syntaxes from (scheme base) to (picrin base core)
2014-08-06 01:14:43 +09:00
Yuichi Nishiwaki
db7c129e71
s/pic_record_record/pic_record_make_record/g
2014-08-05 12:05:18 +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
9e9666999e
fix style
2014-08-04 07:36:31 +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
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
e73d9cc590
compiler may perform tco against macroexpand_node
2014-08-03 13:52:18 +09:00