プログラミング

Schemeでの「コンパイル時チェック」

R6RS制定の議論メーリングリストで知ったが「R6RSでは (cons 1 2 3) とかはコンパイル時ではねる」という話になってるらしい.でも具体的にどこまでどうするのか,まだ固まってないようだ(素人目にも穴が多い).しかしR5.91RSにそんなことまで書いてあった…

Thunderbirdのメールフィルタ

id:flappphys:20060911#p3 でThunderbirdのソースを引用したが,そのときのメモ: ツール → メッセージフィルタ で出て来るダイアログの実体が /seamonkey/mailnews/base/search/resources/content/FilterEditor.xul で,その中の <vbox id="searchTermListBox" flex="1"/> で呼び出されたウィジェッ</vbox>…

リストのジェネレータ

Mathematicaで単に Table[k, {k, 1000000}] を評価させるとガリガリ言って戻ってこないけど Total[Table[k, {k, 1000000}]] とか Take[Table[k, {k, 1000000}]] は一瞬で答えが返ってくる.つまり単純にeagerな評価をしているのではない.まぁあれだけ成熟し…

JavaScriptでベクタ画像

アホがいるぞアホが(笑) (←賛辞 This JavaScript VectorGraphics library provides graphics capabilities for JavaScript: functions to draw circles, ellipses (ovals), oblique lines, polylines and polygons (for instance triangles, rectangles) …

宣伝文句

「みんPy」こと 柴田,みんなのPython,孫バンク の腰巻には Google言語。 と書いてあるらしい.すごいセンスだ. ... と抜け抜けと書いてる訳ですが自分はどんどん抜かれてる現状をどう考えて(ry(ぉ追記: Pythonは優れたLL言語だと思うけど常用しない…

じょえるの意外な顔

9/1のMatzにっき 経由で知ったが,Joel on SoftwareのJoel氏の会社では自作の言語(トランスレータとして実装)で製品開発をしているらしい.これはJoelファンの多くの抱く想像とは異なっているんじゃないかな.私*1は意表を突かれて驚いた. Wasabi"> I thi…

CalcCenterでローカルな定義

くそ,CalcCenterでも Module が使えるのか... CalcCenterのマニュアルには載ってなくてもdisableされていないMathematicaの関数がちょこちょこあるようだ.(CalcCenterはMathematica Professionalから機能を削った版である.) Module ってのはローカル定…

Mathematicaは1-origin

配列っぽいものは全て「リスト」なんだが(内部の実装がどうなってるかは知らない),添え字が1-originなのはマジでやめてちょうだい... (添え字に "0" も指定できるが,Car部である "List" なるシンボルが返る) んで,配列の添え字を巡回させたいときに剰…

R6RSドラフト

Shiroさんのメール ([gauche-devel] Re: R6RS?) を読んでドラフトを眺めてみた. http://www.r6rs.org/ Revised5.91 Report on the Algorithmic Language Scheme 長い... 140ページって,3倍かよ. こっちは(ちょっと古い)途中経過の抜粋. http://www.sch…

地図を粗く描く

地図を描くとき,折れ線を簡略化する手続きを総描 (map generalization) と呼ぶらしい. http://web.sfc.keio.ac.jp/~masudako/class/geoinfo/simplify.html 地理情報学 > 空間情報の簡略化 ↑にはDouglas-Peuckerのアルゴリズムが有名だと書いてあった.Cに…

ぴらぴら氏のScheme入門

http://pira.jp/scheme/ Schemeを使ったプログラミング 著者氏 (id:yoira) はISの3年生さん(面識はない).面白いことをやっているなぁ. それと,都会の私立や国立の進学校に通っていると色々な組織,人脈に出会えて得なんだなぁ,と改めて思った.

関数定義の抽象化... Cで

えと,Soft Typingについては(まぁ分かるとこだけ型推論というのは誰でも思いつくことでしょう)Soft Schemeの実装についてちょっと解説を読んだら返答させていただきます. 本題: メタプログラミングとmulti-stage programmingとgenerative programmingの…

アイデンティティの危機

Naiveな方法として円電流の作るvectorポテンシャルの解析解に出て来る完全楕円積分をTaylor展開((The Wolfram Functions Site > Elliptic Integrals > EllipticK[z] > Series representations > Generalized power series > Expansions at z==0 および 同 El…

プロファイラが欲しい

相変わらずMathematicaの廉価版CalcCenterを,評価をかねて磁場計算のためにいじってる.思ったより時間がかかっている... まずい. さて,初歩的とは言えいわゆる "number-crunching" (ガリガリの数値計算)に含まれることをやってる訳だが,プログラマと…

Thunderbirdの振り分けフィルタ

Thunderbirdはメールの振り分けでヘッダを見るときにアルファベットのケース(大文字/小文字の違い)を区別してない. nsMsgSearchTerm::MatchArbitraryHeader"> if (curMsgHeader.Equals(m_arbitraryHeader, nsCaseInsensitiveCStringComparator())) { ...…

Mathematicaのノートブック

何が戸惑うって,ノートブックを開くたびに評価しないといけない点だ. Mathematicaではプログラムは「ノートブック」と呼ばれるファイルに書く.単なるソースファイルと違い,それなりにきれいに書式がつくのに加え,計算結果もそのままその「ノートブック…

Rubyの型推論

先輩からこういう発表があるのを教わった. 多相型レコードに基づくRubyオブジェクトの型推論に関する考察 松本 宗太郎(筑波大学 システム情報工学研究科) 南出 靖彦(筑波大学 システム情報工学研究科) http://www.score.cs.tsukuba.ac.jp/~soutaro/ 松…

実務用WebアプリにおけるSVGの利用法

Firefox 1.5固有の話だけど. SVG と XML による実務グラフ作成"> XML、PHP、そして SVG (Scalable Vector Graphics) 標準を使ってビジネス・グラフを作成する方法を学びましょう。 ... ... マイナスの面に気づいたのは、SVG はすべてのクライアントにインス…

線形計画法

IBM DWにLPライブラリの入門が載ってた. The GNU Linear Programming Kit (GLPK) is a library of routines that use well-known operations research algorithms to solve linear problems. The routines implement the simplex, branch and bound, primal…

I(ry

1時過ぎ,codex.umzを1分50秒で復号し,sandmark.umzが13分で終了するUMがCで*1実装できた... つもりなのだが,これ,復号がやっぱりバグっているのか? 進まない... orz みんな面白い面白いと言うが,面白いところまで辿り着けない. 追記: 14時15分.elb…

I(ry

3. How long is the codex supposed to take to run? We have a variety of implementations of the Universal Machine. On a 1 Ghz Pentium M laptop, it takes us approximately 1 minute and 40 seconds to decode the codex. 1 hour and 40 minutes の間…

I(ry

CPU実験(あくまで継続中!)では私は仮想マシンの実装に携わったのだが,なんでまたこんなことを...

GAの本

昨日 サイトおよびヨゼフ,組合せ最適化アルゴリズムの最新手法,丸善 を生協で手に取ってみた.独学の1冊目にしてはちょっと難しいが,その次としては非常によろしい.(内容はGAに限らない; Amazonの目次ページ参照.)適度な抽象化の擬似コードと「お話…

ICFPプロコン

http://icfpcontest.org/ Ninth annual ICFP Programming Contest 友人にSchemeで出ようと誘われた.しかし冷静に考えるとそんな余裕あるのか? 微妙. 私自身はICFPプロコンは全くの未経験.とりあえず感じを掴むために「蟻」を試してみようかと思わなくも…

GAとGP

平野,続・遺伝的アルゴリズムと遺伝的プログラミング,パーソナルメディア に軽く目を通した.「続」とあるが,私のように著者の実装したフレームワークを実際に使うことに興味がなく,むしろGA, GPの簡素かつ具体的な応用例を知りたいだけの読者にはこちら…

Java on Atmel AVR

http://www.harbaum.org/till/nanovm/ NanoVM ---Java for the AVR AVR ATmega8用(使ったことないけど GPL'ed もちろんサブセット 使える領域はスタックとヒープ合わせて 1KB * 75% == 768bytes

ラッチとフリップフロップ

ラッチとフリップフロップの違いが分かった.さらに,どのように記述すればどちらのプリミティブが使われるかも分かった(これは ISE Webpack 7 ならば "Synthesize - XST" 内の "View RTL Schematic" もしくは "View Technology Schematic" から分かる).…

quote

せっかくなので紹介しておきますね(晒しageとも言う). 'a という式は、読み込まれるとき (quote a) に変換される。 ということは (let (''a) quote) は (let )((quote 'a))( quote) になるから a が返るんじゃないかと思ってやってみた。 それを受けたfor…

プログラミング言語Unicode

プログラミング言語Unicodeというものがかつて存在していたらしい.しかしググっても見つからない...

FPGA便利?

http://jp.arxiv.org/abs/quant-ph/0203143 Programmable Logic Devices in Experimental Quantum Optics レーザーのロック回路(要らない周波数成分を除くもの)をいわゆるIIRフィルタとしてXilinxのFPGA上に実装したらしい.これ進言してみようかな(笑 ま…