aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--etc/TODO14
1 files changed, 0 insertions, 14 deletions
diff --git a/etc/TODO b/etc/TODO
index fc442f93077..b102bdf35f0 100644
--- a/etc/TODO
+++ b/etc/TODO
@@ -35,20 +35,6 @@ Change src/bytecode.c so that calls from byte-code functions to byte-code
35functions don't go through Ffuncall/funcall_lambda/exec_byte_code but instead 35functions don't go through Ffuncall/funcall_lambda/exec_byte_code but instead
36stay within exec_byte_code. 36stay within exec_byte_code.
37 37
38** Add new 'switch' byte-code
39This byte-code would take one argument from the stack (the object to test)
40and one argument from the constant-pool (a switch table, implemented as an
41'eq' hash table) and would jump to the "label" contained in the hash table.
42
43Then add a 'case' special-form that can be compiled to this byte-code.
44This would behave just like cl-case, but instead of expanding to cond+eq it
45would be its own special form and would be compiled specially.
46
47Then change pcase to use 'case' when applicable.
48
49Then change the byte-compiler to recognize (cond ((eq x 'foo) bar) ...)
50and turn it into a 'case' for more efficient execution.
51
52** Improve the byte-compiler to recognize immutable (lexical) bindings 38** Improve the byte-compiler to recognize immutable (lexical) bindings
53and get rid of them if they're used only once and/or they're bound to 39and get rid of them if they're used only once and/or they're bound to
54a constant expression. 40a constant expression.