文字変更:
小(S) 中(M) 大(L)
アーカイブ
このサイトは?
本サイトでは、チームの技術調査の成果を(いささかの遊びごころを盛り込みつつ)順次掲載していきます。 現在、WordPress等のブログ/CMSと連携する、新世代の分散webサイト(Java/.NETを含む)の構築に関する調査及び、次世代のプログラミング教育環境に関する調査を展開中です。
東北楽天ゴールデンイーグルスファン在籍。
お問い合わせ先
supportあっとwordprogress.org (担当・赤坂)
ランダムリンク集
RandomLinks@bit.ly

以下、実験中 :
TAG | Alice
チームWordProgressの新着記事一覧です :
(※各記事の内容を閲覧するためには、各記事のタイトルをクリックしてください。)
記事概要の
プレビュー
昨晩、dankogai氏の『アナグラマーのすすめ』を読みながら寝たこともあり、教育用言語に興味を持っている。なので、先ほどのAliceを、Alice 3の開発ブログなどから追いかけてみた。
Alice 3は、Sunとちょっとした蜜月(?)の中、開発が進められていたもようで、トップページには例のコレが。
Aliceが言語としてそこそこブレイク中の背景には、こうしたSun/Javaとの関係のほか、プロデュースした教授がすい臓がんの中最後の授業を・・・という、全米(の一部)がおおいに涙したストーリーなどがあるらしいが、そのあたりはひとまずおいて、Alice 3 betaの開発環境(NetBeansの文字が・・)について見てみた(以下、キャプチャ)。
なんとなくは分かるだろう。画面右上のペンギンに関するクラスMyPenguinに、hopというプロシージャを定義している。そこにUp/Downという命令を記述という具合。まさしく、オブジェクト指向の教育向けだ。こうしたビジュアル教育環境の好き嫌いはさておき(dan氏はおそらく好きではないだろう)、この教育環境が女性エンジニアを増やすため、メインのターゲットのひとつを女子中学生に据えているところが興味深い。・・・果たして、その試みが成就するものかは・・・判断できない(Alice 3について、実際に試したわけでもなんでもないので、実はもっとすばらしいものかもしれないが)。
このaliceを見た目で、JavaScript用いたプログラミング教育書籍『アマグラマーのすすめ 』(未完)を見てみる。ちょっとだけ、本文を引用させてもらう。
HTMLがWebページという「もの」を書くための言語だったのに対し、JavaScriptはWebページをどう「描きかえるか」という「こと」を書くための言語というわけです。
実はコンピューター上で試行錯誤してみると、「もの」と「こと」はきちんと別れていた方が 都合の多い場合も多いことに気がつきます。
・・・
本を一冊読んだぐらいではプログラマーにはなれません。それがどんな名著でも。
・・・
プログラミング言語には命令形しかないということです。それもそのはず、プログラミング言語というのはコンピューターに何をすればいいのかを伝える、すなわちコンピューターに命令するための言語だからです。そこには過去形も現在形も未来系も不要です。「やる」も「やらぬ」も不要でただ「やれ」だけがあればいいのです。
・・・
私は前に「プログラムには命令と条件分岐しかない」と言いました。実はこれだけでも、きちんと動くプログラムは書けます。しかし、それだけでプログラムを書こうという人は今ではいません。
・・・
なぜなら、プログラマーには次の三大美徳が備わっているからです。
怠慢(laziness) 短気(impatience) 傲慢(hubris)
HTMLがWebページという「もの」を書くための言語だったのに対し、JavaScriptはWebページをどう「描きかえるか」という「こと」を書くための言語というわけです。
実はコンピューター上で試行錯誤してみると、「もの」と「こと」はきちんと別れていた方が 都合の多い場合も多いことに気がつきます。
・・・
本を一冊読んだぐらいではプログラマーにはなれません。それがどんな名著でも。
・・・
プログラミング言語には命令形しかないということです。それもそのはず、プログラミング言語というのはコンピューターに何をすればいいのかを伝える、すなわちコンピューターに命令するための言語だからです。そこには過去形も現在形も未来系も不要です。「やる」も「やらぬ」も不要でただ「やれ」だけがあればいいのです。
・・・
私は前に「プログラムには命令と条件分岐しかない」と言いました。実はこれだけでも、きちんと動くプログラムは書けます。しかし、それだけでプログラムを書こうという人は今ではいません。
・・・
プログラマーには次の三大美徳が備わっている 怠慢(laziness) 短気(impatience) 傲慢(hubris)
当然、言っていることは間違ってはいない。加えて、JavaScriptのevalを用いて、その場でコードを試せるなど利点もある。だが、残念ながら、Aliceに比べるといささか「華」が欠けている。dan氏の記述は関数内関数からクロージャに入るあたりでとまっている。早い時期にクロージャを、というdan氏の主張はもっともなのだが・・
と、ここまで見ても、やはり教育用言語としては、JavaScriptの方に可能性を感じる。立ち上がりがもっさりするJava環境上で、さらにビジュアルな環境を動かし、3次元・・・「運動会の徒競走で全員が並んで走って全員が一等賞」みたいな映像を見た時のように違和感がある。ただ、2007年時点のdan氏の企図を実現するためには、Aliceコミュニティのそこそこの勢いに学ぶべきところがあるのだろう。JavaScriptも当然、そこそこビジュアル面はいけるので、そのあたりにもフォーカスを当てる・・・方が良いのか、私には分からないが。私は実のところ、1冊目の入門書よりも、2冊目の本の方に興味があるのだが(LispClojure本?)、1冊目がJava/C/PHP以外のルートも確立してほしいところ。JavaScriptでプログラミング入門本には期待する。
とはいえ、dan氏「アマグラマー」、導入部分で、programmerとprostituteを無理やりかけているあたりですでに女子中学生向けでない;;
・・・Aliceの方は、で不思議の国のアリスのキャラクター、(GAE向けjavaフレームワークのあれでなく、人気のネットワークゲームの)slims2のキャラクターをオブジェクト指向的に(?)操作して、プログラミングを学べるらしい。 参考 storytelling alice
CGでプログラミングというのがいいのかは不明だが、その名の通り、アクター・ベースのプログラミング教育環境として・・・JavaSceiptベースのビジュアル教育環境・・・を提供するのが良いのか・・・も・・・?
・・・例えば、おモー様の世界感(nowhereとしての火星?)あたりを取り込んだJavaScript入門を・・・そのうち、勝手に書いてみるかもしれない。JavaScriptの利点であるブラウザ環境の親和性を活かしつつ。
Now Loading…
Now Loading…
Alice
Hide
プログラミング言語のランキングとして有名な TIOBE Index の2009年10月のデータを眺めていて、興味深いものをみつけた。
上位陣、iPhone効果でObjective-Cがジャンプアップ、D言語に加えてLuaも下がり気味・・・といったことはさておいて、私が興味を持っているのは、20位以下。このあたりになると、統計もいいかげんそうで、あまりあてにならないのかもしれないが、34位とまだまだなScalaの上に知らない言語がいくつもならんでいる。
そのうち、Adaの次の30位にランクインしているAlice、聞いたことがなかったので、ちょっと調べて見た。
むむっ、プログラミング言語Aliceは2つあるぞ。
オブジェクト指向教育用言語Alice (on JVM with 3Dグラフィックサポート)
並列処理指向関数型言語Alice (Ozの影響を受けたML系言語、らしい)
どっちも、Scalaにゆかりあり、かな。
たぶん、教育用言語の方がランキングされているのだと思う(OCamlなどメジャーどころ(?)のML系言語は既にScalaの下のランクだし)。今度TIOBEランキングを見て、まだ、Scalaの上位だったらさわってみようかな。JVM上ということで、相互運用できそうだし。
※ちなみに、「Alice Scala」で検索すると、イタリア系女子のみが検索上位に来る
—-
Ruby/C#の観点からのまとめ@2009年冒頭 => どのプログラミング言語が将来的に有望か
Alice in Wonder Underground(違)
Now Loading…
Alice, TIOBE
Hide