Skip to content

Commit

Permalink
Add Hy language.
Browse files Browse the repository at this point in the history
Hy is a dialect of Lisp that’s embedded in Python.
  • Loading branch information
berkerpeksag committed Dec 31, 2013
1 parent 23a1ae5 commit 89f4885
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 0 deletions.
7 changes: 7 additions & 0 deletions lib/linguist/languages.yml
Expand Up @@ -733,6 +733,13 @@ Haxe:
extensions:
- .hxsl

Hy:
type: programming
lexer: Clojure
ace_mode: clojure
color: "#7891b1"
primary_extension: .hy

IDL:
type: programming
lexer: Text only
Expand Down
9 changes: 9 additions & 0 deletions samples/Hy/fibonacci.hy
@@ -0,0 +1,9 @@
;; Fibonacci example in Hy.

(defn fib [n]
(if (<= n 2) n
(+ (fib (- n 1)) (fib (- n 2)))))

(if (= __name__ "__main__")
(for [x [1 2 3 4 5 6 7 8]]
(print (fib x))))
13 changes: 13 additions & 0 deletions samples/Hy/hello-world.hy
@@ -0,0 +1,13 @@
;; The concurrent.futures example in Hy.

(import [concurrent.futures [ThreadPoolExecutor as-completed]]
[random [randint]]
[sh [sleep]])

(defn task-to-do []
(sleep (randint 1 5)))

(with-as (ThreadPoolExecutor 10) executor
(setv jobs (list-comp (.submit executor task-to-do) (x (range 0 10))))
(for (future (as-completed jobs))
(.result future)))

0 comments on commit 89f4885

Please sign in to comment.