Remove the TODO item about converting to Typed Racket.
Yay, done! 2 (?) years of work.
This commit is contained in:
parent
51c033b29c
commit
09b62feb46
1 changed files with 0 additions and 40 deletions
40
README.org
40
README.org
|
@ -36,46 +36,6 @@ interaction with Org-mode.
|
||||||
that I work on the subsequent items decreases with their position
|
that I work on the subsequent items decreases with their position
|
||||||
in the list.
|
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
|
*** TODO Remove the artifacts of conversion to Typed Racket
|
||||||
Since I am converting =dds= to Typed Racket gradually, I need to
|
Since I am converting =dds= to Typed Racket gradually, I need to
|
||||||
leave a couple artifacts to ensure that older code compiles with
|
leave a couple artifacts to ensure that older code compiles with
|
||||||
|
|
Loading…
Reference in a new issue