請用此 Handle URI 來引用此文件:
http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/40590
完整後設資料紀錄
DC 欄位 | 值 | 語言 |
---|---|---|
dc.contributor.advisor | 陳俊良 | |
dc.contributor.author | Cheng-Huan Lee | en |
dc.contributor.author | 李政寰 | zh_TW |
dc.date.accessioned | 2021-06-14T16:52:26Z | - |
dc.date.available | 2008-08-05 | |
dc.date.copyright | 2008-08-05 | |
dc.date.issued | 2008 | |
dc.date.submitted | 2008-07-30 | |
dc.identifier.citation | 1. The Java Language Specification, Third Edition, Sun Microsystems, http://java.sun.com/docs/books/jls/third_edition/html/j3TOC.html .
2. The Java Virtual Machine Specification, Second Edition, Sun Microsystems, http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html . 3. Cosmin E. Oancea and Stephen M. Watt, “Parametric Polymorphism for Software Component Architectures,” ACM SIGPLAN Notices, Volume 40, pp. 147–166, October 2005. 4. Close S., “Using Java Generics,” Java Developers Journal, pp. 32–37, November 2003. 5. Jaime Niño, “The Cost of Erasure in Java Generics Type System,” Journal of Computing Sciences in Colleges, Volume 22, Issue 5, pp. 2–11, May 2007. 6. Brain Cabana, Suad Alagić, and Jeff Faulkner, “Parametric Polymorphism for Java: Is There Any Hope in Sight?” ACM SIGPLAN Notices, Volume 39, pp. 22–31, December 2004. 7. Guan, Shang-Ru (關尚儒), “A Precise Parameterized Type Checking Mechanism for Java,” National Taiwan University, Master Thesis, July 2007. 8. James Sasitorn and Robert Cartwright, “Component NextGen: A Sound and Expressive Component Framework for Java,” OOPSLA '07: Proceedings of the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems and Applications, pp. 153–170, October 2007. 9. Alex Potanin, James Noble, Dave Clarke, and Robert Biddle, “Generic Ownership for Generic Java,” ACM SIGPLAN Notices, Volume 41, pp. 311–324, October 2006. 10. Alan Donovan, Adam Kiežun, Matthew S. Tschantz, and Michael D. Ernst, “Converting Java Programs to Use Generic Libraries,” OOPSLA '04: Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, pp. 15–34, October 2004. 11. Eric E. Allen and Robert Cartwright, “Safe Instantiation in Generic Java,” PPPJ '04: Proceedings of the 3rd International Symposium on Principles and Practice of Programming in Java, pp. 61–66, June 2004. 12. Helle Markmann Andersen and Ulrik Pagh Schultz, “Declarative Specialization for Object-oriented-program Specialization,” PEPM '04: Proceedings of the 2004 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, pp. 27–38, August 2004. 13. Cartwright, R. and Steele Jr., G.L. “Compatible Genericity with Run-time Types for the Java Programming Language,” OOPSLA '98: Proceedings of the 13th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, pp. 201–218, October 1998. 14. ASM - Home Page, Object Web Consortium, http://asm.objectweb.org/ . 15. A.V. Aho, R. Sethi, and J.D. Ullman, Compilers, Principles, Techniques, and Tools, 2nd Ed. ,Addison-Wesley, 2007. 16. C.N. Fischer and R.L. LeBlanc, Jr.. Crafting a Compiler with C, Benjamin/Cummings, 1991. | |
dc.identifier.uri | http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/40590 | - |
dc.description.abstract | Java語言發展至今隨著增加對各種新功能的支援,也產生了許多相關的問題。而修改編譯器並增加編譯階段資料的處理為一種常見解決問題的方法。然而Java編譯器雖然開放原始碼,但其原始碼本身並不提供增加編譯階段資料處理的API,因此相關的研究者必須先花費一段時間對Java編譯器的架構進行研究,再開始發展針對其問題的解法。因此本論文試著提出一個API架構,讓相關的研究者能縮短研究Java編譯器所花費的時間,並能以此API為基礎發展其更進一步的解法。 | zh_TW |
dc.description.provenance | Made available in DSpace on 2021-06-14T16:52:26Z (GMT). No. of bitstreams: 1 ntu-97-R95922118-1.pdf: 2468184 bytes, checksum: e3ae1764e075b7c0796c306103a634df (MD5) Previous issue date: 2008 | en |
dc.description.tableofcontents | 中文摘要 i
ABSTRACT iii 致謝 v 目錄 vii 圖表目錄 ix 表格目錄 xi 1. 簡介 1 1.1. 研究動機 1 1.2. 相關研究 3 1.3. 論文架構 3 2. 背景知識 5 2.1. javac基本架構及編譯流程 5 2.2. javac的中間碼 6 2.2.1. 中間碼概觀 6 2.2.2. 類別宣告所對應之中間碼結構 7 2.2.3. 函式主體 (method body) 對應之中間碼結構 8 2.2.4. 述句(Statement)與表示式(Expression) 9 2.3. 設計模式:Visitor 11 2.4. javac中的Visitor – TreeScanner 14 2.5. 本章小結 14 3. 問題與策略 15 3.1. 宣告類操作 15 3.2. 宣告類操作之策略 16 3.3. 述句類操作 17 3.4. 述句類操作之策略 21 3.5. 本章小結 24 4. 實作 25 4.1. 宣告類操作 25 4.1.1. 成員變數之增修 25 4.1.2. 成員函式的增修 27 4.2. 述句類操作 29 4.2.1. 類別Track 29 4.2.2. 類別TrackStack 30 4.2.3. 函式stateFromString( )、stateFromFile( )、variableDecl( ) 31 4.2.4. 函式insert( )、remove( ) 32 4.3. 使用實例 36 4.3.1. 宣告類操作使用實例 38 4.3.2. 述句類操作使用實例 40 4.3.3. 錯誤提示 43 4.4. 本章小結與補充說明 44 5. 結論 45 5.1. 結論 45 5.2. 未來工作 45 參考文獻 47 附錄A.基本 tree node 解說 49 附錄B.Framework API 65 | |
dc.language.iso | zh-TW | |
dc.title | 一個增補Java編譯器中間碼的機制 | zh_TW |
dc.title | A Mechanism to Enhance Intermediate Representation of Java Compiler | en |
dc.type | Thesis | |
dc.date.schoolyear | 96-2 | |
dc.description.degree | 碩士 | |
dc.contributor.oralexamcommittee | 甘宗左,施吉昇 | |
dc.subject.keyword | 編譯器,中間碼, | zh_TW |
dc.subject.keyword | Java,Compiler,Intermediate Representation, | en |
dc.relation.page | 72 | |
dc.rights.note | 有償授權 | |
dc.date.accepted | 2008-07-31 | |
dc.contributor.author-college | 電機資訊學院 | zh_TW |
dc.contributor.author-dept | 資訊工程學研究所 | zh_TW |
顯示於系所單位: | 資訊工程學系 |
文件中的檔案:
檔案 | 大小 | 格式 | |
---|---|---|---|
ntu-97-1.pdf 目前未授權公開取用 | 2.41 MB | Adobe PDF |
系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。