The Clojure Programming Language

Edit Package clojure

Clojure is a dynamic programming language that targets the Java Virtual Machine (and the CLR, and JavaScript). It is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Every feature supported by Clojure is supported at runtime. Clojure provides easy access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection.

Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system. Clojure is predominantly a functional programming language, and features a rich set of immutable, persistent data structures. When mutable state is needed, Clojure offers a software transactional memory system and reactive Agent system that ensure clean, correct, multithreaded designs.

Refresh
Refresh
Source Files
Filename Size Changed
clojure-tools-1.10.2.774.tar.gz 0017541596 16.7 MB
clojure.changes 0000005589 5.46 KB
clojure.spec 0000002841 2.77 KB
Revision 6 (latest revision is 23)
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 867076 from Michael Vetter's avatar Michael Vetter (jubalh) (revision 6)
- Update to 0.10.2:
  * Interop / JVM:
    - CLJ-1472 Ensure monitor object is on stack, for verifiers
    - CLJ-2517 More fixes for invocation of static interface methods with primitive args
    - CLJ-2492 Remove uses of deprecated Class.newInstance()
    - CLJ-2534 Fix javadoc urls for JDK 11+
    - CLJ-2571 Add Throwable return type hint to ex-cause
    - CLJ-2572 Avoid reflection in clojure.data
    - CLJ-2502 Fix reflection warnings in clojure.stacktrace/print-stack-trace
    - CLJ-2597 proxy should emit Java 1.8 bytecode
  * Core:
    - CLJ-2580 Fix case expression branch analysis that resulted in compilation error
    - CLJ-2564 Improve error message for case
    - CLJ-2585 nth with not-found on regex matcher returns not-found on last group index
    - CLJ-1364 vector-of does not implement equals or hashing methods
    - CLJ-2549 vector-of does not implement IObj for metadata
    - CLJ-1187 quoted metadata on empty literal colls is lost
    - CLJ-2459 ExceptionInInitializerError if jars executed with java -jar
  * Printing:
    - CLJ-2469 Fix errors in printing some maps with namespace syntax
    - CLJ-1445 pprint doesn't print collection metadata when *print-meta* is true
  * Docstrings:
    - CLJ-2295 Eliminate duplicate doc string printing for special forms
    - CLJ-2495 prepl docstring is incorrect
    - CLJ-2169 conj has out-of-date :arglists
  * Performance:
    - CLJ-1005 Use transient map in zipmap
Comments 0
openSUSE Build Service is sponsored by