Projects

Zahak Chess Engine

A chess engine, that plays chess like a grand master and is living online on LiChess under zahak_engine name. The code can be found here.


Greenish

A monitoring tool to monitor existence (or absence?) of data. It is currently used by big companies like Samsung Ads The code can be found here.


An SMTP daemon to be used with NeoMutt/Mutt

An SMTP daemon to facilitate working with encrypted passwords, meant to be used with E-mail clients with pluggable SMTP clients. can be found here.


The maven plugin for ENSIME

A plugin to generate the config files for ENSIME. The repo can be found here.


Wartremover and Wartremover-contrib

I contribute (mainly fix the nasty bugs) to the said projects, which are together a flexible Scala code linting tool. Both repos can be found here and here.


Sana

An extensible compiler framework written in Scala. Sana aims to be both fully modular in a sense that removing a new language component should be as easy as adding a new one, in a type safe manner. Sana implements ``languages à la carte'' which is proposed by Amanj Sherwany and Nate Nystrom. Among other languages, Sana implements a compiler for Java 1.0. The project page is here.


Piuma

A refactoring library for the Scala compiler. Piuma is framework that provides various abstractions to easily manipulate Scala's ASTs. The project page is here.


Lap Timer

A simple, modern yet functional Android App for measuring lap/split times. It can be downloaded from Google Play Store.
This project is open source, and its source code is here.


JWrapper

A very simple Scala script to automatically wrap Java statements with the main method and run it. The script can be found here.
You need to unzip it in order to use it. You also need Scala for running this script.


Mina

Implementing HPE (Hybrid Partial Evaluation) in Scala and for Scala. It is more or less a direct port from Civet for Java. The plugin name is mina The name of the plugin is read like /mi:na:/, which is a Kurdish name of Forget-me-not flower. The project can be found here.


The Loci Plugin

Loci is a pluggable type checker, helps programmers to check the correctness of the thread-locality in their programs. It uses a simple statically checkable set of annotations.
Loci is an open source program and licensed under GPLv3.0. The source code is publicly available here. It started as a Master thesis at Uppsala University by me and as of today, I am its only developer. The first version of Loci (version 0.1 which is also the latest) was out on 28th Mar 2011, and version 0.2 is under development. Finally, the project's wiki page is here and its homepage is here.