From 511a3590fdca9f751efd5d789665d7a7c7babed0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Erik=20Sved=C3=A4ng?= Date: Fri, 13 Oct 2017 12:19:22 +0200 Subject: [PATCH] Todos. --- docs/Todo.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/docs/Todo.md b/docs/Todo.md index 0304e2a1..40c03f5b 100644 --- a/docs/Todo.md +++ b/docs/Todo.md @@ -2,7 +2,7 @@ ## Critical Bugs * The 'range' function is fully generic (for all 'a') but only compiles when 'a' is numeric type -* After use:ing the Int and Float modules, this command crashes the REPL: (+ ?a ?b) +* Go over all the Array functions and make sure they are memory safe ## Big Language Features * Generic data types (apart from Array, which already is) @@ -13,7 +13,6 @@ ## Language Design Considerations * What's the correct type of the variable in a set!-form, i.e. (set! &x value) or (set! x value) -* The 'copy' function should probably be a special form, just like 'ref'? * Is some kind of interface/typeclass construct worthwhile? * How should passing primitive types (that do not care about being referenced) as ref:ed parameters be handled? * How to handle heap allocated values? Box type with reference count? @@ -29,8 +28,7 @@ * Stop evalutaion of forms after errors to avoid "Trying to refer to undefined symbol" error * Built in REPL history (without using rlwrap) * Preserve whitespace to allow saving forms back to disk -* Refactorings at the REPL -* Hide instances of templates/generic functions when printing the environment (by default) -* Warnings about giving away values should be compiler errors and not Haskell trace:s +* Refactorings at the REPL. Rename, extract function, add/remove parameter? +* Hide instances of templates/generic functions when printing the environment (by default, allow it as a setting) * Somehow make it possible to enter ":t foo" at the REPL (can't be done now because each atom is evaluated separately) * Rename type variables from t0, t1, t2 to a, b, c, etc.