Conso
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.

