Reorganize NEWS items
This commit is contained in:
parent
6b23da6997
commit
b63f6e4df5
64
NEWS
64
NEWS
@ -1,67 +1,73 @@
|
||||
Changes from 0.13.0
|
||||
|
||||
[ Language Changes ]
|
||||
[ Removals ]
|
||||
* Python 3.3 is no longer supported
|
||||
* The unquote-splice or ~@ form now accepts any false value as empty.
|
||||
* `def` is gone; use `setv` instead
|
||||
* `apply` is gone; use the new `#*` and `#**` syntax instead
|
||||
* `yield-from` is no longer supported under Python 2
|
||||
* Periods are no longer allowed in keywords
|
||||
* Numeric literals can no longer begin with a comma or underscore
|
||||
* Literal `Inf`s and `NaN`s must now be capitalized like that
|
||||
|
||||
[ Other Breaking Changes ]
|
||||
* `apply` has been replaced with Python-style unpacking operators `#*` and
|
||||
`#**` (e.g., `(f #* args #** kwargs)`)
|
||||
* Single-character "sharp macros" changed to "tag macros", which can have
|
||||
* Single-character "sharp macros" are now "tag macros", which can have
|
||||
longer names
|
||||
* Periods are no longer allowed in keywords
|
||||
* `xi` from `hy.extra.anaphoric` is now a tag macro `#%`
|
||||
* `eval` is now a function instead of a special form
|
||||
* Added a form of string literal called "bracket strings" delimited by
|
||||
`#[FOO[` and `]FOO]`, where `FOO` is customizable
|
||||
|
||||
[ New Features ]
|
||||
* The compiler now automatically promotes values to Hy model objects
|
||||
as necessary, so you can write ``(eval `(+ 1 ~n))`` instead of
|
||||
``(eval `(+ 1 ~(HyInteger n)))``
|
||||
* Literal `Inf`s and `NaN`s must now be capitalized like that
|
||||
* Numeric literals can no longer begin with a comma or underscore
|
||||
* `get` is available as a function
|
||||
* new `comment` macro
|
||||
* support EDN `#_` syntax to discard the next term
|
||||
* `return` has been implemented as a special form
|
||||
* Added a form of string literal called "bracket strings" delimited by
|
||||
`#[FOO[` and `]FOO]`, where `FOO` is customizable
|
||||
* Added support for PEP 492 (`async` and `await`) with `fn/a`, `defn/a`,
|
||||
`with/a`, and `for/a`
|
||||
* Added a macro `comment`
|
||||
* Added EDN `#_` syntax to discard the next term
|
||||
* `while` loops may now contain an `else` clause, like `for` loops
|
||||
* `xi` from `hy.extra.anaphoric` is now the `#%` tag macro
|
||||
* `#%` works on any expression and has a new `&kwargs` parameter `%**`
|
||||
* new `doc` macro and `#doc` tag macro
|
||||
* support for PEP 492 with `fn/a`, `defn/a`, `with/a` and `for/a`
|
||||
* remove `def`
|
||||
* support for relative imports (PEP 328)
|
||||
* Added a macro `doc` and a tag macro `#doc`
|
||||
* `get` is available as a function
|
||||
* `~@` (`unquote-splice`) form now accepts any false value as empty
|
||||
|
||||
[ Bug Fixes ]
|
||||
* Relative imports (PEP 328) are now allowed
|
||||
* Numeric literals are no longer parsed as symbols when followed by a dot
|
||||
and a symbol
|
||||
* Hy now respects the environment variable PYTHONDONTWRITEBYTECODE
|
||||
* Hy now respects the environment variable `PYTHONDONTWRITEBYTECODE`
|
||||
* String literals should no longer be interpreted as special forms or macros
|
||||
* Tag macros (née sharp macros) whose names begin with `!` are no longer
|
||||
mistaken for shebang lines
|
||||
* Fixed a bug where REPL history wasn't saved if you quit the REPL with
|
||||
`(quit)` or `(exit)`
|
||||
* `exec` now works under Python 2
|
||||
* No TypeError from multi-arity defn returning values evaluating to None
|
||||
* try form now possible in defmacro/deftag
|
||||
* No TypeError from multi-arity `defn` returning values evaluating to `None`
|
||||
* `try` forms are now possible in `defmacro` and `deftag`
|
||||
* Multiple expressions are now allowed in `try`
|
||||
* Fixed a crash when `macroexpand`ing a macro with a named import
|
||||
* Fixed a crash when `with` suppresses an exception. `with` now returns
|
||||
`None` in this case.
|
||||
* Fixed a crash when --repl-output-fn raises an exception
|
||||
* Fixed a crash when HyTypeError was raised with objects that had no
|
||||
* Fixed a crash when `--repl-output-fn` raises an exception
|
||||
* Fixed a crash when `HyTypeError` was raised with objects that had no
|
||||
source position
|
||||
* `assoc` now evaluates its arguments only once each
|
||||
* `break` and `continue` now raise an error when given arguments
|
||||
instead of silently ignoring them
|
||||
* Multiple expressions are now allowed in the else clause of
|
||||
a for loop
|
||||
* Multiple expressions are now allowed in the `else` clause of
|
||||
a `for` loop
|
||||
* `else` clauses in `for` and `while` are recognized more reliably
|
||||
* Statements in the condition of a `while` loop are repeated properly
|
||||
* Argument destructuring no longer interferes with function docstrings.
|
||||
* Multiple expressions are now allowed in `try`
|
||||
* `(yield-from)` is now a syntax error
|
||||
* Argument destructuring no longer interferes with function docstrings
|
||||
* Nullary `yield-from` is now a syntax error
|
||||
* `break` and `continue` now raise an error when given arguments
|
||||
instead of silently ignoring them
|
||||
|
||||
[ Misc. Improvements ]
|
||||
* `read`, `read_str`, and `eval` are exposed and documented as top-level
|
||||
functions in the `hy` module
|
||||
* Experimental `let` macro in `hy.contrib.walk`
|
||||
* An experimental `let` macro has been added to `hy.contrib.walk`
|
||||
|
||||
Changes from 0.12.1
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user