Voltar ao ranking

jank-lang/jank

C++jank-lang.org

jank is the native Clojure dialect with seamless C++ interop.

functional-programmingcompilerclojurelanguagejitlispllvmcppprogramming-languagenative
Crescimento de estrelas
Estrelas
3.3k
Forks
125
Crescimento semanal
Issues
78
1k2k3k
mai. de 2015jan. de 2019out. de 2022jul. de 2026
README
jank banner

CI

What is jank?

Most simply, jank is a Clojure dialect on LLVM with C++ interop. Less simply, jank is a general-purpose programming language which embraces the interactive, functional, value-oriented nature of Clojure and the desire for the native runtime and performance of C++. jank aims to be strongly compatible with Clojure. While Clojure's default host is the JVM and its interop is with Java, jank's host is LLVM and its interop is with C++.

jank is currently in alpha! Look here for details.

Docs

Read the jank book.

Appetizer

(ns my.app.filesystem
  (:include "boost/filesystem.hpp")
  (:refer-global :rename {boost.filesystem.file_size file-size}))

(defn file-info [file-path]
  (try
    (let [bytes (file-size (cpp/cast std.string file-path))]
      {:path file-path
       :size bytes})
    (catch boost.filesystem.filesystem_error e
      {:path file-path
       :error (.what e)})))

(file-info "/etc/passwd")
; {:path "/etc/passwd", :size 4025}

(file-info "/root/.bash_history")
; {:path "/root/.bash_history"
;  :error "boost::filesystem::file_size: Permission denied [system:13]: \"/root/.bash_history\""}

Sponsors

If you'd like your name, company, or logo here, you can sponsor this project for at least $25/m.


Bert Muthalaly

modulr-software

multiply.co

keychera

Colin Woodbury

pete23

Arik Rahman

In the news

Repositórios relacionados
MostlyAdequate/mostly-adequate-guide

Mostly adequate guide to FP (in javascript)

JavaScriptnpmOtherjavascriptfunctional-programming
23.8k1.9k
hemanth/functional-programming-jargon

Jargon from the functional programming world in simple terms!

MIT Licensefunctional-programmingfp
git.io/fp-jargons
18.6k998
lichess-org/lila

♞ lichess.org: the forever free, adless and open source chess server ♞

ScalaGNU Affero General Public License v3.0scalachess
lichess.org
18.5k2.7k
NixOS/nix

Nix, the purely functional package manager

C++GNU Lesser General Public License v2.1nixfunctional-programming
nixos.org
17.4k2k
getify/Functional-Light-JS

Pragmatic, balanced FP in JavaScript. @FLJSBook on twitter.

JavaScriptnpmOtherbookjavascript
fljsbook.com
16.8k1.9k
scala/scala

Scala 2 compiler and standard library. Scala 2 bugs at https://github.com/scala/bug; Scala 3 at https://github.com/scala/scala3

ScalaApache License 2.0scalascala-compiler
scala-lang.org
14.5k3.1k
hmemcpy/milewski-ctfp-pdf

Bartosz Milewski's 'Category Theory for Programmers' unofficial PDF and LaTeX source

TeXOtherhaskellcategory-theory
bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/
11.7k645
gcanti/fp-ts

Functional programming in TypeScript

TypeScriptnpmMIT Licensetypescriptfunctional-programming
gcanti.github.io/fp-ts/
11.5k511
DeathKing/Learning-SICP

MIT视频公开课《计算机程序的构造和解释》中文化项目及课程学习资料搜集。

RubyRubyGemssicpscheme
learningsicp.github.io
11.3k1.5k
cyclejs/cyclejs

A functional and reactive JavaScript framework for predictable code

TypeScriptnpmMIT Licenseframeworkjavascript
cycle.js.org
10.2k421
kickstarter/ios-oss

Kickstarter for iOS. Bring new ideas to life, anywhere.

SwiftApache License 2.0reactivecocoareactiveswift
kickstarter.com/mobile
8.7k1.2k
supermacro/neverthrow

Type-Safe Errors for JS & TypeScript

TypeScriptnpmMIT Licensefunctional-programmingtypescript
7.6k152