add (picrin symbol)
This commit is contained in:
parent
bc47968ea1
commit
772c59dead
|
@ -1,6 +1,7 @@
|
||||||
list(APPEND PICLIB_SCHEME_LIBS
|
list(APPEND PICLIB_SCHEME_LIBS
|
||||||
${PROJECT_SOURCE_DIR}/piclib/picrin/base.scm
|
${PROJECT_SOURCE_DIR}/piclib/picrin/base.scm
|
||||||
${PROJECT_SOURCE_DIR}/piclib/picrin/list.scm
|
${PROJECT_SOURCE_DIR}/piclib/picrin/list.scm
|
||||||
|
${PROJECT_SOURCE_DIR}/piclib/picrin/symbol.scm
|
||||||
${PROJECT_SOURCE_DIR}/piclib/picrin/macro.scm
|
${PROJECT_SOURCE_DIR}/piclib/picrin/macro.scm
|
||||||
|
|
||||||
${PROJECT_SOURCE_DIR}/piclib/scheme/base.scm
|
${PROJECT_SOURCE_DIR}/piclib/scheme/base.scm
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
(import (rename (picrin base core) (define define*))
|
(import (rename (picrin base core) (define define*))
|
||||||
(picrin base macro)
|
(picrin base macro)
|
||||||
(picrin base list)
|
(picrin base list)
|
||||||
(scheme base))
|
(picrin base symbol))
|
||||||
|
|
||||||
(define-syntax define
|
(define-syntax define
|
||||||
(lambda (form use-env mac-env)
|
(lambda (form use-env mac-env)
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
(import (picrin base macro)
|
(import (picrin base macro)
|
||||||
(picrin base)
|
(picrin base)
|
||||||
(picrin list)
|
(picrin list)
|
||||||
|
(picrin symbol)
|
||||||
(scheme base)
|
(scheme base)
|
||||||
(picrin dictionary))
|
(picrin dictionary))
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
(define-library (scheme base)
|
(define-library (scheme base)
|
||||||
(import (picrin base)
|
(import (picrin base)
|
||||||
(picrin list)
|
(picrin list)
|
||||||
|
(picrin symbol)
|
||||||
(picrin macro))
|
(picrin macro))
|
||||||
|
|
||||||
(export define set! lambda quote
|
(export define set! lambda quote
|
||||||
|
@ -842,6 +843,13 @@
|
||||||
assv
|
assv
|
||||||
assoc)
|
assoc)
|
||||||
|
|
||||||
|
;; 6.5 Symbols
|
||||||
|
|
||||||
|
(export symbol?
|
||||||
|
symbol=?
|
||||||
|
symbol->string
|
||||||
|
string->symbol)
|
||||||
|
|
||||||
;; 6.6 Characters
|
;; 6.6 Characters
|
||||||
|
|
||||||
(define-macro (define-char-transitive-predicate name op)
|
(define-macro (define-char-transitive-predicate name op)
|
||||||
|
|
13
src/symbol.c
13
src/symbol.c
|
@ -149,8 +149,13 @@ pic_symbol_string_to_symbol(pic_state *pic)
|
||||||
void
|
void
|
||||||
pic_init_symbol(pic_state *pic)
|
pic_init_symbol(pic_state *pic)
|
||||||
{
|
{
|
||||||
pic_defun(pic, "symbol?", pic_symbol_symbol_p);
|
pic_deflibrary (pic, "(picrin base symbol)") {
|
||||||
pic_defun(pic, "symbol=?", pic_symbol_symbol_eq_p);
|
pic_defun(pic, "symbol?", pic_symbol_symbol_p);
|
||||||
pic_defun(pic, "symbol->string", pic_symbol_symbol_to_string);
|
pic_defun(pic, "symbol->string", pic_symbol_symbol_to_string);
|
||||||
pic_defun(pic, "string->symbol", pic_symbol_string_to_symbol);
|
pic_defun(pic, "string->symbol", pic_symbol_string_to_symbol);
|
||||||
|
}
|
||||||
|
|
||||||
|
pic_deflibrary (pic, "(picrin symbol)") {
|
||||||
|
pic_defun(pic, "symbol=?", pic_symbol_symbol_eq_p);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue