Ryan Gonzalez
c3190ca07d
Optimize simple cases such as 'if True'
2015-09-22 12:37:04 -05:00
Ryan Gonzalez
21bbab4e09
Remove redundant assignments with nested ifs ( closes #842 )
2015-09-21 13:02:13 -05:00
Berker Peksag
456f33eb7c
Merge pull request #938 from paultag/paultag/feature/hex-and-octel
...
Add hex and octel support to Hy integers
2015-09-16 20:55:05 +03:00
Paul Tagliamonte
fc5d74ba85
Add in documentation for non-base 10 numbers
2015-09-15 12:18:56 -04:00
Paul Tagliamonte
e05514bb4e
Add hex and octel support to Hy integers
...
This allows us to parse things like 0xDEADBEEF or 0o080.
Filed as issue #937
2015-09-15 11:27:38 -04:00
Abhishek L
8be0e40c7a
Merge pull request #936 from ALSchwalm/master
...
Remove hard-coded references to 'fn' and 'setv' in errors
2015-09-15 14:56:02 +05:30
Adam Schwalm
f9c3966e65
Remove hard-coded references to 'fn' and 'setv' in errors
2015-09-14 18:37:24 -05:00
Gregor Best
2e1b2ff591
Merge pull request #928 from gilch/partition
...
Enhanced partition
2015-09-06 16:54:23 +02:00
Morten Linderud
2a2ef883c0
Merge pull request #930 from timmartin/master
...
Add @timmartin to the AUTHORS file
2015-09-03 22:59:14 +02:00
Tim Martin
2670f92731
Add @timmartin to the AUTHORS file
2015-09-03 21:43:13 +01:00
gilch
4896980373
enhance partition
2015-09-02 22:54:24 -06:00
gilch
7a839aee5d
Merge branch 'master' into partition
2015-09-02 17:34:29 -06:00
Morten Linderud
cdd60ce77d
Merge pull request #925 from timmartin/bug730
...
Added documentation for the (keyword?) function
2015-09-01 00:20:32 +02:00
Tim Martin
818ed5da72
Added documentation for the (keyword?) function
2015-08-31 20:35:37 +01:00
Morten Linderud
87ee69e967
Merge pull request #924 from ALSchwalm/master
...
Better error messages on invalid macro arguments
2015-08-31 11:28:57 +02:00
Adam Schwalm
f18007955d
Better error messages on invalid macro arguments
2015-08-30 17:14:22 -05:00
Zack M. Davis
920b35f129
merge branch 'fix_string_nl'
2015-08-28 01:24:58 -07:00
Ryan Gonzalez
f88f6e597b
Reformat string literals in test_lex_strings
2015-08-25 11:04:39 -05:00
Ryan Gonzalez
a2f95366fe
Add tests for #831
2015-08-25 11:04:11 -05:00
Ryan Gonzalez
73ace37678
Fix #831
...
Blame dot not matching newlines
2015-08-22 15:13:46 -05:00
Zack M. Davis
2c2d679daf
merge branch 'gcl/defclass-allow-builtins'
2015-08-18 23:43:18 -07:00
Zack M. Davis
6916eea604
merge branch 'f/empty-cond'
2015-08-18 23:23:00 -07:00
Zack M. Davis
1187353661
merge branch 'f/empty-del'
2015-08-18 23:16:14 -07:00
Gregor Best
c29737d421
Merge pull request #897 from farhaven/eval-args-typecheck
...
Eval args typecheck
2015-08-18 11:01:36 +02:00
Gergely Nagy
ab7d1be001
Allow an empty (cond)
...
For easier macro writing purposes, allow an empty (cond), that simply
returns nil. Closes #904 .
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2015-08-18 08:57:42 +02:00
Gergely Nagy
e0f5d54a2f
Allow (del) without arguments
...
To mirror the behaviour of (setv), allow an empty (del) too: one that
shall return nil. Closes #905 .
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2015-08-18 08:51:09 +02:00
Zack M. Davis
649dd38040
merge branch 'setv-nil'
2015-08-17 22:53:03 -07:00
Ryan Gonzalez
7e611947a4
Allow setv to take no arguments ( closes #901 )
2015-08-17 17:29:06 -05:00
Gregor Best
856212c9d7
Tidier string type check for eval
2015-08-13 09:59:58 +02:00
Gregor Best
503b4e1f81
Tidier checks for eval failure modes
2015-08-12 22:01:20 +02:00
Gregor Best
44416fc276
Typecheck eval
arguments during execution instead of compilation
...
When checking types during compilation, things like
(eval '(print 1) (. foo mod))
fail, even if `(. foo mod)` is a dictionary.
2015-08-12 22:01:19 +02:00
Gregor Best
ead65b646b
Merge pull request #893 from gilch/xi-forms
...
xi parameter may appear in function position
2015-08-12 17:00:44 +02:00
gilch
a06c8a9af9
xi parameter may appear in function position
2015-08-12 08:50:18 -06:00
Gregor Best
6d19128c3c
Merge pull request #890 from gilch/xi-forms
...
added xi-forms
2015-08-12 11:30:33 +02:00
Gergely Nagy
b92049d119
Allow defclass to have properties/method with built-in names
...
To allow classes to have methods that match built-in names, yet, still
disallow them outside of defclass, keep an internal state whether
builtins are allowed in the current context.
By default, this is false. But defclass will set it to True when it
compiles its body, and set it back to the previous value when it's done
with that. We need to set back to the previous value to allow nested
defclasses to work properly.
This closes #783 .
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2015-08-12 08:49:24 +02:00
Gergely Nagy
9bff606ee9
Test that assigning to a builtin fails
...
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2015-08-12 08:49:24 +02:00
Tuukka Turto
1599f29dff
Merge branch 'master' into pr/886
...
Conflicts:
tests/compilers/test_ast.py
2015-08-12 08:05:19 +03:00
Zack M. Davis
1b5f1f3988
merge branch 'nullify'
2015-08-11 21:51:35 -07:00
Tuukka Turto
80b2386c35
Merge branch 'master' into pr/884
...
Conflicts:
tests/compilers/test_ast.py
2015-08-12 06:55:27 +03:00
Tuukka Turto
3d862d6680
Merge branch 'master' into pr/883
2015-08-12 06:50:29 +03:00
gilch
20d6349679
make xi compatible with Python2
2015-08-11 19:35:22 -06:00
gilch
0bf1084d8c
added xi-forms
...
These work like Clojure's `#()` anonymous function literals.
2015-08-11 19:11:17 -06:00
gilch
a22e2ca4cc
purged null from Hy
...
we already have `nil`, and `null` was barely ever used.
2015-08-11 16:22:13 -06:00
Gergely Nagy
4834b59cba
Merge branch 'h/kwargs-need-value-fix'
...
Closes #815 , #821 , #822 .
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2015-08-11 10:57:17 +02:00
Gergely Nagy
b362943365
compiler: Fix the kw argument needs value exception
...
Strip the \ufdd0 prefix from the keyword argument before turning it into
a string: the same representation the user entered looks better, and is
printable too, thus Python2 doesn't choke on it.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2015-08-11 10:44:42 +02:00
Ewald Grusk
e407b0a605
New test: Ensure the compiler chokes on missing keyword argument values
2015-08-11 10:44:42 +02:00
Ewald Grusk
4138c660cc
Raise more appropriate error on missing kwarg value
2015-08-11 10:44:41 +02:00
Morten Linderud
0c73f78ed0
Merge pull request #885 from algernon/glc/mangled-bangs
...
Mangle trailing bangs on symbols
2015-08-10 16:35:42 +02:00
Gergely Nagy
fee7d33184
Guard against a few invalid list comprehension cases
...
Some valid-looking list comprehensions, such as (genexpr x []) can crash
Python 2.7. The AST we generate from these cannot be expressed in
Python, but were valid in Hy.
Added two guards to guard against this, so we raise an error instead of
crashing Python.
Closes #572 , #591 and #634 .
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2015-08-10 15:55:11 +02:00
Gergely Nagy
73f8a47f65
Mangle trailing bangs on symbols
...
Postfixing functions with a bang, like set!, get!, etc are relatively
common. However, those names are not valid in python, so in the name of
python interoperability, lets mangle them to set_bang and get_bang,
respectively.
Closes #536 .
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2015-08-10 14:37:17 +02:00