Recommendations on porting Python to D
    mw 
    mingwu at gmail.com
       
    Fri Jul 12 18:07:50 UTC 2024
    
    
  
On Friday, 3 May 2024 at 17:38:10 UTC, Chris Piker wrote:
> On Thursday, 25 April 2024 at 16:57:53 UTC, mw wrote:
>> On Wednesday, 24 April 2024 at 22:07:41 UTC, Chris Piker wrote:
>>
>>> Python-AST to D source converter may already exist?
>>
>> https://github.com/joortcom/eiffel_rename/tree/main/yi
>>
>> A rudimentary converter from (extended) Python to D. Maybe you 
>> can use it as a starting point.
>
> Thanks for the suggestions.  I put the question aside for a 
> bit, but yesterday ran across a python transpiler here:
>
>   https://github.com/py2many/py2many
>
> It already has support for C++, Go and others.  Since I have 
> mountains of python code created over many years, maybe it 
> would be worth contributing to this project out of self 
> interest.
>
> Can you take a look at py2many and see what you think about it? 
>  Getting D on the support list might be good.
Hi,
I have made basic py2many.pyd work at language/syntax level in my 
dlang fork:
https://github.com/mw66/py2many/tree/dlang
The following examples works now:
https://github.com/mw66/py2many/tree/dlang/tests/expected
py2many/ 13:56:23$ ls ./tests/expected/*.d
./tests/expected/bubble_sort.d
./tests/expected/cls.d
./tests/expected/fib.d
./tests/expected/import_tests.d
./tests/expected/classes.d
./tests/expected/dict.d
./tests/expected/hello_world.d
./tests/expected/nested_dict.d
I haven't created PR to be merged into the main branch, since 
it's better to pass all the tests.
All the remaining work is to make Python's specific feature (e.g. 
async), library (e.g. complex number, NamedTemporaryFile) work in 
D. There are many things need to be done, if you have time, you 
can pick up from my fork, and work from there. (E.g. you can 
create PR to my branch, and when everything is ready, we submit 
to the main py2many all together).
HTH.
    
    
More information about the Digitalmars-d-learn
mailing list