Live data from Hacker News

Codon: A high-performance Python-like compiler using LLVM

github.com

11–20 of 184 posts

Re: Codon: A high-performance Python-like compiler using LLVM

#12

Free for non-production use... it's a "no" for me.

Woah - also, their license automatically becomes open source (Apache) three years from now.

The problem with these is always security updates. If you want to run on the old stuff you have to make your own security patches. Of course maybe that is exactly something that it makes sense to pay for.

Re: Codon: A high-performance Python-like compiler using LLVM

#15

after reading it's not a python compiler but a compiled language based on the python syntax

One of the faq things refers in passing to integers being 64bit instead of arbitrary precision. That's a bit more fundamental than some cpython modules don't work. Haven't found a language reference yet.

edit: it's statically typed ahead of time - that feels like something that needs a detailed description of what it's doing, given the baseline of like-python

Re: Codon: A high-performance Python-like compiler using LLVM

#16
post #3

What is the difference between Codon and Pypy other than Codon not being targeted as a drop-in replacement for Cpython?

Some info on that at https://docs.exaloop.io/codon/general/faq#how-does-codon-com... ...

Their benchmarks (https://exaloop.io/benchmarks) show that Codon is much, much faster than pypy. I also just tried some microbenchmarks with their fib example (iterated many times with higher parameters) and got similar results. It's unfortunate for now that this isn't open source, but it's really valuable to demonstrate to us Python lovers what's possible using LLVM!

Re: Codon: A high-performance Python-like compiler using LLVM

#17
post #7

Earlier quoted context omitted.

It's also confusing... I mean, what does "non-production use" mean anyway? Does it mean "non-commercial use"? Or "testing/debug/staging environment"? Or "does not produce any valuable output"...?

According to this article https://perens.com/2017/02/14/bsl-1-1/ about the Business Source License, the intention conveyed by the word "production" for that license is use "in any capacity that is meant to make money".

What I want to know is: "can I add Codon to a site like https://cocalc.com that I host as long as users of Codon explicitly agree to only use it in a way that is compatible with the license?" I have absolutely no idea if that would be allowed by the rules or not.

Re: Codon: A high-performance Python-like compiler using LLVM

#18
Unfortunately stuff like this never makes it to the upstream. And i am afraid to ask why. We had pypy for years, but never got merged with python. That is why there are still minor incompatibilities between pypy and "The Python", so it's not that useful as it might have been if it got merged with cpython at some point.

Re: Codon: A high-performance Python-like compiler using LLVM

#20

Earlier quoted context omitted.

Some info on that at https://docs.exaloop.io/codon/general/faq#how-does-codon-com... ...

Their benchmarks ( https://exaloop.io/benchmarks ) show that Codon is much, much faster than pypy. I also just tried some microbenchmarks with their fib example (iterated many times with higher parameters) and got similar results. It's unfortunate for now that this isn't open source, but it's really valuable to demonstrate to us Python lovers what's possible using LLVM!

Their benchmarks are not to be trusted (after reading the source).

- They cheat, they rewrite code to use coden specific features to "win" (ie, parallelization and GPU optimizations)

- They don't warm up. They are simply running their competition directly rather than allowing any sort of warmup. (In other words, they are measuring cold boot and startup time)

Now, if they want to argue about startup time or whatever mattering for performance then fine. However, the representation of "20x faster!" is simply deception.

TBF, they are upfront about cheating

> Further, some of the benchmarks are identical in both Python and Codon, some are changed slightly to work with Codon's type system, and some use Codon-specific features like parallelism or GPU.

Post reply on HN