NTDXYG / TurduckenGen

Code for paper "A Syntax-Guided Multi-Task Learning Approach for Turducken-Style Code Generation", which accepted in EMSE.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

About Dataset

  • The original dataset in Lyra is stored in Lyra-python-xxx.csv in the 'dataset/Python' directory.
  • The original dataset in Pisces is stored in Pisces-java-xxx.csv in the 'dataset/Java' directory.

All data in Pisces can be compiled, but since no test cases were provided in Lyra, there are also no test cases in Pisces.

Therefore, human study is still needed to evaluate the correctness of the code.

About Compiler

  • We use the pylint library for compilation checking in Lyra. Our version is python3.9, and other dependent packages can be found at https://github.com/LIANGQINGYUAN/Lyra.
  • We use Maven for compilation checking in Pisces (because we use Springboot). Our version is jdk1.8, and the relevant pom.xml file is provided.

About SAT Algorithm

We implemented the SAT algorithm using the open-source SPT-Code, with the demo provided in 'SAT-demo.py'.

HOW TO RUN

Modify the parameters and run 'run.py'.

About

Code for paper "A Syntax-Guided Multi-Task Learning Approach for Turducken-Style Code Generation", which accepted in EMSE.

License:Apache License 2.0


Languages

Language:JavaScript 42.6%Language:Python 40.7%Language:Scheme 5.2%Language:Rust 4.3%Language:Makefile 2.2%Language:Shell 1.6%Language:C++ 1.2%Language:Jupyter Notebook 0.9%Language:Ruby 0.6%Language:Java 0.4%Language:PHP 0.2%Language:C# 0.0%