Skip to content

Instantly share code, notes, and snippets.

View mbloms's full-sized avatar

Mikael Blomstrand mbloms

View GitHub Profile
@mbloms
mbloms / pacman-local
Last active September 18, 2019 19:00
mbloms@share-02 ~/p/pacman-5.1.3> env PKG_CONFIG_PATH=$HOME/.local/usr/lib/pkgconfig LDFLAGS="-L$HOME/.local/usr/lib" CPPFLAGS="-I$HOME/.local/usr/include" ./configure --prefix=$HOME/.local --with-root-dir=$HOME/.local
### Bästa Präst
# Class: Priest
# Format: Wild
#
# 1x (0) Silence
# 1x (1) Inner Fire
# 1x (1) Light of the Naaru
# 1x (1) Power Word: Shield
# 1x (2) Ancient Watcher
# 1x (2) Annoy-o-Tron
@mbloms
mbloms / DdJbp
Last active November 15, 2018 09:16
Direktdemokraterna
tisdag kl. 19:32
Det sägs att man får de politiker man förtjänar. Men gör vi verkligen det?
När en välrenommerad professor i klinisk psykiatri besöker Sverige för att berätta om forskningsläget på för oss så intressanta områden som könsskillnader och utfall av jämlikhetspolitik, så avfärdas det av Annie Lööv på bästa sändningstid med: "Jag håller inte med."
Vår utrikesminister är inte sämre utan anmodar honom att "krypa tillbaka under den sten han kom ifrån."
import Data.List (cycle, zipWith3)
fizz = cycle $ [False,False,True]
buzz = cycle $ [False,False,False,False,True]
fizzbuzz False False i = show i
fizzbuzz True False _ = "Fizz"
fizzbuzz False True _ = "Buzz"
fizzbuzz True True _ = "FizzBuzz"
micke@Humlan ~/D/k/g/dotty> sbt
[ERROR] Failed to construct terminal; falling back to unsupported
java.lang.NumberFormatException: For input string: "0x100"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.valueOf(Integer.java:766)
at jline.internal.InfoCmp.parseInfoCmp(InfoCmp.java:59)
at jline.UnixTerminal.parseInfoCmp(UnixTerminal.java:242)
at jline.UnixTerminal.<init>(UnixTerminal.java:65)
at jline.UnixTerminal.<init>(UnixTerminal.java:50)
@mbloms
mbloms / gist:1aab9ac35b955bdc57a60a93c15d1c0b
Created April 2, 2018 16:00 — forked from dragos/gist:1794246
A Scala compiler plugin that creates a new class in a different (fresh) package
package scala.plugin
import scala.tools.nsc
import nsc.Global
import nsc.Phase
import nsc.plugins.Plugin
import nsc.plugins.PluginComponent
import nsc.transform.{ Transform, TypingTransformers }
import nsc.symtab.Flags
import scala.tools.nsc.transform.TypingTransformers
@mbloms
mbloms / .SRCINFO
Last active February 28, 2018 21:47
BiglyBT-AUR
pkgbase = biglybt
pkgdesc = Feature-filled Bittorrent client based on the Azureus project
pkgver = 1.4.0.0
pkgrel = 2
url = https://www.biglybt.com/
install = biglybt.install
arch = x86_64
license = GPL3
depends = desktop-file-utils
depends = java-runtime>=9
@mbloms
mbloms / PhantomDiamond.scala
Last active February 6, 2018 16:13
Forcing invariance with compiler-generated traits and classes.
trait Immutable
class A
class B extends A
sealed trait AImm extends A with Immutable
sealed trait BImm extends B with AImm with Immutable
case class Imm(stuff :Int) {
def moreStuff(x:Int) = stuff + x
}
class Mut(stuff :Int) extends Imm(stuff) {
var scary :Int = 0
override def moreStuff(x:Int) = {scary+=1; stuff+scary+x}
}
@mbloms
mbloms / cond.hs
Last active January 10, 2018 13:58
Partial Types in Haskell. Concept
cond [a] {Infinite} :-
[a] {a : [a] {Infinite}}
cond [a] {NonEmpty} :-
[a] {a : [a]}
cond Maybe a {NonEmpty} :-
Just a
newtype Stream a = Stream ([a] {Infinite})