Nafees Hassan

Computer Programmer, Interested in low level computing.


QScript is a Simple Scripting Language, written in the D Programming Language. The entire compiler pipeline (lexer, parser, code generation) has been written as part of the project. The compiler outputs bytecode which is executed using NaVM (see below). The goal is to be fast enough while also being simple and fun to write and read. Currently, it is being re-written under a redesigned spec. The new spec includes: modules public / private module members first class functions lambda functions reference data types compile time function execution conditional compilation metaprogramming

11 July, 2023 · 1 min · Nafees


NaVM is a library for creating simple Virtual Machines, intended for use with scripting languages. It was split from the VM created for QScript. It provides a text based byte code format, as well as a binary format, along with functionality to read/write programmatically.

11 July, 2023 · 1 min · Nafees


QUI is a Text User Interface library for the D Programming Language. It aims to provide a minimalistic set of interfaces to enable creation of widgets easily. It is built using Adam D. Ruppe’s terminal.d module, making it cross platform. Some of it’s key features: Object Oriented Mouse events Scrolling - nested scrolling too “FPS” limiting Need based rendering

11 July, 2023 · 1 min · Nafees


pngtext is a tool for hiding data inside pixel color data of a png image. It attempts to spread the data over as many pixels as possible, to preserve the image quality. It can be used as a library or as a standlone program. Also features a built in basic text editor for editing hidden text, built using QUI.

11 July, 2023 · 1 min · Nafees