Skip to content

Instantly share code, notes, and snippets.

View OleTraveler's full-sized avatar
🤷‍♂️
Dunno

Travis Stevens OleTraveler

🤷‍♂️
Dunno
View GitHub Profile
@OleTraveler
OleTraveler / gist:888325c6a9174cfaa78a
Created August 26, 2015 21:56
Interview Question
/** Determine if the list l contains a sequence which follows the recurrence relation for the function f.
*
* A recurrence relation is where numbers in the list determine the rest of the list, for example the Fibonacci sequence
* is defined for function plus and you could call this function with the parameters l = List(0,1,1,2,3,5,8,13), f = _ + +
*
* See InterviewSpec for a test example.
* */
def isRecurrenceRelation(l: List[Int], f: (Int, Int) => Int) : Boolean = ???
@OleTraveler
OleTraveler / gist:525ba037ae94625ba822
Created July 20, 2014 20:48
Code Written for blog entry:
package com.czarism.blog
import scalaz._
import Scalaz._
/**
* Created by tstevens on 7/18/14.
*/
object FavorValidation {
def maxTen(i: Int) =
if (i <= 10) \/-(i)
else "Must be less than ten"
def divisibleByTwo(i: Int) =
if (i % 2 == 0) == 0 \/-(i)
else "Must be divisable by two"
def whatType(input: Int): ???[NonEmptyList[String], Int] =
( parseInt(input) |@| divisibleByTow(input) )
@OleTraveler
OleTraveler / gist:04fe8eacd3326f250c9c
Created August 13, 2014 06:10
Hibernate Inheritance and Using Pattern Matching
trait PaymentSource {
def accept[T](visitor: PsVisitor[T]) : T
}
class CreditCard extends PaymentSource{
override def accept[T](visitor: PsVisitor[T]) = {
visitor.visit(this)
}
}
package bootstrap.liftweb {
import com.gaiam.gcsis._
import com.gaiam.gcsis.util.Logging
class Boot {
val log = Logging.logger(classOf[Boot])
def boot: Unit = {
4702 30248 0.1 19.5 1449112 721088 ? Sl Jul01 8:49 /usr/java/jdk1.7.0_09/bin/java -cp /opt/glassfish3/glassfish/modules/glassfish.jar -XX:+UnlockDiagnosticVMOptions -XX:PermSize=64m -XX:MaxPermSize=192m -XX:NewRatio=2 -XX:+LogVMOutput -XX:LogFile=/opt/glassfish3/glassfish/domains/gcsi/logs/jvm.log -Xmx512m -client -javaagent:/opt/glassfish3/glassfish/lib/monitor/flashlight-agent.jar -Dfelix.fileinstall.disableConfigSave=false -Djavax.net.ssl.keyStore=/opt/glassfish3/glassfish/domains/gcsi/config/keystore.jks -Djava.awt.headless=true -Dfelix.fileinstall.poll=5000 -Djava.endorsed.dirs=/opt/glassfish3/glassfish/modules/endorsed:/opt/glassfish3/glassfish/lib/endorsed -Dfelix.fileinstall.bundles.startTransient=true -Djavax.net.ssl.trustStore=/opt/glassfish3/glassfish/domains/gcsi/config/cacerts.jks -Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as -DANTLR_USE_DIRECT_CLASS_LOADING=true -Djava.security.auth.login.config=/opt/glassfish3/glassfish/domains/gcsi/config/login.conf -Dgosh.args=--noint
type OurApp[A] = Coproduct[Auth, Interact, A]
type OurAppPlus[A] = Coproduct[OurApp, ThirdAlgebra, A]
type ACoyo[A] = Coyoneda[OurAppPlus,A]
type AFree[A] = Free[ACoyo,A]
def point[A](a: ⇒ A): FreeC[OurAppPlus, A] = Monad[AFree].point(a)
@OleTraveler
OleTraveler / JmsControl.java
Created February 21, 2011 17:37
Wrapper around JMS to commit messages after a threshold has been met in order to commit messages in blocks.
package com.gaiam.gcsi.util;
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageProducer;
import javax.jms.Queue;
import javax.jms.Session;
class WiredUser {
val userToWire = (Users.userForDisplay or userDetail.currentValue).get
private object User {
val entity = ValueCell(userToWire)
val edit = ValueCell(false)
val email = edit.lift(b => entity.lift(_.getEmail.asScala.headOption).get)
}
/*
* Created by IntelliJ IDEA.
* User: tstevens
* Date: 4/30/11
* Time: 3:50 PM
*/
package com.oletraveler.bmapz
import xml.{NodeSeq, Elem}