It's a Python backend for PureScript!
Inspired by Purescript-to-Python.
Very Alpha software here!
You'll need stack.
After installing stack. You should be able to:
stack build
Assuming all went well you can start compiling files.
stack exec pysc <FILE>
Not much to currently see, but it will compile a simple file like:
module Foo where infixl 4 wat as + wat :: forall a b. a -> b -> a wat x _ = x foo :: Int foo = 1 + 2 bar :: Boolean bar = true baz :: Boolean baz = false
to a file like:
# Generated by pysc version 0.9.1.0 wat = lambda x: lambda v: x foo = wat(1)(2) baz = False bar = True __all__ = [ "bar", "baz", "foo", "wat" ]
Based on that output, there's clearly lots of work to actually be done :).
The file structure looks like:
output
└── Foo
├── externs.json
└── __init__.py
So, you should be able to fire up a python interpreter and use the compiled file:
➜ pyrescript git:(master) ipython
Python 3.5.1 (default, Mar 3 2016, 09:29:07)
Type "copyright", "credits" or "license" for more information.
IPython 4.0.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
In [1]: import output.Foo
In [2]: output.Foo.bar
Out[2]: True
In [3]: output.Foo.baz
Out[3]: False
In [4]: output.Foo.foo
Out[4]: 1
In [5]: output.Foo.wat([1,2,3])(None)
Out[5]: [1, 2, 3]