Patrick Thomson
bd939d2579
Fix Python method calls.
...
`identifier` in the Python assignment module was too eager to reduce a
nested Attribute into a dotted identifier. Removing it fixes method
calls, which now have a unit test.
2018-03-22 15:35:08 -04:00
Patrick Thomson
ec4b01d04c
Merge pull request #1656 from github/subclassing
...
Implement single-inheritance subclassing.
2018-03-22 12:48:28 -04:00
Patrick Thomson
089403d25f
Merge branch 'master' into subclassing
2018-03-22 12:40:29 -04:00
Timothy Clem
fb65cff4c7
Merge pull request #1648 from github/php-namespaces
...
PHP includes and other import-like semantics
2018-03-22 09:39:21 -07:00
Patrick Thomson
ba67556ce6
Merge branch 'master' into subclassing
2018-03-22 12:37:49 -04:00
Patrick Thomson
9d97b8f6c7
Add a spec for subclassing
2018-03-22 12:31:53 -04:00
Timothy Clem
9a91728d4e
Only one require/load
...
Co-Authored-By: Josh Vera <vera@github.com>
2018-03-22 09:28:19 -07:00
Josh Vera
3ef6366649
Merge branch 'master' into php-namespaces
2018-03-22 12:23:57 -04:00
Josh Vera
7950a6b7aa
Merge pull request #1661 from github/app-semigroup
...
App/AppMerge semigroups
2018-03-22 12:23:26 -04:00
Rob Rix
d645481dcf
📝 AppMerge is a Monoid too.
2018-03-21 17:29:48 -04:00
Rob Rix
6a785e0b30
Remove the Monoid instance for App, as it’s unlawful.
2018-03-21 17:26:32 -04:00
Rob Rix
aab509cf63
Test the identity properties.
2018-03-21 17:26:07 -04:00
Rob Rix
b55010c2c1
Define shrinking.
2018-03-21 17:22:34 -04:00
Rob Rix
6be056bd9a
Swap the order of the types.
2018-03-21 17:16:31 -04:00
Rob Rix
c6148c6cad
Test the associativity of the semigroup instances.
2018-03-21 17:16:09 -04:00
Rob Rix
69a4e4cc2e
🔥 Imperative.
2018-03-21 17:08:52 -04:00
Rob Rix
256623a818
eval lists in App.
2018-03-21 17:08:25 -04:00
Rob Rix
e0245ed752
Define a Monoid instance for App.
2018-03-21 17:08:14 -04:00
Rob Rix
3329bd0a51
Define a Semigroup instance for App.
2018-03-21 17:08:06 -04:00
Rob Rix
5ea6482e96
📝 App.
2018-03-21 17:07:55 -04:00
Rob Rix
6399cb3c58
Define an App semigroup.
2018-03-21 17:07:49 -04:00
Patrick Thomson
d39db0db06
fix comment
2018-03-21 16:56:52 -04:00
Rob Rix
8f22cb26f8
Explicitly list the exports.
2018-03-21 16:44:35 -04:00
Rob Rix
88230df1fe
Define a Monoid instance for AppMerge.
2018-03-21 16:41:49 -04:00
Rob Rix
794a03a49c
📝 AppMerge.
2018-03-21 16:41:41 -04:00
Rob Rix
541e230431
Define a Semigroup instance for AppMerge.
2018-03-21 16:41:32 -04:00
Rob Rix
0b2b27ff21
Stub in an AppMerge semigroup.
2018-03-21 16:40:56 -04:00
Timothy Clem
166c66766e
Whitespace
2018-03-21 09:20:07 -07:00
Timothy Clem
a740f2938a
Don't change assignment for namespaces just yet
2018-03-21 09:19:32 -07:00
Patrick Thomson
b59fc64dd8
Implement single-inheritance subclassing.
...
Pretty straightforward stuff: we augment `klass` to take an optional
superclass, match to ensure it's a class, then, when defining that new
class, push its definition onto the environment provided by the superclass.
2018-03-21 12:17:16 -04:00
Timothy Clem
74596f174a
Merge branch 'master' into php-namespaces
2018-03-21 09:01:17 -07:00
Timothy Clem
cdd0a9f35e
Remove this
2018-03-20 16:47:36 -07:00
Timothy Clem
69e2eda8db
Couple more tests
2018-03-20 16:46:32 -07:00
Timothy Clem
038af3ccb2
Ruby require/load now return proper values too
2018-03-20 16:34:46 -07:00
Timothy Clem
8d3de3e640
PHP includes can now return proper values
2018-03-20 16:34:31 -07:00
Timothy Clem
26f2fc4f9a
Store off a tuple of env value in the module table
2018-03-20 16:34:17 -07:00
Timothy Clem
d30e832e11
Move require/load so we can return values
2018-03-20 16:33:53 -07:00
Timothy Clem
041082a79d
Merge remote-tracking branch 'origin/master' into php-namespaces
2018-03-20 11:07:04 -07:00
Patrick Thomson
3315096629
Merge pull request #1651 from github/fix-hlints
...
Take a pass at fixing/silencing linter hints.
2018-03-20 14:01:02 -04:00
Patrick Thomson
b9cef5e540
Merge branch 'fix-hlints' of github.com:github/semantic into fix-hlints
2018-03-20 12:36:01 -04:00
Patrick Thomson
bde8afb472
Stop ignoring syntax errors and fix hints in Assignments.
2018-03-20 12:35:30 -04:00
Patrick Thomson
b61938de73
Use newtype for GShow1Options.
2018-03-20 12:21:39 -04:00
Rob Rix
5cede65fd7
Merge branch 'master' into fix-hlints
2018-03-20 11:33:28 -04:00
Rob Rix
5fffdbb23f
Merge pull request #1652 from github/fix-python-eval
...
Fix `evaluatePythonFile`.
2018-03-20 11:29:12 -04:00
Patrick Thomson
62aa1a9d57
Fix evaluatePythonFile
.
...
Ruby and Go's evaluators had been changed to invoke `evaluateFile`
rather than `evaluate` directly, but Python's didn't make it in. This
remedies that.
2018-03-20 11:14:00 -04:00
Patrick Thomson
d5c404c1aa
spurious annotations
2018-03-20 10:49:57 -04:00
Patrick Thomson
9d5ace795b
Take a pass at fixing/silencing linter hints.
...
Since @charliesome was expressing trouble with keeping custom infix
operator precedence straight (a very fair complaint, and one that I
have trouble with too), I thought it best to make sure that master
builds with clean hlints. I propose we make CI check that `hlint src`
executes cleanly.
2018-03-20 10:41:53 -04:00
Timothy Clem
47f00e4ec3
Fill in IncludeOnce, Require, and RequireOnce
2018-03-19 15:42:42 -07:00
Timothy Clem
6a0c5e8714
Gonna use this help for other instances
2018-03-19 15:35:06 -07:00
Timothy Clem
cb915cc95b
No more IncludePath
2018-03-19 15:34:32 -07:00