Scala
https://github.com/pocketberserker/scala-zero-formatter/releases/tag/v0.7.0 表題の件以外にもlz4とzstdへの変換をサポートしてみたりしました。 この2つはあくまでとりあえず程度なので速度そんなにでないですが……。 速度改善の話 余分な型クラスを除去…
とりあえず動くものを~ということで0.1.0でリリースしていたのですが、ベンチマークをとったらさすがにJSON系ライブラリよりは速いものの、他のバイナリシリアライザに倍以上差をつけられる結果に「さすがに遅すぎる」と改善することにしました。 この記事…
あけましておめでとうございます。 進捗どうですか? 私はダメです。 新年早々バイナリフォーマッターの話をします。 ZeroFormatterは、昨年の11月頃にneueccさんが公開したバイナリシリアライザーです。 詳しい話?は実装者の記事を読んでください。 ここで…
Scalaでdogというテスティングフレームワークを以前から作ってみているわけですが、こいつでPersimmon.MuscleAssertみたいなことはできるのかなと思い作……ろうとして放置していたものを少し手直しして動くようにしました。 https://github.com/scala-kennel/…
この記事は予約投稿です。 id:xuwei さんが ささっと作業してくださったのでリリースしました。 https://github.com/pocketberserker/scodec-msgpack/tree/v0.4.1 v0.4.0はプロジェクトの設定ミスにより空のjarが降って来るだけなのでスルーしてください…。 …
Rubyにはautodocというライブラリがあります。 r7kamura/autodoc · GitHub これのdog用のライブラリを作りました。 pocketberserker/dog-autodoc · GitHub dog-autodoc用のsbtプラグインは実装中です…最低限部分できたので一旦リリースしました。 pocketbers…
https://github.com/pocketberserker/dog このフレームワークは Persimmon の移植というか Persimmon に存在していた型をよりMonadとかそういう方面に倒してみようというものです。 テストという存在の型について考えてみる - pocketberserkerの爆走 上記に…
いわゆるユニットテストフレームワークに現れる各種型について考えてみる。 成果は考えない。 このエントリは考えがまとまっていない段階で書かれたものであるため、間違っている可能性があります。 成果物(の途中経過) 途中結果を素っ飛ばした作成中のもの…
Gitterで質問したのでそのメモ*1。 なお私の英語は壊滅的なので片言?なのは許してください。 Hello. Why does Generic[Boolean] instance not exist? と投稿したところ、milessabinさん(shapeless作者)から Because there's no obvious sum of product repr…
Haskell に logict というライブラリがあります。 logict: A backtracking logic-programming monad. | Hackage MonadLogicやLogicTが何者なのかはそのうち解説記事を書くとして、今回はこのライブラリをScalaに移植してみました。 pocketberserker/scala-lo…
備忘録です。 簡単な経緯は以下の通り。 あと体力あれば URL これ使って scalikejdbc の テストできるか試してみたい2015-02-11 13:45:22 via Krile StarryEyes @pocketberserker やってみたんですけど URL テストの実行までいったけれど、(設定間違ってるの…
SPECIAL DAY Scala Hack-a-son 143th in KABUKIZA - Scala Meetup Group in Tokyo | Doorkeeper たまにはハッカソンもいいかなと思って参加してみました(噂の rpscala に参加してみたかったというのもある)。 で、当日は scalacheck をいじっていたコードが…
全国 QuickCheck 系ユーザの皆様こんにちは、もみあげです。 今日は CoArbitraryとScalacheck - scalaとか・・・ に関連して、各言語の QuickCheck 実装の CoArbitrary や Arbitrary (a -> b) インスタンスについてみていきましょう。 CoArbitrary とは Quci…
数日前(?)に xuwei さんが ,msgpack4z というライブラリをリリースしたことが(少なくとも私の中では)話題です。 msgpack4zというmsgpackのScala用ライブラリを作った - scalaとか・・・ こちらの開発が続くだろうし、私が作った scodec-msgpack はリリースせ…
あけましておめでとうございます。 さっそくですが進捗どうですか? 私は駄目でした(Persimmon用VS Test Explorer拡張的な意味で)。 今回はランダムテスト実装の話です。 Persimmon と FsCheck の相性について FsCheck には IRunner という、拡張ポイントが…
私が FsAttoparsec を実装し始めた5月頃、実は本家 attoparsec は内部構造を新しいものに変更していたということに先月末気が付きました*1。 どういう変更かというのは A major upgrade to attoparsec: more speed, more power | teideal glic deisbhéalach …
現時点における GHC、Scala、F#、Java の type classes 実装に使う道具比較をメモしておきます。 言語比較したいわけではなく、論争を繰り広げたいわけでもないのであしからず。 あとてきとーに書いてる感は否めないので、間違っている言葉、表現、概念など…
この記事では、F# で 高階型 (higher kinded types) をエミュレーションすることについて記述します。 本当は 函数型なんたらの集い 2014 in Tokyo - connpass で話そうと思っていたのですが、運営を考えると発表できる気がしなくなった*1ので、記事にしてお…
pocketberserker/scodec-msgpack · GitHub 名前は特に思いつかなかったのでそのまんまです。 実装理由 scalazフレンドリーなmsgpackライブラリがほしかった(建前) scodecの勉強のため そろそろ一度はscalaのライブラリレベルのコード書かないとなーと思って…
http4s 0.2.0 時点での話です。 あと、特にぶつかりそうなライブラリのみ対象にしています。 scalazに依存するライブラリ群 http4s 0.2.0時点では、scalaz 7.0.x系に依存したものが使われています。 というわけで、たぶん他のscalazに依存するライブラリも 7…
最近、 Argonaut: Purely Functional JSON in Scala というライブラリを興味本位で触っているのでメモ。 利用したライブラリのバージョン "io.argonaut" %% "argonaut" % "6.0.4" "com.github.nscala-time" %% "nscala-time" % "1.2.0" サンプル 本家サイト…
個人的にはF# の中での理想やりっろーんを追い求めてみたい感もある2012-11-03 19:54:43 via Janetterこんなことを思っていたりすることもあるため、HaskellやScalaに面白そうなライブラリがあると聞きつけるとF# に移植できないか試したくなります。で、い…
はー、TDD Advent Calendar 2012の15日目ですねー。誘われたのはいいけど特に書くことないなー、なにかないかなーと考えていたらタイムリミットが近づいてきて胃が痛くなってきたので、とりあえずダミー記事をあげておきます。いつか本物の記事がupされるか…
Scalaz Advent Calendarの7日目の記事になります。遅刻しましたごめんなさい><論文を読んだわけでもScalaがバリバリ書けるわけでもないので、間違っていたら突っ込みいれてください。 Scalazで木構造といえば scalaz.coreの中には少なくとも3つの木構造が…
Play 2.0を触ってみようと思って↓のサンプルコードを写経してみた。ScalaTodoListで、写経しただけではテストコードが存在しないのでとりあえず書いてみることに。 Play 2.0はドキュメントなどを見る限りUnit specification主体のようですが、今回はどこまで…
某場所にて以下のような課題が出た。 いわゆるΣ計算の構文を解析するParserと解析結果にあわせた処理を行うVisitorの作成 書式は sum i : NUMBER .. NUMBER of expression 変数はiで固定、iを1つ目のNUMBERから2つ目のNUMBERまで変化させながらexpressionを…