Publications and Talks

2024

  1. A Taxonomy of Program Comprehension Challenges in Decompiled Code, L. Dramko, J. Lacomis, E. J. Schwartz, C. Le Goues, and B. Vasilescu, in USENIX Security Symposium, 2024.
    PDF · BibTeX
    @inproceedings{Dramko2024,
      author = {Dramko, Luke and Lacomis, Jeremy and Schwartz, Edward J. and {Le~Goues}, Claire and Vasilescu, Bogdan},
      title = {A Taxonomy of Program Comprehension Challenges in Decompiled Code},
      booktitle = {USENIX Security Symposium},
      year = {2024},
      series = {USENIX}
    }
    

2023

  1. Automatically Annotating Decompiled Code with Meaningful Names and Types, J. Lacomis, PhD thesis, Carnegie Mellon University, 2023.
    PDF · BibTeX
    @phdthesis{LacomisThesis,
      author = {Lacomis, Jeremy},
      title = {Automatically Annotating Decompiled Code with Meaningful Names and Types},
      school = {Carnegie Mellon University},
      year = {2023},
      month = jun
    }
    

2022

  1. VarCLR: Variable Semantic Representation Pre-training via Contrastive Learning, Q. Chen, J. Lacomis, E. J. Schwartz, G. Neubig, B. Vasilescu, and C. Le Goues, in International Conference on Software Engineering, 2022.
    PDF · BibTeX
    @inproceedings{ChenVarCLR2022,
      author = {Chen, Qibin and Lacomis, Jeremy and Schwartz, Edward J. and Neubig, Graham and Vasilescu, Bogdan and {Le~Goues}, Claire},
      title = {{VarCLR}: {Variable} Semantic Representation Pre-training via Contrastive Learning},
      booktitle = {International Conference on Software Engineering},
      year = {2022},
      series = {ICSE}
    }
    

  2. Augmenting Decompiler Output with Learned Variable Names and Types, Q. Chen, J. Lacomis, E. J. Schwartz, C. Le Goues, G. Neubig, and B. Vasilescu, in USENIX Security Symposium, 2022.
    PDF · BibTeX
    @inproceedings{ChenDIRTY2022,
      author = {Chen, Qibin and Lacomis, Jeremy and Schwartz, Edward J. and {Le~Goues}, Claire and Neubig, Graham and Vasilescu, Bogdan},
      title = {Augmenting Decompiler Output with Learned Variable Names and Types},
      booktitle = {USENIX Security Symposium},
      year = {2022},
      series = {USENIX}
    }
    

  3. Learning to Superoptimize Real-World Programs, A. G. Shypula, P. Yin, J. Lacomis, C. Le Goues, E. J. Schwartz, and G. Neubig, in Deep Learning for Code Workshop, 2022.
    PDF · BibTeX
    @inproceedings{ShypulaSuperoptimization2022,
      author = {Shypula, Alexander G. and Yin, Pengcheng and Lacomis, Jeremy and {Le~Goues}, Claire and Schwartz, Edward J. and Neubig, Graham},
      title = {Learning to Superoptimize Real-World Programs},
      booktitle = {Deep Learning for Code Workshop},
      year = {2022},
      series = {DL4C}
    }
    

  4. DIRE and its Data: Neural Decompiled Variable Renamings with respect to Software Class, L. Dramko, J. Lacomis, P. Yin, E. J. Schwartz, M. Allamanis, G. Neubig, B. Vasilescu, and C. Le Goues, Transactions on Software Engineering and Methodology, 2022.
    BibTeX
    @article{DramkoDIREData2022,
      author = {Dramko, Luke and Lacomis, Jeremy and Yin, Pengcheng and Schwartz, Edward J. and Allamanis, Miltiadis and Neubig, Graham and Vasilescu, Bodan and {Le~Goues}, Claire},
      title = {DIRE and its Data: {N}eural Decompiled Variable Renamings with respect to Software Class},
      journal = {Transactions on Software Engineering and Methodology},
      year = {2022}
    }
    

