대구한의대학교 향산도서관

상세정보

부가기능

Designing Flexible, Modular Linguistic Abstractions

상세 프로파일

상세정보
자료유형학위논문
서명/저자사항Designing Flexible, Modular Linguistic Abstractions.
개인저자Zhang, Yizhou.
단체저자명Cornell University. Computer Science.
발행사항[S.l.]: Cornell University., 2019.
발행사항Ann Arbor: ProQuest Dissertations & Theses, 2019.
형태사항244 p.
기본자료 저록Dissertations Abstracts International 81-04B.
Dissertation Abstract International
ISBN9781088384084
학위논문주기Thesis (Ph.D.)--Cornell University, 2019.
일반주기 Source: Dissertations Abstracts International, Volume: 81-04, Section: B.
Advisor: Myers, Andrew.
이용제한사항This item must not be sold to any third party vendors.
요약Programming-language design is more active than ever: existing languages are evolving continually and rapidly, and new languages keep springing up. While this constant iteration of language design aims to help programmers manage a growing software complexity, programmers are still frequently frustrated by poor design decisions in even the most essential aspects of modern programming languages. Less than satisfactory solutions to generic programming and exception handling typify this situation: the inadequacy of current solutions has even forced language designers to abandon these problematic language features. This is an unfortunate state of affairs.Language design does not have to be about abandoning old features or piling on new ones. This dissertation proposes novel linguistic abstractions for the aforementioned design problems, offering ease of use, expressive power, strong guarantees, and good performance all at the same time.It introduces a new mechanism for generic programming, embodied in the Genus programming language. Genus adds expressive power and strengthens static checking, while handling common usage patterns simply. The power of Genus is then integrated into a second language design, Familia, that unifies several polymorphism mechanisms in a lightweight package. Evaluation suggests the design of Genus and Familia addresses the need for genericity and extensibility in developing large, complex software.This dissertation also introduces a new mechanism for exception handling. By allowing exceptions to tunnel through handlers, the design offers both the static assurance of checked exceptions and the flexibility of unchecked exceptions. This tunneling semantics is then generalized to a broader class of control effects to address a fundamental modularity problem: it prevents effect-polymorphic abstractions from handling effects by accident. This claim about abstraction safety is formally accounted for.We hope that the language-design ideas presented here will make their way into mainstream programming languages and help make it easier to write and reason about software.
일반주제명Computer science.
언어영어
바로가기URL : 이 자료의 원문은 한국교육학술정보원에서 제공합니다.

서평(리뷰)

  • 서평(리뷰)

태그

  • 태그

나의 태그

나의 태그 (0)

모든 이용자 태그

모든 이용자 태그 (0) 태그 목록형 보기 태그 구름형 보기
 
로그인폼