「ループの検出」の木への拡張

単方向リンクトリストがループしていることを検出する巧妙なアルゴリズムとして、ポインタを2個用意し、片方をひとつずつ、もう片方はふたつずつ進めてゆき、同じノードを指すようなことが起きたらループしている、というものがあります。 これを木に対して…

実装言語と被実装言語の界面

(一応、他人のツイートを見て思いついたことなのですが、元のツイートではどちらかというとインタラクティブな環境を実現することに主眼がある感じで、ここに書く話ではそれには触れないのでそのへんは省略します) Lispの評価器(インタプリタ)をLispで書…

メモ

ダラーラ(Dallara)SF14のモノコック、エンジンマウント-コクピットシェル部分 (エコパで撮影)

Takeuchi Numberの計算もするたらいまわし関数

竹内先生のたらいまわし関数をコンピュータプログラミング言語処理系のチェック等の目的で使う場合、処理系自体が正しく動いているかどうかのチェックとしては、返す値のチェックだけでは不安があります。計算時間の測定であるていどの傾向はわかりますが、…

高橋先生のこと

昨日、和田先生がこのようなツイートをされていた。 6月30日は高橋秀俊先生が逝去されて30年. 情報教育に尽力された高橋延匡先生も2002年の6月30日逝去. 老後まで計算好きだった山内二郎先生は1984年の3月31日逝去(4月1日生!). こういう区切りに死去するのは…

Cobolでピリオドを忘れると何が起きるのか

参考文献はこちら定本 入門COBOL作者: 西村恕彦,植村俊亮出版社/メーカー: オーム社発売日: 2012/01メディア: 単行本 クリック: 1回この商品を含むブログ (1件) を見る 言語仕様の確認 まず、Cobolのif文は次のようになっている。 ここには説明が無いが、書…

こち亀における「ドローン」の説明について - 「本来ドローンとは自律機のこと」ではない

緊急性がある(あまり広まる前に対処したい)ので、ごくざっと書きますが... 「こち亀」で、本来ドローンとは自律機のこと、みたいな説明があったようですが(画像)、 間違いです。 クアッド(マルチ)コプターが流行る直前に「ドローン」という言葉が多く…

"Algebraic Expression Evaluation in FORTH" の解説

Lisp、そしてForthのような「中置記法による式の構文」の無い言語に対して最も良く聞く不満が、なぜ直感的にわかりやすい中置記法が使えないのだ、ということでしょう。当然ながらそれに対する長年の反論もありますが、中置は小学校の算数以来ずっと親しんで…

2N3904のSPICEモデルに関して(第1報)

続報の予定は未定ですが、とり急ぎ急所のみ。 2N3904のSPICEモデルをネットで検索するといくつかパラメータセットが出てきますが、その中でSPICEによってはまともな動作をしないものがあります。もし、パラメータのISE(B-E leakage saturation current)の…

BadUI: テンキーの排列はいまさら統一できないとはいえ、これはちょっと……

歴史的に、電話関係ではダイヤルというメカニズム上の都合で、1から始まって9の次に0(10)があるという数の体系になっていたことなどの理由から、計算機関係とはテンキーの排列が逆になってしまっています。 そのため現在でも2種類のテンキーの排列が混在して…

メモ

