on fe23c0e help sign in
fe23c0efix pretty printer for charsEvan Czaplicki 7f43392Create module to sort let-blocks into "strongly connected components". This does two things:Evan Czaplicki 433b533Update tests to be actual programs, not just expressions. Content stays the same.Evan Czaplicki a6bfa5fAdd some basic test files for the type checker.Evan Czaplicki 4d7562fBegin generating constraints for whole programs. Need to perform dependency sort within let-expressions for things to work properly though.Evan Czaplicki 4208b5cRemove some debugging stuff and generally clean up the code. There was one potential error in which a debug needed to be a liftIO, the computation it performed was not optional.Evan Czaplicki b038782Fix error in generalization in which some variables would escape their rank. Problem was that young variables were not all being marked as young.Evan Czaplicki dabada1Make constraint pretty printing prettier.Evan Czaplicki cb914d9Get all of the Haskell files compiling with the new type checker. Does not actually work, undefined is used in some places as a stopgap measure.Evan Czaplicki abaa769Add Max's server changes to the changelog.Evan Czaplicki ca77056Improve quality of error messages.Evan Czaplicki d3bd238Add dependency on ansi-terminal for colorful results.Evan Czaplicki b5887f4Get type inference working in the basic case. Begin working on printing errors in a prettier way.Evan Czaplicki f87e316Make pretty printing properly parenthesize higher order functions. Not the best implementation, but it is simple and works well.Evan Czaplicki 497d478Get the solver working on basic programs. It outputs pretty types for the variables in the program. Need to test further and start doing some benchmarking.Evan Czaplicki ca62ee6Create type pools, have an organized model of state to flow through the State Transformer during constraint solving and variable unification.Evan Czaplicki 0b2b98dUpdate changelog for pretty printingEvan Czaplicki 4c51159Create a Type.Pool module specifically for variable pools. Start using a state transformer to thread the pool and errors through.Evan Czaplicki 2ef1882Start adding constraint generation for declarations.Evan Czaplicki 5cc99f5Remove the old type-checker code.Evan Czaplicki 0ed7205Add pretty printing for type constraints.Evan Czaplicki 96fd5bfUpdate program parser to use Parse.DeclarationsEvan Czaplicki d29ca3bCreate a Parse.Declaration file for all declarations. Get rid of special purpose Parse.Foreign library.Evan Czaplicki e4ca967Create a source syntax for types that will get converted into the internal type representation during type checking.Evan Czaplicki f2b3ed7Start using the PrettyPrint library to show expressions, literals, and patterns.Evan Czaplicki 078692aGet Optimize.hs updated for the newer AST.Evan Czaplicki b87b845Move the Environment.hs and Fragment.hs files down a directory.Evan Czaplicki ca8441fContinue getting the new type-checker in order.Evan Czaplicki 947b82eSwitch more files over to new ExpressionsEvan Czaplicki 5c68f6bConvert more files to the new Expression format that relies more on patterns. Seems to clean things up so far.Evan Czaplicki 69ed763Start switching over to an AST that uses patterns in lambdas and pulls the arguments out of Definitions (placing them in lambdas).Evan Czaplicki 351c33cStart generating constraints for let-expressions. Account for mutual recursion, but will throw a runtime error if a user has given type annotations.Evan Czaplicki cdb63bdStart writing a new type checker based on the ATAPL chapter on efficient type-inference.Evan Czaplicki 74d3c35Fix optimization bug with > sign.Evan Czaplicki 60de915Merge branch 'dev' of https://github.com/evancz/Elm into devEvan Czaplicki d700acfFix substitutions for ExplicitList.Evan Czaplicki f32390cMerge pull request #184 from A1kmm/dont-print-constraints-during-unifyEvan Czaplicki 89cecdbAlso fix merge to remove extra newlineAndrew Miller 57d1084Fix up previous mergeAndrew Miller 1b4aca9Turn off debug code that printed all constraints during unify.Andrew Miller a2e9befMerge branch 'dev' of github.com:/A1kmm/Elm into devAndrew Miller 25671f5update changelogEvan Czaplicki 9d68c10Add support for triple-quoted multi-line stringsEvan Czaplicki d91419dAdd missing dependencies to Elm.cabal.Evan Czaplicki 8705c28Merge branch 'dev' of git+ssh://github.com/A1kmm/Elm into devAndrew Miller e63b12dFix some style weirdness in Setup.hsEvan Czaplicki 88e8f81Add Parse.Literal to the Elm.cabal fileEvan Czaplicki d3b88f8Add missing other-modules entry Parse.LiteralAndrew Miller 5c1089aFix bugs in Automaton discovered by JeffEvan Czaplicki 0d41af8Update changelogEvan Czaplicki