The Artima Developer Community
Sponsored Link

Heron-Centric: Ruminations of a Language Designer
Comp. Sci. 101: Definition of Type
by Christopher Diggins
December 4, 2004
It is a challenge to find definitions for computer science terms, which are understandable, correct and uncontentious. Lately I have needed to come up with a good definition of type.


I am currently writing a detailed reference for the Heron programming language. In so doing, I have found it challenging to find good definitions for basic computer science terminology. The most recent term I am working on is "type". In writing about a type, I needed to be able to answer the question: what exactly is a type?

I wanted a definition which is short, precise and complete. The definition I came up with is:

type: a semantic classification of a set of values
There is little disagreement on the fact that a type is a set of values, but when I proposed this definition previously on the Lambda the Ultimate forums, there was some disagreement on what "semantic" means. The problem is that there is a common intuitive notion of what "meaning" is, which is not precisely correct. Using the Merriam-Websters dictionary online, semantic is defined as "of or relating to meaning in language.". Meaning is defined as "the logical connotation of a word or phrase", which I think can be applied appropriately in this case to a value. Finally connotation is defined by defined as "an essential property or group of properties of a thing named by a term in logic".

I believe that my proposed definition of type is correct and complete. Any thoughts or comments?

Talk Back!

Have an opinion? Readers have already posted 19 comments about this weblog entry. Why not add yours?

RSS Feed

If you'd like to be notified whenever Christopher Diggins adds a new entry to his weblog, subscribe to his RSS feed.

About the Blogger

Christopher Diggins is a software developer and freelance writer. Christopher loves programming, but is eternally frustrated by the shortcomings of modern programming languages. As would any reasonable person in his shoes, he decided to quit his day job to write his own ( ). Christopher is the co-author of the C++ Cookbook from O'Reilly. Christopher can be reached through his home page at

This weblog entry is Copyright © 2004 Christopher Diggins. All rights reserved.

Sponsored Links


Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use