pypperoni
prometeo
Our great sponsors
pypperoni | prometeo | |
---|---|---|
3 | 10 | |
77 | 610 | |
- | - | |
1.8 | 0.0 | |
about 3 years ago | almost 2 years ago | |
Python | Python | |
MIT License | BSD 2-clause "Simplified" License |
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.
pypperoni
- Pypperoni: A Python compiler and bytecode preprocessor
-
How we sped up a Regex by 50,000x to make a family-friendly MMO safe for all
Tries is barely winning in this case when pyre2 is thrown into the mix. Also, pyre2 is a C++ extension; because of the distribution compiler we use we would have had to jump through a lot more hoops to get it working on our clients so we prefer pure Python libs. That said, we don't actually ship blocklist detection to the client so we don't have similar restrictions on the server side.
-
Any weird encounters you had with hackers in TTO?
Today, we have stuff like Pypperoni, which makes Python injection impossible, and server code is written with security in mind.
prometeo
- Are there any libraries that can easily convert Python to C/C#/or C++? Ones where a person doesn't have to "calibrate" it, just, pip install library and then they can have their Python code in C,C#,or C++?
-
I made a Python compiler, that can compile Python source down to fast, standalone executables.
Honest question: How does pycom compare to similar tools like Nuitka, prometeo, or mypyc?
-
Profiling and Analyzing Performance of Python Programs
If you don't mind switching to a little different syntax of Python, then you also might want to take a look at prometeo - an embedded domain specific language based on Python, specifically aimed at scientific computing. Prometeo programs transpile to pure C code and its performance can be comparable with hand-written C code.
- GitHub - zanellia/prometeo: An experimental Python-to-C transpiler and domain specific language for embedded high-performance computing
- Show HN: Prometeo – a Python-to-C transpiler for high-performance computing
- An experimental Python-to-C transpiler and domain specific language for embedded high-performance computing
-
Show HN: prometeo – a Python-to-C transpiler for high-performance computing
This is awesome! The direction of using a subset of python, while leveraging the user base and static typing to accomplish some other everyday task in a different language is very legit IMO.
I took a cursory look at:
https://github.com/zanellia/prometeo/blob/master/prometeo/cg...
It seems quite similar in spirit to
https://github.com/adsharma/py2many/blob/main/pyrs/transpile...
I'm not spending much time on py2many last few months (started a new job). Let me know if any of it sounds useful - especially the ability to transpile to 7-8 languages including Julia, C++ and Rust.
What are some alternatives?
python-uncompyle6 - A cross-version Python bytecode decompiler
Octavian.jl - Multi-threaded BLAS-like library that provides pure Julia matrix multiplication
chocopy-python-compiler - Ahead-of-time compiler for Chocopy, a statically typed subset of Python 3, built in Python 3.
llvm-cbe - resurrected LLVM "C Backend", with improvements
pyclean - Pure Python cross-platform pyclean. Clean up your Python bytecode.
StaticCompiler.jl - Compiles Julia code to a standalone library (experimental)
acados - Fast and embedded solvers for nonlinear optimal control
textX - Domain-Specific Languages and parsers in Python made easy http://textx.github.io/textX/
MatrixEquations.jl - Solution of Lyapunov, Sylvester and Riccati matrix equations using Julia
pavilion2 - Pavilion is a Python 3 (3.5+) based framework for running and analyzing tests targeting HPC systems.
hpipm - High-performance interior-point-method QP and QCQP solvers
OpenBLAS - OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.