on 4bec310 help sign in
all commits
9dd5dffMake AST more general and try to give its phases better namesEvan Czaplicki 6ba394cGet rid of experimental code for handling "deriving"Evan Czaplicki 329077fGet rid of input handlers for nowEvan Czaplicki 2a0a0e6Simplify SourceSyntax.Type AST, making record extension more restrictive as discussed with @maxsnewEvan Czaplicki 9dda928make conversion functions for input ports optionalEvan Czaplicki 828c2c7Give more reasonable names to incoming and outgoing portsEvan Czaplicki 9ea9854Actually fill in a type variable when generating PortIn expressionsEvan Czaplicki 7cf5a56Add Expressions for ports to check and validate types nicelyEvan Czaplicki 863d31bSwitch name of qualified importEvan Czaplicki 6a8db4cGet rid of dead dependencies and add -Wall for some filesEvan Czaplicki 41dd0c8Update for new def and port formatsEvan Czaplicki 740702cBegin switch from current FFI syntax to "port" syntaxEvan Czaplicki 83e8badAdd basics of "deriving" for ADTs and type aliases. Only parse it for type aliases at the moment.Evan Czaplicki e119d8eGet rid of SourceSyntax.Everything moduleEvan Czaplicki 28d2568Fix record constructor for extensionEvan Czaplicki a4c4cf0Use `Location.none` lessEvan Czaplicki b26edccSimplify representation of source locationsEvan Czaplicki 760ad90Add record constructors, begin using lists to represent fields in record types to maintain ordering from the source programEvan Czaplicki 648cbd4Use letters for arguments in adt constructorsEvan Czaplicki b540fb4Fix bug in generating Def for ADT constructorsEvan Czaplicki b87e45aChange module prefixes for some valuesEvan Czaplicki 334d39cManual dead code elimination ;)Evan Czaplicki 3bb618bProvide the type *and definition* for data constructurs during type checkingEvan Czaplicki 67ef1ecCreate the Type.Inference module which handles type inference from start to finish. Give it a Module and it returns a dictionary mapping top-level values to types.Evan Czaplicki 0070a84Switch the internal data constructor name for tuples. Before tuple constructors could be shadowed by user defined ADT's such as "Tuple0", "Tuple2", etc. Now it uses "_Tuple0" to make it impossible to overlap with user defined ASTs.Evan Czaplicki 2b9853cGet variable reordering working for Declarations.Evan Czaplicki 4d7562fBegin generating constraints for whole programs. Need to perform dependency sort within let-expressions for things to work properly though.Evan Czaplicki 2ef1882Start adding constraint generation for declarations.Evan Czaplicki