JuliaCN / Py2Jl

Python to Julia transpiler.
MIT License
74 stars 12 forks source link

NotImplementedError #23

Open PallHaraldsson opened 2 years ago

PallHaraldsson commented 2 years ago

I'm trying to transpile this program:

https://github.com/hanabi1224/Programming-Language-Benchmarks/blob/main/bench/algorithm/coro-prime-sieve/1.py

Assuming I should use python3, and after installing some dependencies, I at least get it started:

$ python3 -m Py2Jl ../../py.py jl.jl
Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/pharaldsson/Py2Jl/Py2Jl.jl/Py2Jl/__main__.py", line 14, in <module>
    wise(py2jl)()  # type: ignore
  File "/home/pharaldsson/.local/lib/python3.10/site-packages/wisepy2.py", line 271, in parse_arg
    return handle(cmd_args)
  File "/home/pharaldsson/.local/lib/python3.10/site-packages/wisepy2.py", line 244, in parse_arg
    return fn(*args, **kwargs)
  File "/home/pharaldsson/Py2Jl/Py2Jl.jl/Py2Jl/__main__.py", line 10, in py2jl
    doc = Compiler(code, out).create_module()
  File "/home/pharaldsson/Py2Jl/Py2Jl.jl/Py2Jl/__init__.py", line 349, in create_module
    return pd.vsep([arg.x for arg in self.transform_stmt_list(self.node.body)])
  File "/home/pharaldsson/Py2Jl/Py2Jl.jl/Py2Jl/__init__.py", line 534, in transform_stmt_list
    result.append(self.transform_stmt(x))
  File "/home/pharaldsson/Py2Jl/Py2Jl.jl/Py2Jl/__init__.py", line 517, in transform_stmt
    return f(self, x)
  File "/home/pharaldsson/Py2Jl/Py2Jl.jl/Py2Jl/__init__.py", line 944, in transform_Import
    raise NotImplementedError
NotImplementedError

Neither did https://github.com/hanabi1224/Programming-Language-Benchmarks/blob/main/bench/algorithm/merkletrees/1.py

but I did get their hello world program to work after I simplified it a bit (it did a bit more), to transpile, so I guess I'm doing right. The output was a bit ugly though...