diff --git a/TODO.md b/TODO.md index ef359ac..1d5500c 100644 --- a/TODO.md +++ b/TODO.md @@ -2,7 +2,18 @@ ## TODO - [ ] vscode - run newt when switching editors -- [ ] inline struct getters +- [ ] case split + - We could fake this up: + - given a name and a point in the editor + - walk through the function looking for the binder + - get its type + - enumerate valid constructors (and their arity) + - Repeat the line with each, applied to args + - For `<-` or `let` we'd want to fudge some `|` lines +- [ ] inline struct getters during code generation (We'd like `x.h1.h2`) +- [ ] Better FC for parse errors (both EOF and the ones that show up just after the error) +- [ ] Support "Add missing cases" +- [ ] Code gen for PiType (rather than static JS) - [x] fix string highlighting - [x] implement tail call optimization - [x] implement magic nat diff --git a/src/Data/TestGraph.newt b/src/Data/TestGraph.newt deleted file mode 100644 index 6a79270..0000000 --- a/src/Data/TestGraph.newt +++ /dev/null @@ -1,20 +0,0 @@ -module Data.TestGraph - -import Prelude -import Data.Graph -import Node - -main : IO Unit -main = do - let (_ :: fn :: Nil) = getArgs | args => putStrLn "bad args \{show args}" - (Right text) <- readFile fn | Left err => putStrLn "Can't read \{fn}: \{show err}" - let graph = mapMaybe readLine $ split text "\n" - debugLog graph - let result = tarjan graph - debugLog result - where - readLine : String → Maybe (String × List String) - readLine line = case split line " " of - ("" :: _) => Nothing - (x :: rest) => Just (x, rest) - _ => Nothing