hylang/hy — pull request #376 by theanalyst (2013-12-15 18:40:27+00:00)
Title: Operators + and * work without args, fixes #372

Like other lisps, operators `+` and `*` return their identity values
when called with no arguments. With a single operand they return
the operand.

Without arguments, the present implementation expands `(+)` -> `(+ 0 0)` &
`(*)` -> `(* 1 1)`

An alternative approach for `+` would be to use `ast.UAdd`
and use only one operand, however no such unary operation is defined
for multiplication, so I went ahead with something that works for both
addition and multiplication

This fixes #372