They might be programs
Archives
  • Partial evaluation of fat languages

    Apr 28, 2014 • partial evaluation, programming languages

    Language theory has always been my favorite part of computer science, and recently I have been playing around with partial evaluation. Creating an optimal, self-applicable specializer is really tricky. I thought that I was helping myself by working in a very minimal language, but this turned out to be counter-productive. It is easier to write a specializer in a language that has a large number of unnecessary primitives. The additional complexity of each primitive is very localized: just add another case to the giant switch statement, which does nothing more than “lift” the container language’s primitive into the contained language, and is a small price to pay for easing the coding of the rest of the specializer.

    Read on →

  • Automatic redis, part two: sorting and data structures

    Jan 25, 2014 • artificial intelligence, automatic redis

    This post is part of a sequence I am calling automatic redis, which is my attempt to solve the cache invalidation problem.

    Read on →

  • Automatic redis, part one: inserts and cache key extraction

    Nov 23, 2013 • artificial intelligence, automatic redis

    This post is part of a sequence I am calling automatic redis, which is my attempt to solve the cache invalidation problem.

    Read on →

  • Rubber-duck logging

    Oct 4, 2013 • productivity

    I often ask myself, “How can I be a more productive software engineer?” I can answer this question better if I break it down into pieces.

    Read on →

  • A data representation language

    May 6, 2013 • programming language

    I have an idea for a language, and I want to know if it already exists. The language is a data representation language. It encodes rules about how data is represented in a store (e.g. MySQL, HBase, Riak, Neo4J, MongoDB, Redis, flat files). The language would have four directives: entity, predicate, operation, and realize. The entity directive gives the “platonic” description of a type.

    Read on →

« Older Newer »

© Joshua "sciolizer" Ball - Powered by Jekyll & whiteglass - Subscribe via RSS