タグ

ブックマーク / alohakun.blog7.fc2.com (39)

  • ホワット・ア・ワンダフル・ワールド ファミコンプログラミング

    一番身近な 8 bit CPU ということで. しかし,思ったよりも情報が少ない.以下のサイトが有名らしい.というか,非常に素晴らしい決定版サイト. ギコでもわかるファミコンプログラミング まだオープンソースの時代とかじゃなかったし,極めて厳しいハードウェアリソース上でのプログラミングにならざるを得ないため,ロストテクノロジーの塊.リソースが厳しすぎるので,C コンパイラとかもあるにはあるけど,使えない感じ… あと,こういうゲーム機の hack は,どうしてもアングラ的になってしまうのでいろいろアレ.さすがにファミコンぐらい枯れてると,生々しさは消えてくるけど. ファミリーコンピュータ : wikipedia.ja 1.8 MHz の 6502 互換 CPU に,2 KB の RAM + 2 KB の VRAM.よくこんなハードで,女神転生とかドラクエが実装できたものだと,驚愕するしか

    kohagi
    kohagi 2008/03/04
  • ホワット・ア・ワンダフル・ワールド Continuation based Distributed Computing

    Author:あろは (alohakun) WAKATSUKI toshihiro 連絡先 : alohakun ___at___ gmail.com mixi : http://mixi.jp/show_friend.pl?id=182927 twitter : http://twitter.com/alohakun abstract プログラミングという人間の知的行為を体系化し,単なる職人芸ではなく,サイエンスにするための研究をしています. 具体的には,等価変換計算モデルに基づいた,仕様記述からのプログラム合成の研究をしています. もっと噛み砕くと,プログラムの正しさをどのように定式化し,どのような枠組みで,どのように変換を進めていけば,正しさを保証したまま,効率的なプログラムを手に入れることができるのか,ということについて研究しています. キーワード : equivalent tra

    kohagi
    kohagi 2008/02/16
    『continuation も goto も,それ自体ではアセンブラと変わりません.一般的なぶん,何の構造も無いので,強力過ぎるのです.「それ継続でできるよ!」ってのは,「それアセンブラで書けるよ」ってのと変わりません.』
  • ホワット・ア・ワンダフル・ワールド SIGSS 島根行ってきた & ひらさんに会った

    kohagi
    kohagi 2007/12/29
  • ホワット・ア・ワンダフル・ワールド prolog とは前から後ろから行きつ戻りつ非決定的に一体化を試み続け快を求めることにより計算を行うロンリー型言語です

    今日の twitter でも @m0h1can という偉大な prologer によって多くの名言が生まれました.新しい言語を覚える際に最も優れた方法は,その言語で書かれたポルノ小説を読むことだそうで,まっことエロスの力は偉大ですね. これは素晴らしい他言語紹介.次のるびまに載るね! m0h1can twitterだけ見てる人はprologという処理系をエロゲか何かと間違わないか心配でなりません m0h1can prologというのは"バック"したりしながら、一体化を行う事で快を求めるプログラミング言語です m0h1can 他の言語で"バック"トラックする言語はそうそうありません、これがprologの(気持ち)良さです m0h1can 学校では人工知能の講義の中や論理学の中でprologを教えますが間違いです。保健体育の内容です m0h1can 第五世代コンピュータの研究開発がかつてあって

    kohagi
    kohagi 2007/12/06
    『m0h1can 「個」の時代が到来したというけれど、人の世は遠い昔からちん「個」とまん「個」の時代だった 』
  • ホワット・ア・ワンダフル・ワールド 2ch コピペブログ始めました

    Author:あろは (alohakun) WAKATSUKI toshihiro 連絡先 : alohakun ___at___ gmail.com mixi : http://mixi.jp/show_friend.pl?id=182927 twitter : http://twitter.com/alohakun abstract プログラミングという人間の知的行為を体系化し,単なる職人芸ではなく,サイエンスにするための研究をしています. 具体的には,等価変換計算モデルに基づいた,仕様記述からのプログラム合成の研究をしています. もっと噛み砕くと,プログラムの正しさをどのように定式化し,どのような枠組みで,どのように変換を進めていけば,正しさを保証したまま,効率的なプログラムを手に入れることができるのか,ということについて研究しています. キーワード : equivalent tra

  • ホワット・ア・ワンダフル・ワールド v9fs

    やっぱり,Plan9 は理想的なんだけど,戦わなきゃ現実と,というわけで. 関数型言語がメジャーになることに期待するよりも,時間はかかってもその DNA を C++ とか Java とかみたいな産業言語が取り込んで進化していく方向に期待する方が現実的なように,Plan9/Inferno を実用的にするよりも,Linux を Plan9 に近づける方が現実的なんじゃないかと.しばらくそっち方面の可能性を模索してみよう. 幸いなことに,linux の 2.6.14 から,Plan9 の filesystemlinux の main tree にマージされたそうだ. Plan9 日記 2006-12-13 ■[Linux] v9fs Debian の kernel module パッケージが全然見つからなくて,情報も全然無くてえらい困ったんだけど,実はデフォルトのカーネルモジュールに普通に

    kohagi
    kohagi 2007/10/24
    「PC UNIX の癌は X のような気がしてならないんだよなぁ… あれだけ完全に異質なシステムで,どうしてもツギハギ的印象を感じる.」「Linux Kernel がいくら進歩しようとも,どこまでも X に足を引っ張られる気がする」
  • ホワット・ア・ワンダフル・ワールド m17n

    kohagi
    kohagi 2007/10/18
  • ホワット・ア・ワンダフル・ワールド 29 年間生き残ってきたってだけですごいと思うけどなぁ

    強さがインフレし,一人の天才に全ての運命が委ねられ,大多数はの手にすぎなくなり,勝ち組と負け組が明確に分かれる格差社会.ドラゴンボールの世界は,現在の疲弊しきった社会を預言していたとも言える.地球人はどれだけ努力したところで,サイヤ人には勝てない. そんななか,若くて血気さかんな連中の 「問題はとりあえず力で解決する.ダメだったら血反吐はいて修行して,最後は気合いで倒す」 というパラダイムの世界で,ミスター・サタンの 「ダメだったら対話と裏工作でやんわり解決しようとする」 という姿勢は異彩を放っていたと思う.そして,一時的とはいえ,誰もが成し得なかった,最強の敵・魔神ブウとの和解にも成功している.まさしくテキトーな嘘をついて誰一人傷付けない日曜日よりの使者.それは長期連載でマンネリ化した現代社会の縮図に,鳥山明先生が埋め込もうとした一筋の希望の光なのかもしれない.誰も彼もが孫の一族を目指

    kohagi
    kohagi 2007/10/16
    「誰も彼もが孫の一族を目指す必要は無い.ミスター・サタンのような勝ち方もあるのだ,と.」
  • ホワット・ア・ワンダフル・ワールド xyzzy は非常に素晴らしいのではなかろうか

    いまさらながら気付きました. xyzzy とは,素晴らしいエディタが付いてる Windows 用 Common Lisp 処理系のことです (笑). 準拠度は 6 割とのことですが,それでも凄すぎです (確か,CLtL2 (第二版仕様) では,関数だけでも 500 ぐらいあったような.データ構造も,リスト配列ハッシュ構造体クラスタプルシンボル文字列 fixnum 有理数複素数多倍長数… と選り取りみどりです). 亀井哲弥さんというスーパハカーが開発しました.湯淺太一先生と萩谷昌己先生の KCL (Kyoto Common Lisp.世界初の CLtL1 実用処理系.後に GNU に寄与され,現 GCL) といい,日人の Common Lisp への貢献には目を見張るものがありますね.素晴らしい. やる気のないこと山の如しなぺぇじ てきとーに解凍して,アイコンをだぶるくりっく ! 後は S

    kohagi
    kohagi 2007/10/10
    「Common Lisp は S 式で書く C 言語」
  • ホワット・ア・ワンダフル・ワールド 実力が評価されない実力主義の世界

    Aha ! 知識自体はどうでもいいんだけど,一般的に知識ってのは,その人の生き方,普段の姿勢の現れでもあるとは思う. オレサマ 「餃子」 マルカジリ 2007-08-08 どうやら業界とは恐ろしいとこらしい そこでその先輩が「コードなんて誰でも書ける、アルバイトでも雇えばいい」と笑っていたのだが・・・ 失礼だとは思うが、日のソフト開発のレベルが低いのは、こういう分かってない人々が、訳知り顔で「プログラミングとは・・・」みたいな講釈を後輩にするからだと思う。 2007-08-09 もういや ■明日、会社に行って、先輩に会って、挨拶して、与太話を聞かされて、聞かされて、聞かされ続けて、帰宅する そんな彼に「技術仕事をしていれば、勝手につく」なんて言われたくないのである。 Passer-by 『俺の会社の上司(バブル期入社、当時プログラミング未経験)は、「そうか、if は関数だもんな〜」と言

    kohagi
    kohagi 2007/10/10
  • ホワット・ア・ワンダフル・ワールド Virtual, Ideal, Imaginary

    Virtual Machine を 「仮想機械」と訳したのは,いろいろと誤解を招いてけっこうマズいんじゃないかとふと思った. 僕の感覚だと,「仮想」ってのは,何となく「物じゃない」みたいなニュアンスがあるような気がする. Virtual Machine の対義語って何なのだろう ? Real Machine (実機) ? 実機の対義語は,虚機 ? なんだかおかしいよね. 確かに,Virtual Reality とかを 「仮想現実」と訳すと,「虚構の世界」「偽物の世界」みたいなニュアンスを感じる人が多いのではなかろうか ? だけど,これらの用法の Virtual に込められた来の意味は「事実上の」「(Real と)区別がつかない」という方の意味な気がする. 英辞郎 on the Web # virtual 【形】 1. 実質上{じっしつじょう}の、事実上{じじつじょう}の、実際上{じっさ

    kohagi
    kohagi 2007/10/04
  • ホワット・ア・ワンダフル・ワールド チューリングマシンの抽象化の漏れ

    ふじさわさんとこの shiro さんのコメントを見て. たぶんこの議論は最初からいろんな要素がごっちゃになってて、私もよく区別せずに乗っかっているのでますます発散しちゃってるんですが…確かに「論理的な意味で下層と独立している」っていう話と、「現実に計算機を使いこなす上でどこまで降りる必要があるか」って話があって、あろはさんのコメントとかは前者だし、性能のチューニングのために中身を知る必要があるとかいうのは後者ですね。 『抽象化の漏れ』 ってのは,良いというか,説明のために便利な言葉だなと. 「世界の究極理論は存在するか - 多宇宙理論から見た生命、進化、時間」 という,量子コンピューティングの偉い人が書いたがありまして,このは凄い過ぎてまだ消化不良なんですけど. んで,このの内容は,「チューリングマシンという数学的抽象化の漏れについて記述した」 という風に,この言葉を使うと簡潔に

    kohagi
    kohagi 2007/09/15
  • ホワット・ア・ワンダフル・ワールド 全てのプログラミング言語は C コード生成器と割り切るべき

    これは至言だと思う. イネムリネズミ日記 2007-06-17 梅雨が中休みするなら俺だって 業務系のシステムを作りたい人には申し訳有りませんが、世界の進歩のスピードは言語の成長のスピードを超えています。バグのない、安定したプログラムを作りたければ、熟練したプログラマに C で書かせるのが最も良い選択肢でしょう。バグがあるかもしれないけど、とりあえずできればいいや、ナンチャッテ、次のリリースで直すから許してチョという代物は軽量言語で書くのを僕はお勧めします。 僕にとって、軽量言語とはそういうものです。 しかし,いくらなんでも C コードを最初から人間が手書きするような時代では無い.C/C++ では,マシン間の互換性を取るだけでも,ifdef の塊になるし. となると,Haskell とかで型システムなどによる検証済みの C コードを吐くとか,そういう方向になってくる.つまり,Ruby とか

    kohagi
    kohagi 2007/06/19
  • ホワット・ア・ワンダフル・ワールド THE HISTORY OF HASKELL の翻訳

    Author:あろは (alohakun) WAKATSUKI toshihiro 連絡先 : alohakun ___at___ gmail.com mixi : http://mixi.jp/show_friend.pl?id=182927 twitter : http://twitter.com/alohakun abstract プログラミングという人間の知的行為を体系化し,単なる職人芸ではなく,サイエンスにするための研究をしています. 具体的には,等価変換計算モデルに基づいた,仕様記述からのプログラム合成の研究をしています. もっと噛み砕くと,プログラムの正しさをどのように定式化し,どのような枠組みで,どのように変換を進めていけば,正しさを保証したまま,効率的なプログラムを手に入れることができるのか,ということについて研究しています. キーワード : equivalent tra

    kohagi
    kohagi 2007/05/28
  • ホワット・ア・ワンダフル・ワールド 括弧の無い Lisp

    Author:あろは (alohakun) WAKATSUKI toshihiro 連絡先 : alohakun ___at___ gmail.com mixi : http://mixi.jp/show_friend.pl?id=182927 twitter : http://twitter.com/alohakun abstract プログラミングという人間の知的行為を体系化し,単なる職人芸ではなく,サイエンスにするための研究をしています. 具体的には,等価変換計算モデルに基づいた,仕様記述からのプログラム合成の研究をしています. もっと噛み砕くと,プログラムの正しさをどのように定式化し,どのような枠組みで,どのように変換を進めていけば,正しさを保証したまま,効率的なプログラムを手に入れることができるのか,ということについて研究しています. キーワード : equivalent tra

    kohagi
    kohagi 2007/05/28
  • ホワット・ア・ワンダフル・ワールド 人間が情報を与えるか,機械が推論して情報を増やすかという違い

    型宣言と型推論とか,手動メモリ管理と GC とか,要するに全部,人間が手で情報を与えるか,機械が推論するかということに一般化できると思う. んでまぁ,一般にうれしいのは,最初のプロトタイプは人間が不必要なことまで考えなくても動いてくれて,後々必要になってきたらボトルネック部分に情報を追加してあげると,さらに最適なコードが出る,ということをインクリメンタルにやっていけるようなモデルだと思う. その点,手続き型言語ってのは,細かいところまでを最初からいきなり全部指定しないといけないから,人間の脳に対する負荷がデカいし,柔軟性も失われてしまうし,機械がプログラムの意味を変えないで最適化できる余地も無くなってしまう.というようなことは,これまでにも散々書いてきたことなので,まぁ良いとして. いろいろ気になった記事があったので,単なるメモ. lethevert is a programmer のコメ

    kohagi
    kohagi 2007/05/13
  • ホワット・ア・ワンダフル・ワールド デバッガを勉強しよう

    今回,初めてまともに gdb を使いました.ちょーいまさらで,すいませんすいません.生きててすいません. ことの経緯は. マイミクの組込み系の偉大な御方が,最近仕事で gcc のバックエンドを作り始めたそうなんですが. gcc はデバッガで完全に動作を追いかけられるのでどこで何をやってるのかを見るのは比較的楽なんだけど,逆にデバッガ無しでソースコードだけを読むのは無理.理解する頃にはエンジニア人生が終わってそうだ. とのこと.linux kernel のコードをスイスイ追っていたような人でもこうなのだから,やっぱり gcc のコードは頭おかしい魔窟なのだろう. 僕は 「ソースコード -> GENERIC」 のあたりをちょろっと見たことがある程度なんですが,「GIMPLE -> RTL -> アセンブリコード生成」 のあたりは関数ポインタ使いまくりなので,コードだけを追っていくのはほぼ絶望的

    kohagi
    kohagi 2007/02/03
  • ホワット・ア・ワンダフル・ワールド はじめての C (ommon Lisp)

    さてと,とりあえず Common Lisp でもイジってみっぺかと. CMUCL - CMU Common Lisp を見てたら,「Common Lisp で実装された Emacs ライクなエディタ」 という一文を発見し,おー,Linux にも xyzzy みたいなのがあったのかー と.CMU (名門カーネギーメロン大学ですな) の Common Lisp 実装に手を出してみることに. # apt-get install cmucl-clm cmucl-docs binfmt-support cmucl-clm ってやつが,たぶんエディタか IDE なのかなー と思ってインストールしてみたのですが,どこにもコマンドが無い… まぁいいや.気にしない. さーて何を試そうかな.やっぱり,CL っつったら,(declare (optimize (speed 3) (debug 0) (safety

    kohagi
    kohagi 2006/12/30
  • ホワット・ア・ワンダフル・ワールド 遅延評価を効かせた小粋な tail

    どうでもいいプログラムとブログをノリノリで書きすぎだ ! レポートも書かないでこんなことばっかり情熱大陸… 気が付いたら世が開けて,黄色い太陽がサンサンとサンシャイン.すっかり生活ペースが狂いまくって 14 時に起きると言う当に世間のルールよすいませんな今日この頃,みなさまいかがお過ごしでしょうか ? しかし,バッチリ狙い通り,私が尊敬する素晴らしい人たちから多数の反響があったので,麿は満足です. 「入門 Haskell」の著者,向井さんからコメントをいただきました. check n = not . null . drop n doTail n = unlines . head . dropWhile (check n) . tails . lines main = getContents >>= print . doTail 10 とかすれば reverse を使わず遅延評価を効かせた

    kohagi
    kohagi 2006/10/12