07.07.2018 - チャールズホスキンソンのama

IOHK のCEO、チャールズホスキンソンは先日、「なんでも聞いて」(“Ask-Me-Anything”(AMA))というイベントをサプライズで開催しました。コミュニティに投稿された二十六の質問にライブで回答し、そのライブストリームは録画されました。AMAの全編は下記に記載していますが、このフォーラムの投稿では、主要な質問一つについて、要約します。

カルダノはスマートコントラクトおよび Dapps(分散型アプリケーション)を記述するのに何種類の言語をサポートしますか?

回答: カルダノの目指すところは規則性と実用性です。 これを達成するため、チャールズと IOHKは、コンピュテーションに関して解決しなければならない三つの問題群について、外部との研究を進めています。

  • まず、会計に関するコンピュテーションがあります。ビットコインほかの暗号通貨が解決しようとしていたところです。しかし、残念なことに、広大な金融エコシステムのほんの一片をカバーする性能しかありません。そのため、 IOHKでは、保有アセットの種類やそれらのトランザクションの種類を可能な限り効率よく記録できる会計台帳を構築することを考えました。その結果、Marloweというドメイン固有言語と、それに組み込む汎用性プログラミング言語Plutusが作られています。加えて、UTxO会計モデルを厳密に研究し、そのモデル内で発行されたアセットがイーサリアムスタイルの会計モデルと相互運用可能になる方法を探そうとしています。現在、さまざまな種類の外来からの取引形態について、思考実験を実施し始めているところで、セキュリティ要件が含まれていることを確認し、ビットコインが取りかかっていた課題を解決しようとしています。

  • 次に、イーサリアム(Ethereum )スタイルのコンピュテーション・モデルがあります。問題は、現在のものはスケールできないところにあります。このモデルをおもちゃ用途以上の事に使おう思うと、オフチェーンでインターフェースしなければならず、つまり、イーサリアムを離れて作業するか、二層のネットワークを構築するかしなければなりません。IOHKはこのモデルをよりよくするため、複数の研究ストリームを展開しており、特に、スマートコントラクト用にゼロからIELE 仮想マシンをつくるランタイム・ベリフィケーション(RV)の研究と取組みは特筆すべきです。また、意味論に基づいたコンピレーション(Semantics Based Compilation)の研究にも投資しています。基本的には、ある言語を使って特殊な方法でプログラムを記述すると、そのコストを一度支払った上で、その言語で書かれたプログラムを、別の言語で同様に注意深く書かれたプログラムに変換できるようにします。したがって、ある言語のKセマンティクスと別の言語のK セマンティクスがあると、その二言語間の変換できるのです。このプロジェクトが成功すれば、 ユニバーサルなコンパイルターゲットが構築でき、新しい言語をサポートするには、その言語のセマンティクスを記述すればよいだけになります。チャールズはここで、もう一つのアドバンテージを挙げていますが、それは、たとえばIELE 2.0がリリースされるなど、ベース層が更新されてもIELE のセマンティクスを更新するだけでシステムのほかのものの更新は必要なくなります。現在では、ベース層の更新の問題点はすべてのコンパイラをアップデートしない限り、レガシー版から離れられないというところにあります。

  • 最後に、チャールズとIOHKは、Enigmaがインテルと行なったように、代替となるコンピュテーション・モデルを探しています。東京工業大学とIOHK共同で進められている研究では、マルチパーティ・コンピュテーションが検討されています。ブロックチェーンからトランザクションを分離したい時に有効です。たとえば、ポーカーでなら、ブロックチェーンを支払システムとして使用したり、他のプレイヤーとつながるのに使用したりしますが、ポーカーのゲームが保存されるかどうかは気にしません。注目されるのは、ゲームが公正に行われたか、ズルをした人がいないか、きちんとした人達を相手にゲームが行われているか、勝利すればゲーム終了後にきちんと支払いが行われるか、ということです。これをすべてブロックチェーンで賄うのは、たとえば、決済にかかる時間がネットワーク全体の決済時間に制約されたりと、有利ではありません。ビットコインのように10分毎のブロック時間があると、ゲームの状態が更新され次のラウンドが見えるまでに10分待たなければなりません。したがって、このようなアプリケーションにとって、ブロックチェーンは全くいいところがありません。そして、このようなアプリケーションが、私達が気になるアプリケーションの大半を占めるのです。そのため、 IOHKではこれらのオプションを研究し、これらの機能をどうやってカルダノに導入できるかを検討しているのです。

質問に答えるにあたって、チャールズは、カルダノがサポートする言語数を具体的には述べなかったが、IOHKの総合研究とワークストリームから見ると、多くの言語が使用できるようになることは明らかです。

AMAビデオ(英語)はこちら: