てきとう

てきとう

programming

goo.glをいじってみる

日記書くネタもないし、なんか面白そうだったので、http:request/4の練習をかねて。 最初のうちは元ソースを読んでましたが、最終的にPython版の丸写し。*1 色々*2酷い事になっていますが、気にしてはいけません。 使い方: 1> c(googl). {ok,googl} 2> inet…

bogosort

R13B来てないか確認ついでに古いportをアップデート。 そのコンパイル待ちの暇つぶしにbogosort書いてみた。

妄想の実装

妄想を一部変更した。 '{' と '}' '{'が処理される時点でポインタが指しているセルの値をスレッドIDとして、対応する'}'までを新しいスレッドで処理。 これはpbrainの影響。*1 ただ、標準入出力(=0)や親(=1)や定義済みの子供が行方不明になり得る諸刃の剣。 …

Erlangで作る奇妙なプログラミング言語(Whitespace その1)

買ってあったのに積んであった『Rubyで作る奇妙なプログラミング言語』を読み始めました。 …で、どうせRubyはよく解ってないので、esotericな言語の解説を読んで、Rubyのソースを参考にErlangで適当に実装していく事にしました。 最初に載っているBrainf*ck…

九九の続き

漢数字が〇..九だけでもできるようなので書き直し。 with Ada.Wide_Text_Io, Ada.Strings; use Ada.Wide_Text_Io; procedure Kuku is type 漢数字 is (〇, 一, 二, 三, 四, 五, 六, 七, 八, 九); 要素数:constant:=(漢数字'Pos(漢数字'Last)- 漢数字'Pos(漢…

Adaで九九表

