著者
岩田 力 磯谷 正敏 原田 徹 金岡 祐次 亀井 桂太郎 前田 敦行 高山 祐一
出版者
日本腹部救急医学会
雑誌
日本腹部救急医学会雑誌 (ISSN:13402242)
巻号頁・発行日
vol.33, no.4, pp.773-776, 2013-05-31 (Released:2013-07-26)
参考文献数
17
被引用文献数
2

要旨:経肛門的直腸異物は,精神障害や性的嗜好あるいは事故により肛門から異物が挿入され,抜去不能となったものである。瓶類,玩具や缶の蓋などの報告例は多いが,石膏による直腸異物の本邦報告例はない。今回,われわれは石膏を経肛門的に注入し,全身麻酔下にS状結腸に切開を加え異物を摘出した1例を経験したので,若干の文献的考察を加え報告する。症例は32歳男性,既往歴は特になし。10年以上前より自慰行為にて肛門より液体状の石膏を注入していた。2011年6月に液体状の石膏500mLを注入,排出困難のために当院救急外来受診した。血液検査では炎症反応の高値を,腹部CTでは直腸からS状結腸におよぶ高吸収体を認めた。石膏注入後約15時間後に全身麻酔下に経肛門的に摘出を試みたが不可能であり,開腹手術へと移行した。開腹して腹腔内よりS状結腸の異物を肛門側に押し出そうとしたが押し出せず,S状結腸に切開を加え18×6×6cmの石膏を摘出した。直腸粘膜の損傷を認めたために低位前方切除術を施行した。術後経過は良好で第11病日に退院した。
著者
岩田 力 磯谷 正敏 原田 徹 金岡 祐次 亀井 桂太郎 前田 敦行 高山 祐一
出版者
日本腹部救急医学会
雑誌
日本腹部救急医学会雑誌 = Journal of abdominal emergency medicine (ISSN:13402242)
巻号頁・発行日
vol.33, no.4, pp.773-776, 2013-05-31
参考文献数
17

要旨:経肛門的直腸異物は,精神障害や性的嗜好あるいは事故により肛門から異物が挿入され,抜去不能となったものである。瓶類,玩具や缶の蓋などの報告例は多いが,石膏による直腸異物の本邦報告例はない。今回,われわれは石膏を経肛門的に注入し,全身麻酔下にS状結腸に切開を加え異物を摘出した1例を経験したので,若干の文献的考察を加え報告する。症例は32歳男性,既往歴は特になし。10年以上前より自慰行為にて肛門より液体状の石膏を注入していた。2011年6月に液体状の石膏500mLを注入,排出困難のために当院救急外来受診した。血液検査では炎症反応の高値を,腹部CTでは直腸からS状結腸におよぶ高吸収体を認めた。石膏注入後約15時間後に全身麻酔下に経肛門的に摘出を試みたが不可能であり,開腹手術へと移行した。開腹して腹腔内よりS状結腸の異物を肛門側に押し出そうとしたが押し出せず,S状結腸に切開を加え18×6×6cmの石膏を摘出した。直腸粘膜の損傷を認めたために低位前方切除術を施行した。術後経過は良好で第11病日に退院した。
著者
鈴木 恵輔 加藤 晶人 光本 (貝崎) 明日香 沼澤 聡 杉田 栄樹 中村 元保 香月 姿乃 井上 元 柿 佑樹 中島 靖浩 前田 敦雄 森川 健太郎 土肥 謙二
出版者
日本救急医学会関東地方会
雑誌
日本救急医学会関東地方会雑誌 (ISSN:0287301X)
巻号頁・発行日
vol.42, no.2, pp.35-38, 2021-03-31 (Released:2021-03-31)
参考文献数
10

