2024
Principled and practical static analysis for Python: Weakest precondition inference of hyperparameter constraints.
Softw. Pract. Exp., March, 2024
PoTo: A Hybrid Andersen's Points-to Analysis for Python.
CoRR, 2024
TabSketchFM: Sketch-based Tabular Representation Learning for Data Discovery over Data Lakes.
CoRR, 2024
Out of style: Misadventures with LLMs and code style transfer.
CoRR, 2024
2023
DataRinse: Semantic Transforms for Data preparation based on Code Mining.
Proc. VLDB Endow., 2023
LakeBench: Benchmarks for Data Discovery over Data Lakes.
CoRR, 2023
Serenity: Library Based Python Code Analysis for Code Completion and Automated Machine Learning.
CoRR, 2023
SemFORMS: Automatic Generation of Semantic Transforms By Mining Data Science Code.
Proceedings of the Thirty-Second International Joint Conference on Artificial Intelligence, 2023
Model Generation For Java Frameworks.
Proceedings of the IEEE Conference on Software Testing, Verification and Validation, 2023
2022
A Scalable AutoML Approach Based on Graph Neural Networks.
Proc. VLDB Endow., 2022
Automatically Debugging AutoML Pipelines using Maro: ML Automated Remediation Oracle (Extended Version).
CoRR, 2022
Large Scale Generation of Labeled Type Data for Python.
CoRR, 2022
Program analysis using WALA (tutorial).
Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, 2022
Automatically debugging AutoML pipelines using maro: ML automated remediation oracle.
Proceedings of the MAPS@PLDI 2022: 6th ACM SIGPLAN International Symposium on Machine Programming, 2022
The raise of machine learning hyperparameter constraints in Python code.
Proceedings of the ISSTA '22: 31st ACM SIGSOFT International Symposium on Software Testing and Analysis, Virtual Event, South Korea, July 18, 2022
Can Machines Read Coding Manuals Yet? - A Benchmark for Building Better Language Models for Code Understanding.
Proceedings of the Thirty-Sixth AAAI Conference on Artificial Intelligence, 2022
2021
A Study of Call Graph Construction for JVM-Hosted Languages.
IEEE Trans. Software Eng., 2021
Project CodeNet: A Large-Scale AI for Code Dataset for Learning a Diversity of Coding Tasks.
,
,
,
,
,
,
,
,
,
,
,
,
,
CoRR, 2021
CodeNet: A Large-Scale AI for Code Dataset for Learning a Diversity of Coding Tasks.
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
Proceedings of the Neural Information Processing Systems Track on Datasets and Benchmarks 1, 2021
A Toolkit for Generating Code Knowledge Graphs.
Proceedings of the K-CAP '21: Knowledge Capture Conference, 2021
2020
Static Analysis of Shape in TensorFlow Programs (Artifact).
Dagstuhl Artifacts Ser., 2020
Graph4Code: A Machine Interpretable Knowledge Graph for Code.
CoRR, 2020
SWAN: a static analysis framework for swift.
Proceedings of the ESEC/FSE '20: 28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, 2020
A Demonstration of CodeBreaker: A Machine Interpretable Knowledge Graph for Code.
Proceedings of the ISWC 2020 Demos and Industry Tracks: From Novel Ideas to Industrial Practice co-located with 19th International Semantic Web Conference (ISWC 2020), 2020
Efficient handling of string-number conversion.
Proceedings of the 41st ACM SIGPLAN International Conference on Programming Language Design and Implementation, 2020
Static Analysis of Shape in TensorFlow Programs.
Proceedings of the 34th European Conference on Object-Oriented Programming, 2020
Python 3 types in the wild: a tale of two type systems.
Proceedings of the DLS 2020: Proceedings of the 16th ACM SIGPLAN International Symposium on Dynamic Languages, 2020
2019
QED: Out-of-the-Box Datasets for SPARQL Query Evaluation.
Proceedings of the Semantic Web - 16th International Conference, 2019
MagpieBridge: A General Approach to Integrating Static Analyses into IDEs and Editors (Tool Insights Paper).
Proceedings of the 33rd European Conference on Object-Oriented Programming, 2019
2018
Merging datasets through deep learning.
CoRR, 2018
Ariadne: Analysis for Machine Learning Program.
CoRR, 2018
Automatically Extracting Web API Specifications from HTML Documentation.
CoRR, 2018
SecureMR: secure mapreduce using homomorphic encryption and program partitioning.
Proceedings of the 23rd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, 2018
Symbolic Execution for JavaScript.
Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming, 2018
Ariadne: analysis for machine learning programs.
Proceedings of the 2nd ACM SIGPLAN International Workshop on Machine Learning and Programming Languages, 2018
Protecting chatbots from toxic content.
Proceedings of the 2018 ACM SIGPLAN International Symposium on New Ideas, 2018
Towards extracting web API specifications from documentation.
Proceedings of the 15th International Conference on Mining Software Repositories, 2018
SecureMR: secure mapreduce computation using homomorphic encryption and program partitioning.
Proceedings of the 5th Annual Symposium and Bootcamp on Hot Topics in the Science of Security, 2018
Generating Permission-Based Security Policies.
Proceedings of the 5th International Conference on Dependable Systems and Their Applications, 2018
2017
Z3str2: an efficient solver for strings, regular expressions, and length constraints.
Formal Methods Syst. Des., 2017
Who you gonna call?: analyzing web requests in Android applications.
Proceedings of the 14th International Conference on Mining Software Repositories, 2017
Opportunities in Software Engineering Research for Web API Consumption.
Proceedings of the 1st IEEE/ACM International Workshop on API Usage and Evolution, 2017
Statically checking web API requests in JavaScript.
Proceedings of the 39th International Conference on Software Engineering, 2017
2016
Synergies among Testing, Verification, and Repair for Concurrent Programs (Dagstuhl Seminar 16201).
Dagstuhl Reports, 2016
An Executable Specification for SPARQL.
Proceedings of the Web Information Systems Engineering - WISE 2016, 2016
Revamping JavaScript static analysis via localization and remediation of root causes of imprecision.
Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2016
Extending SPARQL for Data Analytic Tasks.
Proceedings of the Semantic Web - ISWC 2016, 2016
JCrypt: Towards Computation over Encrypted Data.
Proceedings of the 13th International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools, Lugano, Switzerland, August 29, 2016
Integrating Asynchronous Task Parallelism and Data-centric Atomicity.
Proceedings of the 13th International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools, Lugano, Switzerland, August 29, 2016
HybriDroid: static analysis framework for Android hybrid applications.
Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, 2016
2015
Type-Based Call Graph Construction Algorithms for Scala.
ACM Trans. Softw. Eng. Methodol., 2015
Program analysis for mobile: how and why to run WALA on your phone.
Proceedings of the 3rd International Workshop on Mobile Development Lifecycle, 2015
Practically Tunable Static Analysis Framework for Large-Scale JavaScript Applications (T).
Proceedings of the 30th IEEE/ACM International Conference on Automated Software Engineering, 2015
Scalable and precise taint analysis for Android.
Proceedings of the 2015 International Symposium on Software Testing and Analysis, 2015
Effective Search-Space Pruning for Solvers of String Equations, Regular Expressions and Length Constraints.
Proceedings of the Computer Aided Verification - 27th International Conference, 2015
2014
An Offline Optimal SPARQL Query Planning Approach to Evaluate Online Heuristic Planners.
Proceedings of the Web Information Systems Engineering - WISE 2014, 2014
To Dream the Impossible Dream: Toward Security Analysis for JavaScript.
Proceedings of the Ninth Workshop on Programming Languages and Analysis for Security, 2014
Constructing Call Graphs of Scala Programs.
Proceedings of the ECOOP 2014 - Object-Oriented Programming - 28th European Conference, Uppsala, Sweden, July 28, 2014
2013
Alias Analysis for Object-Oriented Programs.
Proceedings of the Aliasing in Object-Oriented Programming. Types, 2013
Finding incorrect compositions of atomicity.
Proceedings of the Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, 2013
Building an efficient RDF store over a relational database.
Proceedings of the ACM SIGMOD International Conference on Management of Data, 2013
Dynamic determinacy analysis.
Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, 2013
CLAP: recording local executions to reproduce concurrency failures.
Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, 2013
Detecting deadlock in programs with data-centric synchronization.
Proceedings of the 35th International Conference on Software Engineering, 2013
Efficient construction of approximate call graphs for JavaScript IDE services.
Proceedings of the 35th International Conference on Software Engineering, 2013
2012
Fault Localization for Dynamic Web Applications.
IEEE Trans. Software Eng., 2012
A data-centric approach to synchronization.
ACM Trans. Program. Lang. Syst., 2012
Race detection for web applications.
Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, 2012
Correlation Tracking for Points-To Analysis of JavaScript.
Proceedings of the ECOOP 2012 - Object-Oriented Programming, 2012
2011
Finding concurrency-related bugs using random isolation.
Int. J. Softw. Tools Technol. Transf., 2011
Marathon: Detecting Atomic-Set Serializability Violations with Conflict Graphs.
Proceedings of the Runtime Verification - Second International Conference, 2011
Saving the world wide web from vulnerable JavaScript.
Proceedings of the 20th International Symposium on Software Testing and Analysis, 2011
Refactoring Java programs for flexible locking.
Proceedings of the 33rd International Conference on Software Engineering, 2011
A framework for automated testing of javascript web applications.
Proceedings of the 33rd International Conference on Software Engineering, 2011
2010
Finding Bugs in Web Applications Using Dynamic Test Generation and Explicit-State Model Checking.
IEEE Trans. Software Eng., 2010
MemSAT: checking axiomatic specifications of memory models.
Proceedings of the 2010 ACM SIGPLAN Conference on Programming Language Design and Implementation, 2010
Directed test generation for effective fault localization.
Proceedings of the Nineteenth International Symposium on Software Testing and Analysis, 2010
Practical fault localization for dynamic web applications.
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, 2010
A Type System for Data-Centric Synchronization.
Proceedings of the ECOOP 2010, 2010
Correct Refactoring of Concurrent Java Code.
Proceedings of the ECOOP 2010, 2010
2009
Scalable highly expressive reasoner (SHER).
J. Web Semant., 2009
Extracting Enterprise Vocabularies Using Linked Open Data.
Proceedings of the Semantic Web - ISWC 2009, 8th International Semantic Web Conference, 2009
Modular string-sensitive permission analysis with demand-driven precision.
Proceedings of the 31st International Conference on Software Engineering, 2009
Compile-Time Analysis and Specialization of Clocks in Concurrent Programs.
Proceedings of the Compiler Construction, 18th International Conference, 2009
2008
Scalable Grounded Conjunctive Query Evaluation over Large and Expressive Knowledge Bases.
Proceedings of the Semantic Web - ISWC 2008, 7th International Semantic Web Conference, 2008
Finding bugs in dynamic web applications.
Proceedings of the ACM/SIGSOFT International Symposium on Software Testing and Analysis, 2008
Dynamic detection of atomic-set-serializability violations.
Proceedings of the 30th International Conference on Software Engineering (ICSE 2008), 2008
2007
Finding bugs efficiently with a SAT solver.
Proceedings of the 6th joint meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2007
Matching Patient Records to Clinical Trials Using Ontologies.
Proceedings of the Semantic Web, 2007
Scalable Cleanup of Information Extraction Data Using Ontologies.
Proceedings of the Semantic Web, 2007
The first workshop on programming languages and integrated development environments (PLIDE).
Proceedings of the Companion to the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2007
Declarative Object Identity Using Relation Types.
Proceedings of the ECOOP 2007 - Object-Oriented Programming, 21st European Conference, Berlin, Germany, July 30, 2007
Scalable Semantic Retrieval through Summarization and Refinement.
Proceedings of the Twenty-Second AAAI Conference on Artificial Intelligence, 2007
2006
Associating synchronization constraints with data in an object-oriented language.
Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2006
SAFARI: a meta-tooling framework for generating language-specific IDE's.
Proceedings of the Companion to the 21th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2006
2005
The Jikes Research Virtual Machine project: Building an open-source research community.
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
IBM Syst. J., 2005
Efficiently Refactoring Java Applications to Use Generic Libraries.
Proceedings of the ECOOP 2005, 2005
2004
Validating structural properties of nested objects.
Proceedings of the Companion to the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2004
Customization of Java Library Classes Using Type Constraints and Profile Information.
Proceedings of the ECOOP 2004, 2004
2002
Experiences Porting the Jikes RVM to Linux/IA32.
Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium, 2002
2001
High-Performance Scalable Java Virtual Machines.
Proceedings of the High Performance Computing - HiPC 2001, 8th International Conference, 2001
2000
An automatic object inlining optimization and its evaluation.
Proceedings of the 2000 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2000
1998
Evaluating High Level Parallel Programming Support for Irregular Applications in ICC++.
Softw. Pract. Exp., 1998
An Evaluation of Automatic Object Inline Allocation Techniques.
Proceedings of the 1998 ACM SIGPLAN Conference on Object-Oriented Programming Systems, 1998
1997
Automatic Inline Allocation of Objects.
Proceedings of the ACM SIGPLAN '97 Conference on Programming Language Design and Implementation (PLDI), 1997
Evaluation High Level Parallel Programming Support for Irregular Applications in ICC++.
Proceedings of the Scientific Computing in Object-Oriented Parallel Environments, 1997
Supporting High Level Programming with High Performance: The Illinois Concert Syste.
Proceedings of the 1997 Workshop on High-Level Programming Models and Supportive Environments (HIPS '97), 1997
1996
ICC++-AC++ Dialect for High Performance Parallel Computing.
Proceedings of the Object Technologies for Advanced Software, 1996
1994
A Case Study in Irregular Parallel Programming.
Proceedings of the Specification of Parallel Algorithms, 1994