Research Intern
email: purva.chaudhari02@gmail.com
Education: Computer Science, Vishwakarma Institute of Technology
Completed project:
Enhance the incremental compilation error recovery in clang and clang-repl
The Clang compiler is part of the LLVM compiler infrastructure and
supports various languages such as C, C++, ObjC and ObjC++. Advancements
in JIT infstructure and usability of Clang libriries in LLVM has enabled
research into processing C++. It has been challenging to include
incremental compilation and fitting compile time optimizations into a
more dynamic environment. Incremental compilation pipelines process code
chunk-by-chunk by building an ever-growing translation unit. Code is
then lowered into the LLVM IR and subsequently run by the LLVM JIT. The
incremental compilation mode is used by the interactive C++ interpreter,
Cling, initially developed to enable interactive high-energy physics
analysis in a C++ environment. Clang-repl is a new-tool incroporated in
LLVM ecosystem by residesigning parts of Cling in Clang mainline. The
project aims at enhancing the error recovery when users type C++ at the
prompt of clang-repl.
Project Proposal: URL
Mentors: Vassil Vassilev, David Lange
Completed project:
Reduce boost dependencies in CMSSW
This project has the objective to reduce CMSSW technical debt by finding
and replacing boost dependencies that have an equivalent solution in
standard C++. Reducing boost dependencies helps us create more
lightweight boost clang modules for upcoming c++20. This also reduces
the amount of headers that we need to work on to be able to use c++20
clang modules.
Project Proposal: URL
Project Reports: URL
Mentors: Vassil Vassilev, David Lange