ジフェンヒドラミンは抗ヒスタミン薬であり過量内服により多彩な中毒症状を呈するが, 重症例では最悪死に至ることがある。近年インターネットなどで取り上げられ, 自殺目的での中毒症例の増加が懸念されている。今回, 市販の抗ヒスタミン薬の大量服薬により心肺停止に至った症例を経験したので報告する。17歳女性。公園内で倒れているところを通行人が発見し救急要請。ジフェンヒドラミン12,000mg内服したと推定され, 救急隊現着時には心肺停止状態であった。当院救命救急センター来院時も心肺停止状態であり蘇生することはできず永眠となった。後日ジフェンヒドラミンの血中濃度を測定したところ, 来院時の血中濃度は26.73µg/mLと過去に報告されている心肺停止症例と比較しても高値であった。OTC医薬品として簡単に手に入る薬剤での死亡症例のため治療側も販売側も十分に注意していく必要があると考えられる。
著者
鈴木 恵輔 加藤 晶人 光本(貝崎) 明日香 沼澤 聡 井上 元 中島 靖浩 前田 敦雄 森川 健太郎 八木 正晴 土肥 謙二
出版者
一般社団法人 日本臨床救急医学会
雑誌
日本臨床救急医学会雑誌 (ISSN:13450581)
巻号頁・発行日
vol.23, no.4, pp.611-615, 2020-08-31 (Released:2020-08-31)
参考文献数
10

ジフェンヒドラミンは抗アレルギー薬,風邪薬,睡眠改善薬などとして用いられている。今回,ジフェンヒドラミン4,990mgを内服した急性中毒例に対して血液透析を施行し,血中濃度測定を行った症例を経験した。症例:22歳,女性。意識障害のため当院に搬送され,眼振や痙攣を認めた。現場に落ちていた空包からジフェンヒドラミン中毒を疑い,人工呼吸器管理,血液透析などの集中治療を行った。第4病日には抜管し意識清明となり,本人よりレスタミンUコーワ錠®などを内服したことを聴取した。その後,合併症なく経過し第8病日に自宅退院となった。血中濃度測定を行うと腎排泄だけでなく,効果が乏しいと考えられていた血液透析によってもジフェンヒドラミンが除去されることが示唆された。したがって,重症のジフェンヒドラミン中毒例では血液透析を考慮してもよいかもしれない。
著者
前田敦子
雑誌
衛生検査
巻号頁・発行日
vol.37, 1988
被引用文献数
1
著者
前田 敦子
出版者
順天堂大学
雑誌
順天堂医学 (ISSN:00226769)
巻号頁・発行日
vol.48, no.4, 2003-03-28
著者
前田 敦司 曽和 将容
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.41, no.4, pp.1-10, 2000-06-15
参考文献数
20

末尾再帰的な関数呼び出しをジャンプに変換する処理は,コンパイラの最適化として広く行なわれている.特に,Lispの一方言であるScheme言語においては末尾再帰呼び出しを空間計算量ο()で実行することが言語仕様で要求されている.このように,空間計算量ο()で実行することができる末尾再帰呼び出しを真の末尾再帰呼び出し(roper tail recursio)と呼ぶ.動的スコープを持つ変数が存在する場合,通常の実装では,スコープを規定する構文の実行が終るまで変数束縛を保持しておく必要があるため,構文の末尾で再帰的な関数呼び出しがあってもそれを真の末尾再帰呼び出しとすることができない.しかしながら,リスト構造を用いて変数束縛を保持する,いわゆる深い束縛を用いるLispインタプリタについては,事実上定数空間計算量で末尾再帰呼び出しを処理することができる手法が知られている.本論文では,動的スコープ変数の実装として現一般的な,浅い束縛を用いた場合について,真の末尾再帰呼び出しを実現するための手法について述べる.Conversion of tail recursive function call into simple jump is a technique widely used as optimization in compilers. Especially, Scheme, a dialect of Lisp, requires as part of language specification that tail recursion be performed in ο(1) space complexity. Tail recursion implemented in ο(1) space complexity is called "proper tail recursion". With existance of dynamically-scoped variables, ordinary implementation keeps variable bindings until binding construct exits. Thus, syntactic tail call cannot be implemented in a properly tail recursive fashion. For Lisp interpreters which keeps variable bindings in list structures (i.e. deep binding), there is a known way to achieve almost-proper tail recursion with dynamic scoping. In this paper, we argue about an implementation method of proper tail recursion with shallow binding, which is a common way of implementing dynamically-scoped variables in current Lisp implementations.
著者
前田 敦司 山口 喜教
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.44, no.13, pp.47-57, 2003-10-15
参考文献数
15
被引用文献数
1

