Skip to content

Instantly share code, notes, and snippets.

@magthe
magthe / Part1.hs
Created December 18, 2017 17:02
AoC 2017, day 16
import Control.Applicative
import Data.Monoid
import Data.Vector as V
import Prelude as P
import Text.ParserCombinators.ReadP
spinList :: Int -> Vector Char -> Vector Char
spinList n xs = let (h, t) = V.splitAt (l - n) xs
l = V.length xs
in t <> h
@magthe
magthe / keybase.md
Created July 30, 2017 06:07
keybase.md

Keybase proof

I hereby claim:

  • I am magthe on github.
  • I am magthe (https://keybase.io/magthe) on keybase.
  • I have a public key ASCF3PyaMhJU-BVsk0bF9gjQ7DSJv5NYmbYFRvBjwJtWlgo

To claim this, I am signing this object:

@magthe
magthe / Free1.hs
Created June 18, 2016 21:25
Free play 2
{-# LANGUAGE DeriveFunctor#-}
-- Simple example of using Free with a single algebra/API.
module Free1 where
import Control.Monad.Free
data SimpleFileF a
= LoadFile FilePath (String -> a)
@magthe
magthe / core.cljs
Created April 11, 2016 17:09
Quil load-image failing
(ns bg.core
(:require [quil.core :as q :include-macros true]
[quil.middleware :as m]
[bg.image :as i]))
(enable-console-print!)
(println "bg.core loaded")
(defn setup []
(let [img (q/load-image i/img)]
@magthe
magthe / CMakeLists.txt
Last active February 5, 2024 18:30
Complete example of D-BUS client and server using Qt5 and CMake.
cmake_minimum_required(VERSION 3.5)
project(DBusTest)
find_package(Qt5 CONFIG REQUIRED Core DBus)
set(prog_SRCS my.test.Calculator.xml)
qt5_generate_dbus_interface(Calc.hh
my.test.Calculator.xml
OPTIONS -A
)
@magthe
magthe / nooo
Created May 21, 2015 20:13
Not Only OO
Vi upptäcker bättre sätt att utveckla mjukvara genom att göra det och genom
att hjälpa andra att göra det. Genom detta arbete har vi lärt oss värdesätta:
* *Funktioner och Typer* mer än klasser
* *Renhet* mer än mutation
* *Komposition* mer än arv
* *Högre ordningens funktioner* mer än metodbindning
* *Options* mer än nulls
Det betyder att det finns värde i sakerna till höger (förutom null), men vi
@magthe
magthe / bbwp.hs
Last active August 29, 2015 14:07
Bye bye WordPress
#! /usr/bin/env runhaskell
-- {{{1 imports
import Control.Arrow
import Data.List
import Data.Maybe
import Data.Time.Format
import Data.Time.LocalTime
import System.Directory
import System.Environment
@magthe
magthe / msys2.reg
Created September 11, 2014 06:56
MSYS2 "Open Here" registry settings
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\open_msys2]
@="Open MSYS2 here"
[HKEY_CLASSES_ROOT\Directory\Background\shell\open_msys2\command]
@="c:\\msys64\\usr\\bin\\mintty.exe /bin/sh -lc 'cd \"$(cygpath \"%V\")\"; exec bash'"
[HKEY_CLASSES_ROOT\Folder\shell\open_msys2]
@="Open MSYS2 here"
@magthe
magthe / style.csl
Created September 10, 2014 19:34
CSL for pandoc-citeproc issue #81
<?xml version="1.0" encoding="utf-8"?>
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" page-range-format="minimal" default-locale="en-US">
<info>
<title>Journal of Combinatorics</title>
<id>http://www.zotero.org/styles/journal-of-combinatorics</id>
<link href="http://www.zotero.org/styles/journal-of-combinatorics" rel="self"/>
<link href="http://www.e-publications.org/intlpress/support/" rel="documentation"/>
<author>
<name>Alafate Julaiti</name>
<email>arapat@arap.at</email>
class Visitor:
def visit(self, obj):
getattr(self, 'visit_' + obj.__class__.__name__)(obj)
def visit_Tree(self, t):
pass
def visit_Leaf(self, l):
pass