2019

  1. Automatically Reducing Energy Consumption of Software, J. Lacomis, J. Dorn, W. Weimer, and S. Forrest, The Energetics of Computing in Life and Machines, 2019.
    PDF · BibTeX
    @incollection{LacomisAutomaticallyReducing2019,
      author = {Lacomis, Jeremy and Dorn, Jonathan and Weimer, Westley and Forrest, Stephanie},
      title = {Automatically Reducing Energy Consumption of Software},
      editor = {Wolpert, David H. and Kempes, Chris and Stadler, Peter F. and Grochow, Joshua A.},
      booktitle = {The Energetics of Computing in Life and Machines},
      publisher = {The SFI Press},
      year = {2019}
    }
    

  2. DIRE: A Neural Approach to Decompiled Identifier Naming, J. Lacomis, P. Yin, E. J. Schwartz, M. Allamanis, C. Le Goues, G. Neubig, and B. Vasilescu, in International Conference on Automated Software Engineering, 2019.
    PDF · Slides · Data · BibTeX
    @inproceedings{LacomisDIRE2019,
      author = {Lacomis, Jeremy and Yin, Pengcheng and Schwartz, Edward J. and Allamanis, Miltiadis and {Le~Goues}, Claire and Neubig, Graham and Vasilescu, Bogdan},
      title = {{DIRE}: {A} Neural Approach to Decompiled Identifier Naming},
      booktitle = {International Conference on Automated Software Engineering},
      year = {2019},
      series = {ASE}
    }
    

  3. DIRE: Renaming Variables in Decompiled Code with Neural Nets, J. Lacomis, in CactusCon, 2019.
    BibTeX
    @conference{LacomisCactusCon2019,
      author = {Lacomis, Jeremy},
      title = {DIRE: Renaming Variables in Decompiled Code with Neural Nets},
      booktitle = {CactusCon},
      year = {2019}
    }
    

2018

  1. Statistical Machine Translation is a Natural Fit for Identifier Renaming in Software Source Code, J. Lacomis, A. Jaffe, E. J. Schwartz, C. Le Goues, and B. Vasilescu, in Statistical Modeling of Natural Software Corpora, 2018 AAAI Workshop, 2018, pp. 771–774.
    PDF · BibTeX
    @inproceedings{LacomisSMTRenaming2018,
      author = {Lacomis, Jeremy and Jaffe, Alan and Schwartz, Edward J. and {Le~Goues}, Claire and Vasilescu, Bogdan},
      title = {Statistical Machine Translation is a Natural Fit for
                        Identifier Renaming in Software Source Code},
      booktitle = {Statistical Modeling of Natural Software Corpora, 2018 {AAAI} Workshop},
      year = {2018},
      month = feb,
      pages = {771--774}
    }
    

  2. Meaningful Variable Names for Decompiled Code: A Machine Translation Approach, A. Jaffe, J. Lacomis, E. J. Schwartz, C. Le Goues, and B. Vasilescu, in International Conference on Program Comprehension, 2018, pp. 20–30.
    PDF · BibTeX
    @inproceedings{JaffeDecompiledNames2019,
      author = {Jaffe, Alan and Lacomis, Jeremy and Schwartz, Edward J. and {Le~Goues}, Claire and Vasilescu, Bogdan},
      title = {Meaningful Variable Names for Decompiled Code: {A} Machine
                        Translation Approach},
      booktitle = {International Conference on Program Comprehension},
      year = {2018},
      month = may,
      series = {ICPC},
      pages = {20--30}
    }
    

  3. A Turing Test for Genetic Improvement, A. Afzal, J. Lacomis, C. Le Goues, and C. S. Timperley, in Genetic Improvement Workshop, 2018, pp. 17–18.
    PDF · BibTeX
    @inproceedings{AfzalTuringTest2018,
      author = {Afzal, Afsoon and Lacomis, Jeremy and {Le~Goues}, Claire and Timperley, Christopher S.},
      title = {A Turing Test for Genetic Improvement},
      booktitle = {Genetic Improvement Workshop},
      year = {2018},
      month = may,
      series = {GI},
      pages = {17--18}
    }
    

  4. Constraint-Guided Statistical Type Reconstruction for Decompilation, J. Lacomis, in In-Vivo Analytics for Big Software Quality, 2018.
    Slides · BibTeX
    @conference{LacomisTypeConstraints2018,
      author = {Lacomis, Jeremy},
      title = {Constraint-Guided Statistical Type Reconstruction for Decompilation},
      booktitle = {In-Vivo Analytics for Big Software Quality},
      year = {2018},
      month = sep
    }
    

2017

  1. Automatically Exploring Tradeoffs Between Software Output Fidelity and Energy Costs, J. Dorn, J. Lacomis, W. Weimer, and S. Forrest, Transactions on Software Engineering, vol. PP, Nov. 2017.
    PDF · BibTeX
    @article{DornPowerGAUGE2017,
      author = {Dorn, Jonathan and Lacomis, Jeremy and Weimer, Westley and Forrest, Stephanie},
      title = {Automatically Exploring Tradeoffs Between Software Output
                        Fidelity and Energy Costs},
      journal = {Transactions on Software Engineering},
      year = {2017},
      volume = {PP},
      month = nov
    }