symbols and keywords now have a hash value

This commit is contained in:
Felix Brendel
2019-05-12 16:45:19 +02:00
parent 75c95d3baa
commit 0fb9fbe1ee
12 changed files with 86 additions and 64 deletions
+2 -2
View File
@@ -365,7 +365,7 @@ namespace Parser {
// check if we have to create or delete or run macros
while (Memory::get_type(expression->value.pair.first) == Lisp_Object_Type::Symbol) {
Lisp_Object* parsed_symbol = expression->value.pair.first;
if (string_equal("define-syntax", parsed_symbol->value.identifier)) {
if (string_equal("define-syntax", parsed_symbol->value.symbol.identifier)) {
// create a new macro
Lisp_Object* arguments = expression->value.pair.rest;
Lisp_Object* body;
@@ -426,7 +426,7 @@ namespace Parser {
// print_environment(environment_for_macros);
return Memory::nil;
} else if (string_equal("delete-syntax", parsed_symbol->value.identifier)) {
} else if (string_equal("delete-syntax", parsed_symbol->value.symbol.identifier)) {
/* --- deleting an existing macro --- */
// TODO(Felix): this is a hard one because when
// environments will be made from hashmaps, how can we