things going well

This commit is contained in:
Felix Brendel
2019-07-17 00:43:20 +02:00
parent af0c6fd2fd
commit 7d282238bf
4 changed files with 8 additions and 7 deletions
+2 -1
View File
@@ -1,7 +1,7 @@
(import "alist.slime")
(define-typed (tf n :number a :alist)
(printf n)
(printf :end " " "the number is" n "and the alist is")
(pprint-alist a))
@@ -13,4 +13,5 @@
(define (test a b)
(printf a b))
(printf "addr-of test:" (addr-of test))
(test :ij :yes)
+1 -1
View File
@@ -9,7 +9,7 @@ pushd bin
taskkill /F /IM %exeName% > NUL 2> NUL
echo ---------- Compiling ----------
call timecmd cl ../src/main.cpp /std:c++latest /Fe%exeName% /W3 /Zi /nologo /EHsc /link /NODEFAULTLIB:libucrt libucrtd.lib
call ..\timecmd cl ../src/main.cpp /std:c++latest /Fe%exeName% /W3 /Zi /nologo /EHsc /link /NODEFAULTLIB:libucrt libucrtd.lib
popd
if %errorlevel% == 0 (
+1 -1
View File
@@ -427,7 +427,7 @@ proc eval_expr(Lisp_Object* node, Environment* env) -> Lisp_Object* {
// is done at runtime...). That is why we sometimes have
// stray macros fying around, in that case, we expand them
// and bake them in, so they do not have to be expanded
// later again.
// later again. We will call this "lazy macro expansion"
if (lispOperator->value.function.type == Function_Type::Macro) {
*node = *result;
try result = eval_expr(result, env);
+4 -4
View File
@@ -287,12 +287,12 @@ namespace Memory {
// TODO(Felix): If argument is a list (pair), do a FULL copy,
// we don't copy singleton objects
if (
n == Memory::nil || n == Memory::t ||
if (n == Memory::nil || n == Memory::t ||
Memory::get_type(n) == Lisp_Object_Type::Symbol ||
Memory::get_type(n) == Lisp_Object_Type::Keyword
)
Memory::get_type(n) == Lisp_Object_Type::Keyword)
{
return n;
}
Lisp_Object* target;
try target = create_lisp_object();