Dear community members,
My name is Nikhil and I will be creating a C and Fortran Parser for SymPy 
as my GSoC 2019 project and this thread describes my project and my plan to 
complete it.

My project is to create a parser for SymPy which can convert C and Fortran 
code to SymPy syntax directly. Currently, if anyone wants to use SymPy for 
any C or Fortran project, they have to manually convert the equations/code 
from these languages to SymPy which is a very time consuming and exhausting 
task. All this effort can be avoided after the implementation of the 
project. I will be using Clang to help in parsing C and LFortran to parse 
Fortran.

The initial plan is to use Clang and cppyy to extract C/C++ AST which can 
be converted to SymPy syntax. Simultaneously, work will be done on LFortran 
and it's API. LFortran will be used to convert Fortran code to AST then ASR 
which will be converted to SymPy syntax.

I plan to complete the C parser and some part of the Fortran parser before 
first evaluation. So that community feedback can be taken and implemented 
on the C parser while the Fortran parser is being worked on before the 
second evaluation. The final month will be solving any issues and bugs that 
still remain and finalizing the implementations of the parsers in SymPy.

I would also like to keep the documentation and tests updated along with 
the development of the parsers as parsing from different languages is a 
sensitive job and small missed issues can create problems for people later 
in their work.

Once the project will be complete, along with Ankit's project who is 
working on improving the other end of code conversion, converting code from 
SymPy to other languages; people will be able to take their codes directly 
from their language, perform the required work in SymPy, and then convert 
the code back to their respective languages' source code without any extra 
effort. It will save a lot of time and effort for a lot of people. It will 
make SymPy more efficient and useful for people.

Any suggestion, improvements, bug finds from any community member will be 
appreciated.

Regards,
Nikhil Maan

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/81dae064-9e33-4861-bbb9-3da6530bc7c7%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to