# πŸ“Ž Artyom Bologov's Projects By Artyom Bologov Given my restless/bipolar nature, I'm starting lots of projectsβ€”all just to abandon them half a week after. Still, some of them are/were quite fun: ## Brainfuck Enterprise Solutions (#bes) BES is the company I'm a proud CEO of. Its products (all written in Brainfuck) include: OS.bf : a minimalist OS with a shell, file system, and a script engine. ed.bf : somewhat opinionated UNIX ed reimplementation. meta.bf : Turing-complete Brainfuck meta-interpreter. str.bf : a solid fully embeddable string manipulation library. bf.doc : guidelines for clear and readable Brainfuck documentation. bf.style : style guidelines for medium-to-huge BF codebases. Sade : optimizing compiler from Brainfuck to Lisp, just for the purpose of bootstrapping BF Enterprise Solutions' products. Reb : another shot at Brainfuck implementation, this time interpreted/transpiled to C and heavily regex-based. ## Atlas Engineer & Nyxt Work (#atlas-nyxt) Projects made as part of Nyxt browser work and abstracted from its code. History Tree: my Bachelor of Arts thesis idea of a browser-global history tree. NJSON: convenience library (not a parser!) for JSON indexing, validation, and discovery. Nsymbols: symbol listing and binding inspection library. Ndebug: custom (GUI too) debugger toolkit for CL. And Nyxt itself!: Lots of things: WebKitGTK interfacing, graphical object inspection, UI framework building. Like, REALLY LOTS OF THINGS . ## Lisp Libraries and Projects (#lisp-libs) Several Common Lisp projects and libraries around them. Projects: Graven Image: Portability library for better CLI/text interaction with the running image. Tripod: My polyglot blog engine I wrote about . Libraries. These are mainly built around the projects above, but often are chaotic: – Auto-generated Telegram Bot API bindings . – Trivial Toplevel Commands to define new REPL commands. – Trivial Toplevel Prompt for nicer prompts like `aartaka>`. – Trivial Time for code timing/benchmarking. – Trivial Inspect , a portable toolkit for object inspector construction. – cl-minifloats , Lisp implementation of (mostly 8-bit) minifloats. – libpd (Pure Data) bindings . – Cyrillic transliteration library . ## Turing Tarpits (#turing-tarpits) I'm into using the tech in ways not initially intented for this tech. While I'm not yet at that level in hardware, I certainly am deep enough in software tarpits: Brainfuck Enterprise Solution (above) <#bes>: The primary example of me going all-in with an esoteric tech and ending up with real tools built in it. advent-of-code-in-cl-loop : Solving Advent of Code 2021 only using Common Lisp `loop` macro. stdlambda : A Lispy standard library for Lambda Calculus, finally making this Turing tarpit a practical software environment. Lamber : My Lua/Wisp-like programming language based on pure Lambda Calculus and extending stdlambda with even more utilities. My Ed entries at RosettaCode : `ed` was not intended to be a general-purpose programming system, but here we are. Modal->ed compiler : Now that we talk about `ed`... And Wisp syntax preprocessor! : Wisp is an indentation-based syntax for Lisps, and I implemented with with a cursed set of regex. ## ed scripts and implementations (#ed) I like ed(1) for its simplicity and power. So it's only consequential that I try to implement it with anything I get my hands on. Like in Brainfuck , BASIC , or Modal . I also have a bunch of ed wrapper scripts and others' implementations: – Aed, my heavily customized ed – Xed, "execution"/scripting ed – oed, OpenBSD ed for compatibility tests. – and wed/slewsys ed as a more featureful ed fork. ## My Configs (#configs) Configs for everything: – Commmon Lisp + Readline with custom commands and prompt, terminal auto-completion, and Graven Image integration. – Guix System . – StumpWM with lots of apps, Binwarp mode , and Emacsy keybindings for any CUA app. – Emacs . – aed, my custom wrapper around ed(1) . – Nyxt browser . Abandoned yet still useful and exemplary. – My fork of Suckless Terminal . – My heavily-hardened and Emacsified fork of Surf, Suckless Browser . – Classic Vi (not Vim!) config for Lisp programming . – Laconia and Dark Atoll , my themes for the software above. Copyright 2022-2025 Artyom Bologov (aartaka). Any and all opinions listed here are my own and not representative of my employers; future, past and present.