Hy是Lisp程式語言的一種方言。它設計用於同Python語言進行交互,方式是把表達式翻譯成Python的抽象語法樹(AST)[2][3]。Paul Tagliamonte在2013年於Python會議(PyCon)介紹了Hy[4]。
類似於Kawa和Clojure將s-表達式映射到Java虛擬機(JVM)之上[5],Hy必定作為Python抽象語法樹的透明Lisp前端來運行[6]。Lisp允許像數據那樣在代碼上進行操作(元編程)。因此,Hy可以用來書寫領域特定語言[7]。Hy還允許導入Python庫包括標準庫,並與Hy代碼一起被訪問,方式是通過一個編譯步驟[note 1],將二者的數據結構翻譯成Python的AST[note 2][8][9][10]。
例子代碼
來自語言文檔的例子[11]:
=> (print "Hy!")
Hy!
=> (defn salutationsnm [name] (print (+ "Hy " name "!")))
=> (salutationsnm "YourName")
Hy YourName!
參見
註釋
引用
外部連結
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.