X-Git-Url: https://jxself.org/git/?p=open-adventure.git;a=blobdiff_plain;f=TODO;h=ce5d5cbfe1e670a0469e3ab63c90d7d847bf8dbe;hp=218ca91a68841d75ee690b20fd5d188dbc0c3ed8;hb=60ab7a63dc7c2b52bf21887f365a58588a08f708;hpb=c0a450c4d65d9164f9be806f6609b09e8d1180f2 diff --git a/TODO b/TODO index 218ca91..ce5d5cb 100644 --- a/TODO +++ b/TODO @@ -3,15 +3,15 @@ The FORTRANish mess that once was is now mostly idiomatic C. Some issues remain to be cleaned up: -* The remaining shared globals: K, WD1, WD1X, WD2, WD2X. These are used +* The remaining shared globals: WD1, WD1X, WD2, WD2X. These are used rather promiscuously to pass around information that ought to be function - arguments in a modern language. K is a particular offender. + arguments in a modern language. -* Remaining unstructured gotos in playermove() and do_command(). The goto L12 - in playermove() is particularly horrible, jumping backwards into the - middle of a loop. +* Remaining unstructured gotos in do_command(). + +* The program is still pretty much typeless - full of magic numbers being + sliced and diced in cryptic ways. Some attempt has been made to introduce + semantic types, but the job is barely started. -* The way return values from handlers such as 2012 trigger side effects - based on global state is nasty.