\chapter{Todo List}
\hypertarget{todo}{}\label{todo}\index{Todo List@{Todo List}}

\begin{DoxyRefList}
\item[Global \doxylink{conspage_8h_a04ba7c874b05e9789d0aca9ee6b106a7}{allocate\+\_\+cell} (uint32\+\_\+t tag)]\label{todo__todo000006}%
\Hypertarget{todo__todo000006}%
handle the case where another \doxylink{conspage_8h_structcons__page}{cons\+\_\+page} cannot be allocated; return an exception. Which, as we cannot create such an exception when cons space is exhausted, means we must construct it at init time.  
\item[Global \doxylink{init_8c_a7b2b605240cd6d9667295594fb1231c0}{bind\+\_\+function} (wchar\+\_\+t \texorpdfstring{$\ast$}{*}name, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer(\texorpdfstring{$\ast$}{*}executable)}(struct \doxylink{consspaceobject_8h_structstack__frame}{stack\+\_\+frame} \texorpdfstring{$\ast$}{*}, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}))]\label{todo__todo000003}%
\Hypertarget{todo__todo000003}%
where a function is not compiled from source, we could cache the name on the source pointer. Would make stack frames potentially more readable and aid debugging generally.  
\item[Global \doxylink{consspaceobject_8h_a6a5f5b042aa23509409e0fd00a91ac2e}{CONSTV} ]\label{todo__todo000007}%
\Hypertarget{todo__todo000007}%
tag values should be collected into an enum.  
\item[Global \doxylink{lispops_8c_a9f1504aecf8fbcd4b77a7207475e46b1}{end\+\_\+of\+\_\+stringp} (struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer} arg)]\label{todo__todo000015}%
\Hypertarget{todo__todo000015}%
candidate for moving to a memory/string.\+c file  
\item[Global \doxylink{structfunction__payload_ab3524057ee5852a90e378742759cf891}{function\+\_\+payload\+::executable} )(struct \doxylink{consspaceobject_8h_structstack__frame}{stack\+\_\+frame} \texorpdfstring{$\ast$}{*}, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer})]\label{todo__todo000010}%
\Hypertarget{todo__todo000010}%
check this documentation is current!  
\item[Struct \doxylink{consspaceobject_8h}{integer\+\_\+payload} ]\label{todo__todo000009}%
\Hypertarget{todo__todo000009}%
Why is this 60, and not 64 bits?  
\item[Global \doxylink{lispops_8h_acb0b12e6b1e85b766821e6a088d98d43}{lisp\+\_\+set} (struct \doxylink{consspaceobject_8h_structstack__frame}{stack\+\_\+frame} \texorpdfstring{$\ast$}{*}frame, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer} frame\+\_\+pointer, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer} env)]\label{todo__todo000013}%
\Hypertarget{todo__todo000013}%
doesn\textquotesingle{}t actually work yet for namespaces which are not the oblist. 
\item[Global \doxylink{lispops_8h_abcba0ec3ef4ee8df493af82538e06fd2}{lisp\+\_\+set\+\_\+shriek} (struct \doxylink{consspaceobject_8h_structstack__frame}{stack\+\_\+frame} \texorpdfstring{$\ast$}{*}frame, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer} frame\+\_\+pointer, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer} env)]\label{todo__todo000014}%
\Hypertarget{todo__todo000014}%
doesn\textquotesingle{}t actually work yet for namespaces which are not the oblist. 
\item[Global \doxylink{conspage_8c_a4c4c78e7fc8fb93ca030af51fba71c1c}{make\+\_\+cons\+\_\+page} ()]\label{todo__todo000005}%
\Hypertarget{todo__todo000005}%
we ought to handle cons space exhaustion more gracefully than just crashing; should probably return an exception instead, although obviously that exception would have to have been pre-\/built.  
\item[Global \doxylink{read_8c_a591d644a952e568d4db8cf2474d4997a}{read\+\_\+number} (struct \doxylink{consspaceobject_8h_structstack__frame}{stack\+\_\+frame} \texorpdfstring{$\ast$}{*}frame, struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer} frame\+\_\+pointer, URL\+\_\+\+FILE \texorpdfstring{$\ast$}{*}input, wint\+\_\+t initial, bool seen\+\_\+period)]\label{todo__todo000004}%
\Hypertarget{todo__todo000004}%
Need to do a lot of inc\+\_\+ref and dec\+\_\+ref, to make sure the garbage is collected.  
\item[Struct \doxylink{consspaceobject_8h}{stack\+\_\+frame} ]\label{todo__todo000008}%
\Hypertarget{todo__todo000008}%
refactor.  
\item[Global \doxylink{peano_8h_ac3f5af65c887eed123b7be986ae92766}{to\+\_\+long\+\_\+double} (struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer} arg)]\label{todo__todo000001}%
\Hypertarget{todo__todo000001}%
cannot throw an exception out of here, which is a problem if a ratio may legally have zero as a divisor, or something which is not a number is passed in.  
\item[Global \doxylink{peano_8h_aff092cc8ce6153b70eddb7ed82238034}{to\+\_\+long\+\_\+int} (struct \doxylink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer} arg)]\label{todo__todo000002}%
\Hypertarget{todo__todo000002}%
cannot throw an exception out of here, which is a problem if a ratio may legally have zero as a divisor, or something which is not a number (or is a big number) is passed in.  
\item[Global \doxylink{vectorspace_8h_a52100a8d038844c00250f5356f1b9a3f}{vector\+\_\+space\+\_\+object\+::payload} ]\label{todo__todo000012}%
\Hypertarget{todo__todo000012}%
this is almost certainly not idiomatic C.  
\item[Global \doxylink{consspaceobject_8h_ab96816d317aa5196e2ef198d9a8d621b}{vectorp\+\_\+payload\+::address} ]\label{todo__todo000011}%
\Hypertarget{todo__todo000011}%
will change when I actually implement vector space) 
\end{DoxyRefList}