読み書きプログラミング

日常のプログラミングで気づいたことを綴っています

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

Maximaプログラミング

Smalltalkとは違うMaximaのプログラミングの面白さはなんだろうとつらつら考えたのですが、Maximaのシンボルは本当にシンボルで、シンボルを評価するかどうかは構文が決めるところかと思いました。 Smalltalkだと、シンボルは同一性の強い文字列であって、構…

Maximaで回路解析

スイッチング電源は、LとCとRのネットワークをFETやダイオードで切り替えることによって動作する回路で、回路トポロジーが変わらない限り、線形で容易に解くことができる回路になります。FETやダイオードの状態が変わると回路が変わるので、そこまでの値を初…

素数

Maximaには、next_prime(n)というnより大きな最初の素数を求めてくれる関数があるのですが、10の400乗を入れてもわずか9秒で計算してくれます。しかもメモリもほとんど食わない。10の500乗にしたらようやく117秒考えてくれました。 検定に必要な最大の素数は…

Squeak 3.10

Squeak 3.10がftpで公開されました。パッケージ化が進んで、3.9からずいぶん変わった印象です。 特に、squeak-devという開発者用パッケージを入れると、World自体が変わって新鮮です。ねずみがいなくなる!(追記:始めからいませんでした。だいぶ惚けてきた…

制約プログラミング

どうも鈍くていけません。 何年か前のInternational Conference on Creating, Connecting, and Coolaborating through ComputingのSqueak Birds of a Featureで、制約プログラミングをさりげなく使ったスプレッドシードのデモを見せていただいて以来、より仕…

Maxima Tip

Maximaで連立方程式を解かせると、解が等式のリストのリスト形式で返されます。 (%i1) solutions : solve([tsuru+kame=8,2*tsuru+4*kame=26],[tsuru, kame]); (%o1) [[tsuru=3,kame=5]] その解を使ってある式を評価したいときには、ev()を使います。 (%i2) k…