((追記)現在は問題の点は修正されています。) 坂村:それは少し、誤解があるなあ(笑)。当時の日本のコンピュータメーカーは、みんな大型計算機からIBMコンパチ(IBM互換パソコン)に切り替えてビジネスを展開していました。 そこで通商産業省(現経済…

関数型界隈の過去のエイプリルフール

(他にもリクエストありましたらガンガンお寄せください) (4月1日ではないが)CLtL2のIndexには「kludges, 1-971」というエントリがある(参: http://blog.practical-scheme.net/shiro?20040719 ) (エイプリルフールやジョークではないが)Haskell 1.0 repor…

「Unix」と「UNIX」

一般に、登録されている商標のソレがUNIX(R)であることから、認定・ライセンスのもとにあるものを特に「UNIX」、同様のAPI(いわゆるPOSIX)を実装したものを総称するのは「Unix」のように使い分けられており((追記) ただし英文字の文字商標は効力としては…

エレクトロニクスの初期(主に真空管。半導体は除いた)の展開

ざっと。 エジソン効果の発見(1883年) エジソンが1883年に、電球のフィラメントの近くに別の電極を置くと、フィラメントとその電極の間に電流が流れることを発見。2極管の基本原理であるが、エジソンによる発展は無かった。 2極管の発明(1904年) ジョン…

BadUI: リバーシブルな札の裏側が室内から見える ――「営業中」or「準備中」程度なら良いのですが

ぶら下げるタイプの札で、両面ともに字が書いてあるものがあります。たとえば定食屋などでは、片側が「営業中」その反対側は「準備中」となっていて、適宜ひっくり返すわけです。 ガラス戸の場合、室内側からは逆の状態の表示が見えてしまうわけですが、定食…

チカチカするランプ

'80s以降の「そろそろおっさん」より若い世代には、ランプがチカチカしてるコンピュータと言えばコネクションマシン( http://people.csail.mit.edu/bradley/cm5/ )だと思うが(いや、そもそも平成生まれだとコネクションマシンは知らないか? なお私が知っ…

「お題:pingコマンド」をRubyで

Shiroさんの「お題:pingコマンド」( http://blog.practical-scheme.net/shiro/20141013a-ping )をRubyで書きました。 「Rubyではじめるインターネットプログラミング」第8回( http://www.notwork.org/ipr/article/serial08.html )のコードを参考にしてい…

大崩海岸区間焼津側、当目トンネル手前まで、2014年夏撮影

(通行車両とかが写ってないのは(終端部以外は)タイミングを図って撮影したためであり、この時間であればある程度の交通量はあります)

BadUI: ドアノブの可動範囲が狭すぎてロックが掛かっているものと誤認

ドアノブを回転させて「フ」の字の形のラッチをひっこめて開けるタイプのドアは多いですが、その原理上強いバネは必要としませんから、構造上はノブの可動範囲はかなり小さく、手応えは軽くできます。 しかし先日、次のようなドアノブに実際に遭遇しました。…

あの夏の日、僕等は確かにJAISTにいた

そのうち公式サイト( http://www.jaist.ac.jp/elis-revival/home.html )に発表資料の一般公開版が置かれるだろうのでその時に...と思っているうちに、いつのまにか放置してしまったのだが、とりあえず写真とかで公開できそうなものを公開にしておこうと思…

静的スコープと動的スコープ・浅いアクセスと深いアクセス

目的 静的スコープと動的スコープ・深いアクセスと浅いアクセスについて、現代的でまとまった解説が検索では見つからないようなので書いてみる。 余談1: スコープとエクステント プログラミング言語において「スコープ」(可視範囲)と同様程度に習得すべき…

メモ: 有理ベジェ曲線による円弧

次のような2次有理ベジェ曲線(有理2次ベジェ曲線)により円弧(近似ではなく真円の弧)を描くことができる。 中心角: \( \theta \) 端点 P1・P2: 重み 1 制御点 Pc (両端点の接線の交点): 重み \( \cos\left(\theta/2\right) \) 円を描きたい場合は3等分す…

Arduino leonardoはUSB機器としてちょっと特殊だ、という話

ひとつの機器に複数の機能が付いてるようなUSB機器には、実は異なる構成があり、一例としてArduino leonardoはちょっと特殊だ、という話です。 USB compound device まず、論理的にはハブにぶら下がってるようなのがcompound deviceですが、これはOS側から問…

チャート式(参考書)とかアルフォート(チョコレート菓子)とかの帆船

チャートとアルフォート完全に一致wwwwwwwwww URL2014-05-04 20:02:55 via Twitter for Android(画像 https://twitter.com/Taisay_Nothing/status/462910236186013697/photo/1 ) 元ネタなんかあるかな? > チャート式とアルフォートの船の絵2014-05-04 22:46:39 via …

マクロ、拙作のテキストマクロ言語m55について主に

テキストマクロプロセッサとは何か Lispのマクロはテキスト変換ではなく、リスト(ないし多分木)からリストに変換するものですから、まず除外されます。とは言えたいていのプログラマがマクロと言ってまず思い浮かべるのはCプリプロセッサでしょうから、こ…

m4のifelseをプリミティブでなく定義する

ifelseマクロ マクロプロセッサm4にはifelseというプリミティブがあり、次のようにして条件分岐(条件式)をマクロとして書くことができます。 $ cat sample.txt define(`foo',``hoge'')dnl define(`bar',``hoge'')dnl ifelse(foo,bar,`true',`false') defin…

プリティプリントという語の幅について ――主としてジャーゴンファイルを参考に

ジャーゴンファイルの「prettyprint」には、語義1としてこうある。 To generate ‘pretty’ human-readable output from a hairy internal representation; esp. used for the process of grinding (sense 1) program code, and most esp. for LISP code. http…

strftimeの %G とは何か?

手元のFreeBSDでman strftimeとしてマニュアルを読むと、 %G is replaced by a year as a decimal number with century. This year is the one that contains the greater part of the week (Monday as the first day of the week).とあります。これだけでは…

RISCじゃないものはCISC?

坂村先生がなにかで引用してたのだが、パタヘネのパターソンさんが、バークレーRISCの論文の再録にあたっての著者による解説の中で、原論文では8086は「複雑vs単純」の単純のほうとして例示している(比較対象はiAPX432)のに8086をCISCとか誰がwwww みたい…

ce3tosvg について

GitHubに置きましたが( http://github.com/metanest/ce3tosvg )、水魚堂さんの「水魚堂の回路図エディタ」BSch3V( http://www.suigyodo.com/online/schsoft.htm )の保存形式である .ce3 ファイルから、直接SVGファイルを生成するスクリプトです。(私が…

先日見たリマスタ版の初ゴジのメモ

運良く連絡もつき、特撮ファンの元同級生と見ることができました。以下メモ 博士のカメラはキヤノンか? 芹沢博士宅の居間のラジオ...「オンキヨー」? 居間ではなく地下の秘密研究室にテレビがある 本部でちらっとテレビが映るが、地下室のセットを模様替え…

NSLで一斉射撃問題

一斉射撃問題の一次元セルラーオートマトンをNSLで作ってみました。 一斉射撃問題自体についてはWikipedia(wikipedia:en:Firing_squad_synchronization_problem)を見てください。 {m55_changebracket|`${'|`}$'}${m55_dnl}$ ${m55_changepre|@}$${m55_dnl}…

「NASAがワープ宇宙船」の件

報じているのが cnn.co.jp なのでわりと広まってる感じがするのですが、ざっと検索したりしてわかった範囲のことをまとめてみます。 これがワープ実現の宇宙船――NASAが画像公開 写真特集:これがワープ実現の宇宙船 これはそんなにガチで検討されたイラスト…

XSLとSVGで「プログラムでシダを描画する」

XSLとSVGで(JavaScript無しで)「プログラムでシダを描画する」をやってみました。再現度は低いですが、これ以上描き込むと処理が重くなり過ぎるのでこの程度で止めています。リンク先を見てください(注意: ものすごく処理が重いです。手元の環境で、15秒…

XSLとSVGで描く高木曲線

jsdoに投稿しましたが( http://jsdo.it/metanest/mDKW )jsdoではXSLとSVGを見るのが面倒なので、ここでフォローしておきます。高木曲線自体についてはウィキペディアを( wikipedia:高木曲線 )参照してください。 まぁ見たままですので、解説は特に必要な…

一人GitHub会議・お気に入りのX言語のシンタックスハイライトがおかしかったらどうすればいいのか?

6/1開催のGitHub会議( http://githubkaigi.org/ )合わせのネタです。 お気に入りのX言語のシンタックスハイライトがおかしかったらどうすればいいのか? たとえばAwkスクリプト(例: https://gist.github.com/metanest/8747791 )のシンタックスハイライト…

マージソート解説

最初にソースコードを示します。 まずimportで、ちょっと変なことをしていますが、これはstream-fusionパッケージのリストインタフェースを使うためのおまじないです。Preludeから隠す名前を明示するのでも良いのですが、ここでは使う名前のみをインポートす…

foldrでタプルを渡す場合の注意

foldrはその定義から、無限リストに対しても使うことができますが、時には注意が必要です。たとえば、タプルを受け渡すような場合には注意しないと、無限リストに対して止まらなくなります。Stackoverflowで見掛けたリストを2本に分けるコード http://stacko…

Windowsの(NTFS)起動パーティションの移動とHidden Sectors

作業した時にはさんざん困ったのに、メモを残していなかったので、有用であれ、という意図のもとに公開メモとします。以下Unixのddユーティリティを普通に使える程度のスキルを想定した説明です。NTFSパーティションは、ddでまるごとコピーしても一応問題な…

JavaScript でコマンドラインアプリを書く時もイベントループを無視したらダメ(なことがある)という話

先日書いた電卓に関して、そのための十進演算ライブラリのテストを書いていてはまった、という話。一般に JavaScript によるブラウザアプリはイベントドリブン型で書かないといけないわけだが、総当たりチェックのコマンドラインアプリを作り Node.js で実行…

電卓考(draft)

世界で最もポピュラーなディジタルガジェットと思われる電卓であるが、いろいろと考えてみるに、歴史的な理由による制限や互換性を保つために不自然な設計になっている部分があるように思う。特にコンピュータ上のGUIアプリでは、たとえばコストを気にせず表…

chainl の正体

山本さんの「chainl と左再帰」( d:id:kazu-yamamoto:20110127:1296098875 )を読んでいて(ほんの)少々混乱したのと、Parsec の chainl は、結局どうやって使ったらいいのよ、というのを簡単にまとめておく。背景説明はどうでもいい人は最後のサンプルま…

『教養としてのプログラミング講座』と『入門 コンピュータ科学』と『はじめてUNIXで仕事をする人が読む本』

なんとなく相補的な関係にありそうな本がまとまって出た気がするのでちょっと書いてみる。 「ケンカ剣法」なる剣法がある。ちばてつやさんの漫画『おれは鉄兵』の主人公、上杉鉄兵の剣法で、正統じゃないんだけれども滅法強い、という。正統派というのは極め…

数値計算や事務処理以外にも、黎明期(1960年代)からコンピュータの応用はあった、という話

コンピュータ史ってどうしても情報屋さんか計算屋さんからの視点になりやすいけど、生産プロセス管理とかフライトシミュレータとかの応用も黎明期からある2014-04-10 14:58:19 via mikutterこんなツイートをしたわけですが、実例とかを挙げてもうちょっと書…

LSI C-86 の最適化

ちょっと前にうろおぼえでこんなツイートをしていたのですが、 末尾再帰の最適化は、トイ問題な例だけど、階乗の関数をLSI C-86試食版コンパイラにループにさせるのが面白かったな。引数の順序とかをいじると、かなり人間が書くようなコードに近づく。2014-0…

M4の定義混在モデルにより可能なこと

M4入門( http://metanest.jp/m4intro/ )のサプリメンタリーのような内容です。 M4は基本設計がシンプルイズベスト、という感じのところがあり(ストレイチーさんによるGPMはたった250語で実装されていたそうです)、いろいろと「現代風に作り直したら?」…

いくつか思っていること

(メーヴェを実物化したOpenSkyプロジェクトの機体を設計した)オリンポス飛行機のレポート『ソーラープレーン』( http://www.ac-olympos.com/report/report05.html )を見て、日頃思っていることといくつか一致したのでメモ。 『鳥人間コンテスト』の人気…

サンストリート浜北への交通機関

自家用車等 よーするに完全なロードサイドの(超)大型ショッピングモールですので。 遠鉄浜北駅まで輪行、駅から自転車 歩けない距離でもなくもなくもない、ぐらい。自転車(たぶん A-bike でも)ならたいした距離ではない。 集団で行って浜北駅からタクシー …

unexpand.awk の解説

Gist https://gist.github.com/metanest/8747791 なんでこんなものを作ったのか きちんとインデント付けされたソースコードであれば、少々の微妙な点もありますが、expand(1) と unexpand(1) を適切に組み合わせて、任意のインデントスタイルに変更できます…

'80s Raleighレストア日記(ものすごく不定期)BBが届いた