การพัฒนาไลบรารีตัวแจงภาษาโดยใช้แลมบ์ดาในภาษา ซีชาร์ปและเทคนิคการแจงภาษาแบบแอลอาร์ตามองค์ประกอบ

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...

Full description

Saved in:
Bibliographic Details
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