geni-performance-benchmark
hebigo
geni-performance-benchmark | hebigo | |
---|---|---|
3 | 21 | |
27 | 21 | |
- | - | |
4.1 | 1.9 | |
over 3 years ago | about 1 year ago | |
Clojure | Python | |
Apache License 2.0 | Mozilla 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.
geni-performance-benchmark
-
PyTorch: Where we are headed and why it looks a lot like Julia (but not exactly)
Clojure has a high performance data frame library that leverages new JVM vector API and high quality apache arrow protocol.
Talk related - https://youtu.be/5mUGu4RlwKE
https://github.com/zero-one-group/geni-performance-benchmark
- LLVM!
-
Clojure High Performance Data Processing System
How often have you seen a Clojure system that soundly beats C, Julia, Python, Spark, and R systems in a data processing benchmark?
hebigo
-
What is the point of the if __name__ == "__main__":, i.e. why use a file as both script and module?
The Lissp transpiler incrementally compiles and executes each top-level form to Python. It needs to do this in case there's a macro definition that might affect the compilation of a subsequent form. If it's only executing definitions, this is harmless, but if you want to precompile the main module, it needs the guard, or the side effects will happen too.
-
What's the most hilarious use of operator overloading you've seen?
If you want Python to be as customizable as Lissp, check out Hissp (and Hebigo).
-
Want cleaner code? Use the rule of six
Python's lambdas can have as many lines as you want. Just wrap parens around it. Hissp uses this form as a compilation target. Its REPL shows the Python compilation. Play around with it til you get it: https://github.com/gilch/hissp
- What would be your “perfect” programming language?
- Kamby – A programming language based on Lisp that doesn't seems like Lisp
- Wisp: Whitespace to Lisp
-
Is ECMAScript really a dialect of Lisp?
The original Lisp's S-expression syntax was just supposed to be an intermediate language used by the compiler when processing the real language based on M-expressions, which kind of never took off. Numerous alternatives to S-expressions have been proposed, and some retain homoiconicity, another feature diagnostic of a Lisp (and one that ECMAScript lacks). For example, see Hebigo's readme, which shows a direct correspondence between its Python-like syntax and that of Hissp's default reader (Lissp), which uses the S-expressions. Julia can also be written in S-expressions, but this usually only used in macro definitions.
- Why Hy?
-
Land of Lisp
I think LoL is too CL-specific. If you know both languages first, you can pretty much translate, but since they'd be trying to learn Lisp in the first place, this is a bad idea.
On the other hand, [Hissp][1] has a pretty good tutorial for anyone coming from a Python background.
[1]: https://github.com/gilch/hissp
-
Interesting or distinctive lisps?
Hebigo: a whitespaceLisp isomorphic to Hissp that looks like Python.
What are some alternatives?
jax - Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more
hy - A dialect of Lisp that's embedded in Python
HTTP.jl - HTTP for Julia
hy-lisp-python - examples for my book "A Lisp Programmer Living in Python-Land: The Hy Programming Language"
tablecloth - Dataset manipulation library built on the top of tech.ml.dataset
slime - The Superior Lisp Interaction Mode for Emacs
tech.ml.dataset - A Clojure high performance data processing system
smtfmt - An SMT-LIB formatter.
functorch - functorch is JAX-like composable function transforms for PyTorch.
smart-imports - smart imports for Python
TailRec.jl - A tail recursion optimization macro for julia.
coalton - Coalton is an efficient, statically typed functional programming language that supercharges Common Lisp.