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
Yuichi Nishiwaki
48003c2ce1
Merge branch 'update-xhash'
2014-08-01 18:52:31 +09:00
Yuichi Nishiwaki
c1e6645086
use brand new API style of xhash
2014-08-01 18:48:14 +09:00
Yuichi Nishiwaki
52aa837bea
support #!fold-case directive
2014-07-29 18:12:45 +09:00
Yuichi Nishiwaki
d9958143e3
file functions should return file-error
2014-07-29 17:45:40 +09:00
Yuichi Nishiwaki
2f7f2a5b93
s/lib_tbl/libs/g
2014-07-29 16:22:55 +09:00
Yuichi Nishiwaki
f26def254d
remove commented function
2014-07-29 16:10:31 +09:00
Yuichi Nishiwaki
1ae29c8449
inline global_ref and global_def.
2014-07-29 16:09:04 +09:00
Yuichi Nishiwaki
38076e738e
lookup global variable by name
2014-07-29 16:09:04 +09:00
Yuichi Nishiwaki
83ba9af7aa
comment out an assertion
2014-07-29 16:01:12 +09:00
Yuichi Nishiwaki
ea0ebf5126
[bugfix] command-line returned reversed list of command line arguments
2014-07-29 15:31:24 +09:00
Yuichi Nishiwaki
bc0b1aa6d6
Merge pull request #181 from KeenS/rspi
...
Fix build error on Raspberry Pi
2014-07-28 02:23:02 +09:00
Yuichi Nishiwaki
7a64ecc8bf
refactor macroexpand-1
2014-07-28 02:22:02 +09:00
Yuichi Nishiwaki
9b50d9133d
remove debug print
2014-07-28 02:04:00 +09:00
Yuichi Nishiwaki
c8918b8e63
support renaming import (including 'only', 'rename', 'except', 'prefix' clauses)
2014-07-28 02:00:16 +09:00
Yuichi Nishiwaki
d31e20c25c
define 'import' and 'export' as macros
2014-07-28 01:02:48 +09:00
Yuichi Nishiwaki
9c1a397ead
define 'define-library' as a macro
2014-07-28 00:48:13 +09:00
Sunrim KIM on Raspberry Pi
39a4a12a10
Merge branch 'master' into rspi
...
Conflicts:
src/read.c
2014-07-27 18:51:12 +09:00
Yuichi Nishiwaki
6a0cc4c9f7
single ')' should be an read error
2014-07-27 18:35:50 +09:00
Yuichi Nishiwaki
730a827d0e
fix vm_tear_off is broken
2014-07-27 18:29:59 +09:00
Sunrim KIM on Raspberry Pi
415cf30ae6
restore some redundant changes
2014-07-27 17:24:56 +09:00
Sunrim KIM on Raspberry Pi
331fe21297
use `int` in place of `char` when you compare it to EOF
2014-07-27 17:05:57 +09:00
Yuichi Nishiwaki
6f7543e3a2
Merge pull request #177 from wasabiz/number-string
...
Number string
2014-07-27 14:49:25 +09:00
Yuichi Nishiwaki
e680b4a6bb
change deflibrary API
2014-07-27 14:47:14 +09:00
Yuichi Nishiwaki
fd8330cca3
add eval error handling
2014-07-27 13:57:15 +09:00
Yuichi Nishiwaki
e258529e8a
primary eval support
2014-07-27 13:41:55 +09:00
Yuichi Nishiwaki
09efa4715c
add another argument to eval
2014-07-27 13:23:59 +09:00