スタックアーキテクチャの仮想マシン命令を解釈実行するSchemeインタプリタの効率的な実装法について述べる.単純な命令セット定義から出発し,ベンチマークプログラムにおける命令列の実行頻度に応じて命令セットを最適化することで解釈実行のオーバへッドを最小化する体系的な手法を示す.本手法を用いて構成したインタプリタの性能評価を行い,インタプリタの移植性,対話性,デバッグの容易さを損なうことなく,ネイティブコードの20?40%程度の,比較的高い性能が得られていることを示す.An effcient implementation methodology for Scheme interpreters that interpretes stackoriented virtual machine instructions is presented. Starting from simple instruction set definition, we show how our systematic optimization techniques reduces the interpretation overhead based on dynamic frequency of instruction sequence. Evaluation shows that our interpreter can achieve 20 to 40 percent of the performance of native code, without losing portability, interactivity, and ease of debugging.
著者
笹田 耕一 松本 行弘 前田 敦司 並木 美太郎
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.48, no.SIG10(PRO33), pp.1-16, 2007-06-15

本論文ではスクリプト言語Ruby 用仮想マシンYARV: Yet Another RubyVM における並列実行スレッド処理機構の実装について述べる.Ruby はその使いやすさから世界中で広く利用されているプログラム言語である.Ruby の特徴の1 つにマルチスレッドプログラミングに対応しているという点があるが,現在広く利用されているRuby 処理系は移植性を高めるため,すべてユーザレベルでスレッド制御を行っている.しかし,このスレッド実現手法では,実行がブロックしてしまう処理がC 言語レベルで記述できない,並列計算機において複数スレッドの並列実行による性能向上ができないなどの問題がある.そこで,現在筆者らが開発中のRuby 処理系YARV において,OS やライブラリなどによって提供されるネイティブスレッドを利用するスレッド処理機構を実装し,複数スレッドの並列実行を実現した.並列化にあたっては,適切な同期の追加が必要であるが,特に並列実行を考慮しないC 言語で記述したRuby 用拡張ライブラリを安全に実行するための仕組みが必要であった.また,同期の回数を減らす工夫についても検討した.本論文では,これらの仕組みと実装についての詳細を述べ,スレッドの並列実行によって得られた性能向上について評価した結果を述べる.
著者
下島 桐 東 祐圭 若月 大輔 笹井 正宏 久野 越史 池田 尚子 前田 敦雄 前澤 秀之 江波戸 美緒 鈴木 洋 嶽山 陽一
出版者
公益財団法人 日本心臓財団
雑誌
心臓 (ISSN:05864488)
巻号頁・発行日
vol.44, no.SUPPL.3, pp.S3_129-S3_134, 2012 (Released:2013-09-25)
参考文献数
7

症例は74歳,男性.主訴は心肺停止.2010年5月ころより失神発作が出現するようになったが,1分程度で自然回復するために放置していた.2010年11月失神発作出現.12誘導心電図でデルタ波を認めWPW症候群と診断されたが,頻拍発作がとらえられず経過観察となった.2011年5月夜間胸部不快感の後心肺停止となった.救急隊到着時心室細動(VF)であり心肺蘇生,電気的除細動施行されVFは停止した.近医に入院し脳神経系異常なく,精査加療目的で当院に転院した.CAGでは有意狭窄なし,アセチルコリン負荷中に冠攣縮誘発は認められなかったが,AFが誘発されVFに移行した.VFはDCで停止.電気生理学的検査(EPS)施行,Kent束付着部位は左後側であると同定.洞調律中,順伝導はKent束で,逆伝導は房室結節であった.プログラム刺激で心拍数185bpmのwide QRS tachycardiaが誘発されたが,順伝導はKent束で,逆伝導は房室結節であり逆方向性房室結節リエントリー性頻拍(antidromic AVRT)であった.AVRT中血圧は40mmHgまで低下した.心肺停止の原因はAVRTから心房細動(AF)に移行し,VFに至った可能性が示唆された.Kent束をアブレーションしKent伝導ブロックに成功し,その後症状なく経過している.Antidromic AVNRTが心肺停止の原因であった1例を報告する.
著者
福田 篤徳 池長 裕史 伊丹 英生 片山 秀策 小山 慎司 深川 正夫 前田 敦子 前田 崇雄
出版者
特定非営利活動法人バードリサーチ
雑誌
Bird Research (ISSN:18801587)
巻号頁・発行日
vol.12, pp.S7-S11, 2016 (Released:2016-05-27)
参考文献数
11

