【インタビュー】

C/C++レガシーをFlashで有効活用!? - Adobe Alchemyの魅力

1 AlchemyとActionScript、LLVMの関係は

 
  • <<
  • <

1/3

米Adobeのプラットフォーム事業部において、デベロッパ向けツールのプロダクトマネジメントを務めるGreg DeMichillie氏

2008年11月、Adobe LabsにFlash 10やAIR 1.5の活用の幅を大幅に広げる可能性をもった興味深いプロジェクトが登場した。Adobe Alchemyがそれだ。Adobe Labsは実験的な研究プロジェクトを擁しており、Alchemyはそうしたプロジェクトのひとつ。今回、Adobe Systemsのプロダクトマネジメント担当ディレクターを務めるGreg DeMichillie(グレッグ・デミチリー)氏にAlchemyの詳細を聞く機会を得た。Alchemyはどうやって誕生したのか、AdobeはAlchemyをどう捉えているのか、同氏の話から概要をお伝えしたい。

Adobe Alchemyは、簡単にまとめるとLLVMのActionScript 3.0バックエンドを開発するプロジェクトだ。LLVMがどういったプラットフォームで、ActionScript 3.0バックエンドを開発することが何を意味するかを把握できると、Alchemyが目指しているものがよくわかる。

LLVM Compiler Infrastructureはコンパイルおよび実行のためのインフラストラクチャ。デフォルトではC/C++のコンパイラ/実行環境として動作するが、中間形式の出力と実行をサポートするなどJavaに近い仕組みをもっており、フロントエンドやバックエンドを開発すれば言語に依存することなく活用できるという「プラットフォーム」としての機能をもっている。

LLVMはアーキテクチャが明確で、さらにコンパイル時、リンク時、実行時、インストール後などさまざまなシーンで効率のいい最適化を提供するという特徴がある。古いコンパイラが特定の言語に依存しているのに比べて、言語に依存せずに質の高いコードを生成できるという特徴がある。

サンフランシスコで開催されたAdobe MAX 2008の2日目のキーノートで姿をあらわしたAlchmey。C/C++をActionScript 3にトランスレートするFlash Player 10およびAIR 1.5と互換

Alchemyの着眼点はここにある。LLVMではすでにC/C++フロントエンドが開発されており、C/C++のソースコードをLLVM中間形式に変更する機能が実現されている。ということは、LLVM中間形式をActionScript 3.0に変換できれば、結果的にC/C++のコードをFlashプラットフォームで実行できるようになる。

  1. LLVM: C/C++ → LLVM中間形式
  2. LLVM (Alchemy): LLVM中間形式 → ActionScript 3
  3. AS変換ツール: ActionScript 3→ActionScript 3中間形式
  4. Flash: ActionScript 3中間形式を実行

LLVMの最適化機能の恩恵にあずかれるうえに、C/C++フロントエンドを開発する必要がない。LLVM用にフロントエンドが開発されれば、それら言語も同じようにしてFlashプラットフォームで動作するようになる。LLVM中間形式をActionScript 3に変換するActionScript 3バックエンドを開発するだけで、さまざまな恩恵を受けられる。

  • <<
  • <

1/3

インデックス

目次
(1) AlchemyとActionScript、LLVMの関係は
(2) Alchemyの主要目的 - C/C++資産の活用
(3) スタートはパートタイム研究者の何気ないプレゼンだった! - Alchemyの今後


転職ノウハウ

あなたが本領発揮できる仕事を診断
あなたの仕事適性診断

シゴト性格・弱点が20の質問でサクッと分かる!

「仕事辞めたい……」その理由は?
「仕事辞めたい……」その理由は?

71%の人が仕事を辞めたいと思った経験あり。その理由と対処法は?

3年後の年収どうなる? 年収予報
3年後の年収どうなる? 年収予報

今の年収は適正? 3年後は? あなたの年収をデータに基づき予報します。

激務な職場を辞めたいが、美女が邪魔して辞められない
激務な職場を辞めたいが、美女が邪魔して辞められない

美人上司と可愛い過ぎる後輩に挟まれるエンジニアの悩み

人気記事

一覧

イチオシ記事

新着記事

対話で献立を相談、ご飯とおかずを同時に作る - シャープのIoTオーブン「ヘルシオ」を使ってみた
[11:30 7/26] スマホとデジタル家電
【特別企画】脱・PCメール! 「ビジネス版LINE」でキャリア認定ショップにおけるコミュニケーションの課題を解決
[11:30 7/26] 企業IT
【連載特別企画】5分でわかる! フラッシュストレージの基礎講座 第2回 キャッシュとストレージの違いは?
[11:30 7/26] 企業IT
自社運用が必須条件の西鉄グループはどのサンドボックスを選んだのか?
[11:30 7/26] 企業IT
夏休み中の男の子に着せたい! ユニクロのオススメ・キッズ夏服4選
[11:30 7/26] ライフスタイル

求人情報