Skip to content

Instantly share code, notes, and snippets.

(* #require "containers";; *)
(* open Containers;; *)
type expr =
| Hole
| One
| Plus of expr * expr
type t = int * (expr list -> expr)
@dariusf
dariusf / Makefile
Created March 10, 2022 14:19
Reproduce bytecode test bug
all:
dune test --verbose
-> start
=== start ===
Let's begin today's standup.
// This records energy level
How are you feeling today?
+ [Green]
@dariusf
dariusf / stack-heap.py
Last active November 1, 2021 17:17
Drawing stack and heap diagrams
#!/usr/bin/env python
# Author: Darius Foo (darius.foo.tw@gmail.com)
# License: GPLv3
import re
from collections import namedtuple
Frame = namedtuple('Frame', ['fn', 'slots'])
Slot = namedtuple('Slot', ['name', 'value'])
@dariusf
dariusf / z3proof.py
Created November 1, 2021 16:43
Visualize Z3's proofs
#!/usr/bin/env python
# Author: Darius Foo (darius.foo.tw@gmail.com)
# License: GPLv3
from z3 import *
set_param(proof=True)
s = Solver()
@dariusf
dariusf / extractHighlighted.vb
Last active July 22, 2021 07:29
Extract highlighted words
Sub extractHighlighted()
Dim objUndo As UndoRecord
Set objUndo = Application.UndoRecord
objUndo.StartCustomRecord ("Extract Highlighted Text")
Selection.ClearFormatting
Selection.HomeKey wdStory, wdMove

We're looking for pairs of customers who like exactly the same pizza, i.e. their respective sets of liked (and disliked) pizzas are equal.

To get this, we can find customers who differ in their preferences and take the complement of that. The general structure of the answer is thus:

all_pairs_of_customers = ...
customers_who_differ = ...
query = all_pairs_of_customers - customers_who_differ
% clingo 5 version of https://gist.github.com/rndmcnlly/cc801233012df3cb0883
%#script (lua) function min(a,b) return math.min(a,b) end #end.
#script (python)
def min1(a,b):
return min(a,b)
#end.
%% Adam's minimal event calculus formalism:
%% - only true holds/happens are tracked
@dariusf
dariusf / Dockerfile
Created March 29, 2018 05:07
TEAMMATES
FROM openjdk:8
# Has Java, Python, git
# This installs lsb_release
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - && apt-get install -y nodejs
# Install Google Cloud SDK
RUN export CLOUD_SDK_REPO="cloud-sdk-$(lsb_release -c -s)" && \
echo "deb http://packages.cloud.google.com/apt $CLOUD_SDK_REPO main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && \
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add - && \
@dariusf
dariusf / pp.lp
Created October 31, 2017 11:33
Make clingo output JSON
#script (python)
from __future__ import print_function
import clingo
import json
def to_json(symbol):
s = {}
if symbol.type == clingo.SymbolType.Number:
s['value'] = symbol.number