Skip to content

Instantly share code, notes, and snippets.

@xuwei-k
xuwei-k / 限定継続を逆コンパイルした.java
Created January 12, 2011 12:45
限定継続を逆コンパイルした
// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
// Source File Name: test.scala
import scala.Predef$;
import scala.ScalaObject;
import scala.actors.Actor;
import scala.runtime.BoxesRunTime;
import scala.runtime.IntRef;
// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
// Source File Name: test.scala
import java.io.Serializable;
import scala.*;
import scala.actors.Actor;
import scala.actors.ReplyReactor;
import scala.collection.Iterator;
scala> 1 to 5 toList
res0: List[Int] = List(1, 2, 3, 4, 5)
scala> (res0,res0.tail)zip
res1: List[(Int, Int)] = List((1,2), (2,3), (3,4), (4,5))
@xuwei-k
xuwei-k / Seq[Byte]で取得.scala
Created March 30, 2011 03:07
scalaでhttp POST をする場合の最低限のサンプル
import java.io._
import java.net.URL
import scala.collection.mutable
def post( url:String,header:Map[String,String] = Map() ,param:Map[String,String] = Map() ):Seq[Byte] = {
val uc = new URL(url).openConnection
uc.setDoOutput(true)
header.foreach{case (key,value) =>
@xuwei-k
xuwei-k / gist:938506
Created April 23, 2011 09:44
Javaでイカ娘を書いたゲソ
interface Func<A, B> {
B apply(A param);
}
class イカ言語<侵略> {
public イカ言語(侵略 ピコピコ) {
this.ピコピコ = ピコピコ;
}
@xuwei-k
xuwei-k / gist:938550
Created April 23, 2011 11:24
C#でも書いたゲソ
class イカ言語<侵略>{
public イカ言語(侵略 ピコピコ){
this.ピコピコ = ピコピコ;
}
private 侵略 ピコピコ;
public イカスミ の<イカスミ>(Func<侵略,イカスミ> 触手){
return 触手(ピコピコ);
}
public イカスミ に<イカスミ>(Func<侵略,イカスミ> 触手){
@xuwei-k
xuwei-k / gist:959360
Created May 6, 2011 17:15
scala 2.8.1 library implicit keyword
\scala\Array.scala
31,3 implicit def fallbackCanBuildFrom[T](implicit m: DummyImplicit): CanBuildFrom[Array[_], T, ArraySeq[T]] =
44,3 implicit def canBuildFrom[T](implicit m: ClassManifest[T]): CanBuildFrom[Array[_], T, Array[T]] =
53,21 def newBuilder[T](implicit m: ClassManifest[T]): ArrayBuilder[T] = ArrayBuilder.make[T]()(m)
\scala\Either.scala
56,38 def joinRight[A1 >: A, B1 >: B, C](implicit ev: B1 <:< Either[A1, C]): Either[A1, C] = this match {
64,37 def joinLeft[A1 >: A, B1 >: B, C](implicit ev: A1 <:< Either[C, B1]): Either[C, B1] = this match {
110,3 implicit def either2mergeable[A](x: Either[A, A]): MergeableEither[A] = new MergeableEither(x)
\scala\Enumeration.scala
270,5 implicit def canBuildFrom: CanBuildFrom[ValueSet, Value, ValueSet] =
@xuwei-k
xuwei-k / ATND.scala
Created May 7, 2011 08:11
ATND Scala API client
package atndscala
import org.scala_tools.time.Imports._
import scala.xml._
import scala.util.control.Exception._
//とりあえずeventのsearchの方はできた?
object ATND{
@xuwei-k
xuwei-k / fileSearch.scala
Created May 8, 2011 03:46
前書いた関数を Y combinator 使って書きなおしてみたお(`・ω・´)
// 以前書いたもの ↓ を書きなおしてみた
// http://d.hatena.ne.jp/xuwei/20100612/1276318733
import java.io.File
type Files = List[File]
type FilesPair = (Files,Files)
def Y[A,B](f:((A => B),A) => B,x:A):B = f((y:A) =>Y(f,y),x)
/** あるディレクトリ以下のファイルを再帰的に取得する関数
* @param dir 基準となるディレクトリ
@xuwei-k
xuwei-k / ><.scala
Created May 9, 2011 18:56
女子力を最高潮にするたったひとつの方法
import scala.io.Source
import scala.util.parsing.combinator._
import scala.util.parsing.input.{Position, NoPosition}
object Main{
//yuroyoroさんのProgramGeneratorを使用しています。
//https://github.com/yuroyoro/ProgramGenerator
sealed abstract class Insn extends ( CED => CED ){