Posts by Abhinav Sarkar

Subscribe
Archives
May 2, 2023

New post on abhinavsarkar.net: Interesting Links for April 2023

Interesting Links for April 2023

Here are some interesting things I read on the internet in April 2023:

Haskell

  • Pedagogical Downsides of Haskell
    Why teaching Haskell is hard.

Nix

  • Bazel and Nix: A Migration Experience
    Integrating Nix with Bazel for dependency management.

  • Building 15-year-old software with Nix
    How to build old software with Nix.

  • Stopping evaluation from blocking in Nix
    How to stop Nix from blocking when evaluating an expression

Programming Languages Theory

  • Compiling a functional language to LLVM, part 2
    Compiling a functional language to LLVM: adding support for conditionals.

  • Deep recursion with coroutines
    How to do deep recursion with coroutines in Kotlin without blowing the stack.

  • Design of the Austral Compiler
    Complete description of the design of the Austral compiler.

  • Every type is defined by its intro and elim forms
    Every type is defined by how we construct it and how we deconstruct it.

  • Kalyn: a self-hosting compiler for x86-64
    Complete description of a self-hosting compiler for x86-64.

  • On Recursion, Continuations and Trampolines
    Implementing tail recursion using Continuation Passing Style and trampolines.

  • Reasonable Bootstrap
    A better way to bootstrap a compiler.

  • Scripting Objects without Trash Day
    Survey of scripting languages without garbage collection.

Reverse Engineering

  • Compromising Garmin’s Sport Watches: A Deep Dive into GarminOS and its MonkeyC Virtual Machine
    Reverse engineering GarminOS and its MonkeyC VM to find vulnerabilities.

  • How I Hacked Google App Engine: Anatomy of a Java Bytecode Exploit
    Story of a Java bytecode exploit that allowed running arbitrary code on Google App Engine.

Programming

  • All you need is data and functions
    Replacing traits with data and functions.

  • Animating Text Art in JavaScript
    How to animate text art in JavaScript.

  • Make invalid states representable
    Making invalid states representable to provide better error messages.

Miscellaneous

  • Effective Spaced Repetition
    Strategies for effective spaced repetition.

  • Erasing at the blackboard
    Better ways to write code for a book.

Like, share, or comment on this post on Mastodon.

Don't miss what's next. Subscribe to Posts by Abhinav Sarkar:
GitHub
This email brought to you by Buttondown, the easiest way to start and grow your newsletter.