[uim-commit] r1412 - branches/r5rs/sigscheme
yamaken at freedesktop.org
yamaken at freedesktop.org
Sun Sep 4 12:35:11 PDT 2005
Author: yamaken
Date: 2005-09-04 12:35:08 -0700 (Sun, 04 Sep 2005)
New Revision: 1412
Modified:
branches/r5rs/sigscheme/eval.c
branches/r5rs/sigscheme/operations-siod.c
branches/r5rs/sigscheme/sigscheme.c
branches/r5rs/sigscheme/sigscheme.h
Log:
* sigscheme/sigscheme.h
- Add a TODO comment about config.h
- (ScmOp_interaction_environment): New function
* sigscheme/eval.c
- (ScmOp_scheme_report_environment, ScmOp_null_environment): Add
FIXME comments
- (ScmOp_interaction_environment): New function
* sigscheme/operations-siod.c
- (ScmOp_symbol_boundp, ScmOp_symbol_value, ScmOp_set_symbol_value):
Add TODO comments about standards conformance
* sigscheme/sigscheme.c
- (SigScm_Initialize): Add registration of interaction-environment
Modified: branches/r5rs/sigscheme/eval.c
===================================================================
--- branches/r5rs/sigscheme/eval.c 2005-09-04 18:29:09 UTC (rev 1411)
+++ branches/r5rs/sigscheme/eval.c 2005-09-04 19:35:08 UTC (rev 1412)
@@ -1588,10 +1588,17 @@
=======================================*/
ScmObj ScmOp_scheme_report_environment(ScmObj version)
{
+ /* FIXME: check arg, warn incompatibility */
return SCM_NULL;
}
ScmObj ScmOp_null_environment(ScmObj version)
{
+ /* FIXME: check arg, warn incompatibility */
return SCM_NULL;
}
+
+ScmObj ScmOp_interaction_environment(void)
+{
+ return SCM_NULL;
+}
Modified: branches/r5rs/sigscheme/operations-siod.c
===================================================================
--- branches/r5rs/sigscheme/operations-siod.c 2005-09-04 18:29:09 UTC (rev 1411)
+++ branches/r5rs/sigscheme/operations-siod.c 2005-09-04 19:35:08 UTC (rev 1412)
@@ -66,6 +66,12 @@
TODO : remove these functions!
=======================================*/
+/*
+ * TODO:
+ * - generalize to SCM_USE_NONSTD_FEATURES
+ * - describe compatibility with de facto standard of other Scheme
+ * implementations
+ */
ScmObj ScmOp_symbol_boundp(ScmObj obj)
{
if (SYMBOLP(obj)
@@ -77,6 +83,12 @@
return SCM_FALSE;
}
+/*
+ * TODO:
+ * - replace with a portable proc such as (eval 'sym (interaction-environment))
+ * - make the portable proc interface similar to a de facto standard of other
+ * Scheme implementations if existing
+ */
ScmObj ScmOp_symbol_value(ScmObj var)
{
if (!SYMBOLP(var))
@@ -85,6 +97,13 @@
return symbol_value(var, SCM_NULL);
}
+/*
+ * TODO:
+ * - replace with a portable proc such as (eval '(set! sym val)
+ * (interaction-environment))
+ * - make the portable proc interface similar to a de facto standard of other
+ * Scheme implementations if existing
+ */
ScmObj ScmOp_set_symbol_value(ScmObj var, ScmObj val)
{
/* sanity check */
Modified: branches/r5rs/sigscheme/sigscheme.c
===================================================================
--- branches/r5rs/sigscheme/sigscheme.c 2005-09-04 18:29:09 UTC (rev 1411)
+++ branches/r5rs/sigscheme/sigscheme.c 2005-09-04 19:35:08 UTC (rev 1412)
@@ -143,6 +143,7 @@
Scm_RegisterFuncRawListWithTailFlag("or" , ScmExp_or);
Scm_RegisterFunc1("scheme-report-environment", ScmOp_scheme_report_environment);
Scm_RegisterFunc1("null-environment" , ScmOp_null_environment);
+ Scm_RegisterFunc0("interaction-environment" , ScmOp_interaction_environment);
/* operations.c */
Scm_RegisterFunc2("eqv?" , ScmOp_eqvp);
Scm_RegisterFunc2("eq?" , ScmOp_eqp);
Modified: branches/r5rs/sigscheme/sigscheme.h
===================================================================
--- branches/r5rs/sigscheme/sigscheme.h 2005-09-04 18:29:09 UTC (rev 1411)
+++ branches/r5rs/sigscheme/sigscheme.h 2005-09-04 19:35:08 UTC (rev 1412)
@@ -65,6 +65,7 @@
/*=======================================
Macro Declarations
=======================================*/
+/* FIXME: split off to config.h */
#define SCM_USE_EUCJP 1 /* use EUC-JP as internal encoding */
#define SCM_USE_SRFI1 0 /* use SRFI-1 list library procedures written in C */
#define SCM_USE_SRFI8 1 /* use SRFI-8 receive procedure written in C */
@@ -167,6 +168,7 @@
ScmObj ScmExp_define(ScmObj arg, ScmObj env);
ScmObj ScmOp_scheme_report_environment(ScmObj version);
ScmObj ScmOp_null_environment(ScmObj version);
+ScmObj ScmOp_interaction_environment(void);
/* operations.c */
ScmObj ScmOp_eqvp(ScmObj obj1, ScmObj obj2);
More information about the uim-commit
mailing list