C++ engineer.
Complex systems,
made clear.

Deep in the system.
Clear at the surface.

Suraj Adhikari in the Himalayas of Nepal

I build software from the inside out—starting with how it works, ending with how it feels.

I’m Suraj, a C++ and software engineer based in Kathmandu. My work moves between systems, networking, compilers, and interfaces, wherever careful engineering can make complexity feel simple.

Right now, I’m building Sajilo: my own programming language and compiler, one token, grammar rule, and syntax tree at a time.

Start a conversation

What I do

Where Performance
meets Precision.

Build

Robust software with clear ownership.

Understand

Low-level concepts, followed deeply.

Measure

Performance proven with evidence.

Refine

Complex systems made simple to use.

Selected work / 04

Code with a
point of view.

sajilo / parser.cppautomatic trace
INPUTsource.sajilo
01suru() -> deu(int) {02  name = sun "What is your name?"03  jaba name == "Suraj" {04    bol "Welcome Suraj!"05  } natra {06    bol "Hello " + name07  }08  laijau value;09}
STAGE 01IMPLEMENTED

The lexer classifies the source.

KW_SURUTK_LPARENTK_RPARENTK_ARROWKW_DEUTYPE_INTIDENTIFIER(name)KW_SUNKW_JABAOP_EQUAL_EQUAL
01TOKENIZATIONIMPLEMENTEDkeywords · operators · literals
02PARSER COREIMPLEMENTEDlookahead · match · expect
03FUNCTION GRAMMARIMPLEMENTEDsignature · return type · body
04EXPRESSION GRAMMARIN PROGRESSprimary · unary · precedence
05AST + CODEGENNEXTowned nodes · scopes · lowering

Have something good in mind?

Make it
mean something.

LET’S TALK

Thoughtful projects. Interesting problems.
People who care about what they make.