WEKO3
アイテム
エンドユーザがプログラム可能なWikiエンジン
https://ipsj.ixsq.nii.ac.jp/records/83715
https://ipsj.ixsq.nii.ac.jp/records/83715567ee113-df5a-45d2-b069-392320468e8d
名前 / ファイル | ライセンス | アクション |
---|---|---|
![]() |
Copyright (c) 2012 by the Information Processing Society of Japan
|
|
オープンアクセス |
Item type | Trans(1) | |||||||
---|---|---|---|---|---|---|---|---|
公開日 | 2012-09-04 | |||||||
タイトル | ||||||||
タイトル | エンドユーザがプログラム可能なWikiエンジン | |||||||
タイトル | ||||||||
言語 | en | |||||||
タイトル | Programming Wiki in Wiki | |||||||
言語 | ||||||||
言語 | jpn | |||||||
キーワード | ||||||||
主題Scheme | Other | |||||||
主題 | [発表概要] | |||||||
資源タイプ | ||||||||
資源タイプ識別子 | http://purl.org/coar/resource_type/c_6501 | |||||||
資源タイプ | journal article | |||||||
著者所属 | ||||||||
南山大学情報理工学部 | ||||||||
著者所属(英) | ||||||||
en | ||||||||
Faculty of Information Sciences and Technology, Nanzan University | ||||||||
著者名 |
横山, 哲郎
× 横山, 哲郎
|
|||||||
著者名(英) |
Tetsuo, Yokoyama
× Tetsuo, Yokoyama
|
|||||||
論文抄録 | ||||||||
内容記述タイプ | Other | |||||||
内容記述 | Wikiは,誰でも自由にウェブブラウザ上でウェブサイトを書き換えることができる手軽さから広く活用されてきている.Wiki文書は,HTTPサーバ上ではWiki記法で記述されており,ウェブブラウザなどからの要求があるとハイパーテキストに変換されて,エンドユーザから閲覧される.さらに,エンドユーザは閲覧時にフォームなどからWiki記法でWiki文書を自由に編集することができる.しかし,Wikiエンジンが稼働するサーバ上で実行可能であるソースコードは,通常,Wiki文書には記述できない.この理由の1つは,管理者の意図しない悪意のある動作をするソースコードをサーバ上で実行できないようにするというセキュリティ上の制約である.我々は潜在的に危険をともなうIOアクションを分離して管理することにした.プログラミング言語HaskellをWikiエンジンの実装言語として選択して,IOモナド内でエンドユーザの記述した任意のコードを実行させないことで,管理者の意図しない悪意のある動作を防ぐというアプローチをとった.プログラマブルなWikiページは,プログラミング言語レベルのモジュールに対応して,互いに参照し合うことができる.技術上の関心から極力Wikiエンジンの深い部分まで,そのWiki上でプログラミングができるように設計を試みた.プログラムの入力は,通常のWiki上のフォームから可能であり,エンドユーザはクライアントに特別な環境を準備しなくても,そのWikiエンジンの開発にリアルタイムに協調的に携わることが可能である.Wiki文書において記述された副作用のある任意のアクションが実行されないことはHaskellのクラスを用いて静的型検査によって保証される. | |||||||
論文抄録(英) | ||||||||
内容記述タイプ | Other | |||||||
内容記述 | A wiki, a web application for modifying a website by web browsers easily and cooperatively, is now managed by many companies and organizations and many wiki clones are publicly available. Wiki documents are described under Wiki notation. Ordinary wikis are not able to execute part of Wiki documents, which are in part prevented by a potential security risk of the execution of arbitrary malicious codes. We eliminate such a risk by imposing restriction on all the actions under IO monads in end-users' programs. Programmable wiki pages are literate Haskell programs that are language-level modules and can refer to one another. We design the architecture of the proposed wiki engine to be programmable by end users as much as possible. The development of a wiki engine on itself does not require the developing environment in the client computers. Type checking ensures the absence of arbitrary actions with side effects in end-users' programs using Haskell's type class and static type checking. | |||||||
書誌レコードID | ||||||||
収録物識別子タイプ | NCID | |||||||
収録物識別子 | AA11464814 | |||||||
書誌情報 |
情報処理学会論文誌プログラミング(PRO) 巻 5, 号 4, p. 41-41, 発行日 2012-09-04 |
|||||||
ISSN | ||||||||
収録物識別子タイプ | ISSN | |||||||
収録物識別子 | 1882-7802 | |||||||
出版者 | ||||||||
言語 | ja | |||||||
出版者 | 情報処理学会 |