Miguel Targa is a software engineer and reverse engineer with over a decade in the industry. He is in Google's Bug Hunters Hall of Fame for finding security vulnerabilities and helping fix them, and he created TargaScript, a programming language with its own compiler, bytecode virtual machine and WebAssembly runtime. His personal site, targa.me, is an interactive terminal written in TargaScript.
Born in Brazil, Miguel moved to the United States at 15. Binary analysis, security research and low-level programming are where he has the most fun.
Highlights
Listed in Google's Bug Hunters Hall of Fame for finding security vulnerabilities and helping fix them.
Created TargaScript, a programming language with a compiler, a bytecode virtual machine, a WebAssembly runtime, a formatter, a test runner, a language server and a playground written in the language itself.
Wrote targa.me in TargaScript: an interactive terminal with a virtual filesystem, over 150 commands and a small language model that runs in the browser.
Over a decade in the industry, working across Go, Python, TypeScript, JavaScript, Kotlin, C#, Java, PHP, Delphi and CFML, on .NET, Android, Lucee and ESP32 hardware.
Started reading other people's code in Delphi and Pascal at 12; how things work under the hood is still what drives him.
Writes about peer-to-peer networking, with runnable Rust code, and builds hardware projects like kiddo, a storytelling device for kids.
TargaScript
If TypeScript can be rewritten in Go, why not build a language in it? TargaScript is a small, modern scripting language: pipes, pattern matching, structs and enums, destructuring and top-level await, with a formatter, a test runner, a web server and editor support built in. A compiler turns programs into bytecode for a virtual machine, which runs the same in the terminal and, compiled to WebAssembly, in web pages. This site is written in it. Try it at script.targa.me, a playground also written in TargaScript. Inspired by "Writing An Interpreter In Go".
Runs from one command-line binary, in web pages from a WebAssembly runtime of about 200 KB compressed with a plain <script type="text/targascript"> tag, and inside Go programs.
Modern syntax: the pipe operator |>, pattern matching with match, structs and enums, destructuring, string interpolation, ?. and ??, and top-level await.
A compiler to bytecode and a register-based virtual machine, with the same behavior in the terminal and in the browser.
The tools are built in: a formatter, a checker, a test runner, a web server, a REPL, a language server, a VS Code extension and targascript build, which makes a program into one executable.
Errors that help: they point at the exact spot, suggest the right name for a typo and translate habits from other languages, like list.push(x) to insert.
The playground at script.targa.me, and this website, are written in TargaScript.
TargaScriptGo Miguel's programming language, described above.
P2PRust, Portuguese A written series about how peer-to-peer networks actually work, built from experiments and personal curiosity. Each article ships with runnable Rust code.
kiddoC, ESP32 A fun, interactive storytelling device for kids built on a Cheap Yellow Display (ESP32 with a touchscreen).
TelegramBlocklyJavaScript Create Telegram bots by snapping blocks together instead of writing code. A visual programming environment on top of Blockly.
SSH-ControlTypeScript Manage and open SSH connections without leaving VS Code.