You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.7 KiB
1.7 KiB
TODO List
Now
Parsing
parseStruct
- Actually parse body
- Only allow variables declarations
- Allow assignments I guess
- Maybe function definitions too (D-kinda thing)
- Add constructor support (initializes values)
- I guess this is nicer when you have functions in the struct too to make initialization code more modular
- Only allow variables declarations
Allow nested structs- Removed, why? That would be weird?
- Actually parse body
- Note to self,
parseClass
andparseStruct
should be way more specific and not just callparseBody
- As currently one can then use
static
outside of these contexts parseStruct
- Adding missing support for
static
in it
- Adding missing support for
parseClass
- Add this
- As currently one can then use
Typechecking
- Dependency generation
- Classes declared at the module level should be marked as static in
parse()
parseClass()
should not use
- Structs declared at the module level should be marked as
markedseen inparse()
(not inparseBody()
<- this is a note we don't do this) - Functions (?) declared at the module level should be
markedseen as static inparse()
(not inparseBody()
<- this is a note we don't do this) - Variables declared at the module level should be marked as
markedseen inparse()
(not inparseBody()
<- this is a note we don't do this)
- Classes declared at the module level should be marked as static in
Future
- Make the compiler a library
- Remove
exit
fromexpect
and rather throw an error - Split it up into two projects with...
- Library
- Frontend interface
- Publish to dub
- Remove