Mateusz Kubuszok MateuszKubuszok
- Żory, Poland
- Sign in to view email
- https://kubuszok.com
View parser_combinators.scala
// Parser definitions | |
type Parser[+A] = String => Option[(A, String)] | |
object Parser{ | |
def apply[A](re: String)(f: String => A): Parser[A] = | |
input => s"""\\s*($re)(\\s*)""".r | |
.findPrefixMatchOf(input) | |
.map { n => |
View ReverseState.scala
// based on http://pavkin.ru/reverse-state-monad-in-scala-is-it-possible/ | |
import $ivy.`org.typelevel::cats-core:1.4.0`, cats._, cats.implicits._ | |
//import $plugin.$ivy.`org.spire-math::kind-projector:0.9.4` | |
//import $plugin.$ivy.`com.olegpy::better-monadic-for:0.2.4` | |
/// | |
{ | |
class ReverseState[S, A](val runF: Eval[Eval[S] => (Eval[S], Eval[A])]) { |
View Dockerfile
FROM anapsix/alpine-java:8_jdk | |
RUN apk add su-exec | |
COPY entrypoint.sh /usr/local/bin/entrypoint.sh | |
ENTRYPOINT ["/usr/local/bin/entrypoint.sh"] | |
WORKDIR /build |
View build.sh
#!/bin/bash --login | |
ThisDir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" | |
cd "$ThisDir/.." | |
if [ ! `command -v jekyll > /dev/null` ]; then | |
rvm use default ruby | |
bundle install | |
fi |
View circe-inmemory-ttfi-di.sc
// | |
// @author: Mateusz Kubuszok | |
// | |
// requirements: ammonite 1.1.0 | |
// usage: run `amm` and copy paste into REPL | |
import $ivy.`org.typelevel::cats-core:1.3.1`, cats._, cats.syntax.all._ | |
import $ivy.`org.typelevel::cats-effect:1.0.0`, cats.effect._, cats.effect.syntax._ | |
import $ivy.`io.circe::circe-core:0.9.3`, io.circe._, io.circe.syntax._ | |
import $ivy.`io.circe::circe-generic:0.9.3`, io.circe.generic.auto._ |
View OptMapOps.scala
implicit final class OptMapOps[A](self: A) { | |
def optMap[B, C >: A](otherOpt: Option[B])(f: (A, B) => C): C = otherOpt match { | |
case Some(other) => f(self, other) | |
case None => self | |
} | |
} | |
// sequence.mapOps(optionalFilter) { case (seq, filter) => filter(seq) }.otherOps(args) |
View another_lambda.sh
#!/bin/bash | |
apply1() ( | |
body=$2 | |
block() { | |
eval "$body" | |
} | |
block "$1" | |
) |
View part of Settings.sbt
// Android | |
packagingOptions in Android := PackagingOptions(Nil, Nil, Seq("META-INF/NOTICE.txt", "META-INF/LICENSE.txt")), | |
platformTarget in Android := "android-23", | |
minSdkVersion in Android := "23", | |
targetSdkVersion in Android := "23", | |
debugIncludesTests in Android := false, | |
dexMulti in Android := true, | |
typedResources in Android := false, | |
// Proguard |
View all.gyp
# Copyright (c) 2012 The Chromium Authors. All rights reserved. | |
# Use of this source code is governed by a BSD-style license that can be | |
# found in the LICENSE file. | |
{ | |
'variables': { | |
# A hook that can be overridden in other repositories to add additional | |
# compilation targets to 'All'. | |
'app_targets%': [], | |
# For Android-specific targets. |
View n0s.dat
data; | |
set P1S := a b c; | |
set P2S := 1 2 3 4; | |
param Payoff1 | |
: 1 2 3 4 := | |
a 0 3 1 8 | |
b 5 5 4 6 | |
c 2 6 0 5; |
NewerOlder