The main purpose of this project is to provide a way to incrementally migrate a large Python codebase onto a statically typed language (Purescript) while still providing Python interop. If you maintain a large Python codebase you probably understand why this is necessary.
The main reason I chose Purescript as the statically typed front-end was that:
This library is architecturally very simple:
purescript library to parse Purescript code into an ASTlanguage-python library to render the Python AST as source
codeThe goal is to strike a balance between making the Python code as idiomatic as possible while still keeping the implementation reasonably simple. Also, while I'd like to support as much of Purescript as possible, I'm okay with not supporting some language constructs if they prove too hairy to translate to traditional Python idioms.
I'm not yet fully committed to this project. I only put this up because some people asked to see the code I had so far. I will modify this README to indicate when I'm taking this project more seriously.
In the meantime, if you would like to contribute, I will be very liberal about accepting pull requests.
Right now the project is just a skeleton Compile.hs file showing the rough
outline of how things would work along with some example AST translations. This
project is so unpolished that it's not even a cabal project yet.
4 commits
Haskell
100.0%
The main purpose of this project is to provide a way to incrementally migrate a large Python codebase onto a statically typed language (Purescript) while still providing Python interop. If you maintain a large Python codebase you probably understand why this is necessary.
The main reason I chose Purescript as the statically typed front-end was that:
This library is architecturally very simple:
purescript library to parse Purescript code into an ASTlanguage-python library to render the Python AST as source
codeThe goal is to strike a balance between making the Python code as idiomatic as possible while still keeping the implementation reasonably simple. Also, while I'd like to support as much of Purescript as possible, I'm okay with not supporting some language constructs if they prove too hairy to translate to traditional Python idioms.
I'm not yet fully committed to this project. I only put this up because some people asked to see the code I had so far. I will modify this README to indicate when I'm taking this project more seriously.
In the meantime, if you would like to contribute, I will be very liberal about accepting pull requests.
Right now the project is just a skeleton Compile.hs file showing the rough
outline of how things would work along with some example AST translations. This
project is so unpolished that it's not even a cabal project yet.
4 commits
Haskell
100.0%