Commit Graph

2522 Commits

Author SHA1 Message Date
Kodi Arfer
9253029344
Merge pull request #1643 from Kodiologist/compiler-cleanup
Miscellaneous compiler cleanup
2018-07-05 13:32:02 -07:00
Kodi Arfer
af8907b151 Minor cleanup in compile_unary_operator 2018-06-30 11:04:57 -07:00
Kodi Arfer
88f33453dc Minor cleanup for raise and try 2018-06-30 11:04:11 -07:00
Kodi Arfer
bd675a5db6 Unmangle in compile_expression before build_method
This ensures that e.g. the symbols "~" and "hyx_XtildeX" in the root position will both appear as "~" to the build method.
2018-06-30 11:04:11 -07:00
Kodi Arfer
fca2eb93b0 Remove dead code from HyASTCompiler.compile 2018-06-30 11:04:11 -07:00
Kodi Arfer
00150c088c Remove an unused helper method in the compiler 2018-06-30 11:04:11 -07:00
Kodi Arfer
e2b98effda Replace an unused variable with _ 2018-06-30 11:04:11 -07:00
Kodi Arfer
217fc2a487 Clean up _render_quoted_form 2018-06-30 11:04:11 -07:00
Kodi Arfer
8a70d5c90f Fold _branch into the compiler 2018-06-30 11:04:11 -07:00
Kodi Arfer
45ec57ab56 Simplify Result.force_expr 2018-06-30 11:04:11 -07:00
Kodi Arfer
21f7ef0713 Fold load_stdlib into the compiler 2018-06-30 11:04:11 -07:00
Kodi Arfer
d501b073d8 Fold compile_time_ns into the compiler 2018-06-30 11:04:11 -07:00
Kodi Arfer
3d3d1fe6ae Remove unused compiler subroutines 2018-06-30 11:04:11 -07:00
Kodi Arfer
9c6714c176 Remove unused imports 2018-06-30 11:04:11 -07:00
Kodi Arfer
4de18d3dff
Merge pull request #1638 from Kodiologist/no-import-dot
Make importing a dotted name a syntax error, per Python
2018-06-27 10:32:54 -07:00
Kodi Arfer
7abd8ffc2a Make importing a dotted name a syntax error, per Python 2018-06-27 10:24:22 -07:00
Kodi Arfer
86deff6531
Merge pull request #1637 from oskarkv/patch-1
Look for o!-syms in (flatten args) of defmacro!
2018-06-25 12:00:41 -07:00
Oskar Kvist
97c15c1bb9 Add Oskar Kvist to AUTHORS 2018-06-25 11:45:23 -07:00
Oskar Kvist
edbe8e3b7f Make defmacro! work with optional args 2018-06-25 11:45:23 -07:00
Kodi Arfer
f22195dfbc
Merge pull request #1626 from Kodiologist/newcomp3
Fancier `for` and comprehensions
2018-06-16 14:16:41 -07:00
Kodi Arfer
da754c0e5d Update NEWS and docs for the new comprehensions 2018-06-13 17:31:08 -07:00
Kodi Arfer
76b80bad81 Remove support for the old comprehension forms 2018-06-13 17:31:08 -07:00
Kodi Arfer
14979edcab Remove tests of the old comprehension forms 2018-06-13 17:31:08 -07:00
Kodi Arfer
cf0dafef9b Update uses of the old comprehension forms 2018-06-13 17:31:08 -07:00
Kodi Arfer
df4e49ec94 Test comprehension scoping 2018-06-13 17:31:08 -07:00
Kodi Arfer
4754b152a9 Allow comprehensions with no looping parts 2018-06-13 17:31:08 -07:00
Kodi Arfer
e1972c535f Remove for/a, for*, and for/a* 2018-06-13 17:31:08 -07:00
Kodi Arfer
3256932b13 Add a version of for parallel to lfor etc. 2018-06-13 17:31:08 -07:00
Kodi Arfer
ba1dc55e96 Implement lfor, sfor, gfor, dfor 2018-06-13 17:31:08 -07:00
Kodi Arfer
7a40561db8 Add tagged model patterns 2018-06-13 17:31:08 -07:00
Kodi Arfer
5ffbb4b0eb Add Result.lineno and Result.col_offset 2018-06-13 17:31:08 -07:00
Kodi Arfer
844256b99b Make Asty use static rather than instance methods
This ensures `asty.Pass is asty.Pass`.
2018-06-13 17:31:08 -07:00
Kodi Arfer
d3bd7c1017
Merge pull request #1625 from Kodiologist/potpourri
Miscellaneous small changes
2018-06-13 17:30:14 -07:00
Kodi Arfer
d621d7c3ab Update defmacro(/g)! tests for mangling 2018-06-11 21:05:29 -07:00
Kodi Arfer
498a54e770 Fix discovery of tests with mangled names 2018-06-11 21:05:29 -07:00
Kodi Arfer
65e620ed55 Remove an obsolete bug workaround in a test 2018-06-11 21:05:29 -07:00
Kodi Arfer
c3d4c7aa82 Clean up else compilation in while 2018-06-11 21:05:29 -07:00
Kodi Arfer
ea899471af Remove an unused compiler function 2018-06-11 21:05:29 -07:00
gilch
29130212f0
Merge pull request #1631 from Kodiologist/py37-updates
Get  Travis and Python 3.7 working again
2018-06-11 20:53:51 -06:00
Kodi Arfer
79bd4b019c
Merge pull request #1623 from Kodiologist/model-pattern-docs
Add tests and docs for model patterns
2018-06-11 16:35:02 -07:00
Kodi Arfer
16ec46a473 Update docstring handling for Python 3.7
See https://github.com/python/cpython/pull/7121 .
2018-06-05 17:35:48 -07:00
Kodi Arfer
bc2a5a2747 Don't test on Travis's outdated Python 3.7
See https://github.com/travis-ci/travis-ci/issues/9069 .
2018-06-05 17:32:48 -07:00
Kodi Arfer
3e943209fe
Merge pull request #1616 from Kodiologist/autopromotion-update
Streamline auto-promotion and position spoofing
2018-06-05 10:29:57 -07:00
Kodi Arfer
74bf3e9e81 Work around a scoping bug in multi.defn (#1630) 2018-06-05 10:23:32 -07:00
Kodi Arfer
3204a9e8a3 Streamline auto-promotion and position spoofing
Auto-promotion now occurs in only two cases: when we start the compiler and when we expand a macro. It's fully recursive so even a non-model nested in a model will be promoted.

This change fixes some regressions induced by the stricter type checks of the pattern-matching compiler.
2018-06-05 09:23:21 -07:00
Kodi Arfer
aae1f8718c
Merge pull request #1613 from Kodiologist/modname-mangle-bug
Fix a regression with mangling module names
2018-06-03 15:44:40 -07:00
Kodi Arfer
a38c948ed2 Fix a regression with mangling module names 2018-06-03 15:38:49 -07:00
Kodi Arfer
d16a0bb395
Merge pull request #1608 from Kodiologist/astor-update
Re-enable tests that were stymied by an astor bug
2018-05-29 09:27:03 -07:00
Kodi Arfer
6458f2d66f Re-enable tests that were stymied by an astor bug 2018-05-29 09:18:42 -07:00
Kodi Arfer
8296a36e12 Add tests and docs for model patterns 2018-05-28 16:15:47 -07:00