What does HackerNews think of hy?

A dialect of Lisp that's embedded in Python

Language: Python

#1 in Compiler
#10 in Python
A good starting point might be Hy [0]. Its claim to fame is being a LISP embedded in Python.

[0]: https://github.com/hylang/hy

Well (Hy) there! would have made for for better HN s-expression tape conjuring language dual.

(visual image) : https://camo.githubusercontent.com/eea10b37eb037c82285364013...

[1] : https://github.com/hylang/hy

> Python, except with braces instead of whitespace

There's Hy lang, which is python powered lisp. It'll be good to get some extra attention.

https://github.com/hylang/hy

I've actually become somewhat interested in Hy lately. Having a Lisp that targets the Python AST may come in handy. If there was a Nim facility for full Lisp or a very Lispy syntax that could be really nice.

https://github.com/hylang/hy

> Is this surprising? I don't see an ecosystem of languages targeting the Go runtime, in contrast to the JVM, Javascript, Erlang, MS CLR...

I think I'm surprised in general that no language targets the Go runtime. A ML built on Go could probably be popular, lots of people would like features from it.

Not exactly bytecode but Hy https://github.com/hylang/hy is a dialect of Lisp that compiles to Python.

There's also Hy (https://github.com/hylang/hy) if you just want Python with Clojure-ish syntax. At the very least it frees you from indentation and single-expression lambda restrictions.
Agreed - Clojure is the best programming experience I've encountered. For a Pythonic lisp there's also Hy (https://github.com/hylang/hy).
Interesting project. I had never heard of a lisp flavour for lua before. Looks very elegant.

It reminds me of hy, for python. [1] [1] https://github.com/hylang/hy

Folks here probably already know, but any time I see functional and python in the same sentence, I like to remind folks about Hy: https://github.com/hylang/hy

I think it operates on the AST in python, which is also nifty.

> i, on the other hand, do think it's a bad thing :) but what can you do...

Hy[1] I guess? It looks pretty lively although I'm not sure how seriously people take it these days.

[1]: https://github.com/hylang/hy

Yup. You can basically write your own language with different syntax and get python to treat it like any other python code. Hy is a language which works this way: https://github.com/hylang/hy (see this part of their documentation for how the user can use this: https://docs.hylang.org/en/master/language/interop.html#usin...)

I think goto has been implemented in a few different ways in python. Here's another example which abuses existing syntax and edits the bytecode of the function after its compiled: https://pypi.org/project/goto-statement/

Python syntax can be heavily and easily manipulated via the ast module. An example of this is hylang https://github.com/hylang/hy
I found Hy quite an easy start, especially if you are familiar with Python. It's kind of Python in lisp format https://github.com/hylang/hy
Racket is great if you are looking for a high quality general purpose language, but if you want to use important python libraries for pythons's popular use cases: numerical/scientific computing, data science/ai, etc., then Hylang is a drop-in replacement with the added benefit of Metaprogramming facilities (Lisp-2 macros) and Clojure-like semantics.

Python and Hy have 100% interoperability. Python can call Hy out of the box, and Hy can call Python out of the box.

Any Python programmer can pick up Hy basics in minutes, and will be productive in a matter of hours. If you are an intermediate level Python programmer and have experience with Lisp macros, you will be writing macros in no time as well. Writing macro wrappers for numerical/scientific applications can increase your code's signal to noise ratio by quite a lot.

docs: http://docs.hylang.org/en/stable/

github: https://github.com/hylang/hy

get it:

  pip install hy
there's also "hy", which gives you lisp syntax and access to the python libraries.

https://github.com/hylang/hy

Yeah I considered that but it doesn’t make much sense to change Python to be like that.

It’s fine like that in Scheme and the other Lisps in part because well that’s the way they always did it, but it’s quite different from how it is and has been in Python.

If they want Lisp in Python they should look into Hy.

http://docs.hylang.org/en/stable/quickstart.html

https://github.com/hylang/hy