2006-01-01から1年間の記事一覧

HOPL

http://hopl.murdoch.edu.au/このサイトがなかなか面白いです。なんか、自分が考えてる言語は単なるM式なんじゃねぇのかなぁと、言うことで、その辺調べてみました。 というか、俺M式を作ってみた感じなんですが。 どっかの、大学の英語のサイト見つけて MLi…

ActionScript3.0で音声合成プログラミング

ActionScriptで何とか音を合成して鳴らしてみようと思ってしまいました。 そこで、調べてみました。 すると、どうも、簡単には出来ないことが分かりました。 原因は、ByteArrayから読み込みが出来ないからです。 これはやるしかないってことでやってみました…

スタックマシンの動的コンパイル

気力がなくなったので、ちゃんとした文章になってませんが、、、。NYOットやろうぜ http://members.at.infoseek.co.jp/DrHell/ps1/index.htmlyaneVM2i386.cpp 等を参考にして作ってみました。 /* * スタックマシン動的コンパイル&実行 for d言語 */ enum { …

四則演算、スタックマシンのベンチマーク

O i Oi r rO ri riO 元 : 570 460 381 361 360 350 311 310 読込 : 571 531 370 360 361 371 320 340 最適化 : 371 310 380 321 290 260 291 260 関数化 : 461 381 370 320 311 300 290 261 動的 : 120 err 110 err 350 err 350 err 動的ASM : 30 err 20 err…

ファミコンエミュ(未完成)公開

http://sakurai.s59.xrea.com/as3/Main.swfとりあえず、公開しときます。 マリオブラザーズです。 音はなりません。 フラッシュの画面をクリックして、着合いいれて、エンターキーを押すと ゲームが始まります。zでジャンプするとバグります。 カーソルキー…

6052トランスレータ

6052toActionScript3.0トランスレータをD言語で作ると。 そんな流れでしょうか。 書いてて、何がなんだかわからなくなってきましたー。

6052トランスレータ

とりあえず、6052のトランスレータをD言語で作ればいいのかもしれない。 こっちのほうが、何かと、融通が利くし早いだろうから。

スタックマシントランスレータ

ってことで、とりあえず、スタックマシンの静的コンパイルをやってみようかと思います。 つまり、トランスレータをつくると。 まず、スタックマシンをD言語にトランスレートと。

JIT適用について

ところで、ActionScript3.0でJITできるのかというと、たぶん、出来ましぇん。 いや、やろうと思ったら、ByteArray内に、swfファイルを作ってしまって 読み込むと言う荒業をやってのけなければなりません。 そりゃ、ちょいと、難しすぎるのではって感じです。…

JIT

というわけで、Just In Time compileをやりたいということで、 勉強用にD言語で簡単なスタックマシン用のJITを作ってみました。 80行くらいで出来たのですが、せっかくなのでちゃんと解説も書きたいなぁと思います。

ファミコンエミュレータ

高速化されたActionScript3.0なら、動くかも!!! と思い立ち、ActionScript2.0用に移植していた、 ファミコンエミュレータをActionScript3.0に移植しています。 とりあえず、動いてます。バグってますが、、、。しかし、遅いです。 1Gのマシンで1フレーム…

言語言語言言吾二ーー口二ーー口五口

スタックマシン作ったり、ActionScript3.0でファミコンエミュレータ作ったり、 OcamlやらD言語やらで構文解析したり、、、。 なんか、言語言語してるなぁと。

スタックマシン

