Giter Site home page Giter Site logo

kolharsam / graalvm-clojure Goto Github PK

View Code? Open in Web Editor NEW

This project forked from clj-easy/graalvm-clojure

0.0 1.0 0.0 109 KB

This project contains a set of "hello world" projects to verify which Clojure libraries do actually compile and produce native images under GraalVM.

License: Apache License 2.0

Shell 5.32% Clojure 94.68%

graalvm-clojure's Introduction

Clojure meets GraalVM

This project contains a set of "hello world" projects to verify which Clojure libraries do actually compile and produce native images under GraalVM.

Here the instructions on how to build your own Clojure projects with GraalVM.

Here the list of libraries tested:

Status Library Description Remarks
Clojure core Clojure core
clojure spec Clojure Spec
clojure/tools.logging Logging library
clojure/tools.logging+log4j Logging library
aleph Web server
amazonica+s3 Cloud API wrapper library
cheshire JSON parser/writer
clj-http-lite Web client
clj-sophia A fast RAM-Disk hybrid storage Runtime error/JNA
clj-uuid RFC4122 Unique Identifiers for Clojure No objects in namespaced uuids
clostache {{ mustache }} for Clojure
cognitect/aws-api+s3 Cloud API library Buildtime error
component Managing lifecycle and dependencies of software
datascript Immutable database and Datalog query engine
⚠️ fastmath Fast and primitive math and stats library See README
hiccup Fast library for rendering HTML in Clojure
http-kit Web server Web client ❌
monger An idiomatic Clojure MongoDB driver with sane defaults
next.jdbc + honeysql Database driver and SQL-in-Clojure
⚠️ nippy Clojure serialization/deserialization library Can't serialize exceptions
ring/jetty Web server
safely Circuit breaker
secure-random SecureRandom initialization
system Layer on top of components Buildtime error, see Readme

More libraries to come (PRs are welcome).

Interesting GraalVM documentation to build native-images:

How to contribute

If you wish to add a library and contribute with a PR please follow these steps:

  1. Fork the project
  2. use the sample-project as a template. cp -r sample-project my-library
  3. add the library to the project.clj and the native-image parameters used
  4. amend the my-library/src/simple/main.clj to use the library
  5. amend the my-library/README.md with the info you discovered.
  6. Make a PR with your findings and "Thank you" in advance.

License

Copyright © 2019-2020 Bruno Bonacci

Distributed under the Apache License v 2.0 (http://www.apache.org/licenses/LICENSE-2.0)

graalvm-clojure's People

Contributors

brunobonacci avatar alekcz avatar jimpil avatar jamartin9 avatar danielcompton avatar jrwdunham avatar lsh-0 avatar genmeblog avatar sveri avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.