Skip to content

Instantly share code, notes, and snippets.

@mucaho
mucaho / ClassPrototype.js
Last active August 29, 2015 13:56
JavaScript prototype template
var Person = (function() {
// private statics
var greetHeader = "Welcome,";
var greetFooter = "! Have a nice day!";
// constructor -- define instance specific stuff
function Person(isMale, firstName, lastName) {
this.firstName = firstName;
this.lastName = lastName;
@mucaho
mucaho / src.YOUR_CODE.scala
Created February 13, 2014 10:42
Akka Actors to be executed in Swing / JavaFX thread - based on Victor Klang's [Swing Actors](https://gist.github.com/viktorklang/2422443)
// After that we just create the GUI Actors with a Props with the correct dispatcher set:
val javaFxActor = context.actorOf(Props[JavaFxActor].withDispatcher("javafx-dispatcher"), "javaFxActor")
val swingActor = context.actorOf(Props[SwingActor].withDispatcher("swing-dispatcher"), "swingActor")
// Done! Now all messages processed by the new actor will be executed by the Swing/JavaFX Event Dispatch Thread, enjoy!
@mucaho
mucaho / DatabaseTest.java
Last active August 29, 2015 13:56
TestNG + JMockit - @dataProvider parameters + local @mocked abstract classes / interfaces
/**
* see Boeffi's tutorial: http://boeffi.net/tutorials/local-mock-variables-ein-dritter-weg-in-jmockit/
*
* useful for abstract classes / interfaces (shorter than implementing all methods for a "dummy" instance which is dynamically partially mocked afterwards; cleaner than static partial mocking)
* take a look at dynamic partial mocking for mocking concrete classes:
* http ://jmockit.googlecode.com/svn/trunk/www/tutorial/BehaviorBasedTesting.html#dynamicPartial
*/
public final class DatabaseTest {
public interface IUser {}
public interface IPassword {}
@mucaho
mucaho / ClosureTrap.js
Last active August 29, 2015 13:57
JavaScript - Fix loop variable closure trap
// See http://stackoverflow.com/q/750486 for details
var callbacksIncorrectValue = [];
var callbacksCorrectValue = [];
var callbacksReference = [];
var array = ["A", "B", "C"];
for (var i = 0; i < array.length; ++i) {
var element = array[i];
callbacksReference.push(function() { return array[i] });
callbacksIncorrectValue.push(function() { return element });
@mucaho
mucaho / SortedMultiMap.scala
Created April 15, 2014 17:28
Immutable, sorted multi map in Scala
import scala.collection._
import scala.collection.generic.CanBuildFrom
import scala.Iterator
/**
* Factory singleton for creating a [[ .SortedMultiMap SortedMultiMap]].
*/
object SortedMultiMap {
/**
* Construct an empty [[ .SortedMultiMap SortedMultiMap]].
@mucaho
mucaho / SelectiveItemDataModel.java
Created May 9, 2014 15:33
Apache Mahout: DataModel implementation which delegates to underlying DataModel, while allowing filtering of items
import org.apache.mahout.cf.taste.common.NoSuchItemException;
import org.apache.mahout.cf.taste.common.Refreshable;
import org.apache.mahout.cf.taste.common.TasteException;
import org.apache.mahout.cf.taste.impl.common.FastIDSet;
import org.apache.mahout.cf.taste.impl.common.LongPrimitiveArrayIterator;
import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator;
import org.apache.mahout.cf.taste.impl.model.GenericUserPreferenceArray;
import org.apache.mahout.cf.taste.model.DataModel;
import org.apache.mahout.cf.taste.model.PreferenceArray;
@mucaho
mucaho / FXApplet.java
Created November 1, 2014 12:13
FXApplet - A custom java.applet.Applet that sets-up a JavaFX environment.
import javafx.application.Platform;
import javafx.embed.swing.JFXPanel;
import javafx.scene.Group;
import javafx.scene.Scene;
import javax.swing.*;
/**
* A custom {@link java.applet.Applet Applet} that sets-up a JavaFX environment.
*/
@mucaho
mucaho / FilterTypes.scala
Last active August 29, 2015 14:15
Scala polymorphic type filtering
object FilterTypes extends App {
import scala.reflect.ClassTag
import scala.reflect.runtime.universe._
object RichClass {
def unapply[T](a: RichClass[T]): Option[T] = Option(a.value)
}
implicit class RichClass[T](val value: T)(implicit val classTag: ClassTag[T], val typeTag: TypeTag[T]) {}
def getOfType[T : ClassTag : TypeTag](list: Seq[RichClass[_]]): Seq[T] = {
@mucaho
mucaho / index.js
Last active August 29, 2015 14:16
requirebin sketch
/**
* DEMO should display particles below the moving platform, but does not, as the current viewport._scale is not
* considered when displaying particles.
* See https://github.com/craftyjs/Crafty/pull/881
*/
var Crafty = require('craftyjs');
Crafty.init(600, 300);
Crafty.background('rgb(127,127,127)');
@mucaho
mucaho / ChecksumTest.java
Created May 10, 2015 15:32
Calculate checksum for DominoTest using hopefully deterministic JBox2D - see https://github.com/jbox2d/jbox2d/issues/19
package org.jbox2d.checksum;
import org.jbox2d.collision.shapes.PolygonShape;
import org.jbox2d.common.Settings;
import org.jbox2d.common.Vec2;
import org.jbox2d.dynamics.*;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;