walk
,prewalk
, andpostwalk
have been removed. Usemap-model
andmap-hyseq
instead.
recur
is now a real object that must be imported from Hyrule when usingloop
.macroexpand-all
now uses the same parameters ashy.macroexpand
.lif
now treatsFalse
as false.
- New macro
pun
. - New macro
map-hyseq
. loop
allows more kinds of parameters.flatten
, given a non-collection, returns it as a singleton list, instead of raising an error.
map-model
now callsas-model
only once (before its own recursion), and it does so unconditionally.loop
now works when nested.macroexpand-all
no longer crashes on stub macros.macroexpand-all
now recognizes macro names properly.lif
now works when renamed, or when invoked withhy.R
.
- New macros
meth
andameth
.
match-fn-params
now raises an error for syntactically invalid parameter lists.
defmacro/g!
has been removed. Usedefmacro!
instead.
cut
on aSequence
now returns anotherSequence
, not a generator.assoc
is now a function rather than a macro. Its effect is unchanged.
- The
Sequence
constructor now accepts an arbitrary iterable. - New macro
defmacro-kwargs
. - New macro
parse-fn-params
. - New macro
some->
. - New function
import-path
. - New function
sign
. - New function
thru
.
defmacro!
now properly handles explicit return statements within its macro definition.- Various
Sequence
bugs have been fixed. assoc
no longer requires a second and third argument.
No user-visible changes beyond compatibility with new Hy versions.
do-n
andlist-n
now allow the count to beInf
.- New reader macro
/
that wrapshy.M
for easy imports in macros.
seq
anddefseq
no longer crash ifSequence
is not imported.->
,->>
, anddoto
now properly handle bare symbols with leading dot.
- New macros
ap-when
,ap-with
.
Changed setup.py
to declare compatibility with the new Hy release.
ifp
has been removed. Usebranch
instead.
- The reader macro (formerly tag macro)
:
is now nameds
.
- New macro
block
. - New macros
branch
,ebranch
,case
, andecase
. - The macros of
hyrule.anaphoric
are now much smarter in deciding what instances of the symbolit
to replace, so you can now quote or locally rebindit
without issues.
- Destructuring macros now consistently return
None
in case of failing to match a certain pattern, instead of sometimes returningNone
and sometimes raising an exception. #%
now parses%i
names from dotted symbols.- The Hy code is now precompiled during installation.
This is the first release of Hyrule per se. The one change below is described relative to the ancestors of Hyrule in Hy 1.0a3.
coll?
now returnsFalse
forbytes
objects.