codon/docs
A. R. Shajii 38e08b409a
Doc updates (#385)
* Documentation updates

* Documentation updates

* Update README.md

* Fix tuple indexing error messages

* Update roadmap, differences

* Update README, FAQ

* Trim newline

* Update README.md

* Update README.md

* Update README.md

* Update roadmap.md

* Update cpp.md

* Update README.md

* Update roadmap.md

* Update README.md

* Fix test

* clang-format

* Fix exporting function named "main"

* Update export test

* Fix paths

* Rename extra/python -> jit

* Update license change date

* Minor docs updates

* Re-add __init__.py

* Update header

* Update gitignore

* Update README.md

---------

Co-authored-by: Ibrahim Numanagić <ibrahimpasa@gmail.com>
Co-authored-by: Ibrahim Numanagić <inumanag@users.noreply.github.com>
2023-05-23 17:59:26 -04:00
..
advanced Doc updates (#385) 2023-05-23 17:59:26 -04:00
img Fix image in docs 2023-01-08 21:47:53 -05:00
interop Doc updates (#385) 2023-05-23 17:59:26 -04:00
intro Doc updates (#385) 2023-05-23 17:59:26 -04:00
language Doc updates (#385) 2023-05-23 17:59:26 -04:00
README.md Fix image in docs 2023-01-08 21:47:53 -05:00
SUMMARY.md Doc updates (#385) 2023-05-23 17:59:26 -04:00
docgen.py Update docs (#28) 2022-07-26 16:08:42 -04:00

README.md

Codon Pipeline

Codon is a high-performance Python compiler that compiles Python code to native machine code without any runtime overhead. Typical speedups over Python are on the order of 100x or more, on a single thread. Codon supports native multithreading which can lead to speedups many times higher still.

The Codon framework is fully modular and extensible, allowing for the seamless integration of new modules, compiler optimizations, domain-specific languages and so on. We actively develop Codon extensions for a number of domains such as bioinformatics and quantitative finance.

Codon at a glance

A simple Python program fib.py...

from time import time

def fib(n):
    return n if n < 2 else fib(n - 1) + fib(n - 2)

t0 = time()
ans = fib(40)
t1 = time()
print(f'Computed fib(40) = {ans} in {t1 - t0} seconds.')

... run through Python and Codon:

$ python3 fib.py
Computed fib(40) = 102334155 in 17.979357957839966 seconds.
$ codon run -release fib.py
Computed fib(40) = 102334155 in 0.275645 seconds.