どう書く?orgで「漢数字で九九の表」というのを見つけて、 「そう言えばAdaって受け付ける文字コードがUCSって事になってるんだから普通にできるんじゃね?」 と思ったのでやってみました。 折角だから埋め込み文字列排除(つまり「"」出現禁止)の方向で。…

こんどこそTclでλ計算っぽいこと(まだ途中)

とりあえず、思いつきの方法で一つ前の問題を解決: set plus {x {format {y {expr %s+$y}} $x}} set plus_2 [apply $plus 2] puts [apply $plus_2 3] # 5 とか set foo {bar {format {baz {apply {%s} $baz}} $bar}} apply [apply $foo {x {puts $x}}] hoge…

Tclでλ計算(をしようとして失敗)

Tclでλ計算ができると聞いたので試してみました。 しかし、まずTclを思い出す作業から始めないといけないのでスタートラインが遠すぎる…。 注意: Tclのapplyに関しての情報は、 http://wiki.tcl.tk/4884 http://www.tcl.tk/cgi-bin/tct/tip/194 http://www.…

言訳とか

それっぽい文体にしたら非常に読みにくい自体になってしまったので別に書いときます。 仕様 作者はGrassを理解していません! Erlang自体がASCII以外の文字コードを扱えないため、全角文字には対応できません。*1 parse_prog/1が間違っている*2ため、一部の…

やたーw

Grassインタプリタできたよーwww 無駄に長いのでソースは最後wwwww とりあえず出来が酷いwwww動くか怪しいしwwwwwwwww 完成したのに今一つGrassの動作が解ってないwwwwww意味ねえwwwwwwww しかもwwwwwErlangぽさがwwwwwwほとんどねえwwwwwwww仕様wWWwwww: …

勉強し始めたは良いが、あまりにも解らなさすぎるので

これはもう一回実装してみるべきだろう、とか。 見た目(だけ)似てるPrologがあったので、Erlangなら案外書けるんじゃないかなー、とか。 思いつきにしても、なんという愚挙…。 でもまぁ、実装しようとすればおのずと動作も解るでしょ。

FizzBuzzの続き

全開^h^h前回からの続き。 また普通にFizzBuzzしても面白くないので、イテレータぽい事をやってみる。 fb/1*1は前回と一緒…じゃないけど同値。(前回のが駄目すぎたとも言う) start/0で開始。 fizzbuzz/1はその時点でのFizzBuzzの結果を返す。呼び出す度に…

というかまず

FizzBuzz辺りから始めるべきなんじゃないだろうか? と思い立ったので今更FizzBuzzを作ってみる。 -module(fizzbuzz). %-compile(export_all).%for debug -export([fizzbuzz/0,fizzbuzz/1]). fizzbuzz()-> fizzbuzz(100). fizzbuzz(N) when is_integer(N)-> …

あんだーばー

bitstringのサイズが欲しかったけど何を使えばいいか分からなかったので、Google先生に聞いてみた。 いくつかのソースを見ると、どうやらerlang:bitsize/1を使えばいいらしい。よし、これでいける。 1> erlang:bitsize(<<10:5,20:6>>). ** exception error: …

Smalltalkが使えるようになった気がする!

【ニコニコ動画】早分かり Smalltalk - 梅澤真史 iframe使えるのかなぁ…?使えるみたい。Objective-Cやる前にSmalltalkをやらなきゃ駄目だろう、と言う事で適当に検索してたら*1引っ掛かった。 いやまぁ、Obj-C自体は後回しでも問題ないんだけどF-ScriptがSm…

ふれくす

適当にインストールして、適当に遊んでる。 で、ruby gemsに良いモノがあると聞いて、rascutをインストール。 … これは*良いモノ*だ……!! ファイル更新してもサーバに表示出来なかったりする事があるけど。 その後変更すると表示出来る事もあるけど。 まぁ…

入力とか出力とか

要はメモ。 入力はio:fread。注意点として、プロンプトはatomでも良いけど、フォーマットは文字列じゃなきゃダメ。 出力はもうio:formatでいいや。まぁ、ioのマニュアルを見る限り、fwriteも同じモノのようだ。 え?stderr?How do I...によると、ポートと通…

とゆーわけで

ErlangによるBrainf*ckインタプリタは既にあるので、 「yeccを使って構文木っぽいものを作った後にそれを1関数で解釈・実行」 という自分で言ってて訳の分からないテーマに挑戦してみた。 開始前の問題は、 Erlang?何それ? yecc?yacc?何それ? 関数型言…

何故だ

何故、気が付いたらErlangを弄ってるんだ……。 こんなものやってる場合じゃ……。

タスクの寿命

ARM 9.3 Task Dependence - Termination of Tasksがよく解らなかった*1からとりあえず試してみたよメモ *1:ということにして読むの放棄した

1秒間の間、1を足し続ける

procedure Add is I:Natural:=0; begin; select delay 1.0; then abort loop I:=I+1; end loop; end select; end Add; で良いのかと思ってたら、実行時に無限ループに。 でも、 procedure Add is I:Natural:=0; begin; select delay 1.0; then abort loop I:…

メモ

*.appをFinderから実行した時、pwdは"/"。 とゆーわけで、シェルスクリプトの体裁を整えて、アプリケーションとして動かそうとした場合、 #!/bin/zsh pwd exit をコンソール.appで見ると、 / と悲しいことになります。これは当然、 #!/bin/zsh echo $(dirnam…

後で読む

QtAda, GtkAda, wxAda, Gwindows以外何か無いかと探してたら見つけた New Ada portable GUI Library?

にこめ

二つ目の気になるモノ: Grass wとWとvで成り立つ世界! 素晴らしい!! …でもどうやって動くのか、今一つ解ってません。 勉強不足、知識不足ですね…何とかしないと。

いっこめ

一つ目の気になるモノ: Scala JVM向け、かつパッと見だとJavaっぽいにも関わらず、 インタラクティブ環境があったり、関数型だったり、静的型で型推論だったりします。 これを足がかりにすればJava嫌いを治せるかな? …でもどう書けば正しいのか、今一つ解…

gccがビルド出来ない(その3)

fmprの問題はfink reinstallで解決…何故だっ!? が、LIBRARY_PATHは解決してない。 とりあえず、unset LIBRARY_PATHしてから--enable-languagesをcのみでconfigure後、make……。 あ、あれ?もしかして通って……ないしorz んー、とりあえず一旦撤退して、環境…

gccがビルド出来ない(その2)

そもそもgccのビルドまでたどり着けてません。 gcc 4.3.0のビルドにはgmpとmpfrが必要ですが、入ってるバージョンが古いようなのでfink update-all。 がしかし、何故かgccのconfigureがmpfrを認識してくれない。*1 これはもう自前ビルドしかないだろ、という…

gccがビルド出来ない

*** LIBRARY_PATH shouldn't contain the current directory when *** building gcc. Please change the environment variable *** and run configure again. 理由は判ってるんですけど、原因が判らない。 多分gnatのパッチ当てたからだと思うんだけど…なん…

どうでも良い話

java.awt.Color.white.white.white... と、延々と続けられるのが非常に気持ち悪いです。 クラスに対して演算子を定義できないのが非常に気持ち悪いです。

凄いな…

Hackathon開催のお知らせだそうですが… 私は行っても邪魔になるだけなので陰から応援させてもらいます>< … JSTでJan. 25 3:00現在、参加者2名。 で1000人時…単純計算で500時間…てことは大体丸21日… 「なかなか」ってレベルじゃないような…