// guess the programming language of the day

$ whois hy

Hy

first released in 2013 · by Paul Tagliamonte

$ guessprog --inspect hy

year
2013
paradigm
multi paradigm
family
lisp
memory
reference counting
binding
dynamic
safety
strong

HY(7)

AUTHORS
Paul Tagliamonte
HISTORY
Paul Tagliamonte created Hy in 2013 as a Lisp dialect embedded in Python. Hy code is read as Lisp s-expressions and compiled into Python's abstract syntax tree, so it can import any Python module and be imported from Python in turn. It brings Lisp macros and code-as-data to the Python ecosystem. After a long series of 0.x releases, Hy reached version 1.0 in 2024.
USAGE
Hy is a niche, hobbyist language with a small community. It is mostly used by Lisp fans who want access to Python's libraries.
SEE ALSO
Hy on Wikipedia ↗
$ cat triples.hy
(import math)

(defn hypot [a b]
  "Python's standard library, called from Lisp."
  (math.sqrt (+ (** a 2) (** b 2))))

(setv triples
  (lfor a (range 1 20)
        b (range a 20)
        :if (.is-integer (hypot a b))
        [a b (int (hypot a b))]))

(print triples)