はてなキーワード: Lispとは
リマインドしようにも、これを書いた人(=自分)の学力だと読めない本だったから無理。無理ゲーだった。
第一章
1
意味論的に透明なシステムと結びついた心の概念および計算機モデルを意味する。
この主義の限界を
2
チューリングの形式化が持っている特徴
(1)物理的組織によってではなく、記号操作の形式的特性によるメカニズムの集合全体を包括
(2)そのメカニズムがいかにすれば十分に明確化された問題すべてに取り組むことができるか示している
(3)万能チューリングマシンを定義する方法を示している
⇒ 素材は重要ではなく、形式的特性が能力を原理的に保証している
フォン・ノイマンがコンピュータを設計し、1960s、ジョン・マッカーシーがLISP(プログラム言語)を開発。
⇒ 研究開発が可能に
A・ニューウェルとH・サイモンが物理記号システムという概念を提出
⇒理論的に自覚化・明確化される
3
・物理記号システム
①適切に操作可能なトークンに対して任意に意味を割り当てることができるシステムであり、
②正確にプログラミングすればこの割り当てられた意味論的内容と細かい点においても一致した仕方で行動すると信じられるようなシステム
by 1976 ニューウェル & サイモン
・強い物理記号システムの仮説
SPSS strong-physical-symbol-system
「標準的な記号アトムのフォン・ノイマン型の操作を行っている仮想機械は、一般的な知的行為を実現するための直接的かつ十分な手段を持っている」
①仮想機械
そのプログラムに我々が命令を与える機械を模倣させるような「機械」
・記号を割り当てる
・変数を束縛する
・記号列の複写、読みとり、修正
等々
③標準的な記号アトム
④一般的な知的行為を実現するための直接的で必要かつ十分な手段
そうした機械は、それを支えている特定のアーキテクチュア(その基盤になっている他の現実的もしくは仮想的機械から)まったく独立に真に知的でありうるのであり、逆に言えば他のアーキテクチュアや機械をシュミレートすることなく真に知的でありうる
4
このような主張(標準的なLISPのアトムのごちゃごちゃした操作が、知能や思考の本質を構成しうるという見解)が、ニューウェルとサイモンのものだとできる動かぬ証拠は、彼ら自身の実践。
彼らの仕事の特徴(例:BACON)
・規則あるいはヒューリスティックス(発見的手法)の直列的(経験則を用いたも多少は運が左右する⇔体系的)適用に依存している
・そうしたヒューリステイックスの大部分が、かなり高いレベルで意識的に内省可能
・選ばれた課題領域を扱う
BACON:一連のデータから科学的法則を帰納する(ケプラーの第三法則、オームの法則)
・BACONが取り組んだデータをフォーマット化下のは、人間の労苦
・BACONは十分に構造化された課題にしか取り組めない。
ケプラーの第三法則は見つけられても、ペトリシャーレのカビとバクテリアの関係からペニシリンを発見する事はできない
・BACONが展開する知識とヒューリスティックスは、人間のプロトコルや実験記録に大いに頼り、われわれが自分自身の思考について内省する思考のレベルからかなり直接的にコード化されたもの
⇒この種の思考は原初的で瞬間的なプロセスの上に後から被せられたもの。理解するということを具体的な例で説明する事には役に立たないであろう
サイモン等は、人間の思考のすべてがただ一つの種類の計算アーキテクチュアに依存すると信じている。
しかし、筆者は違う考えを持つ。サイモンとラングレイの仕事では、洞察のひらめきといったタイプの認識を表現できない。
心は、多くの仮想的アーキテクチュアからなる複雑なシステムであると考える
知的課題や、感覚運動的な課題のような、なめらかに無意識的に行われるものは無視されている
5
古典的システムは記号アトムの使用に頼り、コネクショニズムはこれを避ける。
古典主義者:意味論的に透明なシステムの構築に対して、方法論的にコミットしている人々
STS semanttically transparent system
「システムの振る舞いについての記号的な(概念レベルでの)意味論的記述と、システムの形式的な計算活動の内的に表現された対象についての投影可能な意味論的解釈との間にきちんとした写像関係の記述が可能な場合にのみ、そのシステムは意味論的に透明であるといえる」
きわめて大ざっぱにいえば、あるシステムかSTSと見なされるのは、そのアルゴリズムの記述(レベル2)における計算の対象が、概念的レベルの用語で表現されたその課題の分析の記述(レベル1)と同型である場合である。
(レベル1:計算理論:(高い抽象レベルにおいて)どのような関数が計算されるかについての考え
レベル2:表現とアルゴリズム:それを計算する(具体的な)方法
レベル3:インプリメンテーション:現実の機械において計算がいかにして肉体あるいはシリコンなどで実現されるか)
(1)古典的理論は――コネクショニズムはそうではないが――統語論と意味論を組み合わせた記号システムを仮定している
(2)もし何らかの種類の構造化された表現が利用可能であれば、それらの表現についての計算操作を、その構造に鋭敏に反応するかのような形で規定できる。
もしそのような構造が存在していなければ、(すなわち、どんな記号表現も存在していなければ、)計算操作を規定することはできない
◎要するに、古典的システムは、統語論的に構造化された記号的表現を仮定し、そうした表現の構造によって、それに適用される計算操作を規定するものである
第二章
1
ドレイファス:古典的認知主義の問題は、人間の常識的な知識を表象として再現し表現しようとする形式主義の妥当性
サール:形式的なものと志向的なものとの間に、あるいは統語論と意味論との間にギャップが認められる
この二つの種類の懸念について検討する。
2
「あなたの持っているのはそんなにいいボールじゃないわ。それを私にちょうだい。そしたら私、このキャンディーをあなたにあげるわ」
この言葉を理解するために、ミンスキーちとパペートは膨大な概念のリストをあげる。
ウィノブラードのSHRDLUでは不十分。
・フレームは、常識がうまく対処している偶発的出来事のすべてをカバーしているとは思えない(バースデーケーキに立つ黒いローソクに、フレームは対処できるか?)
・フレームからフレームへの移行を促す規則(メタフレーム?)をいつ適用すべきか、システムはどうやって知るのだろう?
ドレイファス:互いに関連しあった特徴や可能性のすべてを、文脈に依存しない事実や規則によって形式的に把握するという課題には際限がないのではないか
3
・ドレイファスの二つの主張
(1)身体問題
「このシャンプーが目に入らないようにご注意ください。もし入った場合は、ぬるま湯でよく洗ってください」
コンピュータは、身体、欲求、感情、共通言語や社会習慣も持たない。だからコンピュータは、この文章が何を洗うように言っているのか理解できない
(2)コード化
人間は自分たちを取り巻く状況がどんなものかを絶えず感じ取ることができる。
このノウハウは、何らかの知識表現言語によって、一種の知識として表現できるものなのだろうか?
AIプログラム(=言語)が知識を表現する仕方が、現実の課題に対して根本的に不適合だと懸念する。
4
「強いAI仮説」を、サールは批判する
強いAI仮説:適切にプログラムされたコンピュータは、文字通り認知的な状態をとり、その際プログラムは人間の認知を説明するものとなる
Schank and Abelson 1977の、「ストーリーを理解するという志向的活動をシミュレートしているかに見える特別なプログラム」に対して、「中国語の部屋」を使うことで批判する。
サール:形式的に区別される要素に対する計算操作を行っているだけでは、どんなコンピュータも〈理解する〉ことはできない。したがって、そのような計算操作を規定するプログラムが、心の固有の性質について何かを示すこともあり得ない。
具体例:英語話者が英語を理解することと、中国語の部屋の操作者が中国語を「理解すること」の比較
「人間は何も理解していなくても形式的な原理に従うことができる」
以下、サールの誤りについて論じる
5
サールに対する仮想反論「脳シュミレーター説」
脳シュミレータ説:あるりプログラムが中国語を理解する実際の中国人の形式的な構造をモデル化したと仮定すると、そのときそのプログラムは間違いなく真の中国語の理解を構成したことになる
↑(サールの再反論)
(1)脳の形式的な性質は志向性を構成しない(三章にて説明)
(2)脳の形式的な性質が志向性を構成しないのは、ある種の素材だけが思考を支えることができるからである
↑(アナロジー)
光合成:光合成の形式的な記述を手に入れても、素材が違えば光合成は再現できない
では、思考をもたらすような脳の物理的性質とは?
:外因的および内因的な刺戟に対して脳に大規模な変動が引き起こされること
↑(コメント)
『中国語の部屋』が大規模な構造的変動を必要としないシステムなら、中国語の部屋による反論は無効
6
微視的機能主義
機能主義は、心的状態の本質を、
入力、内的状態の変換、出力からなるプロフィールと同一視した。
(適切なプロフィールを持つシステムはどんなものであれ、その規模や性質や構成要素にかかわれなく、当の心的状態を実現するであろう)
↑(批判)
(中国国家脳のような)心的状態を実現する見込みがないようなシステムも、「入力、内的状態の変換、出力」のプロフィールを持つシステムへと組織することは可能であるよように思われる。
こうした極端な寛大さは、機能主義の立場を掘り崩してしまいそう
・問題は、「入力、内的状態の変換、出力」の系列をどこに位置づけるか
×大まかなレベルに位置づけ
⇒感覚質の欠如、極端な寛大さ
△ライカンの「小人機能主義」
○微視的機能主義
・機能主義の批判はゲシュタルト盲に陥っているのでは Lycan 1981
:機能的な構成要素があまりにも大きい、極度に小さい、それらしくない等であるために、そうしたものからなるシステムに志向性を帰属させるという考えに抵抗するということ
(ライカン「小人機能主義」
:機能的な下位システムは、それがエージェントのために何をしているかということによって同定される)
微視的機能主義
内容や目的に関連づけからはかけ離れた用語で
記述しようとするもの
・諸関係が得られたとき、システムには大規模で柔軟な構造的変動が引き起こされ、またそれによってさまざまな創発敵的性質が得られるようになる
第三章
1
2
「民間心理学」
:自分や他人が、信じたり、希望したり、恐れたり、欲求したりしているということについての日常の理解
民間心理学は、行為・運動を説明するときに、信念や欲求という表現を用いる
「民間心理学は、人間の行動に先立つ内的原因についての素朴で原初的な科学」
3
(1)民間心理学は、偏狭な、特定の人々に限定されたような理解しか与えない。
民間心理学は、子供や狂人や外国人を前にすると、まごついてしまう
(2)民間心理学は停滞したまま、なにも生み出さず、長い間ほとんど変化も進化も発展もしていないところが他の諸科学と異なる
(3)民間心理学は、これまでのところ科学の主要部分にうまく統合されていくような徴候をまったく示していない。残念なことに民間心理学は自然を神経生理学的ないみで妥当な要素にまで分割することには関心がないようである
最近の分析哲学
:頭の状態に関する科学理論というゲームと、民間心理学というゲームを比較することが、そもそも不適当なのではないか
4
Daredevil believes that Electra is dead.
Mary hopes that Fermat's last theorem is true.
のthat以下を、心的状態の内容と言う。
心的状態が考えられる傾向
:われわれの心理学的状態が、本質的に、周囲の世界がどのような状態にあるのかということによって決まるのではなく、
われわれにとってどのように見えているかによって決まる
↓(言い換え)
我々の意識や無意識に何らかの形で影響を与えられないものはどんなものであれ、
本質的に我々の心的状態の正確な限定に関わることはあり得ない
⇒我々の心的状態が現に持っているような内容を持つものは、われわれ自身のあり方ゆえであって、
知られていないかもしれないような周囲世界の事実とは関わりがない……☆
・双生地球……☆に対して疑いを投げかける
双生地球で、「海に水がある」と発話される。
地球A:海にH2Oがある
地球B:海にXYZがある
この違い以外は同質だとする。
すると、
地球上の発話と双生地球の発話は、それぞれH2OがあるかXYZがあるかによってその真偽が決まる
(たとえば、地球Aの海にH2Oがなくて代わりにXYZがあるとしたら、地球Aでの発話は偽になる)
⇒
もし意味が真理条件を確定するのだとすれば、
自然種に関する表現(水、金、空気など)を含む陳述の意味は、
単に主体の限定的に規定可能な状態に言及するだけでは十分に説明できない……☆に反して
二つの選択肢
(1)心理学的な内的要素(地球の話し手と双生地球の話し手に共通)と、
世界関与的な外的要因(仮定上、二つの地球を越えて不変ではない(H2OとXYZ))の両方によって内容が決まるとする、意味と信念に関する合成説
(2)そういったケース(地球と双生地球のケース)は
〈心的状態の純粋に内的でまったく心理学的な要素(☆のこと)〉という観念にさえも疑いを抱かせるものであると考えることもできるだろう
プティ と マクダウェル
「頭の中にあるものが、心の状態と因果関係を持っていることは疑いがない。
しかし、
〈頭の中〉にあるものが心の状態に対して構成的関係にあると考え必要があるのだろうか?」
筆者
:あらゆる内容が根本的に世界に関与している(選択肢(2))ということが判明したとしても、
そのこと自体は必ずしも〈認知科学は心の理解に深く(ことによると構成的にではないかもしれないが)関わる研究である〉という主張を覆すものではない
その主張に対する仮想反論と、それに対する再反論をHornsbyは行った。
仮想反論
:「「行動傾向(心性はこれに随伴して生じるとされる)が二者の間で異なるためには、
内的構成に違いがなければならない。」
という考えを保持すべきである」とするならば、
心的内容は限定的に規定されねばならない(自然種を指示しない)
(「「行動傾向(心性はこれに随伴して生じるとされる)が二者の間で異なるためには、
内的構成に違いがなければならない。」
という考えを保持すべきである」までが、プティとマグダウェルの、「頭の中にあるものが、心の状態と因果関係を持っていることは疑いがない」に対応する。)
仮想反論の詳細
:仮定①:
二人の動作主の心的状態は、彼らの行動傾向に何らかの違いがある場合にのみ異なる
(そこに赤いボールがある、と信じなければ、ボールを投げようとは思わない)
仮定②:
行動が異なる(すなわち、行動が異なる)ためには、内的な物理的状態に何らかの違いかなければならない
結論:それゆえ、心的状態に対応する内的な物理的状態に何らかの違いがなければ、心的状態が異なるということはありえない
「(民間心理学的な心的状態を帰属させることは、限定的内容のみに関わることであるという)結論は、深刻な疑義にさらされることになる。
限定的内容といっても、それを妥当な概念として了解できるかは明らかではない」
なぜなら、
「民間心理学的な内容を(物理的状態に?)帰属させることは、身体的な動きを規定するような頭の状態についての独我論的な研究から引き出すことができるような切り口とは
まったく違った切り口で現実を切り取ることであるように思われる。
その具体的理由として、
ボールをひろうことは、「そこにボールがあると私は知っている」という心的状態と関連するが、そのときの細かな指の動きはそのような心的状態と関連するものではない。
5
筆者
:広域的内容を伴うによ伴わないにせよ、
頭の中で起こっていることに関することに関する科学的カテゴリーや分類に
きちんと還元されるなどということは
とてもあり得ないように思われる。
・民間心理学は、科学的心理学と同じゲームを行ってはいないかもしれない
→
世界を記述しない信念であり、なおかつ
ある人が同じ考えを抱いているといえるような別のケースに投影可能な述語が(科学的記述の上には)存在しないことも可能
6
民間心理学の道具立て(信念と欲求という概念によって、命題的態度を帰属せさるという道具立て)を用いて、心的状態を二者が互いに帰属させあうという日常の慣習(傍点)の目的は?
:
他人の頭の内的状態を追跡しようと試みることによって、
その人の身体の動きを予測し説明するための手段
民間心理学の主要な目的
:
世界の中で活動している仲間たちの行動を、(傍点開始)我々が(傍点終わり)理解できるようにすること
(予測したい対象であり主体である)われわれの仲間たちの四つの特徴
①世界に対する感受性、すなわち感覚や生得的な原書的概念の道具立てをわれわれと共有している
②世界をわれわれと共有している
③彼らは我々自身のもっとも根本的な関心と必要の大部分を共有している
④彼らの思考の有用性は、
(我々自身の思考と同様に、)
彼らが世界の実際の有様をたどっていることと関わっており、
彼らの思考作用が、世界の実際の有様に十分適応していると我々が(進化論的な理由から)考えるような目的と関わっている
この特徴があるので、
「~したい」という欲求さえ同じであれば、
・民間心理学は、脳の状態の違い(that かなり目の粗い、行動上の違いとしては現れてこないような)に対しては、敏感に対応しないように設計されている
・民間心理学は、個人の間の差異を覆い隠し、
さらには種の間の差異さえも覆い隠してしまう(長所であっても短所ではない)
7
筆者の見解
:私の見解では、われわれが信念を帰属させるのは、
行動の全体に一種の解釈の網をかぶせることによってである。
……関連する行動を可能にするものとしての、
根底にある物理的あるいは計算論的な構造がどのようなものであれ、
そうした構造における自然な区分に、網の結び目(すなわち信念と、欲求の特定の帰属)が
対応している必要はない。
――
ということは、Davidson(全体論者)に対するFordorの批判は、筆者の意見にも当てはまるのではないか?
<Fordor>
意識の全体論というのは、
「命題的態度の同一性――特に志向的内容――が、その認知的連関の全体によって決定される」
という考え方。
これに、Fordorは懐疑的。
(命題pの認知的連関というのは、主体がpの意味論的評価、すなわちその真偽の決定に関係するすべての命題のこと)
われわれは、信念や志向的状態を共有している。が、そのとき、すべての命題(認知的連関)を共有しているとは思えない。
信念は、その内容をそれぞれ別に持つ。
:信念がその状態を獲得するのは、脳の状態が逐一、世界と因果関係を結ぶことによってである。
「ある生物が『牛』という概念を持とうと持つまいと、その生物は『馬』という概念を持ちうる」
</Fordor>
筆者
:Fordorの間違い
全体論は、もしそうであれば、人間の心の理解が芋蔓式に進んでくれるのにという、いわば願望。
Fordorが軽蔑したものの通りに進んでくれるかは別問題。
Fordor:バラバラになったブロックを一つの全体に組み合わせるやり方が、全員同じになるはずがない。
筆者:一つのブロックの組み合わせ全体を理解するために、各人が別々のやり方でバラバラにしている
全体論という言葉の使い方が違うから、Fordorの批判は筆者には当てはまらない(という、批判をかわすための節)
7
一章3節での、チャーチランドによる民間心理学批判に、今では応答できる。
(3)に対して、
民間心理学の関心事は、他の主体の顕著の行動パターンだけを可能な限り効率的に分離することである。神経科学とつながることを目的とはしていない
(1)に対して、
民間心理学の道具としての適用範囲は、仲間。狂人の理解は、そもそも目標としていない
(2)に対して、
なので、その中核部分が時間的および地理的な次元を越えて相対的に恒常的であり続けてきたことは驚くべきことではない。
整理。
民間心理学には、きちんとした定義がある。
これまで「民間心理学」として使われてきた言葉の、新たな用語法:「素朴心理学」、「メンタリズム的な理解」
8
因果関係と、構成的関係の区別
構成的関係
:
研究の主題と何らかの形で密接に結びついているということ
因果的に関係
:
因果的に関係している様々な要素は、それほど密接に思考と結びついているわけではないので、
それらの要素を差し引いてもそれによって思考という観念そのものが存続しえなくなる
ということはない。
(チェス盤がなくなっても、チェスの続きは打てる。石を駒に見立てたり、口頭で)
9
・消去主義的唯物論:民間心理学が、心に関する科学に対して歪んだ影響を及ぼすのではないか。民間人は自分自身の心を知らないと、消去主義的唯物論は思っている
↑
(構成的関係)
↓
心
科学と心とを結びつける構成的関係。その得難さが二つのスタンスの対立を生んでいる。が、どちらの立場も同じく、認知という地形に同じ隆起とくぼみを見ている。
では、構成的関係とは何か。
構成的関係←→因果関係
構成的関係:研究の主題(この場合は心)と、何らかの形で概念上密接に結びついていること
因果的関係:因果的に関係している様々な要素は、それほど密接に思考と結びついているわけではないので、それらの要素を差し引いても、それによって思考という観念そのものが存続しえなくなるというひとはない
(駒はなくてもチェスは打てる)
プログラミングは静的言語(C/C++,Java,C#など)と動的言語(rubyとかpythonとかperlとかいわゆるスクリプト言語)と関数型(lispとかF#とかhaskellとか)を一つずつくらい眺めた方がいいと思う。
どれか一個くらい自分に合ってるのが見つかるかも。
やりたいことにどの実装系が一番適しているかを考えるべきで、実装系を目的に合わせるべきじゃない。
そういう考えでいると、PHPで何でもやる奴とか出てきて迷惑なんだ。
そもそものロジック構築などは、ターゲットには依存しても、言語にはほとんど依存しない。
馴染むための登竜門って意味で言えば、VisualStudioなどのGUIでデバッグが出来る環境をもった言語が良いし、VB,C#などのサンプルが豊富で結果を確認しやすい言語が良いと思う。
第1章 並行プログラミングとGHC (上田和紀) 1.1 はじめに 1.2 ターゲットを明確にしよう 1.3 はじめが大切 1.4 GHCが与える並行計算の枠組み 1.4.1 GHCにおける計算とは,外界との情報のやりとり(通信)である 1.4.2 計算を行う主体は,互いに,および外界と通信し合うプロセスの集まりである 1.4.3 プロセスは,停止するとは限らない 1.4.4 プロセスは,開いた系(open system)をモデル化する 1.4.5 情報とは変数と値との結付き(結合)のことである 1.4.6 プロセスは,結合の観測と生成を行う 1.4.7 プロセスは,書換え規則を用いて定義する 1.4.8 通信は,プロセス間の共有変数を用いて行う 1.4.9 外貨も,プロセスとしてモデル化される 1.4.10 通信は,非同期的である 1.4.11 プロセスのふるまいは,非決定的でありうる 1.5 もう少し具体的なパラダイム 1.5.1 ストリームと双方向通信 1.5.2 履歴のあるオブジェクトの表現 1.5.3 データ駆動計算と要求駆動計算 1.5.4 モジュラリティと差分プログラミング 1.5.5 プロセスによるデータ表現 1.6 歴史的背景と文献案内 1.7 並行プログラミングと効率 1.8 まとめ 第2章 様相論理とテンポラル・プログラミング (桜川貴司) 2.1 はじめに 2.2 様相論理 2.3 時制論理 2.4 多世界モデル 2.5 到達可能性と局所性 2.6 純論理プログラミングへ向けて 2.7 Temporal Prolog 2.8 RACCO 2.9 実現 2.10 まとめと参考文献案内 第3章 レコード・プログラミング (横田一正) 3.1 はじめに 3.2 レコードと述語の表現 3.3 レコード構造とφ-項 3.3.1 φ-項の定義 3.3.2 型の半順序と束 3.3.3 KBLとLOGIN 3.4 応用――データベースの視点から 3.4.1 演繹データベース 3.4.2 レコード・プログラミングとデータベース 3.4.3 いくつかの例 3.5 まとめ 3.6 文献案内 第4章 抽象データ型とOBJ2 (二木厚吉・中川 中) 4.1 はじめに 4.2 抽象データ型と代数型言語 4.2.1 抽象データ型 4.2.2 代数型言語 4.2.3 始代数 4.2.4 項代数 4.2.5 項書換えシステム 4.3 OBJ2 4.3.1 OBJ2の基本構造 4.3.2 モジュールの参照方法 4.3.3 混置関数記号 4.3.4 モジュールのパラメータ化 4.3.5 パラメータ化機構による高階関数の記述 4.3.6 順序ソート 4.3.7 属性つきパターンマッチング 4.3.8 評価戦略の指定 4.3.9 モジュール表現 4.4 おわりに 第5章 プログラム代数とFP (富樫 敦) 5.1 はじめに 5.2 プログラミング・システム FP 5.2.1 オブジェクト 5.2.2 基本関数 5.2.3 プログラム構成子 5.2.4 関数定義 5.2.5 FPのプログラミング・スタイル 5.3 プログラム代数 5.3.1 プログラム代数則 5.3.2 代数則の証明 5.3.3 代数則とプログラム 5.4 ラムダ計算の拡張 5.4.1 ラムダ式の拡張 5.4.2 拡張されたラムダ計算の簡約規則 5.4.3 そのほかのリスト操作用演算子 5.4.4 相互再帰的定義式 5.4.5 ストリーム(無限リスト)処理 5.5 FPプログラムの翻訳 5.5.1 オブジェクトの翻訳 5.5.2 基本関数の翻訳 5.5.3 プログラム構成子の翻訳 5.5.4 簡約規則を用いた代数則の検証 5.6 おわりに 第6章 カテゴリカル・プログラミング (横内寛文) 6.1 はじめに 6.2 値からモルフィズムへ 6.3 カテゴリカル・コンビネータ 6.3.1 ラムダ計算の意味論 6.3.2 モルフィズムによる意味論 6.3.3 カテゴリカル・コンビネータ理論CCL 6.4 関数型プログラミングへの応用 6.4.1 関数型プログラミング言語ML/O 6.4.2 CCLの拡張 6.4.3 CCLに基づいた処理系 6.4.4 公理系に基づいた最適化 6.5 まとめ 第7章 最大公約数――普遍代数,多項式イデアル,自動証明におけるユークリッドの互除法 (外山芳人) 7.1 はじめに 7.2 完備化アルゴリズム 7.2.1 グラス置換えパズル 7.2.2 リダクションシステム 7.2.3 完備なシステム 7.2.4 完備化 7.2.5 パズルの答 7.3 普遍代数における完備化アルゴリズム 7.3.1 群論の語の問題 7.3.2 群の公理の完備化 7.3.3 Knuth-Bendix完備化アルゴリズム 7.4 多項式イデアル理論における完備化アルゴリズム 7.4.1 ユークリッドの互除法 7.4.2 多項式イデアル 7.4.3 Buchbergerアルゴリズム 7.5 一階述語論理における完備化アルゴリズム 7.5.1 レゾリューション法 7.5.2 Hsiangのアイデア 7.6 おわりに 第8章 構成的プログラミング (林 晋) 8.1 構成的プログラミング? 8.2 型付きラムダ計算 8.3 論理としての型付きラムダ計算 8.4 構成的プログラミングとは 8.5 構成的プログラミングにおける再帰呼び出し 8.6 おわりに:構成的プログラミングに未来はあるか? 第9章 メタプログラミングとリフレクション (田中二郎) 9.1 はじめに 9.2 計算システム 9.2.1 因果結合システム 9.2.2 メタシステム 9.2.3 リフレクティブシステム 9.3 3-Lisp 9.4 リフレクティブタワー 9.5 GHCにおけるリフレクション 9.5.1 並列論理型言語GHC 9.5.2 GHCの言語仕様 9.5.3 GHCのメタインタプリタ 9.5.4 リフレクティブ述語のインプリメント 9.6 まとめ
週末に行ってきたイベントだが、ちょっとインパクトが強すぎて、あとたぶん昼から通しで追っかけてるのは自分だけなので、この話誰かに伝えたい!と柄にもなく思ってしまった。
ここまで、日本語でウケを取り、アメリカ人にしか聞こえない英語をしゃべりつつの話。まじありえないレベルの覚悟と実践なんだが・・・!
この人のセッション、ブラジル事情の紹介みたいな話で大ホール側のセッションも覗いてみようかなと思っていた所にこれで、ただちに絶対参加すべきレベルのセッションに格上げされた。こんな人がいるとは。
で、昼休み後の問題のセッション。結局ツイートどころじゃなかったが、こんな感じ:
Javaはあれが酷いとかPHPがとかいう態度でRubyを使うのも無駄だ。
なんという激熱トーク。本当に小さかった南米のRubyコミュニティを仲間と共に成長させ、いまやRubyConf Brazilとか南米で何個もイベントが立ち上がるまでに育てた。この伝道のため、ここ数年で80箇所は回って普及に努めたとかとか。ブラジル事情への関心と関係なく、この熱量を体験できてよかった。
最後の時間オーバー後の「あと一言だけ(本当はあと1分だけと本人は言っていたのだが、わざと誤訳してタイマー役の人に会場から叫んだ自分w)」でどんなにダメだとされていても、諦めずに進めという、過去の偉人が貶められたり失意にあった時代の動画もよかった(もっとも、この話は知っていたのでインパクト自体は薄めだった)。
この後はLTとクロージング。
インパクト強すぎw
これ漫画系展開をバックボーンにしたエンタテイニングなスタイルだと理解せずに真に受けると大変だなと心配になったり。なにしろ上は三行だけど全部通しで書くと
真面目に受け取ったらヤバイ発言多すぎだろ・・・
こ れ が 締 め の 講 演 か よ !
そういえば途中にまどマギネタも入ってた記憶があるのだが、上のインパクトが強すぎてどこかに飛んでった。
その後の高橋さんの最後の挨拶とスタッフを集めてのスタンディングオベーションはちょっとうるっと来た。初参加だから今回の運営自体への思い入れはないのだけど、この回だけでも感激することが多かった。この完成度に達するまでどれだけの努力と熱意が投入されていたかと考えると。
隣の席が実はtdtdsさんでびびってたのだが、最初に立ち上がったのを見て、続く二人目のタイミングが大事!とすぱっと立ち上がってみてよかった。その後前列の人がみんな!立とうよ!みたいにやって一気に雪崩状態。
これで会議は閉幕したのだが、さらにherokuの緊急パーティーが開催され、思い切って行ってみた。まあ、懇親会に輪をかけたリア充な雰囲気でまともに話せなかったのだが、
こんな一日だった。熱かった・・・
最近、Scala信者が増えたが、Scala、Groovy、Clojureで仕事している人はいるのだろうか?
Javaと比較してライブラリが増えるわけでもなく、応用分野が増えるわけでもなく、良さが理解できない。
検索順位 | 人気順位 | 言語名 | 登場年 | 特徴 |
---|---|---|---|---|
1位 | 95位 | Scala | 2003年 | Javaに関数型言語の特徴を組み込んだ。 |
2位 | 71位 | Groovy | 2003年 | Javaより少ない記述量が特徴。 |
3位 | - | Jython | 1997年 | Python 2系のポーティング。 |
4位 | - | JRuby | 2001年 | Rubyのポーティング。 |
5位 | - | Clojure | 2007年 | Lispの方言、つまり関数型言語。 |
6位 | 75位 | JavaFX Script | 2008年 | JavaFXを残して廃棄処分。 |
LISPのオチが言いたいだけじゃねーかwwww
誇張や事実と異なる表現がございます。ネタとしてお読みください。
特に関数型言語は全く触ったことが無いため誤っている可能性があることをご了承下さい。
while(i<10000)++i;
COBOL | バブル時代に銀行のCMにも出演したことがあるが現在はほぼ引退している。 |
BASIC | 一時期は誰もが知っている国民的アイドルだったが、現在はほぼ引退している。しかし昔からの根強いファンによって現在も一部で活躍中。 |
FORTRAN | インテリ層に大人気のアイドルグループ。 |
Brainfuck | アイドルの定義を逆手に取った誰も得をしない名ばかりアイドル。 |
PERL | もともとは活字メディアでの活動を主軸にと結成されたが、現在はネットで活動することが多い。 |
RUBY | PERLを真似た純国産のアイドルグループ。こちらも最近はネットでの活動が多い。 |
C | 今も現役で活躍する言わずと知れた国民的アイドル。しかし最近はJAVAなど後進のアイドルたちに仕事を奪われつつある。 |
C++ | Cのメンバーに加え、あらゆる属性の女の子を集めた超大型アイドルグループ。しかしあまりにマニアックなため、一部のファン以外はついて行けていない。 |
JAVA | C++の失敗を反省し一部のマニアックな属性を削った正統派アイドルグループ、初心者はJAVAから入ることを進められる。 |
C# | まっくろ社がJAVAのパクリユニットとして一度デビューさせたが太陽社に訴えられたため名称を変えた。しかし後進だけあり、女の子の質は高いと好評。 |
GO | 新進気鋭のぐぐるからデビューした新人アイドル、デビュー時は大きな注目を集めたがその後は期待ほど売れていない。 |
D | 他のアイドル達のいいとこ取りをした最強ユニットのはずが、未だメジャーになりきれないマイナーアイドル。 |
Objective-C | Cに新たなメンバーを加えたユニット。しかしC++ほどメジャーになれずそのまま消えるかと思われたが、出演した林檎の映画が大ヒットし延命した。 |
JAVA SCRIPT | 身近がモットーのネットアイドル。あなたも気付いていないだけで、いろいろなところでお世話になっています。 |
PHP | ネットアイドルとしてデビュー、物珍しさも手伝って人気になったが、女の子が明らかに寄せ集めと批判も多い。 |
LISP | 81が新人声優を売り込むために作ったスフィアのパクリユニット。おっぱいが大きい。 |
I have been working on a programming language, also called Go, for the last 10 years.私は、プログラミング言語にも、移動と呼ばれ、過去10年間のために働いている。 There haveが存在して
been papers published on this and I have a book.された論文は、この上で公開され、私の本がある。
I would appreciate it if google changed the name of this language; as I do not want to have toもしGoogleがこの言語の名前を変更私はそれをお願い申し上げます。私にはしたくない
Comment 1 by dsymonds , Today (7 hours ago) コメント1 dsymondsで 、 今日(7時間前)
References?参考文献?
Comment 2 by fmccabe , Today (7 hours ago) コメント2 fmccabeで 、 今日(7時間前)
If you google (sic) francis mccabe go you will find some references.場合は()を原文のままGoogleのフランシス、いくつかの参照を見つける行くマッケイブ。
I published the book on lulu.com私lulu.com上の本を出版
Comment 3 by reidellis , Today (4 hours ago) コメント3 reidellisで 、 今日(4時間前)
I think Mr McCabe's language is called "Go!".私は氏マッケイブの言語"と呼ばれてみろ!"。 Here's the Lulu link:ここでは、ルルのリンクです:
http://www.lulu.com/content/paperback-book/lets-go/641689 http://www.lulu.com/content/paperback-book/lets-go/641689
Comment 4 by niral.n95 , Today (3 hours ago) コメント4 niral.n95で 、 今日(3時間前)
reidellis: is right! reidellis:ですね! its "Lets Go!"その"はLets Go!" or "Go!".や"ゴー!"。 This is google "go", "The Goこれは、"行くに"google、"移動されます
Programming Language" Bigg Difference.. :)プログラミング言語"Biggの違い..:)
Ps Anyone hearing the release of Google "go" would have picked up their book that psの誰""行っても本を手にしてはGoogleのリリース公聴会では
never sold and started finding the work "GO" and as they would find their 1st "GO"販売されなかったとの仕事"Go"を見つけることを始め、などに気づくような、その第一の"Go"
they wil go , Eureka!彼らはエウレカ行くウィル! :) :)
Comment 5 by fmccabe , Today (3 hours ago) コメント5 fmccabeで 、 今日(3時間前)
My language is called Go!.自分の言語へと呼ばれます!。 The book is called Let's Go!.本の行こうと呼ばれます!。
The issue is not whether or not Google's go will be well known.問題かどうかは、Googleの移動も呼ばれることもありません。 It is one of fairness.これは1つの公平性の一つです。
Comment 6 by zhenshe41 , Today (3 hours ago) コメント6 zhenshe41で 、 今日(3時間前)
In Go!行くで! , can the IDE know the differences between Go!は、IDEへの違いを知ることができます! and go ?行く?
Comment 9 by shirish4you , Today (2 hours ago) コメント9 shirish4youで 、 今日(2時間前)
ah...ああ... Google should change the name... Googleは、名前を変更する必要があります...
Comment 11 by spronkey , Today (2 hours ago) コメント11 spronkeyで 、 今日(2時間前)
Indeed they should.確かにそうあるべきだ。 Full support for you, Mr. McCabe.あなたのためのフルサポート、ミスターマッケイブ。 It's not that hard to findそれを見つけるために、ハードではない
references to your language online either - it was on the first page of Bing, secondあなたの言語のオンラインへの参照のいずれか-それはビンビンの最初のページに2番目だった
of Google for 'go programming language'. Googleの'のために行くのプログラミング言語'。
In fact, the title of the Google go tutorial page is even "Let's Go".実際には、Googleのタイトルのチュートリアルページに行っても"行こう"です。
It would be pretty poor for you folks Google to keep this name given your "do noそれはかなりあなたのための人々 、Googleはこの名が指定さを維持する貧困層になるお客様の"ありませんか
evil" slogan!悪"のスローガン!
Comment 12 by nofakesallowed , Today (2 hours ago) コメント12 nofakesallowed、 今日(2時間前 に )
Google should totally change the name, fmccabe you should find a (cheap) lawyer just Googleの完全に、あなたは(安い)弁護士を見つける必要がありますだけfmccabeの名前を変更する必要があります
in case...場合には...
Google has deep pockets. Googleの深いポケットにしています。
Comment 13 by nofakesallowed , Today (2 hours ago) コメント13 nofakesallowed、 今日(2時間前 に )
btw, what's up redditところで、どうしたのreddit
Comment 14 by alex.salkever , Today (2 hours ago) コメント14 alex.salkeverで 、 今日(2時間前)
fmcabe -- could you contact me at alex @ dailyfinance.com? fmcabe -あなたalex@dailyfinance.comで、私に連絡だろうか? Might want to write a可能性のある記述する
little article about this.このことについて少し記事 Thanks.ありがとう。
Comment 16 by matthew.m.mckenzie , Today (2 hours ago) コメント16 matthew.m.mckenzieで 、 今日(2時間前)
google should change!グーグル変更してください!
Comment 17 by senthil.nayagam , Today (2 hours ago) コメント17 senthil.nayagamで 、 今日(2時間前)
maybe name it Goo or Foo多分グーかはFooという名前を付けます
Comment 18 by mail2ankitgupta , Today (119 minutes ago) コメント18 mail2ankitguptaで 、 今日(119分前)
A company claiming to capture world's info, missed it!!!同社は、世界の情報をキャプチャすると主張し、それを逃した!
Comment 19 by terence.stuart , Today (117 minutes ago) コメント19 terence.stuartで 、 今日(117分前)
Let the language with the most users keep its name.ほとんどのユーザーは、その名前のままにして言語をしましょう。
Er... Erを... That's not yours, is it?それは、あなたではないって?
Comment 20 by blair.briggs , Today (113 minutes ago) コメント20 blair.briggsで 、 今日(113分前)
Go, find a new name.移動し、新しい名前を探します。 ;) ;)
Comment 21 by josecamporro , Today (111 minutes ago) コメント21 josecamporroで 、 今日(111分前)
I agree with majority on this.私はこの上の部分に同意する。 Google should change the name of this language... Googleはこの言語の名前を変更する必要があります...
Francis McCab is right, Go!フランシスMcCabが正しいでGO! and Go are not that different.と移動の違いはありませんです。 And he went first, public.彼は、公共の最初に行った。
Comment 22 by sebastian.krause , Today (104 minutes ago) コメント22 sebastian.krauseで 、 今日(104分前)
Google should consider a different name simply for the reason that "Go" is just a too Googleはその理由は、"移動"されに別の名前を検討する必要がありますだけでも
common word and it might eventually become difficult to google for references and一般的な単語と、最終的に参照するためにGoogleが困難になる可能性があります
examples about this language.この言語についての例です。 A somewhat more unique name can have its benefits.もう少しユニークな名前は、その利点を持つことができます。
Comment 23 by Afro.Systems , Today (95 minutes ago) コメント23 Afro.Systemsで 、 今日(95分前)
I think lango would be a great name and I am hereby to give away to google any私はランゴすばらしい名前だと思うと私は、ここから何かグーグルに与えるために午前
copyrights for the name.名の著作権。
Comment 24 by ismetdere , Today (94 minutes ago) コメント24 ismetdereで 、 今日(94分前)
Goo, whould be just fine.グー、されるだけで罰金whould。
Comment 25 by QrczakMK , Today (68 minutes ago) コメント25 QrczakMKで 、 今日(68分前)
Goo is already taken too, although it has been dead for a few years I think.ただし、それが思う数年前に死んだがグー、すでにも、撮影されます。
Comment 26 by zak.wilson , Today (68 minutes ago) コメント26 zak.wilsonで 、 今日(68分前)
Goo is the name of a Lisp dialect.具は、Lispの方言の名前です。
Comment 27 by daniel.kolman , Today (67 minutes ago) コメント27 daniel.kolmanで 、 今日(67分前)
Both Google and fmccabe should find a new name, "Go" is silly name for a programming Googleとfmccabe、"Go"をテコな名前にプログラミングされている新しい名前を見つける必要があります
language.言語。
Comment 28 by br...@silcon.com , Today (67 minutes ago) コメント28 brで... silcon.com @、 今日(67分前)
how about GOOP = Google Object Oriented Programming?方法については無神経な人= Googleのオブジェクト指向プログラミング?
mccabe- personally, I agree with you, but while you may be first, and you may beマッケイブ、個人的に、私はあなたと、しかし、中に最初にすることに同意し、することがあります
published, your issue title begs not to take you seriously regardless of your actual公開され、あなたの問題のタイトルを真剣にかかわらず、お客様の実際の場合を取らないように頼む
I do hope this is resolved in your favor though.私はあなたのおかげでも解決されてほしいですか。
Comment 29 by jwb.public , Today (66 minutes ago) コメント29 jwb.publicで 、 今日(66分前)
how about ogle?方法については色目を使う?
Comment 30 by srikumarks , Today (60 minutes ago) コメント30 srikumarksで 、 今日(60分前)
Given that is derives from Limbo, "Bo" would be short and sweet as well.つまり、辺獄から、"ボー"不足しているだろうと甘いだけでなく派生を考える。 They can alsoこれらのこともできます。
use "boroutines" :P "boroutines":pを使用
Comment 31 by ismetdere , Today (57 minutes ago) コメント31 ismetdereで 、 今日(57分前)
Goo is gone too?具も行ったですか? damn..気.. what about Goat?何ヤギは?
Comment 32 by killercore , Today (52 minutes ago) コメント32 killercoreで 、 今日(52分前)
I'd go for JAgo: Just Another go私JAgoのために行くだろう:ちょうど別のものへ
Comment 33 by jason.lee.quinn , Today (51 minutes ago) コメント33 jason.lee.quinnで 、 今日(51分前)
Goat Special Editionヤギスペシャルエディション
Comment 34 by nikola.tepper , Today (50 minutes ago) コメント34 nikola.tepperで 、 今日(50分前)
It is completely absurd to use name of an already existing language.それは完全に既存の言語の名前を使用するのはばかげている。 Hey Google,ちょっとGoogleは、
couldn't you, i don't know... 、私を知らない場合が...。 google it?とGoogleの? Oh right, the name is so generic, that isそう、名ので、つまり、汎用的なもの
almost impossible to get relevant matches.ほとんどの関連性と一致を得ることは不可能。 If this language catches on, it'll be aこの言語にキャッチし、それになります
nightmare to search for problems and solutions.問題と解決策を検索する悪夢のような。
Comment 36 by jsykari , Today (40 minutes ago) コメント36 jsykariで 、 今日(40分前)
May I humbly suggest "go2"? 5私は謙虚に""go2いかがでしょう?
Even C++ got away with naming the language after an esoteric feature of C -- perhapsも、C + +の距離Cの難解な機能の後に、言語の名前付け規則だ-おそらく
naming a language after "goto" isn't that bad. "の後に、後藤は"悪くはない言語のネーミングになります。
Comment 37 by Linnsey , Today (38 minutes ago) コメント37 Linnseyで 、 今日(38分前)
There are so many hobby and specialist programming languages it'd be hard to find aあるので趣味や専門のプログラミング言語でそれを見つけることは難しいですね、多くの
name that's not taken.名は、撮影ではない。
Comment 39 by david.kitchen , Today (32 minutes ago) コメント39 david.kitchenで 、 今日(32分前)
@33 Disturbing but funny... @ 33不穏がおかしい... I can imagine the logo now: 3OE私は今のロゴを想像することができます:3OE
@34 Look at the dates of these things, it would appear that go started around the @これらのものの日程を34歳で見て、その周りを開始へ表示されます
same time that the book was being written (but Go! already existed).同じ時間には、図書(ただし、移動書かれていた!既に存在していた)。 I wouldn't be私ではない
surprised to learn that due diligence was done at the time but simply that since thenは、デューデリジェンスの時間でも行われていた知って驚く人は、単にそれ以来、
it just hadn't been revisited.それだけで再訪されていませんでした。
@36 http://xkcd.com/292/ @ 36 http://xkcd.com/292/
Comment 40 by patla073 , Today (31 minutes ago) コメント40 patla073で 、 今日(31分前)
Why not just name it Golang?理由だけではなく、それGolang名前は?
Erlang - "Ericsson Language"アーラン- "エリクソンの言語"
Golang - "Google Language" Golang - "Googleの言語"
Comment 41 by drc.uvic , Today (31 minutes ago) コメント41 drc.uvic、 今日(31分前 に )
Does anyone use 'Go!'?誰'移動を使用しますか!'? If yours is better, or has a decent user base then a name change might be the right thingもしあなたの優れているか、またはその名前の変更は正しいかもしれませんが、まともなユーザーベースを持って
to do.を行う。 If you're bringing it up for academic pride then I don't see why they should have to change anything.もし私はなぜ何も変更する必要がありますが表示されない学問の誇りをのために育てている。
Comment 42 by abouthors , Today (29 minutes ago) コメント42 abouthorsで 、 今日(29分前)
Jago is already taken by a program to play the game of go. Jago既に行くのゲームをプレイするためのプログラムによって行われる。
Comment 44 by charles.majola , Today (18 minutes ago) コメント44 charles.majolaで 、 今日(18分前)
This is issue 9 ......この問題は9 ...... Plan 9..... Plan 9の.....
Coincidence?偶然?
Comment 45 by tuxthelinuxdood , Today (14 minutes ago) コメント45 tuxthelinuxdoodで 、 今日(14分前)
It is obvious that Google employees did not research the name in terms of existingこれは、Google従業員の面では、名前を研究していない明らかにされ、既存の
languages before release.リリース前の言語。 In such a situation I believe Google is at fault and the nameこのような状況では私はGoogle断層の名前ではと考えています
should be changed.変更する必要があります。 I doubt it will happen but it to change it would be in line with "do私はそれが起こるとは思えませんが、それを行となる"を変更するか
no evil".邪悪な"。
Comment 46 by GeoffreyJ.Lee , Today (14 minutes ago) コメント46 GeoffreyJ.Leeで 、 今日(14分前)
How about "Google Go"?方法については"Googleの移動"?
Go2 is pretty clever though, so my vote is on that. Go2かなりかかわらず、僕の投票をするには利口だ。
Comment 47 by roblesjm , Today (9 minutes ago) コメント47 roblesjmで 、 今日(9分前)
Google always releases new products with the prefix "Google". Googleでは常に接頭辞"Googleとの"新製品をリリースします。 In this case, I don'tこの場合、私はしないでください
know if Google want release a new product or make an Alliance like Android.知っている場合、Googleは新製品をリリースしたい、またはするアライアンスのAndroidのような。
In the first case, I would use "GoogleC".最初のケースで、私は"を使用します。GoogleC"。 For the second, something like "GCP" fromについては、2番目の、何か"GCPの"からのような
(Google C Python). (GoogleのĈパイソン)。
Comment 48 by ismetdere , Today (4 minutes ago) コメント48 ismetdereで 、 今日(4分前)
Goat it is...ヤギって... there, settled.そこに定住した。
Comment 49 by Peter.Schweizer , Today (4 minutes ago) コメント49 Peter.Schweizerで 、 今日(4分前)
i'd suggest "giggity giggity goo" as new name since quagmire is a very funny guy私は""新しい名前として泥沼非常に面白いやつなんだからgiggity giggityグーをお勧めしたい
btw.ところで。 hi reddit :)ハイテクしかし:)
Comment 50 by ruivaldo , Today (4 minutes ago) コメント50 ruivaldoで 、 今日(4分前)
"Do" ? ""ですか? Makes sense, check the purpose of the lang.理にかなっては、langの目的をご確認ください。
元増田の苦悩は、日本語では、断片的なTipやリファレンスはあっても、
市販されている書籍のような情報がインターネットでは手に入らないということに原因があると思う。
英語だと、市販されている本がまるまるネットで公開されていることがある。
例えば、
SICP http://mitpress.mit.edu/sicp/
Real World Haskell http://book.realworldhaskell.org/read/
Practical Common Lisp http://gigamonkeys.com/book/
How to design programs http://www.htdp.org/
Thinking in C++ 2nd Edition http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html
Thinking in Java, 3rd Edition http://www.mindview.net/Books/TIJ/
GNU Autoconf, Automake, and Libtool http://sources.redhat.com/autobook/
Managing Projects with GNU Make, Third Edition http://oreilly.com/catalog/make3/book/index.csp
Dive Into Python http://www.diveintopython.org/
Programming Ruby The Pragmatic Programmer's Guide 1st edition http://ruby-doc.org/docs/ProgrammingRuby/
On Lisp http://www.paulgraham.com/onlisp.html
The Art of Unix Programming http://www.faqs.org/docs/artu/
BRUCE PERENS’OPEN SOURCE SERIES http://www.informit.com/promotions/promotion.aspx?promo=135563
O'Reilly Open Books Project http://oreilly.com/openbook/
Creating Applications with Mozilla http://books.mozdev.org/
@ITにて、@ITの「Rubyを最大63%高速化した中学生は超多忙!」というインタビュー記事が公開されています。
これまで、Lispの“仏さま”竹内郁雄氏、東大博士課程の女性プログラマ五十嵐悠紀氏、プログラミング言語Cyanを開発した高校生 林拓人氏、その続編(「国語ができる(=日本語できちんとした文章が書ける)人じゃないとプログラムは書けない」という竹内郁雄氏の発言の解説)に続く、連載物の一つである。
今回の記事の筑波大駒場付属中の3年生金井仁弘氏は、/.Jでも告知があった「セキュリティ & プログラミングキャンプ 2009」に参加し、Ruby1.9がRuby1.8よりフィボナッチ数列の計算で低速化しているのに着目、構造体の判定メソッドの一部をループの外に出すことで最大で約63%、全体で約8%の高速化に成功したと言う。また「RSA解読のためのフェルマーの小定理の証明」を授業で行っているなど、色々と興味深い内容だ。
皆さん、中三の夏に何してました?
その四つ全部覚えるなら、どれから入ってもあんまり変わらないかな。などと暴言を吐いてみる。
それよりも、脳が柔らかいうちに関数型言語を一つ(haskellでもlispでも)やっておくといいよ。
あれは早めに出会って考え方をマスターした方がいい。
考え方の幅が広がるというか、違う方向から物を見れるようになる。
最初は、私のことなんて気にも留めていないと思ってた。
なのに、あなたはいつの間にか私の傍にいたわ。
あの頃の私は本当に幼かったのに。
色々舌足らずだったし足りないことも多かった、そんな私なのにあなたは合わせてくれた。
本当にいろんな話をしてくれたね。
最初はぎこちなかった会話も段々と親密になって、
あなたが私に近付いてくれるのが、本当に嬉しかった。もっと近付いてほしかった。
だけど、それがいけなかった。
あなたには、私のことをもっと知ってほしかったの。
ううん、あなたが悪いんじゃないの。
あの頃の私は、あなたに何でも任せすぎていたと思うの。
必要以上にあなたに頼っていたのは私なのに、
突然触れられてびっくりして固まってしまったっけ。
わたしよくわからなかったから・・・ううん、ちゃんと断るべきだったよね。
わたしも、あなたに予め色々な準備をお願いをするようにしたの。
あなたも、事前に色々な計画を練っていたね。
言葉だけじゃなくて、道具とか(///)
セオリーとか、応用とか。
そして、今またあなたが変わろうとしてることもわかるの。
だから、私も、これからはもっと素直に気楽になれるようにがんばるから。
無理に決まりを作らず、自然な流れに任せていこうと思うの。
ねぇ、perlの話を知っている?
よく呪文みたいって言われるけど、二人にはそれで十分なんだって。
lispでもそんな話を聞くの。そのうち目が合うだけで解り合えるようになるかも(笑)