Projects.
Code Character
It is a strategy-based programming game where you control troops in a turn-based game with the code you write in one of the multiple programming languages (C++, Python, Java) available in the game. Worked on the implementation of the game simulator(C++) and on the game driver(Rust) which uses many low level concepts such as SPMC/MPMC channels, IPC, process management, etc.
Par_incr
A library for incremental computation with support for parallelism in OCaml. Other similar libraries lack parallelism constructs. The work is based on the paper ["Efficient Parallel Self-Adjusting Computation"](https://drive.google.com/file/d/130-sCY1YPzo4j3YAJ7EL9-MflK0l8RmJ/view?pli=1)
Enma
Enma is a toy programming language written in C++ and OCaml. It has support for primary data types Number, Boolean, and String and also has a uni-directional typechecker. The language can be transpiled to readable C++ code as well as compiled to bytecode. The bytecode emulator is written in OCaml.
Cpparsec
It is a parser combinator libray written in C++, inspired by Haskell’s parsec. It is implemented using modern C++ with extensive use of lambda functions, variadics, etc.
Risp
Risp is a scheme interpreter written in Rust. It only implements a small subset of the language, with support for two primitive data types: bool and numbers. It has a few built-in functions for different numeric and list transformation operations as well as support for recursion.
LruCache
It is a library for automatic memoization of function call written in C++. It is inspired by python's lru_cache decorator.
Pragyan CTF 2021
Created challenges for Binary Exploitation and Reversing category, which included writing a small custom memory allocator, reversing a highly optimized vectorized binary file and other common vulnerabilities.