From 822ac63e9a08661f57117eb819979af522285d20 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 29 Mar 2016 02:35:52 -0400 Subject: [PATCH] Added utf8 primitives to eval --- include/cyclone/runtime.h | 4 ++-- runtime.c | 12 ++++++------ scheme/eval.sld | 11 +++++++---- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index 944fe5f5..68152e63 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -360,8 +360,8 @@ extern const object primitive_vector_91set_67; extern const object primitive_bytevector; extern const object primitive_bytevector_91append; extern const object primitive_Cyc_91bytevector_91copy; -extern const object primitive_Cyc_string_91_125utf8; -extern const object primitive_Cyc_utf8_91_125string; +extern const object primitive_Cyc_91string_91_125utf8; +extern const object primitive_Cyc_91utf8_91_125string; extern const object primitive_bytevector_91u8_91ref; extern const object primitive_bytevector_91u8_91set_67; extern const object primitive_string_91ref; diff --git a/runtime.c b/runtime.c index cd6cba1c..dccdd4a7 100644 --- a/runtime.c +++ b/runtime.c @@ -2071,11 +2071,11 @@ void _Cyc_91bytevector_91copy(void *data, object cont, object args) { object argc = Cyc_length(data, args); Cyc_check_num_args(data, "Cyc-bytevector-copy", 3, args); Cyc_bytevector_copy(data, cont, car(args), cadr(args), caddr(args)); } -void _Cyc_string_91_125utf8(void *data, object cont, object args) { +void _Cyc_91string_91_125utf8(void *data, object cont, object args) { object argc = Cyc_length(data, args); Cyc_check_num_args(data, "Cyc-string->utf8", 3, args); Cyc_string2utf8(data, cont, car(args), cadr(args), caddr(args)); } -void _Cyc_utf8_91_125string(void *data, object cont, object args) { +void _Cyc_91utf8_91_125string(void *data, object cont, object args) { object argc = Cyc_length(data, args); Cyc_check_num_args(data, "Cyc-utf8->string", 3, args); Cyc_utf82string(data, cont, car(args), cadr(args), caddr(args)); } @@ -2915,8 +2915,8 @@ static primitive_type bytevector_91append_primitive = {{0}, primitive_tag, "byte static primitive_type Cyc_91bytevector_91copy_primitive = {{0}, primitive_tag, "Cyc-bytevector-copy", &_Cyc_91bytevector_91copy}; static primitive_type bytevector_91u8_91ref_primitive = {{0}, primitive_tag, "bytevector-u8-ref", &_bytevector_91u8_91ref}; static primitive_type bytevector_91u8_91set_67_primitive = {{0}, primitive_tag, "bytevector-u8-set!", &_bytevector_91u8_91set_67}; -static primitive_type Cyc_string_91_125utf8_primitive = {{0}, primitive_tag, "Cyc-string->utf8", &_Cyc_string_91_125utf8}; -static primitive_type Cyc_utf8_91_125string_primitive = {{0}, primitive_tag, "Cyc-utf8->string", &_Cyc_utf8_91_125string}; +static primitive_type Cyc_91string_91_125utf8_primitive = {{0}, primitive_tag, "Cyc-string->utf8", &_Cyc_91string_91_125utf8}; +static primitive_type Cyc_91utf8_91_125string_primitive = {{0}, primitive_tag, "Cyc-utf8->string", &_Cyc_91utf8_91_125string}; static primitive_type make_91vector_primitive = {{0}, primitive_tag, "make-vector", &_make_91vector}; static primitive_type vector_91ref_primitive = {{0}, primitive_tag, "vector-ref", &_vector_91ref}; static primitive_type vector_91set_67_primitive = {{0}, primitive_tag, "vector-set!", &_vector_91set_67}; @@ -3046,8 +3046,8 @@ const object primitive_bytevector_91append = &bytevector_91append_primitive; const object primitive_Cyc_91bytevector_91copy = &Cyc_91bytevector_91copy_primitive; const object primitive_bytevector_91u8_91ref = &bytevector_91u8_91ref_primitive; const object primitive_bytevector_91u8_91set_67 = &bytevector_91u8_91set_67_primitive; -const object primitive_Cyc_string_91_125utf8 = & Cyc_string_91_125utf8_primitive; -const object primitive_Cyc_utf8_91_125string = &Cyc_utf8_91_125string_primitive; +const object primitive_Cyc_91string_91_125utf8 = & Cyc_91string_91_125utf8_primitive; +const object primitive_Cyc_91utf8_91_125string = &Cyc_91utf8_91_125string_primitive; const object primitive_list_91_125vector = &list_91_125vector_primitive; const object primitive_boolean_127 = &boolean_127_primitive; const object primitive_char_127 = &char_127_primitive; diff --git a/scheme/eval.sld b/scheme/eval.sld index f4f070c9..ba0f430e 100644 --- a/scheme/eval.sld +++ b/scheme/eval.sld @@ -157,7 +157,8 @@ (define (primitive-implementation proc) (cadr proc)) (define primitive-procedures - (list + (append + (list (list 'call/cc call/cc) (list 'Cyc-global-vars Cyc-global-vars) (list 'Cyc-get-cvar Cyc-get-cvar) @@ -231,6 +232,8 @@ (list 'cddadr cddadr) (list 'cdddar cdddar) (list 'cddddr cddddr) + ) + (list (list 'char->integer char->integer) (list 'integer->char integer->char) (list 'string->number string->number) @@ -248,8 +251,8 @@ (list 'bytevector-length bytevector-length) (list 'bytevector-append bytevector-append) (list 'Cyc-bytevector-copy Cyc-bytevector-copy) - ;(list 'Cyc-utf8->string Cyc-utf8->string) - ;(list 'Cyc-string->utf8 Cyc-string->utf8) + (list 'Cyc-utf8->string Cyc-utf8->string) + (list 'Cyc-string->utf8 Cyc-string->utf8) (list 'bytevector bytevector) (list 'bytevector-u8-ref bytevector-u8-ref) (list 'bytevector-u8-set! bytevector-u8-set!) @@ -285,7 +288,7 @@ (list 'Cyc-read-line Cyc-read-line) (list 'Cyc-write-char Cyc-write-char) (list 'Cyc-write Cyc-write) - (list 'Cyc-display Cyc-display))) + (list 'Cyc-display Cyc-display)))) (define (primitive-procedure-names) (foldr