English  |  正體中文  |  简体中文  |  Post-Print筆數 : 27 |  Items with full text/Total items : 113822/144841 (79%)
Visitors : 51786369      Online Users : 306
RC Version 6.0 © Powered By DSPACE, MIT. Enhanced by NTU Library IR team.
Scope Tips:
  • please add "double quotation mark" for query phrases to get precise results
  • please goto advance search for comprehansive author search
  • Adv. Search
    HomeLoginUploadHelpAboutAdminister Goto mobile version
    政大機構典藏 > 資訊學院 > 資訊科學系 > 學位論文 >  Item 140.119/94858
    Please use this identifier to cite or link to this item: https://nccur.lib.nccu.edu.tw/handle/140.119/94858


    Title: 剖面導向函數語言之模組化狀態處理
    Design and Implementation of Aspects for Localizing Side-Effects
    Authors: 林佳瑩
    Lin, Jia Yin
    Contributors: 陳恭
    Chen, Kung
    林佳瑩
    Lin, Jia Yin
    Keywords: 剖面導向
    函式語言
    狀態處理
    惰性求值
    aspect-oriented programming
    side-effect
    lazy semantics
    monadification
    Date: 2009
    Issue Date: 2016-05-09 12:02:29 (UTC+8)
    Abstract: 剖面所進行的運算通常都牽涉到狀態處理。在純粹函數式語言中,利用monadification技術添加狀態處理的剖面必須對程式碼做橫跨性的修改。本論文提出讓純粹函數式語言的剖面具備狀態處理功能,而使用者不須額外改寫既有程式碼的方法。我們提出了簡單直接的狀態操作語言機制,可以用來開發狀態處理剖面;並且設計出系統化的monadification規則,讓編譯器自動對程式碼做轉換,並維持惰性求值的特性。
    Computations performed in many typical aspects involve side effects. In a purely functional setting, adding such aspects using techniques such as monadification will generally lead to crosscutting changes. This thesis presents an approach to provide side-effecting aspects for purely lazy functional languages in a user transparent fashion. We propose a simple yet direct state manipulation construct for developing side-effecting aspects and devise a systematic monadification scheme to translate the woven code to a purely monadic style functional code. To maintain the lazy evaluation feature, the monad employed is extended with cache functionality.
    Reference: [1] Kung Chen, Shu-Chun Weng, Meng Wang, Siau-Cheng Khoo, and Chung-Hsin Chen. A compilation model for aspect-oriented polymorphically typed functional languages. In Static Analysis, 14th International Symposium, SAS 2007, volume 4634 of LNCS, pages 34-51. Springer-Verlag, 2007.
    [2] Martin Erwig and Delin Ren. Monadification of functional programs. Science of Computer Programming, 52(1-3):101-129, 2004.
    [3] Cormac Flanagan, Amr Sabry, Bruce F. Duba, and Matthias Felleisen. The essence of compiling with continuations. In Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation, pages 237-247, 1993.
    [4] John Hatcliff and Olivier Danvy. A generic account of continuation-passing styles. In Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 237-247, 1993.
    [5] Christian Hofer and Klaus Ostermann. On the relation of aspects and monads. In Foundations of Aspect-Oriented Languages Workshop at AOSD, pages 37-46. ACM Press, 2007.
    [6] Gregor Kiczales, Erik Hilsdale, Jim Hugunin, Mik Kersten, Jeffrey Palm, and William G. Griswold. An overview of aspectj. In ECOOP `01: Proceedings of the
    15th European Conference on Object-Oriented Programming, volume 2072 of LNCS, pages 327-353. Springer-Verlag, 2001.
    [7] Amir Kishon. Theory and Art of Semantics-Directed Program Execution Monitoring. PhD thesis, Yale University, June 1992.
    [8] Amir Kishon and Paul Hudak. Semantics directed program execution monitoring. Journal of Functional Programming, 5(4):501-547, 1995.
    [9] Ralf Lammel. Reuse by program transformation. In Functional Programming Trends 1999. Intellect, 2000. Selected papers from the 1st Scottish Functional Programming Workshop. Intellect, 2000.
    [10] Sheng Liang, Paul Hudak, and Mark Jones. Monad transformers and modular interpreters. In Proceedings of the 22nd ACM SIGPLAN-SIGACT Symposium on
    Principles of Programming Languages, pages 333-343, 1995.
    [11] W. De Meuter. Monads as a theoretical foundation for aop. In International Workshop on Aspect-Oriented Programming at ECOOP, 1997.
    [12] Philip Wadler. The essence of functional programming. In Proceedings of the 19th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 1-14, 1992.
    [13] Meng Wang, Kung Chen, and Siau-Cheng Khoo. Type-directed weaving of aspects for higher-order functional languages. In PEPM `06: Workshop on Partial Evaluation and Program Manipulation, pages 78-87. ACM Press, 2006.
    [14] Keith Wansbrough and Simon Peyton Jones. Once upon a polymorphic type. In Twenty-sixth ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 15-28, January 1999.
    Description: 碩士
    國立政治大學
    資訊科學學系
    95753004
    Source URI: http://thesis.lib.nccu.edu.tw/record/#G0095753004
    Data Type: thesis
    Appears in Collections:[資訊科學系] 學位論文

    Files in This Item:

    File SizeFormat
    index.html0KbHTML2563View/Open


    All items in 政大典藏 are protected by copyright, with all rights reserved.


    社群 sharing

    著作權政策宣告 Copyright Announcement
    1.本網站之數位內容為國立政治大學所收錄之機構典藏,無償提供學術研究與公眾教育等公益性使用,惟仍請適度,合理使用本網站之內容,以尊重著作權人之權益。商業上之利用,則請先取得著作權人之授權。
    The digital content of this website is part of National Chengchi University Institutional Repository. It provides free access to academic research and public education for non-commercial use. Please utilize it in a proper and reasonable manner and respect the rights of copyright owners. For commercial use, please obtain authorization from the copyright owner in advance.

    2.本網站之製作,已盡力防止侵害著作權人之權益,如仍發現本網站之數位內容有侵害著作權人權益情事者,請權利人通知本網站維護人員(nccur@nccu.edu.tw),維護人員將立即採取移除該數位著作等補救措施。
    NCCU Institutional Repository is made to protect the interests of copyright owners. If you believe that any material on the website infringes copyright, please contact our staff(nccur@nccu.edu.tw). We will remove the work from the repository and investigate your claim.
    DSpace Software Copyright © 2002-2004  MIT &  Hewlett-Packard  /   Enhanced by   NTU Library IR team Copyright ©   - Feedback