1
1
mirror of https://github.com/github/semantic.git synced 2024-12-23 06:41:45 +03:00
Commit Graph

17418 Commits

Author SHA1 Message Date
Rick Winfrey
1468f74428 Refactor to not use tuples 2017-11-29 17:03:35 -08:00
Rick Winfrey
d0a521779e Add type annotation for mkChannelType 2017-11-29 16:25:57 -08:00
Rick Winfrey
ed012fe18d Convert to point free 2017-11-29 16:10:50 -08:00
Rick Winfrey
890b37c252 Use choice for type rules 2017-11-29 16:10:35 -08:00
Rick Winfrey
ed3f36ccde Refactor unaryExpression to not use >>= 2017-11-29 16:04:03 -08:00
Rick Winfrey
b7bf6c06be Refactor for statement assignment 🎉 🎩 @robrix 2017-11-29 14:57:37 -08:00
Timothy Clem
99ec8a1758 Calling subcontext keeps the env intact 2017-11-29 13:57:48 -08:00
Timothy Clem
af99c51159 Implement evaluation of calls (for value types) 2017-11-29 13:57:26 -08:00
Timothy Clem
8b61483ca2 Extend the env with the function name 2017-11-29 13:57:05 -08:00
Timothy Clem
72e81e30a9 Make my linter happy 2017-11-29 13:56:31 -08:00
Timothy Clem
e336e8735e Relax eval constaints for more choice in control flow 2017-11-29 13:55:46 -08:00
Rick Winfrey
31d8962b7b Update tests for receive operator 2017-11-29 12:54:28 -08:00
Rick Winfrey
410b8e12e0 Update receive statement 📝 2017-11-29 12:54:01 -08:00
Rick Winfrey
6f0ab3c42a Assign receive operators 2017-11-29 12:37:49 -08:00
Rick Winfrey
c0637e85ef Add ReceiveOperator constructor 2017-11-29 12:37:37 -08:00
Rick Winfrey
fafcdfb83b 🔥 Todos 2017-11-29 12:37:15 -08:00
Rob Rix
355ec2aa5e TODOs 2017-11-29 14:07:40 -05:00
Rob Rix
2104e08b66 Evaluate function declarations to closures.
This is a bit wrong.
2017-11-29 14:05:44 -05:00
Rob Rix
3862b3da57 Abstract Value over the term type. 2017-11-29 14:05:18 -05:00
Rob Rix
f1bff2c6f3 Rename the a parameter to value. 2017-11-29 13:55:21 -05:00
Rob Rix
0bf69a1ce9 Closures have a list of parameters. 2017-11-29 13:29:44 -05:00
Rob Rix
60a1d326c9 Evaluate type annotations by evaluating their subjects. 2017-11-29 13:15:16 -05:00
Rob Rix
797330650f Customize the default eval to show the constructor. 2017-11-29 13:07:15 -05:00
Rob Rix
f569fe74db The default Eval instance uses MonadFail instead of Prelude.fail. 2017-11-29 13:00:26 -05:00
Rob Rix
2f02104f82 Abstract evaluation to values/types via a AbstractValue class. 2017-11-29 12:56:21 -05:00
Rob Rix
fce88d982c Rename AbstractValue to ValueRoots. 2017-11-29 12:44:47 -05:00
Rob Rix
a34a8ec3a3 Split Primitive up into component types. 2017-11-29 12:28:08 -05:00
Rob Rix
71c85e4d16 Represent values with a union of types. 2017-11-29 12:10:27 -05:00
Rob Rix
942ac27161 Define a Show2 instance for Environment. 2017-11-29 12:09:01 -05:00
Rob Rix
0db9e01728 🔥 MonadPrim constraints. 2017-11-29 11:56:03 -05:00
Timothy Clem
026cc46dbc Merge branch 'master' of https://github.com/github/semantic-diff into integrate-abstract-interpretation 2017-11-28 15:49:46 -08:00
Timothy Clem
4a60f0cd59 Let the other interpreters infer location from value 2017-11-28 15:44:51 -08:00
Timothy Clem
53d4a41cff Move to bottom of file for clarity 2017-11-28 15:44:23 -08:00
Timothy Clem
6fc6139887 Don't need these 2017-11-28 15:44:12 -08:00
Timothy Clem
0c80260ceb Rework evalute to infer location from the value 2017-11-28 15:43:58 -08:00
Timothy Clem
a7bb4aae58 Need a Reader for the address set in our effect stack 2017-11-28 15:43:06 -08:00
Rob Rix
ae9c9ce2cb Evaluate identifiers. 2017-11-28 17:39:37 -05:00
Rick Winfrey
921cce09d8 Regenerate tests 2017-11-28 14:28:59 -08:00
Rob Rix
5a65fc11cd Typecheck Programs. 2017-11-28 17:23:46 -05:00
Rob Rix
3e71e57358 Cell types uniquely determine location types. 2017-11-28 17:19:45 -05:00
Rob Rix
3b4e4bcff1 Abstract the Eval instance for Assignment over the value type. 2017-11-28 17:19:25 -05:00
Rob Rix
e416ebb679 Relate value types to their location types. 2017-11-28 17:19:13 -05:00
Rick Winfrey
6a6c38d309 Use Declaration.MethodSignature 2017-11-28 13:53:35 -08:00
Rick Winfrey
3f69729d5f Move TypeScript MethodSignature to Declaration 2017-11-28 13:53:18 -08:00
Rob Rix
8d625d63c6 Derive a Generic1 instance for Configuration. 2017-11-28 16:13:20 -05:00
Rob Rix
451025d1b2 Cache roots as lists in configurations. 2017-11-28 16:13:12 -05:00
Rob Rix
0252667c34 🔥 Abstract.Set. 2017-11-28 16:08:48 -05:00
Rob Rix
790e5fc619 🔥 a redundant type parameter to ev. 2017-11-28 15:44:08 -05:00
Rob Rix
e5f8901851 Simplify an Eval constraint slightly. 2017-11-28 15:42:57 -05:00
Rob Rix
c7fbf21802 Remove the t parameter to Eval. 2017-11-28 15:42:15 -05:00