Varun Ramesh
Aug 24, 2023
In this post, I describe how parser combinators can be used to parse recursive languages, as well as deal with operator precedence and associativity.
algebraic-expressions-using-parser-combinators
Extensions
Varun Ramesh
Jun 25, 2023
This post introduces parser combinators, a technique for building complex parsers through the composition of simple components.
intro-parser-combinators
Extensions
Varun Ramesh
May 6, 2023
ChatGPT is really good at roleplaying as strange and unusual characters with minimal prompting.
chatgpt-role-playing
Extensions
Varun Ramesh
Nov 14, 2022
Simple tips for beginners to level up their Python skills (with interactive code snippets).
simple-python-tips
Extensions
Varun Ramesh
Aug 22, 2018
A postmortem for Thermomorph, an Alien-inspired horror game.
thermomorph-postmortem
Extensions
Varun Ramesh
Jul 2, 2018
This is a postmortem for Proctor, the first of three horror games that I recently released.
proctor-postmortem
Extensions
Varun Ramesh
Apr 17, 2018
Use HTML5 video tags instead of animated GIFs.
loop-autoplay-muted
Extensions
Varun Ramesh
Mar 16, 2018
Integrating garbage collection into a C application was almost too easy.
the-boehm-gc-feels-like-cheating
Extensions
Varun Ramesh
Mar 15, 2018
Many languages distinguish between primitives on the stack and objects on the heap. Others only have objects, and thus require primitives to aways be boxed. It turns out you can get the best of both worlds.
no-more-primitives
Extensions
Varun Ramesh
Mar 12, 2018
As an experiment, I decided to allow all push notifications for a week.
i-allowed-all-web-push-notifications-for-a-week
Extensions
Varun Ramesh
Dec 26, 2017
Editing gameplay videos in Premiere requires that you re-encode, thus losing quality. Instead, you can use FFmpeg to edit losslessly.
editing-gameplay-videos-without-re-encoding-using-ffmpeg
Extensions
Varun Ramesh
Nov 2, 2017
My recent game projects have used a GameObject architecture that unifies Component-based GameObjects and Mixin-based inheritance.
unifying-component-based-gameobject-systems-and-mixin-based-inheritance
Extensions
Varun Ramesh
Oct 20, 2017
Lua is an awesome language, but it has some annoying features that have caused endless frustration for me.
lua-gotchas
Extensions
Varun Ramesh
Sep 5, 2017
This post describes a method for creating animations in games programmatically, while still retaining composability.
composable-animations
Extensions
Varun Ramesh
Sep 4, 2017
Some typecheckers understand dynamic type tests, thus avoiding downcasting.
understanding-dynamic-typechecks
Extensions
Varun Ramesh
Aug 19, 2017
Coroutines can either be stackless or stackful. The terminology is somewhat confusing.
stackless-vs-stackful-coroutines
Extensions
Varun Ramesh
Jun 7, 2017
A write-up for my CS 148 ray tracing image.
spaced-out-cs148-raytracing-project
Extensions
Varun Ramesh
Mar 30, 2017
When writing object-oriented code, you frequently want a constructor that takes in values and assigns them to object fields. Some languages reduce the repetition required for this.
constructor-argument-promotion
Extensions
Varun Ramesh
Mar 29, 2017
I made a mobile runner game for the CS194 class at Stanford.
runaway-robot-a-mobile-runner-game
Extensions
Varun Ramesh
Mar 28, 2017
When creating a static site, you can pull a page's modified date directly from git.
pulling-modified-date-from-git
Extensions
Varun Ramesh
Aug 29, 2014
Last weekend, I participated in Ludum Dare, a game jam where you make a game from scratch in under 48 hours.
blue-screen-ludum-dare-30-entry
Extensions
Varun Ramesh
Aug 17, 2014
The other day, I accidentally printed a ton of binary data to my terminal. Upon doing so, my computer started to beep incessantly.
ascii-bell-character
Extensions
Varun Ramesh
Aug 6, 2014
A snippet for a reloading server in bash.
simple-reloading-server-in-bash
Extensions
Varun Ramesh
Jul 20, 2014
A couple weeks ago, I took part in a game jam on itch.io called the AGDG Microgame Jam.
the-damned
Extensions
Varun Ramesh
Nov 29, 2013
WebGL games can use HTML/CSS for GUIs. It's a lot easier to use than most game engine UI frameworks.
a-perk-of-using-webgl
Extensions
Varun Ramesh
Nov 28, 2013
I write about some recent hackathon projects I worked on.
recent-hackathon-projects
Extensions
Varun Ramesh
Jul 23, 2013
Every year, my high school holds a canoe race, where students from the Engineering, Physics, and Calculus classes compete to design, build and race a Canoe over the span of two weeks.
designing-a-cardboard-canoe
Extensions