Industry

Programming Language & Compiler

Year

2024

Client

Personal Project

Services

Full Stack Programming Language, Compiler, and Web Application

Description

Conso: A Consonant-Driven Programming Language Conso is a statically typed, C-like programming language designed to explore the boundaries of syntax and tokenization. Built during my third year of Computer Science, the language features a strict explicit typing system and structured syntax. Its most distinctive characteristic is its "consonant-only" keyword constraint (e.g., fnctn for function, strct for struct, whl for while), challenging traditional code readability while maintaining full logic-processing capabilities.

The Challenge: Engineering a Functional Compiler from Scratch The primary challenge was designing and implementing a robust compiler capable of handling lexical analysis, parsing, and code execution for a non-standard syntax. Developing a system that could accurately interpret a language with no vowels in its keywords required a deep understanding of Context-Free Grammars (CFG) and the creation of a custom Lexer and Parser. Additionally, providing a seamless environment for users to write and test this unique language required building an integrated Web IDE to lower the barrier to entry for experimentation.

The Solution: Full-Stack Compiler and Web IDE I engineered the Conso Compiler using Python and FastAPI, implementing a complete pipeline from tokenization to execution. To make the language accessible, I developed the Conso Web IDE using React and the Monaco Editor, creating a professional-grade browser environment. The backend utilizes Node.js, Express.js, and WebSockets for real-time communication, while the entire execution environment is containerized using Docker and GCC to ensure secure and consistent code compilation.


  • Robust Full-Stack Architecture: Integrated a React-based frontend with a FastAPI and Node.js backend, leveraging WebSockets for low-latency code execution and feedback.

  • System-Level Engineering: Utilized GCC for low-level compilation and Docker for containerization, ensuring a sandboxed and scalable environment for running custom scripts.

  • Complete Compiler Pipeline: Successfully architected a custom Lexer, Parser, and Interpreter capable of processing a unique, statically typed grammar with 100% consonant-based keywords.

  • Zero-Install Development: Developed a web-based IDE featuring the Monaco Editor, enabling instant code execution and eliminating the need for local environment setup for new users.