Skip to content

Instantly share code, notes, and snippets.

View ghuysmans's full-sized avatar

ghuysmans

  • Belgium
  • 06:50 (UTC +02:00)
View GitHub Profile
@sliminality
sliminality / puz.md
Created November 14, 2018 06:40
Documentation for the Across Lite *.puz format, reformatted from https://code.google.com/archive/p/puz/wikis/FileFormat.wiki
@sinclairtarget
sinclairtarget / bernoulli.c
Created August 17, 2018 20:22
Lovelace's Note G Program in C
#include <stdio.h>
/*
* Calculates what Ada Lovelace labeled "B7", which today we would call the 8th
* Bernoulli number.
*/
int main(int argc, char* argv[])
{
// ------------------------------------------------------------------------
// Data
@miguno
miguno / gist:548cd72eaec017c475448cb9b2ced258
Last active April 7, 2023 19:24
Taking Java JVM memory snapshots with gdb and jmap (for YourKit)

Notes

  • Good: very quick snapshotting even for large heap spaces (e.g. works if your JVM process would otherwise timeout and die)
  • Bad: such a memory snapshot contains significantly less useful information than YourKit's "enhanced" memory snapshots.

Usage

# 1. Find the relevant JVM pid on the target machine
$ ps ...
@xsot
xsot / instructions.md
Last active June 12, 2026 16:49
sed maze solver

Usage

sed -E -f solver.sed input where input is a file containing the maze.

For best results, resize your terminal to match the height of the maze. To disable animations, delete the lines containing p.

Maze format

The solver assumes the following:

  • The maze only contains the characters # \nSE
  • Every line has the same number of characters
  • There is only one start (S) and end (E)
@KurtJacobson
KurtJacobson / touchscreen_calibration.md
Last active February 27, 2024 22:06
Touchscreen calibration procedue for Debian9 (stretch)

Touchscreen Calibration in Debian9

Unfortunately [xinput-calibrator][1] does not work at all for calibrating a touchscreen in Debian9. This is apparently because X server now uses libinput to handle input devices instead of evdev. I spent huge amount of trying to fiddling with xinput-calibrator and 99-calibration.conf files until I finely found this [issue][2] on GitHub that gave me some hints as how to proceed. This is mostly for my own reference, but I hope it might also help others in the same situation.

from graphviz import Digraph
from torch.autograd import Variable
import torch
def make_dot(var, params=None):
if params is not None:
assert isinstance(params.values()[0], Variable)
param_map = {id(v): k for k, v in params.items()}
@Drup
Drup / difflist.ml
Last active March 27, 2026 23:12
Difference lists and Miniformat
type ('ty,'v) t =
| Nil : ('v, 'v) t
| Cons : 'a * ('ty, 'v) t -> ('a -> 'ty, 'v) t
let cons x l = Cons (x,l)
let plus1 l = Cons ((),l)
let one x = Cons (x,Nil)
@parmentf
parmentf / GitCommitEmoji.md
Last active September 29, 2026 20:19
Git Commit message Emoji
# Hello, and welcome to makefile basics.
#
# You will learn why `make` is so great, and why, despite its "weird" syntax,
# it is actually a highly expressive, efficient, and powerful way to build
# programs.
#
# Once you're done here, go to
# http://www.gnu.org/software/make/manual/make.html
# to learn SOOOO much more.
@rgrinberg
rgrinberg / type_safe_routes.ml
Created December 14, 2014 20:11
type safe routes opium
open Core.Std
module Substring = struct
include Substring
let get t i = (Substring.base t).[(Substring.pos t) + i]
let drop_prefix_str t ~prefix =
let len = String.length prefix in
if len > Substring.length t then None
else