連載:Reactive Extensions(Rx)入門 第1回 Reactive Extensionsの概要と利用方法 河合 宜文 2011/11/01 C# 3.0より導入され、プログラミング・スタイルに大きな変革をもたらしたLINQはご存じだろうか。詳しくは「特集:Road to LINQ」で紹介されているが、データ加工における処理の手間を大きく解消するものである。LINQの特徴として、各種のデータソース(=配列やXMLデータ、SQLデータベースなど)に対して統一的な記法を提供することが挙げられる。 Reactive Extensions(以降、Rx)は、LINQが適用できるデータソースの概念を「非同期」と「イベント」に広げた、いわば「LINQ to Asynchronous」「LINQ to Events」とでも言うべきものである。それにより、従来では手間のかかった複雑な非同期処理
スマートフォンアプリは果たしてどこまで、端末に関する情報を取得してもいいのだろうか。 位置情報と連動してお勧め店舗情報を表示したり、過去の検索履歴を基に商品を提案したりと、端末の情報やユーザーの行動履歴を活用するスマートフォンアプリが登場している。中には便利なものも多いが、一歩間違えれば、ユーザーのプライベートな情報が筒抜けになりかねない。結果として、スマートフォンを活用したビジネスやそれを支える広告市場までもが、否定的な目で見られ、発展を阻害される恐れもある。 この議論が起こったきっかけの1つは、ミログが公開していた「AppLog」と「app.tv」というアプリだ。AppLogはSDKの形で提供され、これを自前のアプリに組み込むと、Android端末にインストールされているアプリの情報やその起動回数を収集し、同社のアプリケーション分析サービスに送信するようになっていた。開発者にはインスト
2011/04/27 シリコンバレーは、ITの世界にとって今も特別な場所だ。 Apple、Cisco、eBay、NVIDIA、Oracle、Intelといった名だたるIT企業が本社を置き、Google、Facebook、PayPalなどWeb系ベンチャーが次々と生まれ続けている。 人口約200万。行政区域としてシリコンバレーという場所は存在しないが、人口100万を擁するサンノゼ市を筆頭に、サンタクララ、サニーベール、マウンテンビューなど約20市を含む領域に世界の才能が集まる。米国西海岸、太平洋に向かって親指を突き立てたような半島の南北30マイル(48km)の細長い領域、東京圏に地図を重ねて言えば、だいたい東京から横浜までぐらいの間に、IT企業群がキラ星のように点在しているような具合だ。建物は低く、緑も多い。風景を見る限りはのんびりした場所だ。 パロアルトの比較的大きな通り。クルマ移動が基本
2009/07/24 Ruby開発コアメンバのまつもとゆきひろ氏、笹田耕一氏、yugui氏の3人に話を聞いた。対談の前編ではバージョン1.8系から1.9系へという大きなバージョンアップの話を中心に、RubyとRailsの関係やRuby開発コミュニティのあり方についてお話しいただいた。後編の話題は、Rubyに宿る設計思想や、今後のRubyの多様化や進化の方向性などだ。 LispとRubyの違い @IT yuguiさんは子どもの頃からプログラミングを? yugui 最初に触ったのはN88-BASICでした。父のお下がりで、一次方程式を解いたりしてましたね。 @IT それは中学生のとき? yugui えーと、小学生ですね。 まつもと おぉー、ちょっと何だろう……、ぼくとのこの差は……(笑) yugui その後、FM-TOWNSのBASICでライフゲームを作ったりしてました。その後、Webがブレー
2009年1月、Cyan設計者 林拓人氏とLispの伝道師 竹内郁雄氏との対談「Cyanを設計した高校生、5カ月で5つの言語を習得」が大きな反響を呼んだ。その原因の1つは、竹内氏が発したひと言「わたしの持論ですが、国語ができる(=日本語できちんとした文章が書ける)人じゃないとプログラムは書けない」だ。これについてネットでは同意する意見が多かったものの、記事中で根拠が明らかにされていなかったため議論が紛糾した。そこで編集部は竹内氏に詰め寄り、「わたしの持論」について詳しく説明してもらうべく寄稿をお願いした。国語力とプログラミング力には本当に相関関係があるのだろうか。 事のいきさつ~Cyan設計者 林くんとの対談で発してしまったひと言が思わぬ反響を呼ぶ Cyan言語で経済産業大臣賞を受けた開成高校の林拓人くんと対談(「Cyanを設計した高校生、5カ月で5つの言語を習得」)しているうちに、つい調
2009/02/13 「今日はRubyの話はしません」。プログラミング言語「Ruby」の生みの親で開発コアメンバーでもある、まつもとゆきひろ氏は冒頭でそう話すと、自身のプログラミング経歴や半世紀に及ぶプログラミング言語の歴史を外観しつつ、未来のプログラミング言語へ向けた構想について語った。 書籍だけでPascalを習得した高校生 2009年2月12日、翔泳社主催で東京・目黒で行われた「Developers Summit 2009」でまつもと氏は「未来へつながる言語~ある言語おたくの視点から」と題した講演を行った。立ち見が出るほど詰めかけた観衆に向かって、“最も有名なプログラミング言語オタク”として自身のプログラミング言語観を披露した。 1980年代の高校生時代からプログラミング言語が好きだったというまつもと氏だが、一番最初に使った言語はBASICだったという。ところが、ローカル変数や構造化
読者の皆さんは、「Cyan」(サイアン)という言語をご存じないかもしれない。Cyanは、Lispのマクロを持ち、Python風のインデントによってブロックを表すプログラミング言語。2008年の春、林拓人という1人の高校生によって設計された。 連載第1回の竹内郁雄氏が「開発」の天才、第2回の五十嵐悠紀氏が「発想」の天才とするならば、今回の林氏は「プログラミング言語」の天才だ。 林氏がプログラミング言語に初めて触れたのは中学3年の夏休み。そこから冬休みまでの5カ月間に、5つのプログラミング言語を習得した。その後もいくつかのプログラミング言語を学ぶ中、林氏の興味はWebサービスなどのものづくりには行かず、ひたすら言語自体へと向かっていった。 高校2年の春、自身でプログラミング言語Cyanを作り上げた。Cyanを設計した林氏は、「U-20プログラミング・コンテスト」(以下、U-20プロコン)で経済
Lispの一種であるScheme。いくつかある処理系の中でも気軽にスクリプトを書けるGaucheでLispの世界を体験してみよう(編集部) 「Gaucheでメタプログラミング」と題して、これからGaucheを使ったプログラミングの連載を書かせていただきます吉田裕美です。よろしくお願いいたします。 Gaucheとは 今回の連載で取り上げるGaucheはハワイ在住の日本人ハッカー、川合史朗さんが作った、Lispの一種であるSchemeのオープンソース処理系です。 Gaucheの特徴は、PerlやRubyのように気軽に使える軽い処理系だということです。Perl同様に正規表現や文字列操作が行え、ちょっとしたツールの作成にも使えます。しかし、非常に強力なCommon Lisp風オブジェクトシステムを持ち、Lispならではのマクロに加え、Webやグラフィックスなどの豊富なライブラリも持っているので実用
「高専生のパワーを確認したいと思った」。6月14日に開催された「高専カンファレンス」で主催の大日向大地氏はそう話した。同イベントは、高専に関連した話題を語るための場として企画された。今回は全国各地の高専の学生や卒業生が参加した。Ustreamによる動画配信の視聴者と合わせて50人を超える参加者が、それぞれ情報交換を行った。 高専とは高等専門学校の略称で、技術者の育成を目的とした5年制(一部を除く)の学校のこと。現在、全国で64の高専が存在している。 高専カンファレンスを開催するに当たって、大日向氏は「技術者としていろいろな方面で活躍する高専生の話や、いまは技術者ではないが、技術者としての経験をベースに、経営者など技術者以外の仕事をしている人の話を聞きたいと思った」と話す。また、1962年に高専に入学し、1967年に社会人として働き始めた高専第一期生が2007年に定年を向かえている状況を挙げ
ある仕様を利用するための網羅性の高いライブラリを用意したいとき 再利用性が高い(と思われる)プログラムをライブラリ化したいとき Webシステムを外部から利用してもらうために一部分を公開したい場合 多人数で開発する事柄で共通化させておきたい部分をまとめたい場合 ほかの言語で作られたアプリケーションをある言語で利用したいときの橋渡し用 ちなみに、JSP/Servletの世界でよく使われているStruts Frameworkは開発者のCraig McClanahan氏が休暇中に思い付いて開発したものだそうです。オレゴン州のビーチで、ラップトップに向かい、3日間の休暇中ずっとコーディングしていたそうです。 一緒に行った奥さんは機嫌が悪かったようですけど。 ここでは、作成したAPIが自分だけではなく、多くの人に使ってもらえるよう、便利に使えるポイント、広く普及するためのポイントをとらえていきましょう
*2 XULは「XMLユーザー・インターフェイス言語」を意味し、Mozillaによりデスクトップ・アプリケーション開発のために提供されている。XULRunnerは、Geckoエンジンを利用するランタイム環境のため、「(新)GRE(=Gecko Runtime Environment)」とも呼ばれる(ちなみ、新GREに対して「Mozilla Application Suite」の一部が「旧GRE」と呼ばれている)。 つまり、例えばXULRunnerをクライアント環境にインストールすれば、そのActiveXコントロールを利用してGeckoエンジンによるWebページ・レンダリングが実現できるというわけだ。以下では、この方法について説明する。 ●XULRunnerのインストール まずは最新のXULRunnerをインストールしよう。これには、次のFTPサイトに行き、 XULRunnerのNightl
竹内郁雄氏(61歳) 撮影:大星直輝 竹内氏によると、Lispはすべての言語の原点なのだという。「いまRubyがブームだが、Rubyは要するにカッコのないLisp。XMLもぶ厚いカッコのあるLisp。いろいろなプログラミング技法を見ますが、『Lispにあった』ということが多いです」(竹内氏) 竹内氏の業績をひと言で語るのは難しい。1971~1973年、日本電信電話公社(現NTT) 武蔵野電気通信研究所 基礎研究部において、Lispを使った自然言語処理システムの研究を行い、1974~1979年、同研究所で人工知能研究を支援するための記号処理システムを次々に開発。1980~1986年、同研究所などで同社比約1000倍の規模の記号処理システムTAO/ELISを、ハードウェアからOS、応用ソフトまで一貫して設計・実装した。ELISについては竹内氏の功績を含めコン
2007/12/25 「そういえばあのretryの話、どう思う?」、「誰も使ってないから害悪が多いっていう話は説得力ありますよね」、「じゃあなくすか……、うん、なくしといて」、「あ、決まっちゃった(笑)」――。 まつもとゆきひろと、笹田耕一。いま、世界が注目するプログラミング言語「Ruby」の生みの親と、開発コアメンバーの2人は、こともなげにRubyの仕様を記者の目の前で変更してしまった。Rubyの開発はどのように行われ、どこへ向かおうとしているのか。現行のバージョン1.8系から大きく様変わりする次期開発版「Ruby 1.9」のリリースを12月25日に控えた2人に、師走の秋葉原で話を聞いた(文中、敬称略)。 Rubyの仕様は密室で決まる!? 冒頭に紹介した2人の会話は、「retry」というRubyの文法の2種類ある使い方のうち、これまでほとんど使われた形跡がない方を文法仕様から取り除くかど
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く