Scala
ってもそんなに真面目にやる気ないですけどね。sbt の build.sbt に libraryDependencies ++= Seq( "org.scala-lang" % "scala-library" % "2.10.0" % "provided", "org.scala-lang" % "scala-compiler" % "2.10.0", "com.github.aselab" % "scala-activerec…
事前に https://dev.twitter.com/ でアカウント登録と、アプリケーション登録を済ませておくこと。 参考はこれ使うのはこれhttp://twitter4j.org/ja/index.htmlで、application.conf *1に twitter { consumerKey = "ZZZZZZZZZZZ...." consumerSecret = "AAAA…
なんで今まで書いてなかったんだろ?まぁいいや。Javaが既に入ってる前提で wget http://apt.typesafe.com/repo-deb-build-0002.deb sudo dpkg -i repo-deb-build-0002.deb sudo apt-get update sudo apt-get install sbt どうでもいいけど sbt の S が Simp…
前回 の処理に似たようなことを行い、 接頭詞 + 名詞 = 名詞 名詞 + 名詞 = 名詞 名詞 + 動詞 = 動名詞 + 動詞 動詞 + 動詞 = 動詞 動詞 + 助動詞 = 動詞 動詞 + 助詞 = 動詞 で区切ったあと、句読点が「記号」と認識されていることに着目。 記号で区切られ…
先ず適当なディレクトリを掘って、ダウンロード - Igo - SourceForge.JP と MeCab - Browse /mecab-ipadic/2.7.0-20070801 at SourceForge.net を配置。 MeCab のtarボールは解凍しとく。 で、 C:\common\projects\lab\Igo>dir ドライブ C のボリューム ラベ…
SSH ポート空けてると、不正にログインしようとするやつはいるもの。 また、アカウントが盗まれて変な所から ssh されることもあり得る。そんなこんなで、/var/log/auth* なログファイルをパースしてディレクトリに振り分ける処理をざっくり書く。わざとシー…
前回写経して中身を確認してみたが、正直サンプル見たほうが理解が早かった。https://github.com/akka/akka/blob/master/akka-samples/akka-sample-cluster/src/main/scala/sample/cluster/simple/SimpleClusterApp.scala https://github.com/akka/akka/blob…
とりあえず内容はこれhttp://doc.akka.io/docs/akka/2.2-M3/scala/routing.html A Router is an actor that receives messages and efficiently routes them to other actors, known as its routees. そのままですよね。Actorのインスタンスが複数ある時に、…
随時更新 Akka について勉強する。 - 謎言語使いの徒然 の続き Akka2.2-SNAPSHOT で大分 Cluster に動きがあった。流石試験実装、、、、安定しない。 設定ファイルの中身を換えればまだ動きはするが、この際だから最初から考え直す。*1 まずサンプルを求めて…
終了まで随時更新 教科書はこれ http://www.slideshare.net/scalaconfjp/scaling-software-with-akka概要から読んでいく。 重要そうな箇所だけまずはメモProgram at higher level 共有するステータス、ステータスの可視性、スレッド、ロック、同期、スレッド…
無いかなーと思ってソースコード読んでて見つけた。 公式ドキュメントに乗ってない(まだ書いてないだけ?)のでこれはみんな難儀するだろうなーということで共有。 /play-2.1.0/framework/src/play/src/main/scala/views/helper この辺開くとテンプレートヘ…
ActorSystem は単語単位で名称を持つことができる。これはURIスキーマの一部として利用することができる。 使える範囲は「'^[a-zA-Z0-9][a-zA-Z0-9-]*$'」の範囲だそうな。 これはこんな感じで書くそうな。 akka://actorSystemName@ServerHostName:9000/user…
うん、Scala2.10あんま関係ないのでタイトル変更。午後やるって言って遊んじゃった(主にPSO2)ので遅かった。 先ずコードはこんなん import akka.actor.{Props, Actor, ActorSystem} import java.util.Date import org.slf4j.LoggerFactory class SampleActor…
先ずはsbtでscala2.10を設定。 依存とバージョン番号指定すればよさそう organization := "net.azalea" name := "Alla-sample" version := "0.1.0" scalaVersion := "2.10.0" description := "An JSON schema(http://json-schema.org/) access helper for sc…
始めに断わっておきますが英語圏のネイティブじゃないんでドキュメント読んで拾った内容だけど間違ってるかもしれない。 Akka は動作階層を持っているらしい。 ActorRef MessageDispatcher MailBox(with MessageQueue) Actor(プログラマが実際に処理を記述す…
そもそもPlayにこの機能ないの?って思ってソースを追っかける。 すると、https://github.com/playframework/Play20/blob/master/framework/src/play/src/main/scala/play/api/controllers/Assets.scala惜しい、Assets じゃ無いんですよ、、、。 とは言え、s…
Play2.0 + PostgreSQL + ScalaActiveRecord0.2で突っ込んでみてハマったログです。 情報等ほぼ存在しないだろうから、後に踏み入れる人たちに、、、、。http://www.playframework.org/ http://www.postgresql.jp/ https://github.com/aselab/scala-activerec…
アクターは基本的にはメッセージの受信に対してどう動くかという、Objective-CやSmalltalk的なオブジェクトの振る舞いをするスレッド。 内部的には、メッセージを「receive」で受け取り、処理をする。処理中に他のメッセージが来れば、そのまま「receive」可…
メモ。既にある情報を書くまでも無い気がしてリンクだけ。 動作時に別の設定ファイルをロードする方法。http://www.playframework.org/documentation/2.0.4/ProductionConfigurationちなみに、start コマンドはリリース用動作モード。http://www.playframewo…
https://github.com/playframework/Play20/wikiこのへんのチュートリアルに沿ってインストールはできると。 SBT ベースになってるので、そのままいけるかなーと思ったけど、コレが案外ハマった。まず、SBT-Idea突っ込もうとして、「project/plugins.sbt」に …
とりあえず作業ログ。このへんからsbt落としてきて set SCRIPT_DIR=%~dp0 java -Xmx512M -jar "%SCRIPT_DIR%sbt-launch.jar" %*こんなバッチ書(abt.bat)く。 次にプロジェクトディレクトリ作って、そこで sbt.bat 起動。 プロジェクトディレクトリルートに b…
webapp 直下のリソースファイルを更新した状態で、「~ prepare-webapp」やると、エラーで鯖が落ちる問題。何かなーと思って調べたら、jettyの仕様(?)だった。https://www.assembla.com/wiki/show/liftweb/Fix_file_locking_problem_with_jettyrun回避方法を…
SBT で何とかできないかなぁと ま、結局 Jetty 自体にほとデプロイが無いので、以下の手順踏めば行けるようだ。 compile copy-resources jetty-reload 面倒っちゃ面倒だ。 最後の手順は、起動パラメータでどうにかなるらしいが、あいにくとSBTでのやり方知ら…
環境は、sbt0.7.7, scala2.9.1 で作成。 Projectの設定にザクッと以下を流し込む。 val posgresDriver = "postgresql" % "postgresql" % "9.0-801.jdbc4" val squeryl = "org.squeryl" %% "squeryl" % "0.9.4" で、update かけたら以下のようなDatabaseModel…
色んなコードを逆コンパイルして、実装眺めてた。 ても、結構色んなパターンやったくせにログが残ってないので、やったことの記憶を辿って一部だけ。 (貼りつけるだけで面倒)まずは object の実装。 package sample object HelloWorld { def tak( x:Int , …
http://blogs.dion.ne.jp/keis/archives/5880105.htmlカリー化の部分が少々間違ってた気がするけどそれはそれ。http://www.sampou.org/haskell/a-a-monads/html/いいガイドだとは思うけど量が凄いね。
メモでURLだけ用意。http://blog.goo.ne.jp/byakhee/e/f538b931e5ee68318a2235e202bb9b80
ある関数Aが、Bを呼ぶだけの場合、Bの呼び出しをジャンプで呼び出すと、スタック消費が無いとか、諸々最適化できるという話。 コレが Tail call optimization なわけですが、Scalaの2.8では自動でやるどことか、Trampoline for Tail Call までやるらしい。 …
集合要素にかけて使えるLINQ、Scalaならありそーかなーと思ったら速攻見つけたのでメモ。 https://github.com/vladimirk/scalalinq/ 一度これに慣れちゃうとアウトよね。
概要とかは知らんが、Scala という言語自体がいいのと、Scalatra の仕様がシンプルでわかりやすいので、自宅で揃えてみた。http://d.hatena.ne.jp/fits/20100810/1281429835 http://d.hatena.ne.jp/Naotsugu/20110501/1304363927これだけ用意しとけば動く。 …