2012年5月20日の石川県輪島市舳倉島にて,カンムリカッコウと思われる声を録音した.この声の声紋を確実な記録と思われるカンムリカッコウやチャイロジュウイチのものと比較することによって,この声がカンムリカッコウのさえずりであると判断した.これは,日本での初めての録音及び記録と思われる.
著者
笹田 耕一 松本 行弘 前田 敦司 並木 美太郎
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.48, no.10, pp.1-16, 2007-06-15
被引用文献数
2

本論文ではスクリプト言語Ruby 用仮想マシンYARV: Yet Another RubyVM における並列実行スレッド処理機構の実装について述べる.Ruby はその使いやすさから世界中で広く利用されているプログラム言語である.Ruby の特徴の1 つにマルチスレッドプログラミングに対応しているという点があるが,現在広く利用されているRuby 処理系は移植性を高めるため,すべてユーザレベルでスレッド制御を行っている.しかし,このスレッド実現手法では,実行がブロックしてしまう処理がC 言語レベルで記述できない,並列計算機において複数スレッドの並列実行による性能向上ができないなどの問題がある.そこで,現在筆者らが開発中のRuby 処理系YARV において,OS やライブラリなどによって提供されるネイティブスレッドを利用するスレッド処理機構を実装し,複数スレッドの並列実行を実現した.並列化にあたっては,適切な同期の追加が必要であるが,特に並列実行を考慮しないC 言語で記述したRuby 用拡張ライブラリを安全に実行するための仕組みが必要であった.また,同期の回数を減らす工夫についても検討した.本論文では,これらの仕組みと実装についての詳細を述べ,スレッドの並列実行によって得られた性能向上について評価した結果を述べる.In this paper, we describe an implementation of parallel threads for YARV: Yet Another RubyVM. The Ruby language is used worldwide because of its ease of use. Ruby also supports multi-threaded programming. The current Ruby interpreter controls all threads only in user-level to achieve high portability. However, this user-level implementation can not support blocking task and can not improve performance on parallel computers. To solve these problems, we implement parallel threads using native threads provided by systems software on YARV: Yet Another RubyVM what we are developing as another Ruby interpreter. To achieve parallel execution, correct synchronizations are needed. Especially, C extension libraries for Ruby which are implemented without consideration about parallel execution need a particular scheme for running in parallel. And we also try to reduce a number of times of synchronization. In this paper, we show implementations of these schemes and results of performance improvement on parallel threads execution.
著者
中村 元保 加藤 晶人 井上 元 鈴木 恵輔 中島 靖浩 前田 敦雄 森川 健太郎 八木 正晴 土肥 謙二
出版者
日本救急医学会関東地方会
雑誌
日本救急医学会関東地方会雑誌 (ISSN:0287301X)
巻号頁・発行日
vol.41, no.4, pp.407-410, 2020-12-28 (Released:2020-12-28)
参考文献数
7

症例は89歳の女性。身長147cm, 体重43kgと小柄で慢性閉塞性肺疾患 (Chronic Obstructive Pulmonary Disease : COPD) の既往歴がある。1カ月前から呼吸困難を自覚していた。朝に呼吸困難が増強したためにツロブテロールテープ2mgを1枚胸部に貼付したが, 症状改善ないために夕方に2枚目を胸部に追加貼付した。追加貼付2時間後から動悸, 嘔気を自覚したために救急要請した。救急隊到着時は意識レベルJCS1であったが, 嘔吐が出現し意識レベルJCS100まで低下し当院へ救急搬送された。搬送時意識障害は改善傾向であり, 胸部に貼付されていたツロブテロールテープ2枚を剝離したところ動悸と嘔気が消失した。臨床症状よりツロブテロールテープによる中毒症状が疑われた。貼付薬は容易に自己調整できるが, 高齢者や乳幼児など管理能力に問題がある場合や, 低体重の症例では使用方法に注意が必要となる。また, 救急対応の際には全身観察での貼付薬の有無の確認も必要となってくる。
著者
笹田 耕一 松本 行弘 前田 敦司 並木 美太郎
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.47, no.2, pp.57-73, 2006-02-15
被引用文献数
5

