skip to main content
10.1145/2383276.2383298acmotherconferencesArticle/Chapter ViewAbstractPublication PagescompsystechConference Proceedingsconference-collections
research-article

An idea for a type system of multi-paradigm language with extensible syntax

Published: 22 June 2012 Publication History

Abstract

This article proposes a type system for a multi-paradigm language paradigm. A practical solution that provides the benefits of both static and dynamic typing is proposed, while using the features of the prototype - extensible declarative syntax. A checking algorithm is described that covers both explicit type hierarchy definitions and subtyping based on object's methods. Both compile time and runtime checking responsibilities are added to the type system allowing fluent integration between statically and dynamically checked code segments. Declarative definition of preconditions is provided.

References

[1]
B. Eckel. "Strong Typing vs. Strong Testing", The Best Software Writing I 2005
[2]
C. Chambers. "Object-oriented multi-methods in Cecil", EUROPEAN CONFERENCE ON OBJECT-ORIENTED PROGRAMMING, ECOOP '92
[3]
C. Thalinger, J. Rose. "Optimizing invokedynamic", Proceedings of the 8th International Conference on the Principles and Practice of Programming in Java, PPPJ '10
[4]
E. Meijer, P. Drayton. "Static typing where possible, dynamic typing when needed: The end of the cold war between programming languages.", Workshop on Revival of Dynamic Languages, In OOPSLA'04, 2004.
[5]
E. Moggi. "Computational lambda-calculus and monads", Logic in Computer Science, LICS '89, 1989
[6]
H. Barendregt. "Lambda calculus with types", Handbook of logic in computer science, 1992
[7]
H. Funton. "The Ruby Way", Addison-Wesley Professional, 2007.
[8]
J. Gosling, B. Joy, G. Steele, G. Bracha. "Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley))", Addison-Wesley Professional ©2005
[9]
M. Abadi, L. Cardelli, B. Pierce, G. Plotkin. "Dynamic Typing in a Statically Typed Language", ACM Transactions on Programming Languages and Systems (volume 13, number 2, pp. 237--268, April 1991)
[10]
M. Zaidman "Teaching defensive programming in Java", Journal of Computing Sciences in Colleges Volume 19 Issue 3, January 2004
[11]
S. Thatte. "Quasi-static typing", Proceedings of the 17th ACM SIGPLAN-SIGACT, 1989
[12]
V.Bogdanov, I. Serafimova. "A multi-paradigm language prototype based on object oriented programming", ComputerScience'2011 Ohrid, 2011

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
CompSysTech '12: Proceedings of the 13th International Conference on Computer Systems and Technologies
June 2012
440 pages
ISBN:9781450311939
DOI:10.1145/2383276
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 June 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. defensive programming
  2. duck typing
  3. dynamic typing
  4. multi-paradigm programming language
  5. static typing
  6. strong typing
  7. subtype polymorphism
  8. subtyping
  9. type checks
  10. type system

Qualifiers

  • Research-article

Conference

CompSysTech'12

Acceptance Rates

Overall Acceptance Rate 241 of 492 submissions, 49%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 57
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Jan 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media