Volver al ranking

jank-lang/jank

C++jank-lang.org

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

functional-programmingcompilerclojurelanguagejitlispllvmcppprogramming-languagenative
Crecimiento de estrellas
Estrellas
3.3k
Forks
125
Crecimiento semanal
Issues
78
1k2k3k
may 2015ene 2019oct 2022jul 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

Repositorios 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