}
#endif
+
+#include "version.hh"
SCM
-undefd ()
+ly_version ()
{
- return SCM_UNDEFINED;
-}
+ char const* vs = "\'(" MAJOR_VERSION " " MINOR_VERSION " " PATCH_LEVEL " " MY_PATCH_LEVEL ")" ;
+
+ return gh_eval_str ((char*)vs);
+}
static void
init_functions ()
{
scm_make_gsubr ("ly-warn", 1, 0, 0, (Scheme_function_unknown)ly_warning);
+ scm_make_gsubr ("ly-version", 0, 0, 0, (Scheme_function_unknown)ly_warning);
scm_make_gsubr ("ly-gulp-file", 1,0, 0, (Scheme_function_unknown)ly_gulp_file);
scm_make_gsubr ("dir?", 1,0, 0, (Scheme_function_unknown)ly_isdir_p);
- scm_make_gsubr ("undefd", 0,0, 0, (Scheme_function_unknown)undefd);
+
scm_make_gsubr ("ly-number->string", 1, 0,0, (Scheme_function_unknown) ly_number2string);
}
+
+
+SCM
+ly_assoc_chain (SCM key, SCM achain)
+{
+ if (gh_pair_p (achain))
+ {
+ SCM handle = scm_assoc (key, gh_car (achain));
+ if (gh_pair_p (handle))
+ return handle;
+ else
+ return ly_assoc_chain (key, gh_cdr (achain));
+ }
+ else
+ return SCM_BOOL_F;
+}