何か疲れてる
3連休明けの火曜日。桜の開花が次々と発表される中、春は曙。春到来に特有のけだるさが身体に染みつく。だるい。眠い。そして頭痛。仕事はしたくないけれど、やらねばならぬ仕事もある。ということで、お仕事頑張りつつも定時退勤。今日は11月初旬から、ずーっと携わっているスパコン性能問題で暫定対策版リリースに伴う評価と某スパコンに出すソフトウェアパッチリリースに向けての段取りを付けて終わり。性能問題の暫定対策版はようやくまともなものがリリースされて期待というか希望が持てるようになった。帰って、ぐだぐだしながらも、ちょっと勉強。「クラウドを支える、これからの暗号技術」(光成滋生著)を2~3ページ読んだ。この著者は、第6回プログラマのための数学勉強会で、準同型暗号について発表された方で、冒頭で著作の紹介があったため、速攻チェックして購入したもの。今のところは分かりやすく、いい感じ。他にも読みたい本が色々と。まあ、焦らず読んでいこう。とりあえず今日は早く寝る。おやすみ。バイチャ!
3連休明けの火曜日。桜の開花が次々と発表される中、春は曙。春到来に特有のけだるさが身体に染みつく。だるい。眠い。そして頭痛。仕事はしたくないけれど、やらねばならぬ仕事もある。ということで、お仕事頑張りつつも定時退勤。今日は11月初旬から、ずーっと携わっているスパコン性能問題で暫定対策版リリースに伴う評価と某スパコンに出すソフトウェアパッチリリースに向けての段取りを付けて終わり。性能問題の暫定対策版はようやくまともなものがリリースされて期待というか希望が持てるようになった。帰って、ぐだぐだしながらも、ちょっと勉強。「クラウドを支える、これからの暗号技術」(光成滋生著)を2~3ページ読んだ。この著者は、第6回プログラマのための数学勉強会で、準同型暗号について発表された方で、冒頭で著作の紹介があったため、速攻チェックして購入したもの。今のところは分かりやすく、いい感じ。他にも読みたい本が色々と。まあ、焦らず読んでいこう。とりあえず今日は早く寝る。おやすみ。バイチャ!
策略
我が身を守るためならば
あらゆる手段を講じて
策略を躊躇なく弄じる
用意周到にかつ抜かりなく
敵を封じ翻弄させ
非情に徹しなければならない
我が身を守るためならば
あらゆる手段を講じて
策略を躊躇なく弄じる
用意周到にかつ抜かりなく
敵を封じ翻弄させ
非情に徹しなければならない
肩凝った
昨日、今日と久しぶりにアジトに篭り勉強。する姿勢だけで、ほとんど寝てたけど。。。そんなに勉強してないのに肩凝ったーっ。東京の桜の開花が今日発表されたとのこと。3月ももう少し。春だなあ。あんまり肩痛いんで、温湿布貼っちゃったよ。
昨日、今日と久しぶりにアジトに篭り勉強。する姿勢だけで、ほとんど寝てたけど。。。そんなに勉強してないのに肩凝ったーっ。東京の桜の開花が今日発表されたとのこと。3月ももう少し。春だなあ。あんまり肩痛いんで、温湿布貼っちゃったよ。
圏論
私は圏論を勉強して挫折した。そこでこの挫折に対する言い訳をここで書いてみたいと思う。そもそも圏論を語る前にブルバギのことを語ろう。ブルバギはある数学者集団の集まりの称号である。その活動をおおざっぱに言ってしまえばこうだ。数学のあらゆる学問を全て集合の理論をベースに置き換えて、あらゆる数学的事象を全て集合の言葉で汲み取ろうとした壮大なプロジェクトであった。それはある意味成功し、ある意味失敗した。しかしながら数学基礎論などの発展にも大いに寄与し成果をもたらしたことは確かだ。圏論はこのブルバギに代わって、数学的事象を圏論の立場から捉え直そうという理論なのだ。だから圏論をいくら勉強しても何も意味がない。圏論を幾何学やら代数学やらに当てはめて初めて真価を発揮するのである。その最たるものが、グロダンディーグの代数幾何学におけるスキーム論だろう。今は幾何は代数を持って語られるようになった。そしてその構造的な枠組は圏論という結晶を作り上げた。圏論は数学の基本的な考え方の構造を記述する新しい言語なのだ。一旦圏論で語られたものは圏論間で同値性が言える。そうなれば巧みに圏論同士は行き来することができ、問題は違う圏論の中で解決を見ることになる。そこが圏論の面白いところであり、可能性が秘められているところなのだ。圏論は数学言葉の構造である。構造であるがゆえに極力意味を持たない。ここが圏論を勉強をする上での障壁となっているのはやむを得ないことなのかもしれない。
私は圏論を勉強して挫折した。そこでこの挫折に対する言い訳をここで書いてみたいと思う。そもそも圏論を語る前にブルバギのことを語ろう。ブルバギはある数学者集団の集まりの称号である。その活動をおおざっぱに言ってしまえばこうだ。数学のあらゆる学問を全て集合の理論をベースに置き換えて、あらゆる数学的事象を全て集合の言葉で汲み取ろうとした壮大なプロジェクトであった。それはある意味成功し、ある意味失敗した。しかしながら数学基礎論などの発展にも大いに寄与し成果をもたらしたことは確かだ。圏論はこのブルバギに代わって、数学的事象を圏論の立場から捉え直そうという理論なのだ。だから圏論をいくら勉強しても何も意味がない。圏論を幾何学やら代数学やらに当てはめて初めて真価を発揮するのである。その最たるものが、グロダンディーグの代数幾何学におけるスキーム論だろう。今は幾何は代数を持って語られるようになった。そしてその構造的な枠組は圏論という結晶を作り上げた。圏論は数学の基本的な考え方の構造を記述する新しい言語なのだ。一旦圏論で語られたものは圏論間で同値性が言える。そうなれば巧みに圏論同士は行き来することができ、問題は違う圏論の中で解決を見ることになる。そこが圏論の面白いところであり、可能性が秘められているところなのだ。圏論は数学言葉の構造である。構造であるがゆえに極力意味を持たない。ここが圏論を勉強をする上での障壁となっているのはやむを得ないことなのかもしれない。
プログラミング言語一考
私は某企業に入社してから、C++コンパイラの開発に従事してクラスライブラリの開発もやった。それから随分と長い間、コンパイラ型言語一般を見てきた。C++言語はコンパイラ型言語の中ではもっとも複雑な言語であり、欠点も多い、国際規格が決まっているとはいえ、決して現在において十分な移植性があるとは言えない。方言も多い。やっかいな言語であるが、Cと同じくマシンべったりな言語である。未だにシステム言語として、Cと並べて君臨している。その基礎はやはりアセンブル言語にある。コンパイラ型言語は極度に抽象的でありながらも、何とか生成されるアセンブルコードを追うことができる点がメリットである。つまりコンパイラが信用できなくともアセンブルコードを追えば、自分のプログラムがどのように振る舞うのか追跡できる。
しかしJavaが登場したとき、それがいささか難しくなった。メモリ管理をシステム任せにせず、言語の中に内包したJavaシステムでは、ある種ミステリアスな部分が増えた。JITコードは何とか追跡できるが、メモリの追跡となると遥かに難しくなる。しかしOpenJavaの登場でこれまでベールに包まれた内部情報が大分分かってきたが、やはりガベージコレクションなる大仕掛けまでしてメモリ管理をしては、いささか行き過ぎの感がある。
そんなこともあってネットの時代にあってはスクリプト言語の方が相性がよくなり、何と言っても軽い。結構シンプルである。Perl、Ruby、PHP、Python、Javaスクリプトが流行っている。書いて即実行できる点も魅力だ。必要なライブラリは簡素な形で提供されており、まさにネット時代の寵児である。ネット透過性ということもあり、移植性は抜群。あまり処理系内部の動作を知らなくても、書けばネットで動くようになってしまった。そういう意味では、これまでコンピュータ寄りだったプログラミング思考回路は、より人間の脳思考を表現するにふさわしくなったと言えるのかもしれない。
そして今注目のHaskellは完全に数学的な理論に裏打ちされたプログラミング言語である。バックボーンには圏論が理論の裏打ちをしている。ここで数学的な思考回路が直接プログラムに直結する事態にまでなった。まあ研究者受けをするのは間違えない。彼らがもっとも欲していたのは、このような言語だったのだから。
しかし私から見るとHaskellは綺麗過ぎて、泥くささのない言語のように思える。それよりも土着的な言語の方にまだ愛着がある。プログラミング言語はもちろん用途によって使い分ける必要があるが、かようにしてプログラミング言語はマシンから離れ、より人間の数学的な思考回路に則してプログラムできるようになりつつ進化を遂げている。
プログラミング言語にもかような歴史と変遷があるのである。
私は某企業に入社してから、C++コンパイラの開発に従事してクラスライブラリの開発もやった。それから随分と長い間、コンパイラ型言語一般を見てきた。C++言語はコンパイラ型言語の中ではもっとも複雑な言語であり、欠点も多い、国際規格が決まっているとはいえ、決して現在において十分な移植性があるとは言えない。方言も多い。やっかいな言語であるが、Cと同じくマシンべったりな言語である。未だにシステム言語として、Cと並べて君臨している。その基礎はやはりアセンブル言語にある。コンパイラ型言語は極度に抽象的でありながらも、何とか生成されるアセンブルコードを追うことができる点がメリットである。つまりコンパイラが信用できなくともアセンブルコードを追えば、自分のプログラムがどのように振る舞うのか追跡できる。
しかしJavaが登場したとき、それがいささか難しくなった。メモリ管理をシステム任せにせず、言語の中に内包したJavaシステムでは、ある種ミステリアスな部分が増えた。JITコードは何とか追跡できるが、メモリの追跡となると遥かに難しくなる。しかしOpenJavaの登場でこれまでベールに包まれた内部情報が大分分かってきたが、やはりガベージコレクションなる大仕掛けまでしてメモリ管理をしては、いささか行き過ぎの感がある。
そんなこともあってネットの時代にあってはスクリプト言語の方が相性がよくなり、何と言っても軽い。結構シンプルである。Perl、Ruby、PHP、Python、Javaスクリプトが流行っている。書いて即実行できる点も魅力だ。必要なライブラリは簡素な形で提供されており、まさにネット時代の寵児である。ネット透過性ということもあり、移植性は抜群。あまり処理系内部の動作を知らなくても、書けばネットで動くようになってしまった。そういう意味では、これまでコンピュータ寄りだったプログラミング思考回路は、より人間の脳思考を表現するにふさわしくなったと言えるのかもしれない。
そして今注目のHaskellは完全に数学的な理論に裏打ちされたプログラミング言語である。バックボーンには圏論が理論の裏打ちをしている。ここで数学的な思考回路が直接プログラムに直結する事態にまでなった。まあ研究者受けをするのは間違えない。彼らがもっとも欲していたのは、このような言語だったのだから。
しかし私から見るとHaskellは綺麗過ぎて、泥くささのない言語のように思える。それよりも土着的な言語の方にまだ愛着がある。プログラミング言語はもちろん用途によって使い分ける必要があるが、かようにしてプログラミング言語はマシンから離れ、より人間の数学的な思考回路に則してプログラムできるようになりつつ進化を遂げている。
プログラミング言語にもかような歴史と変遷があるのである。
たくましい女
どうしようもなくお金が欲しくて
でもきれいでもなく器用でもないから
水商売も風俗も面接で落ちて
でもどうしようもなくお金がないから
男を騙しては金をせしめる
かようにして女はたくましく生きるのだ
かような女を私はいとおしく思う
どうしようもなくお金が欲しくて
でもきれいでもなく器用でもないから
水商売も風俗も面接で落ちて
でもどうしようもなくお金がないから
男を騙しては金をせしめる
かようにして女はたくましく生きるのだ
かような女を私はいとおしく思う