การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ
This independent study presents a parser library (named ‘PX’) development by using component-based LR parsing technique together with using C# lambda to define language grammar and using technique that modify 'IL' code of the lambda so developer can follow the parser work directly from the...
Saved in:
Main Author: | |
---|---|
Other Authors: | |
Format: | Independent Study |
Language: | Thai |
Published: |
เชียงใหม่ : บัณฑิตวิทยาลัย มหาวิทยาลัยเชียงใหม่
2020
|
Online Access: | http://cmuir.cmu.ac.th/jspui/handle/6653943832/69090 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Chiang Mai University |
Language: | Thai |
id |
th-cmuir.6653943832-69090 |
---|---|
record_format |
dspace |
spelling |
th-cmuir.6653943832-690902020-07-24T08:41:54Z การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ Parser Library Development Using C# Lambda and Component-based LR Parsing Technique ปิยพงษ์ สุวรรณสินธุ์ ผู้ช่วยศาสตราจารย์ ดร.วัชรี จำปามูล This independent study presents a parser library (named ‘PX’) development by using component-based LR parsing technique together with using C# lambda to define language grammar and using technique that modify 'IL' code of the lambda so developer can follow the parser work directly from their integrated development environment (IDE). The library is intended to ease the process of creating component-based LR parser, the original one need many external parser generator tools. The library is developed with C# language on Windows operating system. The library is modified from existing ParserKit library. PX library structure contains two layers. The outer layer contains commands for defining language grammar with lambda and for controlling the parser. The grammar from outer layer is sent to the inner layer that was modified from the original LR parser to the component-based LR parser. The study creates a C# parser from using this library and tests speed of parsing compare with other C# parsers: Microsoft Roslyn (standard C# parser), Mono C#, ANTLR, Irony. Even the speed is on the second but when test size is less than 151.13 kilobytes; the study found that different time is less than 41 milliseconds. So at this speed the user should recognize the different between the two. By using this PX library, user can create a parser from C# code and benefits from familiar integrated development environment (IDE) and benefits from reducing work complexity. The speed results support that this library is possible and should be developed more in the future. 2020-07-24T08:41:54Z 2020-07-24T08:41:54Z 2015-12 Independent Study (IS) http://cmuir.cmu.ac.th/jspui/handle/6653943832/69090 th เชียงใหม่ : บัณฑิตวิทยาลัย มหาวิทยาลัยเชียงใหม่ |
institution |
Chiang Mai University |
building |
Chiang Mai University Library |
continent |
Asia |
country |
Thailand Thailand |
content_provider |
Chiang Mai University Library |
collection |
CMU Intellectual Repository |
language |
Thai |
description |
This independent study presents a parser library (named ‘PX’) development by using component-based LR parsing technique together with using C# lambda to define language grammar and using technique that modify 'IL' code of the lambda so developer can follow the parser work directly from their integrated development environment (IDE). The library is intended to ease the process of creating component-based LR parser, the original one need many external parser generator tools. The library is developed with C# language on Windows operating system. The library is modified from existing ParserKit library. PX library structure contains two layers. The outer layer contains commands for defining language grammar with lambda and for controlling the parser. The grammar from outer layer is sent to the inner layer that was modified from the original LR parser to the component-based LR parser. The study creates a C# parser from using this library and tests speed of parsing compare with other C# parsers: Microsoft Roslyn (standard C# parser), Mono C#, ANTLR, Irony. Even the speed is on the second but when test size is less than 151.13 kilobytes; the study found that different time is less than 41 milliseconds. So at this speed the user should recognize the different between the two. By using this PX library, user can create a parser from C# code and benefits from familiar integrated development environment (IDE) and benefits from reducing work complexity. The speed results support that this library is possible and should be developed more in the future. |
author2 |
ผู้ช่วยศาสตราจารย์ ดร.วัชรี จำปามูล |
author_facet |
ผู้ช่วยศาสตราจารย์ ดร.วัชรี จำปามูล ปิยพงษ์ สุวรรณสินธุ์ |
format |
Independent Study |
author |
ปิยพงษ์ สุวรรณสินธุ์ |
spellingShingle |
ปิยพงษ์ สุวรรณสินธุ์ การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ |
author_sort |
ปิยพงษ์ สุวรรณสินธุ์ |
title |
การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ |
title_short |
การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ |
title_full |
การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ |
title_fullStr |
การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ |
title_full_unstemmed |
การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ |
title_sort |
การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ |
publisher |
เชียงใหม่ : บัณฑิตวิทยาลัย มหาวิทยาลัยเชียงใหม่ |
publishDate |
2020 |
url |
http://cmuir.cmu.ac.th/jspui/handle/6653943832/69090 |
_version_ |
1681752594919194624 |