Fable.Python icon indicating copy to clipboard operation
Fable.Python copied to clipboard

Create Pyi parser

Open alexpantyukhin opened this issue 3 years ago • 6 comments

There is parser in progress for parsing PYI ast: https://github.com/alexpantyukhin/PythonParser From tests it seems that now it's possible to parse some simple modules without 'IF's.

alexpantyukhin avatar Nov 01 '21 18:11 alexpantyukhin

There are still some problems with parsing type's. But going to fix that soon.

alexpantyukhin avatar Nov 01 '21 19:11 alexpantyukhin

Great effort! Keep up the good work!

dbrattli avatar Nov 02 '21 08:11 dbrattli

Parser in progress. Tested it today on whole pyi files in https://github.com/python/typeshed/tree/master/stdlib . it raises error in 175 cases from 885 files. Keep working with this.

alexpantyukhin avatar Nov 08 '21 19:11 alexpantyukhin

That is really great progress!! Sorry I haven't had much time to look at it yet since I have been busy with the compiler (and Jupyter).

dbrattli avatar Nov 08 '21 20:11 dbrattli

Now there are 12 files from whole typeshed raises error (some except situation for stdlib and left for protobuf from stubs). Now I'm thinking how it could be best way to generate the Fable AST and compile it to files. I guess It's the time where I can move forward with this.

alexpantyukhin avatar Nov 17 '21 10:11 alexpantyukhin

@alexpantyukhin Not sure I understand what you mean about generate Fable AST? Why Fable AST? Did you mean F# AST to generate F#?

Btw please note the new [<NamedParams(fromIndex=1)>], e.g: https://github.com/fable-compiler/Fable.Python/blob/main/src/stdlib/Builtins.fs#L123 on how to handle e.g named only arguments and methods with optional arguments.

dbrattli avatar Nov 21 '21 11:11 dbrattli