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]