タプル空間によるブラウザ間通信を備えたScheme処理系の開発

書誌事項

タイトル別名
  • タプル クウカン ニ ヨル ブラウザ カン ツウシン オ ソナエタ Scheme ショリケイ ノ カイハツ
  • A Scheme Implementation with Inter-browser Communication Using Tuple Space

この論文をさがす

抄録

JavaScriptによる高機能なWebアプリケーションの開発に不可欠となりつつあるAjax技術において,サーバからの擬似的なプッシュを実現するCometという手法が知られている.Cometにはブラウザ間通信などさまざまな応用が考えられるが,通信の管理が複雑になるなどの問題があり,あまり一般には使われていない.そこで我々は,より簡単にブラウザ間通信を実現する手法としてタプル空間を用いた手法を提案する.タプル空間は並列プログラミングにおいてプロセス間の通信や同期のために用いられるモデルであり,それらに必要な簡潔で強力なAPIが定義されている.CometはAjaxにおける非同期通信において,HTTPサーバからの応答をイベントの発生時まで遅延させるという手法であるが,タプル空間を使うことによってそのような通信管理をプログラマが直接扱う必要がなくなり,ブラウザ間通信をともなうアプリケーションをより簡単に作成できるようになった.本研究ではこれを,我々の開発しているJavaScript上で動作するScheme処理系,BiwaSchemeに実装した.また,チャットシステムなどのアプリケーションの作成を通して,その効果を確かめた.

In addition to Ajax, which is an almost indispensable technique for developing modern highly-functionalWeb applications in JavaScript, Comet is known as an important technique to enable a server to push data to a client program. Comet has various applications such as inter-browser communication. However, it is not widely used because it needs complicated communication management. In order to implement inter-browser communication more easily by avoiding such complicated management, we propose the use of a tuple space. Tuple spaces is a model for parallel programming which is defined for communication or synchronization among processes with simple but powerful API's. Comet is a technique to delay the response of an HTTP server until an event occurs in asynchronous communication with Ajax. With a tuple space, programmers do not need to handle such communication management directly and can develop applications with inter-browser communication more easily. We implemented this model into BiwaScheme, our Scheme implementation being developed in JavaScript. We also verified the effectiveness of this system by building some applications, such as a chat system.

収録刊行物

キーワード

詳細情報 詳細情報について

問題の指摘

ページトップへ