読者です 読者をやめる 読者になる 読者になる

Lambdaカクテル

ソフトウェア開発者です.玉石混淆です.

gauche/schemeのparser.pegモジュールを使ってSlackの会話をパースした

Gaucheのパーサジェネレータ parser.peg の使い方のメモ. インストール 基本的な流れ パーサの適用 パーサの生成 (パーサコンビネータの使用) $char $one-of $many $seq $do $lift $sep-by $alternate $between $or 試作 - Slack会話のパース 参考文献 イン…

TSVに色をつけるプログラムをSchemeで練習

Schemeを書きたくなったので,適当な課題がないか考えていたら,ログを見易くできるユーティリティがあればいいと思ったので,カラムごとに色をつけるSchemeスクリプトを作ってみた. TSVというか空白文字で区切られているならどれにでも使える. コード 処…

ニューラルネットワーク(多層パーセプトロン)その1

実装しながらメモ。メモ帳のかわり。備忘録。最近ニューラルネットワークにはまってます。小さなノード群が数学的問題を脳のように解決するなんて、夢があるじゃないですか。そんなわけでこのニューラルネットワーク(以下NN)のうち「多層パーセプトロン(Mult…

gaucheで自然対数の底を利用する

gaucheでニューラルネットワークを構築しようとしたら、eがデフォルトでは使えなかったのでメモ。自然対数の底eを利用するには、 (use math.const)で利用可能になる。math.const - 定数を参照。

FizzBuzzをできるだけ短く書く@119chars

プログラミング課題としてよく取り上げられるFizzBuzzをSchemeで書いてやろうという意欲がわいたので書いてみました。巷にはFizzBuzzを最短実装してやろうという向きがあるようなので、せっかくだし(Gaucheの独自実装を使うか悩んだ)書いてみました。前座は…

Schemeの正規表現では^$は行頭行末には対応しない

Gaucheの正規表現の罠 ここ数日、正規表現を使ったプログラムで遊んでいるが、思わぬ所でハマったのでメモ。 行頭がアスタリスクの行にヒットするべく、/^\*(.+)$/なんてコードを書いたら、これがまるで動かない。何度試してもダメだった。 仕方ないのでGoog…