Muldis::D::Core - Muldis D core data types and operators
This document is Muldis::D::Core version 0.125.0.
This document is part of the Muldis D language specification, whose root document is Muldis::D; you should read that root document before you read this one, which provides subservient details.
That said, because this Core document is otherwise too large to comfortably fit in one file, it has been split into pieces and therefore has its own tree of parts to follow, which it is the root of: Muldis::D::Core::Types, Muldis::D::Core::Types_Catalog, Muldis::D::Core::Universal, Muldis::D::Core::Ordered, Muldis::D::Core::Scalar, Muldis::D::Core::Boolean, Muldis::D::Core::Numeric, Muldis::D::Core::Integer, Muldis::D::Core::Rational, Muldis::D::Core::Stringy, Muldis::D::Core::Blob, Muldis::D::Core::Text, Muldis::D::Core::Cast, Muldis::D::Core::Tuple, Muldis::D::Core::Relation, Muldis::D::Core::Set, Muldis::D::Core::Array, Muldis::D::Core::Bag, Muldis::D::Core::Interval, Muldis::D::Core::STDIO, Muldis::D::Core::Routines_Catalog.
Core
Muldis D has a mandatory core set of system-defined (eternally available) entities, which is referred to as the Muldis D core or the core; they are the minimal entities that all Muldis D implementations need to provide; they are mutually self-describing and are either used to bootstrap the language or they constitute a reasonable minimum level of functionality for a practically useable industrial-strength (and fully TTM-conforming) programming language; any entities outside the core, called Muldis D extensions, are non-mandatory and are defined in terms of the core or each other, but the reverse isn't true.
This current Core document features the tuple and relation type constructors and all of the general-purpose relational operators, plus the type system minimal and maximal types, plus the special types used to define the system catalog, and the polymorphic operators that all types, or some types including core types, have defined over them, such as identity tests or assignment; it also features the boolean logic, integer and rational numeric, bit and character string data types and all their operators.
Most of the Core document is actually in these pieces: Muldis::D::Core::Types, Muldis::D::Core::Types_Catalog, Muldis::D::Core::Universal, Muldis::D::Core::Ordered, Muldis::D::Core::Scalar, Muldis::D::Core::Boolean, Muldis::D::Core::Numeric, Muldis::D::Core::Integer, Muldis::D::Core::Rational, Muldis::D::Core::Stringy, Muldis::D::Core::Blob, Muldis::D::Core::Text, Muldis::D::Core::Cast, Muldis::D::Core::Tuple, Muldis::D::Core::Relation, Muldis::D::Core::Set, Muldis::D::Core::Array, Muldis::D::Core::Bag, Muldis::D::Core::Interval, Muldis::D::Core::STDIO, Muldis::D::Core::Routines_Catalog.
Extensions are in other documents.
These extensions don't declare any new data types but declare additional operators for core types: Muldis::D::Ext::Counted.
These extensions mainly define new types plus just operators for those: Muldis::D::Ext::Temporal, Muldis::D::Ext::Spatial.
Go to Muldis::D for the majority of distribution-internal references, and Muldis::D::SeeAlso for the majority of distribution-external references.
Darren Duncan (darren@DarrenDuncan.net)
darren@DarrenDuncan.net
This file is part of the formal specification of the Muldis D language.
Muldis D is Copyright © 2002-2010, Muldis Data Systems, Inc.
See the LICENSE AND COPYRIGHT of Muldis::D for details.
The TRADEMARK POLICY in Muldis::D applies to this file too.
The ACKNOWLEDGEMENTS in Muldis::D apply to this file too.
To install Muldis::D, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Muldis::D
CPAN shell
perl -MCPAN -e shell install Muldis::D
For more information on module installation, please visit the detailed CPAN module installation guide.