gsoc-2021-ideas
libpython-clj
gsoc-2021-ideas | libpython-clj | |
---|---|---|
4 | 25 | |
5 | 1,032 | |
- | 1.4% | |
3.2 | 5.7 | |
about 3 years ago | 2 months ago | |
SCSS | Clojure | |
GNU General Public License v3.0 only | Eclipse Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
gsoc-2021-ideas
- A shared vision of Perl
-
Python's tug of war between beginner-friendly and advanced features
> Raku ... lacks widespread adoption
Right. It clearly doesn't have a strong enough offering at the moment to attract anyone beyond a few early adopters.
> last I heard it fell significantly short of Perl 5 performance
Likewise. I'm pretty sure Perl still roundly trounces it for a lot of operations, especially in regex processing. I think it will need to be significantly faster than Perl before it will have a chance at gaining significantly more adoption.
> I'm not sure what kind of library ecosystem it has nowadays
The raku.land directory has less than a thousand packages and many seem to be jokes, unloved, poorly tested and documented, version 0.x, or even 0.0.x. [0]
The standard library is a different ballgame. It's generally well designed and very large, cutting out the usual blizzard of folk reinventing the wheel for basics. So that's good.
> I doubt we're going to see big commercially-backed library development efforts for it, soon or ever.
I agree.
> Perl 5 has a huge ecosystem of course, but it's such a nasty warty language with nasty warty tooling.
This is where I think Raku's strength lies.
A lot of the effort that went into Raku was to build a platform that could just directly use tooling and libraries of other PLs while insulating developers from their downsides.
That way you get to use Raku tooling, syntax and semantics at the surface level with other PLs' tooling and modules and performance. Kinda like using C code in a non-C PL, but generalized to using code from any other PL in Raku.
The exemplar was supposed to be Perl, but it was also supposed to extend to many other PLs. Starting 7 years ago this became the Inline family.[1]
Inline::Perl is the most mature. Imo it's remarkable. But it was always supposed to just be the first one to get the polish to demonstrate that the approach works and works great. About a year ago the author behind it said it was nearly time to do the same for Python modules. And now I see a GSOC proposal to do that.[2]
The Inlines hide the warts (though you do have to read the modules' documentation to know what their API's are etc).
I think the impact of Inline Python will be huge because it takes away the complaint about reading Perl documentation and code. Instead you read Python API docs but get the benefits of using Raku.
(And, in the wings, there's Inline::Ruby, Inline::Lua, and so on.)
[0] https://raku.land/
[1] https://raku.land/?q=inline
[2] https://github.com/perl-foundation-outreach/gsoc-2021-ideas/...
- GSoC proposal: libgccjit backend for MoarVM's Just In Time compiler
- GSoC Proposal: libgccjit backend for MoarVM's Just In Time compiler
libpython-clj
-
Pyffi – Use Python from Racket
It’s also worth noting that Clojure has libpython-clj (https://github.com/clj-python/libpython-clj) which offers an interface with Python from another lisp. Here are some advanced ML and dataviz examples using that lib: https://github.com/gigasquid/libpython-clj-examples.
- A Python-compatible statically typed language erg-lang/erg
-
Clojure Scripting on Node.js
Basically, you take a programming language and make it work on a platform that meant to be programmed using a different PL. Clojure is hosted by design - it's not Java, but can be used to program for JVM. It ain't Javascript, but can be used to target nodejs and browser; not an [official] CLR language, but you can write .Net programs. You can use Clojure to make Flutter apps with ClojureDart. You can integrate Python into Clojure with libpython-clj. Or write Clojure to target Erlang/OTP; or Rust; or R; There's even a clojure-like language for Lua - Fennel.
There's something about Clojure people like so much, they want it to work atop any platform.
https://github.com/Tensegritics/ClojureDart
https://github.com/clj-python/libpython-clj
https://github.com/clojerl/clojerl
https://github.com/clojure-rs/ClojureRS
https://github.com/scicloj/clojisr
https://fennel-lang.org
- Why Clojure is not widely adopted like mainstream languages?
- Clj-Python: Python bindings for Clojure
-
Why is there no Clojure to Python Compiler / Transpiler?
There's this project that's used a lot for taking advantage of Pythons ecosystem through Clojure JVM. https://github.com/clj-python/libpython-clj
-
(define (uwu) (display "nya~\n"))
Ahh, makes sense. Well, if you ever wanna steal some of python's thunder, libpython-clj worked great for me lol. Supposedly py4cl fills a similar role in Common Lisp.
-
Notebooks suck: change my mind
High quality interop with any python library via libpython-clj including, but not limited to, keras, numpy, matplotlib, and pandas. This includes zero copy paths from many of those.
-
Java Bindings for Libpython-clj
libpython-clj now has Java bindings...go tell all your Java friends!
- Best Lisp dialect?
What are some alternatives?
grants-perlfoundation-org - Ideas people have suggested which could be proposed as a grant.
hissp - It's Python with a Lissp.
spark-nlp - State of the Art Natural Language Processing
clerk - ⚡️ Moldable Live Programming for Clojure
py4cl - Call python from Common Lisp
tablecloth - Dataset manipulation library built on the top of tech.ml.dataset
sklearn-clj - Plugin to use sklearn models in metamorph.ml
ArcadiaGodot
neanderthal - Fast Clojure Matrix Library
tech.ml.dataset - A Clojure high performance data processing system
Arcadia - Clojure in Unity
PrimesResult - The results of the Dave Plummer's Primes Drag Race