Skip to content

Instantly share code, notes, and snippets.

View akr4's full-sized avatar

UEDA Akira akr4

  • Tokyo, Japan
View GitHub Profile
@akr4
akr4 / gist:1151256
Created August 17, 2011 10:12 — forked from seratch/gist:1149214
S-99 blank
// *** S-99: Ninety-Nine Scala Problems ***
// http://aperiodic.net/phil/scala/s-99/
//
// wget http://www.scala-tools.org/repo-releases/org/scalatest/scalatest_2.9.0-1/1.6.1/scalatest_2.9.0-1-1.6.1.jar
// scala -cp scalatest-*.jar s99.scala
import org.scalatest.matchers.ShouldMatchers._
// P01: Find the last element of a list.
def last[T](list: List[T]): T = { // TODO }
@akr4
akr4 / gist:1183290
Created August 31, 2011 10:52 — forked from seratch/gist:1167860
S-99 P21-P28 blank
// *** S-99: Ninety-Nine Scala Problems ***
// http://aperiodic.net/phil/scala/s-99/
//
// wget http://www.scala-tools.org/repo-releases/org/scalatest/scal.test_2.9.0-1/1.6.1/scalatest_2.9.0-1-1.6.1.jar
// scala -cp scalatest-*.jar s99-21-28.scala
import org.scalatest.matchers.ShouldMatchers._
import scala.annotation._
class NotImplementedYet extends RuntimeException
@akr4
akr4 / gist:1297895
Created October 19, 2011 10:12 — forked from seratch/gist:1295847
#daimonscala 19-1 "JSON parser"
// obj ::= "{" [members] "}".
// arr ::= "[" [values] "]".
// value ::= obj | arr | stringLiteral | floatingPointNumber | "null" | "true" | "false".
// values ::= value { "," value }.
// members ::= member { "," member }.
// member ::= stringLiteral ":" value.
object Main {
import util.parsing.combinator._
@akr4
akr4 / gist:1297970
Created October 19, 2011 10:57 — forked from seratch/gist:1297691
#daimonscala 19-2 "Apache access_log(combined) parser"
object LogParser {
import java.net._
import org.joda.time.DateTime
import org.joda.time.format.DateTimeFormat
case class Access(
ipAddress: InetAddress,
ident: String,
user: String,