
Current Position: Assistant Professor of Computer Science at Commonwealth University of Pennsylvania.
Education: PhD in Computer Science from Northeastern University (NEU PRL, 2023).
Contacts: apelenit@commonwealthu.edu if you’re my student, and a@pelenitsyn.top otherwise.
Teaching (Fall 2026)
- CMSC 120: OOP in Java (MW, 2–3:50 PM, Sutliff 105)
- CMSC 230: Advanced Java (MW, 9–10:50 PM, Sutliff 106)
- CMSC 240: Parallel Processing in C (TuTh, 12:30–1:45 PM, Ben Franklin 103)
- Consultations: M 11 AM–12 PM, Tu 2–4 PM, W 11 AM–12 PM, Th 2–3 PM
default is in person (235 BFH); online is an option (Zoom), but email me beforehand; want a slot for sure? — book one through CU Succeed
Life schedule is available here. Teaching history is in my CV.
Latest News (all news)
- Aug 2026: Our paper on composable abstractions for sparse matrix computation has been accepted to CGO ’27. Congrats to Pratyush, who did the heavy lifting!
- Jun 2026: Our paper on rethinking collision detection on GPU ray-tracing architecture has been accepted to ICS ’26. Congrats to Durga, who did the heavy lifting!
- Mar 2026: Accepted an offer from Commonwealth University of Pennsylvania to start as a tenure-track Assistant Professor in Fall 2026
Research
I am broadly interested in programming languages and compilers with an angle to performance assurance. The central motif of my research has been enabling efficient high-level programming whether through types, memory layouts, or utilizing modern hardware. My professional experience is laid out in my Curriculum Vitæ, and my publications are listed below and on Google Scholar.
Research Bio
While on postdoc with Milind at Purdue (2023–now), I am looking into making irregular computations (tree traversals) more efficient via compilation or algorithm design for recent hardware. Our main topics are:
- functional programming with densely represented datatypes with the Gibbon compiler (e.g. Marmoset (ECOOP ’24) and Gibbon-GC (ISMM’24)),
- compilers for sparse tensors computations (e.g. SparseAuto (OOPSLA’24)),
- general-purpose computations on ray-tracing hardware (e.g. Arkade (ICS’24) — best paper award).
During my PhD at Northeastern (2018–2023) and RA at Czech Technical University (2017–2018), I was assessing the design and implementation of the Julia programming language (OOPSLA ’18, OOPSLA ’21, VMIL ’23). I’m still looking into Julia’s notion of type stability — the topic of my PhD dissertation.
During my teaching appointment at SFedU (2011–2016), I was working on generic programming techniques (PCS’15) and adviced students on topics in functional programming: datatype-generic programming (TFP’18 presentation and draft), monads for structuring effects (TMPA’17), linear types for expressing resource management and quantum computing.
During my graduate studies at SFedU (2007–2012, MSc in 2009), I worked on improving software designs for computer algebra and error-correcting codes in C++ using generic and metaprogramming (Prikl.Inf.’11, in Russian).
Publications
-
CGO '27: Bring Your Own Formats and Kernels: Composable Abstractions for Sparse Matrix Computation (preprint)
Pratyush Das, Amirhossein Basareh, Artem Pelenitsyn, Kirshanthan Sundararajah, Milind Kulkarni, Ben Delaware -
ICS '26: Rethinking Collision Detection on GPU Ray Tracing Architecture
Durga Keerthi Mandarapu, Isaac Fuksman, Artem Pelenitsyn, Gilbert Bernstein, Milind Kulkarni -
PPoPP '25: RT-BarnesHut: Accelerating Barnes-Hut Using Ray-Tracing Hardware
Vani Nagarajan, Rohan Gangaraju, Kirshanthan Sundararajah, Artem Pelenitsyn, Milind Kulkarni -
OOPSLA '24: SparseAuto: An Auto-scheduler for Sparse Tensor Computations using Recursive Loop Nest Restructuring
Adhitha Dias, Logan Anderson, Kirshanthan Sundararajah, Artem Pelenitsyn, Milind Kulkarni -
ECOOP '24: Optimizing Layout of Recursive Datatypes with Marmoset: Or, Algorithms + Data Layouts = Efficient Programs
Vidush Singhal, Chaitanya Koparkar, Joseph Zullo, Artem Pelenitsyn, Michael Vollmer, Mike Rainey, Ryan Newton, Milind Kulkarni -
ICS '24: Arkade: k-Nearest Neighbor Search With Non-Euclidean Distances using GPU Ray Tracing — Best Paper Award
Durga Keerthi Mandarapu, Vani Nagarajan, Artem Pelenitsyn, Milind Kulkarni -
ISMM '24: Garbage Collection for Mostly Serialized Heaps
Chaitanya S. Koparkar, Vidush Singhal, Aditya Gupta, Mike Rainey, Michael Vollmer, Artem Pelenitsyn, Sam Tobin-Hochstadt, Milind Kulkarni, Ryan R. Newton -
VMIL '23: Approximating Type Stability in the Julia JIT (Work in Progress) [pdf]
Artem Pelenitsyn -
OOPSLA '21: Type stability in Julia: avoiding performance pathologies in JIT compilation
Artem Pelenitsyn, Julia Belyakova, Benjamin Chung, Ross Tate, Jan Vitek -
OOPSLA '18: Julia subtyping: a rational reconstruction
Francesco Zappa Nardelli, Julia Belyakova, Artem Pelenitsyn, Benjamin Chung, Jeff Bezanson, Jan Vitek -
TMPA '17: Functional Parser of Markdown Language Based on Monad Combining and Monoidal Source Stream Representation
Georgy Lukyanov, Artem Pelenitsyn -
PCS '15: Associated types and constraint propagation for generic programming in Scala
Artem Pelenitsyn
Programming
I’m passionate about functional programming and Haskell in particular. I have been using Haskell now and then since about 2011. Lately, my two main Haskell-related endeavors are:
- maintaining the Cabal library and build tool for Haskell,
- maintaining a community edition of the popular Haskell textbook Learn You a Haskell for Great Good!
My past contributions to the Haskell ecosystem include patching GHC, the main Haskell compiler, and developing a prototype bridge between GHC and the Bazel build system during my internship at Tweag.
More technical interests
More generally, I’m interested in programming (or, more generally, “software”) languages as they pertain to software and systems, including
- programming languages’ ecosystems (especially, Haskell and Julia ones),
- build systems, such as Cabal and Bazel, and software package managers, especially the Nix package manager and NixOS,
- verified software via interactive theorem provers and dependent types, such as Coq, Agda, and Idris,
- reproducible research and related virtualization and containerization technologies (Docker, etc.),
- modal editing (in the spirit of
vi) and (Doom) Emacs, Linux and Open Source Software.