Skip to content

Instantly share code, notes, and snippets.

@fsarradin
fsarradin / BigDecimalTest.as
Created February 13, 2012 10:50
Test that shows a side-effect while calling BigDecimal.stripTrailingZeros
package com.whatever
{
import org.flexunit.asserts.assertEquals;
import org.granite.math.BigDecimal;
public class BigDecimalTest {
public function BigDecimalTest() {
}
@fsarradin
fsarradin / Mmind.java
Created April 13, 2012 12:57
Mastermind
package mmind;
import com.google.common.collect.AbstractIterator;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Mmind {
@fsarradin
fsarradin / ApplicativeFunctor.java
Created July 26, 2012 21:22
Applicative Functor in Guava
import com.google.common.base.Function;
import com.google.common.base.Optional;
import org.junit.Test;
import javax.annotation.Nullable;
import static org.fest.assertions.Assertions.assertThat;
public class OptionalTest {
@fsarradin
fsarradin / Option.java
Created July 27, 2012 11:19
Option with flatMap
package collect;
import com.google.common.base.Function;
public abstract class Option<T> {
private static final Option<?> ABSENT = new Absent<Object>();
public static <T> Option<T> of(T value) {
return new Present<T>(value);
}
@fsarradin
fsarradin / MixinMain.java
Created October 21, 2015 08:31
Java 8 eXperiment
package me.mixin;
import java.util.Map;
import java.util.WeakHashMap;
import static java.util.Collections.synchronizedMap;
public class MixinMain {
interface WithName {
@fsarradin
fsarradin / CellsTest.scala
Created November 13, 2015 21:57
Part of Conway's game of life in Scala
package me.conway
import me.conway.cell.{Cells, Location}
import org.scalatest.{Matchers, FunSuiteLike}
import scala.language.implicitConversions
class CellsTest extends FunSuiteLike with Matchers {
implicit def tuple2Location(t: (Int, Int)): Location = Location(t._1, t._2)
package my.util;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.NoSuchElementException;
import java.util.function.Function;
public abstract class Option<T> implements Iterable<T> {
@fsarradin
fsarradin / App.scala
Last active December 11, 2015 06:38
Alice and the banks
object App {
val banks: Map[String, Set[Account]] = Map(
"BGP" -> Set(
Account("CC1", "BGP", "Alice", 5000)
),
"La Postale" -> Set(
Account("CP1", "La Postale", "Alice", 2000)
),
"Societe Geniale" -> Set(),
@fsarradin
fsarradin / WebMain.java
Last active December 12, 2015 03:48
Two ways to create a basic Web application from scratch with route management (in Scala and in Java 8)
import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpServer;
import java.io.IOException;
import java.net.InetSocketAddress;
public class WebMain {
public static void main(String[] args) throws IOException {
WebServer.serve(8080, "/").withRoute(
@fsarradin
fsarradin / DigitTest.java
Created February 11, 2013 12:52
Digit kata (format numbers for digital display). Java 7 Dependencies: Guava 13.0.1, junit 4.11, fest-assert-core 2.0M8
package test.kata_digit;
import static org.fest.assertions.api.Assertions.assertThat;
import org.junit.Test;
public class DigitTest {
@Test
public void should_get_digital_one_when_1() throws Exception {