Remove the TODO item about converting to Typed Racket.

Yay, done!  2 (?) years of work.
This commit is contained in:
Sergiu Ivanov 2023-08-24 23:37:59 +02:00
parent 51c033b29c
commit 09b62feb46
1 changed files with 0 additions and 40 deletions

View File

@ -36,46 +36,6 @@ interaction with Org-mode.
that I work on the subsequent items decreases with their position
in the list.
*** TODO Convert =dds= to Typed Racket
Rewriting =dds= with Typed Racket will be a major refactoring,
consisting in the following 3 phases which will happen more or
less in parallel:
- define types, add type signatures, add types for functions
I import from =graph=;
- transfer the comments from the source files to Scribble
documentation;
- redefine the generic interface for dynamics, which is currently
in =generics=.
I plan to implement the new dynamics as a structure, from which
all the concrete dynamics of the objects will inherit. This will
hopefully work like interface inheritance. The current plan is to
start converting =networks= to Typed Racket, then starting the new
module =dynamics= to fill in the blanks progressively by moving
over bits of code from =generics=. The goal is to have an empty
=generics= module at the end.
People on Racket Users suggested using structures with fields
containing functions, but it does not seem to get me to my goal of
having type-level methods/functions.
The order in which I will convert the modules:
1. =utils=,
2. =functions=,
3. =networks= and =dynamics= (currently =generics=) at the same
time,
4. =networks=,
5. =rs=.
I will convert the modules one by one by first creating a typed
section (a submodule) and re-exporting its functions together with
the untyped functions. I will then move the functions one by one
from the untyped section to the typed section. When the untyped
section is empty, I will convert the language of the entire module
to Typed Racket and remove the submodule.
*** TODO Remove the artifacts of conversion to Typed Racket
Since I am converting =dds= to Typed Racket gradually, I need to
leave a couple artifacts to ensure that older code compiles with