本稿ではオブジェクト指向スクリプト言語Ruby を高速に実行するための処理系であるYARV: Yet Another RubyVM の実装と,これを評価した結果について述べる.Ruby はその利用のしやすさから世界的に広く利用されている.しかし,現在のRuby 処理系の実装は単純な構文木をたどるインタプリタであるため,その実行速度は遅い.これを解決するためにいくつかの命令実行型仮想マシンが提案・開発されているが,Ruby のサブセットしか実行できない,実行速度が十分ではないなどの問題があった.この問題を解決するため,筆者はRuby プログラムを高速に実行するための処理系であるYARV を開発している.YARV はスタックマシンとして実装し,効率良く実行させるための各種最適化手法を適用する.実装を効率的に行うため,比較的簡単なVM 生成系を作成した.本稿ではRuby の,処理系実装者から見た特徴を述べ,これを実装するための各種工夫,自動生成による実装方法について述べる.また,これらの高速化のための工夫がそれぞれどの程度性能向上に寄与したかについて評価する.In this paper, we describe the implementation and evaluation results of YARV, next generation Ruby implementation. The Ruby language is used worldwide because of its ease of use. However, current interpreter is slow due to its evaluation method. To solve this problem, several virtual machine designs were proposed, but none of them exhibited adequate performance/functionality combination. Our implementation, called YARV (Yet Another Ruby VM), is based on a stack machine architecture. YARV incorporates a number of optimization techniques for high speed execution of ruby programs. In this paper, we describe the characteristics of Ruby from implementor's point of view, and present concrete solutions for these issues as well as implementation of optimization techniques. We also show how each of these optimizations contributed to the speed-up.
著者
井上 俊輔 加藤 久幸 飯塚 康治 山脇 正雄 櫻井 克仁 上野 勇武 小泉 徹 樋山 拓己 浅羽 哲朗 須川 成利 前田 敦 東谷 恵市
出版者
一般社団法人 映像情報メディア学会
雑誌
映像情報メディア学会技術報告 (ISSN:13426893)
巻号頁・発行日
vol.25, pp.37-41, 2001
参考文献数
6
被引用文献数
9 5

一眼レフディジタルカメラ用, APS-Cサイズ総画素数325万のCMOSイメージセンサを開発した。画素サイズは10.5μm^□で, 埋め込み型フォトダイオードと4つのトランジスタより構成した, 完全電荷転送構造を採用し, 列毎に設けたノイズ除去回路で画素リセットノイズと固定パターンノイズを低減した。0.35μmルールCMOSプロセスをセンサ向けに専用化したプロセスを用い, 暗電流密度60pA/cm^2(60℃), ランダムノイズ0.27mVrms, 消費電力250mWを達成した。
著者
白畑 有加 前田 敦司 山口 喜教
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.4, no.3, pp.97-97, 2011-06-29

プログラムの処理の流れを扱う概念に,継続がある.継続とは,ある処理のある瞬間における,「次にどのような処理を行うのか」 という処理過程の未来全体を表すものである.Scheme では継続をファーストクラスの機能としてサポートしており,call/cc 関数を用いて継続を扱うことができる.しかし,そのほかほとんどのプログラミング言語は継続を明示的に扱っていない.そのような言語に継続をファーストクラスの機能とし導入する手法として CPS 変換や例外処理を用いた手法など様々な研究がなされているが,導入後の実行効率が大幅に落ちてしまうという問題点をかかえている.本発表では対象言語を JavaScript とし,Pettyjohn らの手法をもとにした新しい,継続を導入する変換手法を提案する.変換後の実行効率の向上のため,継続から処理を再開するときのコードを別途定義する.これにより継続を使用しない場合の処理は変換前後で実行速度が変わらない.また,継続による処理の再開位置を示す Resumption Point を導入することで変換後のコードの重複を削減した.さらに,本発表では継続をキャプチャするタイミングに例外処理を用いる手法と 2 返戻値法の両方を使い分ける.このハイブリッドな継続のキャプチャ手法の採用により,さらに変換後の実行効率の向上を見込むことができる.Continuation is an idea which deals with flow of control inprograms. Although Scheme has continuation as a first-class feature, most other programming languages don't support it explicitly. Various approaches have proposed to adopt the continuation as a first-class feature in such languages, e.g., CPS conversion and stack-traversal and rebuilding using exception. But these conversions have significant impact on execution efficiency and slows down the execution of programs after conversion considerably. In this presentation, we propose a new transformation algorithm based on Pettyjohn, et al.'s approach, which can introduce continuation more efficiently to programming languages that don't support them (we use JavaScript as a specific example). To improve execution efficiency after transformation, we separately generate the code run in ordinary execution and the code executed when continuation is invoked. When executed without using continuations, the execution efficiency after transformation is almost equal to the one before transformation. Since we separately generate the code for two cases, code size may increase after conversions. This code expansion is reduced by sharing code using labels called Resumption Point, which marks the point to resume when continuations are invoked. We use two techniques for stack traversal when capturing continuations: exception handling and two return values method. We combine these two techniques to get better performance in continuation capturing, and believe our approach has the advantages over existing techniques.
著者
前田 敦司 遠藤 匠 山口 喜教
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.45, no.5, pp.83-83, 2004-05-15