type t = | POP | PUSHI of int | ADD | SUB | MUL | PRINTI | RET let codes = [| PUSHI 1; PUSHI 2; ADD; PUSHI 10; SUB; PUSHI 100; MUL; PRINTI; RET ] let rec exec stack pc = ( let code = codes.(pc) in let npc = pc + 1 in match (codes.(pc), sta…

演算子定義可能な言語のBNF

どう書いたらいいのかよくわからない。うーむ。

忘れた

で、何をしたかったんだったか、忘れてきてしまった。 イベント情報検索サイトを作ってたのだけど、ゲーム作りたくなってやめてしまい、 ゲームは作ってみてるのは中途半端で飽きてしまって、 言語作りがまた面白くなっていろいろ、ソース読んだりなんだりし…

バーベキュー

仙台新港でやってきました。サーフィンやってる砂浜でやると思ってたのだけど なんか、漁港側で、、、。 いろいろ、面白かったんですが、特に面白かったのが、 防波堤から落とされること3回。ってのと、髪を切ってもらったことと、 あと、スイカ割りでした…

Action Script 3.0

気になる。気になるが時間ねーうぎょー。

schemeの改造とか

とにかく、S式をいろいろと改良して遊んでみようということで、 (a b c) は a:(b c)と言う風にもかけるようにしてみようってことでoscmを弄ってみました。 よくよく考えると、こう文法を変えると駄目なことがわかりました。 1とだけ入力された場合に式が終わ…

時間が欲しい

うーん。駄目だ。時間がない。せっかくPersecやらなんかをみんなでアレしてコレしてと 遊んでいるのに、今ひとつついていけてないのが悲しいです。 忙しいのか?というと、そんなことはなくて単に眠いだけと言う。。。 なにせ、5.5mの鉄パイプと消防ホー…

料理ゲー

Wii

ああ、昔考えてた、料理ゲーが、作れるハードだなと思った。 フライパンでひっくり返したり、包丁で切ったりと。 剣で切るゲームを見たときに思い出せよなぁと。。。 2本使って、混ぜたりとか、転がしてみたりとか。 食えないんじゃ意味ないだろと言われたよ…

D

デリゲード、、、ブロックを使えば、そこそこ、いい感じにかけるかなぁ思って書いてみました。 問題は、デリゲードを返す関数がかけないところです。 せめて、クラス内で使った場合に、thisをちゃんとみてくれたらなぁ。 ってかんじです。 無理やり、スタッ…

48時間で作るスキーム

http://halogen.note.amherst.edu/~jdtang/scheme_in_48/tutorial/overview.htmlparsecの練習がてら、単純に、コピペしながら、やってみました。 2時間くらいで、最後まで行きました。とりあえず、Haskellでプログラミング言語作るときの感触をかなり得られ…

任天堂の経営方針説明会を見て

なんというか、切ない気分だったんですが、、、 ワクワクした。いろいろな思いが蘇った。 DSが欲しくなった。 Wiiが欲しくなった。 WiiとかWiFiとか、Wikiっぽい雰囲気だなと思った。 E-LearningはDSで花開くのだなと思った。 となると、E-Learning用のツク…

パーサコンビネータ

要は、入力トークンリストから、解析結果のツリーと、あまったトークンリストと、成功失敗、を返すパーサを作ると。で、そのパーサ同士を直列、並列につないでより大きなパーサが作れるってことなのかなぁ?(解析結果ツリー, あまったトークンリスト, 成功?…

coins

gccもよいけど、日本人ならcoinsを読むべきなんじゃないかと思った。 思っただけ。

ピストンコラージュ

ピストンコラージュは洞窟物語の作者が作った曲を作るソフトです。 ピストンコラージュの曲をループで聴きたいので、 dllを、ポーティングしてループして再生するようにしました。 implib/system pxtone.lib pxtone.dll とやって、pxtone.libを作成。 // pxt…

ふつうのHaskell

とりあえず、wiki作る章の前まで1日かけて、読みました。 parsecのところが気になってるのですが、力尽きたので、今度読みます。

書き方

OCamlの文法は、カッコを使わないで、かつ、begin,endなんかもない、かつ、 ネストも使わないっていう文法らしく、読みずらい。 特に、C言語風の構文が好きな自分としては、読みずらい。 しかしながら、OCamlの場合はほとんどが式なので、()でくくることがで…

30日でできる!OS自作入門

Haskell入門を買おうと思ったらいっしょにとAmazonで進められていたので買ってみました。 文章が軽いので、頭の悪い俺にも一気に読めました。 PC-9801ではアセンブラ使ってバシバシハードウェアを叩いていたことがあるので、 ATだとこうなんだー。ふーん。38…

仙台でコンパイラ作ってる人とか

探してみました。プログラム友達が欲しいなと思いまして、、、。 で、東北大でSML#っていうのを作っていました。 http://www.pllab.riec.tohoku.ac.jp/smlsharp/ja/ プログラミング言語 Standard ML入門 を出している大堀 淳 教授が作っているものです。 ソ…