1
1
mirror of https://github.com/github/semantic.git synced 2024-12-27 00:44:57 +03:00
Commit Graph

5709 Commits

Author SHA1 Message Date
Rick Winfrey
668afa20a5 Reflow Method data declaration and add methodAccessibility field 2018-12-14 17:02:41 -08:00
joshvera
22102308a0 Add closure data type todo 2018-12-14 17:26:57 -05:00
joshvera
aa98a8645a Fix position 2018-12-14 17:19:57 -05:00
joshvera
269476aa34 Simplify calls to throwNoNameError 2018-12-14 17:16:06 -05:00
joshvera
e381607d3e Use update instead of Seq.adjust 2018-12-14 17:16:06 -05:00
joshvera
69e0e13b1f Factor out lambda 2018-12-14 17:16:06 -05:00
joshvera
0281016356 Rename to Info 2018-12-14 17:16:06 -05:00
joshvera
ced5090b1d Use update 2018-12-14 17:16:06 -05:00
joshvera
589ed82b76 Rename to Info 2018-12-14 17:16:06 -05:00
joshvera
1ff058437c Rename to __semantic_self 2018-12-14 17:16:06 -05:00
joshvera
929968aef7 Remove self special Relation comment 2018-12-14 17:16:06 -05:00
joshvera
89f93a4920 Rename Data to Info for now 2018-12-14 17:16:06 -05:00
Patrick Thomson
842c4bf754 Merge branch 'master' into new-expressions 2018-12-14 16:24:29 -05:00
joshvera
1865b6609e redundant parens 2018-12-14 15:41:58 -05:00
Rick Winfrey
a13ec0296c Use second ala hlint
This is even better, `second` implicity returns the `id` of the first value in the tuple.
2018-12-14 12:22:23 -08:00
Rick Winfrey
eb83f9478d Simplify a bit with *** rather than &&& 2018-12-14 12:01:34 -08:00
joshvera
92ae60c5f1 s/maybeThis/maybeSelf 2018-12-13 19:09:19 -05:00
joshvera
c735927b68 Constrain binding to Object values 2018-12-13 18:43:54 -05:00
joshvera
18555281dd hlints 2018-12-13 18:14:55 -05:00
joshvera
4afe93a97d Rename __semantic_self to __self 2018-12-13 18:14:13 -05:00
joshvera
493a69b8c5 Use maybeLookupDeclaration
Since self isn't necessarily defined for all languages.
2018-12-13 17:49:43 -05:00
Rick Winfrey
d8c291bdc0 Destructure not needed here 2018-12-13 11:34:14 -08:00
Rick Winfrey
d0a571e851 Replace instances of name "__self" with __semantic_self 2018-12-13 11:33:55 -08:00
Rick Winfrey
0c22d4da4b Define __semantic_self
Co-Authored-By: Rob Rix <rob.rix@github.com>
2018-12-13 11:32:24 -08:00
joshvera
317462e73a Add bindThis to bind objects to closures
Co-Authored-By: Rick Winfrey <rick.winfrey@gmail.com>
Co-Authored-By: Rob Rix <rob.rix@github.com>
2018-12-13 14:11:37 -05:00
joshvera
0eaa362b3a Rename InstanceOf to Instance
Co-Authored-By: Rick Winfrey <rick.winfrey@gmail.com>
2018-12-13 13:14:45 -05:00
joshvera
a6657cc679 Redeclare Instance members within an object frame in New
Co-Authored-By: Rick Winfrey <rick.winfrey@gmail.com>
2018-12-13 13:14:33 -05:00
joshvera
0dc1ad4e35 Add relationsOfScope
Co-Authored-By: Rick Winfrey <rick.winfrey@gmail.com>
2018-12-13 13:14:15 -05:00
Rob Rix
594979543c 🔥 Located. 2018-12-13 12:04:24 -05:00
Rick Winfrey
92d540dac7 Update remaining declarations 2018-12-12 16:58:33 -08:00
Rick Winfrey
869789ce48 Clean up this sketch 2018-12-12 16:58:06 -08:00
Rick Winfrey
d0afae8cba Declarations specify their Relations 2018-12-12 16:57:52 -08:00
Rick Winfrey
feff7f8e89 Builtins now specify their Relations 2018-12-12 16:57:30 -08:00
Rick Winfrey
565fbfd2d0 Export Relation 2018-12-12 16:22:33 -08:00
Rick Winfrey
8e520132ce Simplify match predicate now we use (Data address, Position) for lookups 2018-12-12 16:22:27 -08:00
Rick Winfrey
e305f547bc Update insertDeclarationSpan and reuse insertScope 2018-12-12 16:21:46 -08:00
Rick Winfrey
59e72bda46 Fix up insertDeclarationScope and reuse insertScope helper 2018-12-12 16:21:31 -08:00
Rick Winfrey
5bca5276b8 Update 📝 for insertDeclarationScope 2018-12-12 16:21:00 -08:00
Rick Winfrey
4f9b717dad Destructure according to Data 2018-12-12 16:20:47 -08:00
Rick Winfrey
a69e93edb8 Use field accessor as we no longer work in (Declaration, (Span, Maybe scopeAddress)) 2018-12-12 16:20:27 -08:00
Rick Winfrey
9b3b6b70c0 Use correct field name 2018-12-12 16:19:33 -08:00
Rick Winfrey
4cb27b3eb6 Update type 2018-12-12 16:19:22 -08:00
Rick Winfrey
501f5ea9dc Update boolean check for finding the position of a declaration 2018-12-12 16:19:07 -08:00
Rick Winfrey
b8352790be Consistent ordering of params (Control.Abstract.ScopeGraph) 2018-12-12 16:18:22 -08:00
Rick Winfrey
53e6405486 Help to resolve ambiguities in the field names of Data by prefixing with data 2018-12-12 16:17:58 -08:00
Rick Winfrey
0650fa087f Remove address type variable on Relation for now 2018-12-12 16:17:30 -08:00
joshvera
09c3cce304 WIP 2018-12-12 17:13:52 -05:00
joshvera
c5a08df1c4 WIP add Relation to declaration and make a scope data type 2018-12-12 16:52:14 -05:00
joshvera
ea5d09bed5 Remove instance scope from klass 2018-12-12 16:51:43 -05:00
joshvera
93bed2ef2c Remove withScope call for now 2018-12-11 17:56:18 -05:00
joshvera
ec5c2b13c0 Add instance scope to Class 2018-12-11 17:55:35 -05:00
joshvera
9508518acf Merge remote-tracking branch 'origin/master' into new-expressions 2018-12-11 13:13:37 -05:00
Rob Rix
35fd93be1c Merge branch 'master' into evaluate-to-values 2018-12-11 09:12:48 -05:00
joshvera
6ba7719c79 Add comments 2018-12-10 16:57:20 -05:00
joshvera
38c0c72654 Add Namespace to scopedEnvironment 2018-12-10 16:53:16 -05:00
joshvera
aa68bf8b34 Add console.log back to TypeScript 2018-12-10 16:53:05 -05:00
joshvera
2eb049417b cleanup 2018-12-10 16:35:23 -05:00
joshvera
1961a5e1df Move reference call to This and out of MemberAccess 2018-12-10 16:20:53 -05:00
joshvera
c8b7c1c63e Rename Address errors to Slot errors 2018-12-10 16:20:30 -05:00
Rob Rix
efcb65966b 🔥 the RefError constructor. 2018-12-10 12:40:45 -05:00
Rob Rix
857d2e3b24 Throw RefUnspecializedError in the default implementation of ref. 2018-12-10 12:40:16 -05:00
Rob Rix
7b5c01eae0 Add an Unspecialized constructor for ref. 2018-12-10 12:40:03 -05:00
Rob Rix
3d962c40c7 defineBuiltIn already returns (). 2018-12-10 11:38:07 -05:00
Rob Rix
fa950f3239 🔥 Data.Abstract.Ref. 2018-12-10 11:37:00 -05:00
Rob Rix
8e585284f6 Specialize ref for Sum. 2018-12-10 11:33:27 -05:00
Rob Rix
240fea3ca8 Specialize ref for TermF. 2018-12-10 11:33:07 -05:00
Rob Rix
85ad3230be Simplify a few Evaluatable instances. 2018-12-10 11:12:04 -05:00
Rob Rix
13e584ce5a 🔥 a bunch of redundant case expressions. 2018-12-10 11:08:07 -05:00
Rob Rix
381cdcb951 🔥 redundant parens. 2018-12-10 11:01:23 -05:00
Rob Rix
e58d2d7cf2 Evaluate MemberAccess using ref. 2018-12-10 11:01:14 -05:00
Rob Rix
2c21e347c2 🔥 a redundant return. 2018-12-10 10:54:41 -05:00
Rob Rix
75b633b499 Don’t re-export ValueRef. 2018-12-10 10:49:43 -05:00
Rob Rix
e0bd50a328 ReferenceError can be resumed with a slot. 2018-12-10 10:45:42 -05:00
Rob Rix
4cfbfec03c 🔥 QualifiedImportError. 2018-12-10 10:41:49 -05:00
Rob Rix
dd2ef7bbdb Evaluate to values. 2018-12-10 10:29:41 -05:00
Rob Rix
826da6d8ca Pass eval an evaluator producing values. 2018-12-10 10:12:09 -05:00
Rob Rix
8caee1226d Evaluate Statement.Assignment using ref. 2018-12-10 09:53:12 -05:00
Rob Rix
0adaad3ba0 Evaluate Expression.Delete using ref. 2018-12-10 09:52:51 -05:00
Rob Rix
3d2ced84c3 Make ref throw the error. 2018-12-10 09:51:08 -05:00
Rob Rix
9116072186 Make the ref parameter throw on failure. 2018-12-10 09:44:54 -05:00
Rob Rix
e0e8b1b566 Add a RefError constructor to EvalError. 2018-12-10 09:42:34 -05:00
Rob Rix
4c59a6bafa eval takes a reference evaluator. 2018-12-10 09:32:02 -05:00
joshvera
c0b1bdaf08 Add New instance 2018-12-07 17:57:30 -05:00
joshvera
283284e91e Add ConstructorError and ScopedEnvError 2018-12-07 17:57:20 -05:00
joshvera
04e257991a declaredName of New is its subject 2018-12-07 17:31:59 -05:00
joshvera
9586b476fd Assign New changes
and add MetaProperty
2018-12-07 17:31:44 -05:00
joshvera
59be0c0e00 Improve liftDeclaredName instance for Calls 2018-12-07 16:55:27 -05:00
Rob Rix
231e0f81b7 Give eval a dummy parameter. 2018-12-07 16:16:23 -05:00
Rob Rix
0cf03b6abe Give ref an extra parameter for the slot-recurrence function. 2018-12-07 16:00:53 -05:00
Rob Rix
9acacd0716 runFunction takes an evaluator producing values. 2018-12-07 14:49:37 -05:00
Rob Rix
df4413f2a4 Calls return values. 2018-12-07 14:46:41 -05:00
Rob Rix
80ce9ab357 Functions return values. 2018-12-07 14:30:47 -05:00
Rob Rix
ed073ba245 While operates on values, not ValueRefs. 2018-12-07 12:59:01 -05:00
Rob Rix
36a7c31166 LoopControl operates on values, not ValueRefs. 2018-12-07 12:52:51 -05:00
Rob Rix
09d616788e Return holds a value, not a ValueRef. 2018-12-07 12:38:16 -05:00
Rob Rix
d82d0ad584 Revert "Rename resolve to resolvePaths."
This reverts commit 6c2cd2a6c9a56956b6d6bae61510939b21f25080.
2018-12-07 11:46:01 -05:00
Rob Rix
3c2a4241e8 Rename resolve to ref. 2018-12-07 11:45:29 -05:00
Rob Rix
23e3a688f7 Resolve MemberAccesses. 2018-12-07 11:40:11 -05:00
Rob Rix
3fd19e07d8 Specialize resolve for Identifier. 2018-12-07 11:32:13 -05:00
Rob Rix
260a44e7a0 Constrain callers of resolve a little further. 2018-12-07 11:31:25 -05:00