マークスイープアルゴリズムに基づくインクリメンタルガーベジコレクタは,停止時間をごく短時間に抑えることが可能であるが,効率が悪く,CPU時間が増加する.この性能低下の原因は,一括型GCと比較してマークする時期が早いことに起因するmark/cons比の悪化,GCルーチンを呼び出す回数の増加,write barrierのオーバヘッドなどによる.一方,世代別ガーベジコレクタは高いCPU効率が得られ,また平均の停止時間は比較的短いため良いレスポンスが得られるが,旧世代領域のGC( メジャーコレクション)の際には長い時間にわたって計算処理が停止してしまい,リアルタイム応用には適さない.本発表では,世代別GCがある意味でインクリメンタルGCの一種と見なせることを指摘する.この観察に基づき,新世代領域のGC(マイナーコレクション)のたびに,インクリメンタルに旧世代領域のガーベジコレクションを行う新しいGCアルゴリズムを提案する.インクリメンタル化のために必要となるライトバリアは,世代別ガーベジコレクタの実装にいずれにせよ必要なライトバリアと同じ仕組みを利用する.このアルゴリズムは,通常の世代別ガーベジコレクタに近い効率を保ちながら,停止時間を短く保ち,ガーベジコレクタのリアルタイム性を向上させることができる.Incremental garbage collectors based on mark-sweep algorithms can minimize the pause time caused by garbage collection at the expense of increased CPU time. The main reasons for this performance degradation include: (1) mark/cons ratio gets worse in incremental collectors because objects are marked earlier than in non-incremental counterparts, (2) increase in number of calls to collector routine and (3) write barrier overhead. Generational collectors, on the other hand, can achieve high efficiency and relatively short average pause time, while occasional long pause for collection of old generation space (major collection) makes these collectors unsuitable for real-time applications. In this presentation we point out that certain class of generational collectors can be viewed as a special case of incremental garbage collection. Based on this observation, we propose a new GC algorithm which incrementally reclaims old generation space every time a minor collection is performed. Write barrier for generational collector is also used for incremental collection. With this algorithm, we can improve real-time response of garbage collector by keeping pause time short, with little overhead added to ordinary generational collectors.
著者
山口 大貴 前田 敦司 山口 喜教
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.5, no.3, pp.63-63, 2012-08-20

多くのスクリプト言語同様,RubyはCやJavaといった従来の言語と比較して非常に複雑な文法を持っている.そのため,構文解析器の作成において現在主流となっている,yacc(またはbison)とlexを用いて構文解析器と字句解析器を生成しそれらを組み合わせる手法では,文法の記述や実装が困難であったり実装が複雑化しメンテナンスが困難となってしまったりする場合がある.たとえばRubyでは,文字列リテラルに任意の式を埋め込み可能な文法を実現するため等の理由で,手書きの字句解析器を含めて8000行以上にもおよぶ巨大な文法定義を行っている.これは,現在用いられている構文解析アルゴリズムが字句解析をベースとしているために,字句解析器に状態を付加する等のアドホックな実装を行わなければこのような文法を実現することができないためである.そこで本研究では,Parsing Expression Grammar(PEG)をベースとした,強力な解析力を持つ構文解析アルゴリズムPackrat ParsingをRuby処理系(JRuby)に導入することを提案する.Packrat Parsingを実際にRuby処理系に用いることで,従来の構文解析アルゴリズムで問題となっていた部分を改善し,文法定義の保守性を向上させることが本研究の目標である.本研究の構文解析器の実装は,PEGをベースとした文法定義をPackrat Parser生成系Rats!に与えることで行い,その文法定義は従来の文法定義を変換することで作成する.また提案手法による処理系と従来手法による処理系に対して実際のスクリプトを使用した比較評価を行い,その結果として,提案手法によって文法定義の保守性が向上することを示す.