Add argument variable binding
diff --git a/src/lisp/lisp.h b/src/lisp/lisp.h
index d3a0a29..48de7d4 100644
--- a/src/lisp/lisp.h
+++ b/src/lisp/lisp.h
@@ -1,5 +1,6 @@
 #pragma once
 
+#include "istream.h"
 #include <stdbool.h>
 #include <stdio.h>
 
@@ -52,19 +53,6 @@
 	struct alloc_list *next, *prev;
 };
 
-struct istream
-{
-	void *data;
-
-	// These two return -1 on error
-	int (*peek)(struct istream *s);
-	int (*get)(struct istream *s);
-
-	int (*read)(struct istream *s, char *buffer, int size);
-
-	void (*showpos)(struct istream *s, FILE *out);
-};
-
 bool startswith(struct istream *s, char *pattern);
 
 bool readsym(struct istream *is, value_t *val);
@@ -95,13 +83,9 @@
 
 void printval(value_t v, int depth);
 
-struct istream *new_stristream(char *str, int length);
-// same as above but null terminated
-struct istream *new_stristream_nt(char *str);
-void del_stristream(struct istream *stristream);
-
 void err(const char *msg);
 
 bool symstreq(value_t sym, char *str);
 
 extern value_t nil;
+extern value_t t;