[ANN] ClojureCLR 1.12.0-alpha1 released, plus a bunch of libraries

50 views
Skip to first unread message

dmiller2718

unread,
Dec 1, 2022, 3:40:54 PM12/1/22
to clojure-clr
ClojureCLR 1.12.0-alpha1 has just been pushed to nuget and sourceforge.

This alpha release matches Clojure(JVM) 1.12.0-alpha1.  Some additional enhancements and bug fixes have been made.  One is necessary for some of the libraries below (if I remember, those are tools.analyzer.clr and core.async), so if you want to play with core.async, you'll need to pull in this alpha release.

I have newly ported some of the libraries that are part of the Clojure ecosystem.
The trigger was a request to get core.async up and running.  All the others are dependencies of core.async.

All these libraries pass all of the tests in the original code.
There are a few bits of functionality that are very JVM-specific -- those might not have been ported.

Here we go, from the bottom up.

data.priority-map [1.1.0]
Description: A priority map is very similar to a sorted map, but whereas a sorted map produces a sequence of the entries sorted by key, a priority map produces the entries sorted by value.

Original repo: https://github.com/clojure/data.priority-map
CLR repo: https://github.com/clojure/clr.data.priority-map
Nuget reference:   Install-Package clojure.data.priority-map -Version 1.1.0
Leiningen/Clojars  reference: [org.clojure.clr/data.priority-map "1.1.0"]


core.cache [1.0.226]
Description: provides a base abstraction for implementing new synchronous caches as well as implementations of basic caching strategies.

Original repo: https://github.com/clojure/core.cache
CLR repo: https://github.com/clojure/clr.core.cache
Nuget reference:    Install-Package clojure.core.cache  -Version 1.0.226
Leiningen/Clojars  reference: [org.clojure.clr/core.cache "1.0.226"]


core.memoize [1.0.257]
Description: A manipulable, pluggable, memoization framework for Clojure

Original repo: https://github.com/clojure/core.memoize
CLR repo: https://github.com/clojure/clr.core.memoize
Nuget reference:   Install-Package clojure.core.memoize  -Version 1.0.257
Leiningen/Clojars  reference: [org.clojure.clr/core.memoize "1.0.257"]


tools.analyzer [1.1.1]
Description: An analyzer for host agnostic Clojure code, written in Clojure and producing AST in EDN.

There is no CLR-specific version of this.  You probably won't need to reference this library directly.  You need tools.analyzer.clr to make it work.

Original repo: https://github.com/clojure/tools.analyzer
Nuget reference:   Install-Package clojure.tools.analyzer -Version 1.1.1
Leiningen/Clojars  reference: [org.clojure/tools.analyzer "1.1.1"]


tools.analzer.clr [1.2.3]
Description: A port of tools.analyzer.jvm.  Additional platform-specific passes for tools.analyzer.

Original repo: https://github.com/clojure/tools.analyzer.jvm
CLR repo: https://github.com/clojure/tools.analyzer.clr
Nuget reference:    Install-Package clojure.tools.analyzer.clr -Version 1.2.3
Leiningen/Clojars  reference: [org.clojure.clr/tools.analyzer.clr "1.2.3"]


core.async [1.6.673]
Description: Facilities for async programming and communication in Clojure

Original repo: https://github.com/clojure/core.async
CLR repo: https://github.com/clojure/clr.core.async
Nuget reference:     Install-Package clojure.core.async -Version 1.6.673 
Leiningen/Clojars reference: [org.clojure.clr/core.async "1.6.673"]


Special thanks to Alex Miller for being so responsive to getting repositories set up, answering questions, and pushing a patch to tools.analyzer to keep compatibility with ClojureCLR.


-David Miller



Reply all
Reply to author
Forward
0 new messages