CAL Documentation

Overview

View: Flat Grouped Hierarchical
+ Expand All - Collapse All
+ Expand All - Collapse All
Accumulate
Defines accumulation functions, that can be used to compute multiple summaries over data, along with finalizing the results.
Array
Defines the abstract data type Array along with a variety of functions and instances for the type.
ArrayPrimitives
This module is a helper module for the Array module, defining the necessary functions and types to support the various Java primitive arrays.
Bits
Defines the type class and operations for bitwise operations.
BlockingQueue
This module defines a fixed length blocking queue, that can be used in conjunction with the Cal.Experimental.Concurrent.Parallel module to pass items between threads.
BusinessCalendar
This module contains the BusinessCalendar type which provides information about valid period values, display names, etc... for period types (Year, Quarter, Month, etc...) in the calendar.
CALDoc
This tutorial module goes over the basics of writing documentation comments (a.k.a. CALDoc) in CAL.
CalIntro
This module contains a basic tutorial on the CAL language.
CellularAutomata
This module contains an implementation of simple 1-dimensional cellular automata.
Char
Defines many useful functions for the Char type.
CollectionUtilities
Utilities for manipulating collections.
Color
Defines the CAL Color type, as well as associated functions.
Console
The Console module defines basic functions for working with Console input and output.
DataDictionary
This module contains the DataDictionary type class, which exposes a simplified view of a database and can be queried more simply than constructing SQL (directly or using the Cal.Data.Sql module types).
DataGems
DataGems provide a way to access database metadata, as well as query and modify database tables.
DataProcessing
This is a tutorial module intended to show how CAL can be used to connect to a database and retrieve and process records.
DatabaseMetadata
This module provides types that model the metadata of a relational database.
Debug
Defines some useful functions and type classes for use when debugging CAL programs.
Decimal
Defines many useful functions for the Decimal type.
DictionaryQuery
This module contains the model for constructing high-level database queries against data dictionaries.
DirectedGraph
A directed graph of distinguishable objects.
DirectedGraphLibrary
This module exposes the functionality of Cal.Utilities.DirectedGraph in a way that can be exported via a standalone library JAR.
Drawing
This experimental module contains functions which give access to Java2D functionality from CAL.
Dynamic
Defines the Dynamic type along with a variety of functions for working with it.
Encoding
This module implements simple string encoding and decoding based on Java's Charset class.
Exception
Provides core support for handling exceptions in CAL.
ExpressionLexer
This module implements a lexer for general expressions, based on the module Parser.
Fibonacci
This is a tutorial module that shows various approaches to writing a function to produce the nth Fibonnaci number in CAL.
File
The File module defines types and functions for working with files and directories.
FiscalBusinessCalendar
This module contains an implementation of a BusinessCalendar based on a simple fiscal calendar which can be shifted some number of months from the Gregorian calendar.
Format
Defines some useful functions for formatting collections of Strings for pleasant viewing.
GemModelDemo
Contains a variety of "demo" gems.
GemModelDemo_Designs
Contains a variety of "demo" gems.
GregorianBusinessCalendar
This module contains an implementation of a BusinessCalendar based on the Gregorian calendar.
IntMap
An efficient implementation of maps from Int to values.
List
Defines many useful functions for the List type.
Locale
This module defines the Locale type, and provides functions for working with locale values, accessing locale properties of the system, and performing locale-sensitive string comparisons through the use of Collator and CollationKey.
LocalizedStrings
This tutorial module goes over the basics on using localized string resources in CAL.
LongMap
An efficient implementation of maps from Long to values.
Map
An efficient implementation of maps from keys to values.
Math
Defines many useful math functions.
Memoize
Implementation of memoization: based on the paper 'Disposable Memo Functions' by Cook and Launchbury.
MessageFormat
This module defines a set of functions for formatting strings with message patterns.
Parallel
Various functions for parallel evaluation in CAL.
Parser
This module defines a parser combinator library which can be used to define parsers for both context-free and context-sensitive grammars.
Plot
This module is intended as a low level plotter for geometric objects.
Prelude
The Prelude module is the core module of CAL and must be imported by every other CAL module.
PrettyPrinter
Functions for pretty-printing text.
QuickCheck (Tutorials)
This is a tutorial module that shows how the Cal.Utilities.QuickCheck module can be used to facilitate testing.
QuickCheck (Utilities)
QuickCheck provides a simple mechanism for testing programs by generating arbitrary test data.
Random
Provides simple mechanisms for generating Lists of pseudo-random numbers of various common types.
Range
Defines the Range type as well as core support functions associated with ranges.
Record
Defines many useful functions for working with CAL record types.
RelativeTime
This module contains the RelativeDate, RelativeTime and RelativeDateTime types, together with the functions that operate on them.
Resource
Provides access to user resources in the CAL environment.
Set
An efficient implementation of sets of values.
SimpleLibrary
This is a demo of some simple functions exposed via a standalone library JAR.
Sql
This module provides a combinator library for creating abstract SQL queries.
SqlBuilder
This module contains implementations of SqlBuilder for several kinds of RDBMS.
SqlDataDictionary
This module contains an implementation of a DataDictionary based on the Sql and DataGems modules.
SqlParser
This module implements a SQL parser.
SqlType
This module contains a type describing type data types of SQL database values.
String
Defines many useful functions for the String type.
StringNoCase
Defines StringNoCase, a case-insensitive string type and a variety of useful operations and class instances for it.
StringProperties
This module defines the types StringProperties and StringResourceBundle which are useful for working with string resource files.
Sudoku
This module contains gems defining and solving a Sudoku puzzle.
Summary
This is the CAL Summary module.
System
This module contains functions for interacting with the current CAL execution environment.
Time
This module defines types and functions for working with absolute time values.
TimeZone
Defines the TimeZone type and its affiliated operations.
UniqueIdentifier
UniqueIdentifier is a type-safe way of representing a unique name for some value.
ValueType
This module defines an enumeration to represent several common types.
XmlBuilder
This module contains types and functions for creating XML documents.
XmlCharacterClasses
This module provides optimized functions for testing whether characters match the productions in Appendix B, Character Classes, of the XML 1.0 specification.
XmlParser
This module implements an XML 1.0 parser based on the functions from the Parser library module.
XmlParserEngine
This module implements an XML 1.0 parser based on the functions from the Parser library module.
XmlParserState
This module implements the state for an XML 1.0 parser written using the Parser library module.
XmlPrinters
This module implements functions for printing XML to strings.
- Cal.Collections
  Array
Defines the abstract data type Array along with a variety of functions and instances for the type.
  ArrayPrimitives
This module is a helper module for the Array module, defining the necessary functions and types to support the various Java primitive arrays.
  IntMap
An efficient implementation of maps from Int to values.
  List
Defines many useful functions for the List type.
  LongMap
An efficient implementation of maps from Long to values.
  Map
An efficient implementation of maps from keys to values.
  Set
An efficient implementation of sets of values.
- Cal.Core
  Bits
Defines the type class and operations for bitwise operations.
  Char
Defines many useful functions for the Char type.
  Debug
Defines some useful functions and type classes for use when debugging CAL programs.
  Dynamic
Defines the Dynamic type along with a variety of functions for working with it.
  Exception
Provides core support for handling exceptions in CAL.
  Memoize
Implementation of memoization: based on the paper 'Disposable Memo Functions' by Cook and Launchbury.
  Prelude
The Prelude module is the core module of CAL and must be imported by every other CAL module.
  Record
Defines many useful functions for working with CAL record types.
  Resource
Provides access to user resources in the CAL environment.
  String
Defines many useful functions for the String type.
  System
This module contains functions for interacting with the current CAL execution environment.
- Cal.Data
  BusinessCalendar
This module contains the BusinessCalendar type which provides information about valid period values, display names, etc... for period types (Year, Quarter, Month, etc...) in the calendar.
  DataDictionary
This module contains the DataDictionary type class, which exposes a simplified view of a database and can be queried more simply than constructing SQL (directly or using the Cal.Data.Sql module types).
  DataGems
DataGems provide a way to access database metadata, as well as query and modify database tables.
  DatabaseMetadata
This module provides types that model the metadata of a relational database.
  DictionaryQuery
This module contains the model for constructing high-level database queries against data dictionaries.
  FiscalBusinessCalendar
This module contains an implementation of a BusinessCalendar based on a simple fiscal calendar which can be shifted some number of months from the Gregorian calendar.
  GregorianBusinessCalendar
This module contains an implementation of a BusinessCalendar based on the Gregorian calendar.
  Sql
This module provides a combinator library for creating abstract SQL queries.
  SqlBuilder
This module contains implementations of SqlBuilder for several kinds of RDBMS.
  SqlDataDictionary
This module contains an implementation of a DataDictionary based on the Sql and DataGems modules.
  SqlParser
This module implements a SQL parser.
  SqlType
This module contains a type describing type data types of SQL database values.
- Cal.Experimental.Concurrent
  BlockingQueue
This module defines a fixed length blocking queue, that can be used in conjunction with the Cal.Experimental.Concurrent.Parallel module to pass items between threads.
  Parallel
Various functions for parallel evaluation in CAL.
- Cal.Experimental.Graphics
  Drawing
This experimental module contains functions which give access to Java2D functionality from CAL.
- Cal.Experimental.Utilities
  CollectionUtilities
Utilities for manipulating collections.
  Encoding
This module implements simple string encoding and decoding based on Java's Charset class.
  XmlCharacterClasses
This module provides optimized functions for testing whether characters match the productions in Appendix B, Character Classes, of the XML 1.0 specification.
  XmlParser
This module implements an XML 1.0 parser based on the functions from the Parser library module.
  XmlParserEngine
This module implements an XML 1.0 parser based on the functions from the Parser library module.
  XmlParserState
This module implements the state for an XML 1.0 parser written using the Parser library module.
  XmlPrinters
This module implements functions for printing XML to strings.
- Cal.Graphics
  Color
Defines the CAL Color type, as well as associated functions.
- Cal.IO
  Console
The Console module defines basic functions for working with Console input and output.
  File
The File module defines types and functions for working with files and directories.
- Cal.Samples
  CellularAutomata
This module contains an implementation of simple 1-dimensional cellular automata.
  DirectedGraphLibrary
This module exposes the functionality of Cal.Utilities.DirectedGraph in a way that can be exported via a standalone library JAR.
  GemModelDemo
Contains a variety of "demo" gems.
  GemModelDemo_Designs
Contains a variety of "demo" gems.
  Plot
This module is intended as a low level plotter for geometric objects.
  SimpleLibrary
This is a demo of some simple functions exposed via a standalone library JAR.
  Sudoku
This module contains gems defining and solving a Sudoku puzzle.
- Cal.Tutorials
  CALDoc
This tutorial module goes over the basics of writing documentation comments (a.k.a. CALDoc) in CAL.
  CalIntro
This module contains a basic tutorial on the CAL language.
  DataProcessing
This is a tutorial module intended to show how CAL can be used to connect to a database and retrieve and process records.
  Fibonacci
This is a tutorial module that shows various approaches to writing a function to produce the nth Fibonnaci number in CAL.
  LocalizedStrings
This tutorial module goes over the basics on using localized string resources in CAL.
  QuickCheck
This is a tutorial module that shows how the Cal.Utilities.QuickCheck module can be used to facilitate testing.
- Cal.Utilities
  Accumulate
Defines accumulation functions, that can be used to compute multiple summaries over data, along with finalizing the results.
  Decimal
Defines many useful functions for the Decimal type.
  DirectedGraph
A directed graph of distinguishable objects.
  ExpressionLexer
This module implements a lexer for general expressions, based on the module Parser.
  Format
Defines some useful functions for formatting collections of Strings for pleasant viewing.
  Locale
This module defines the Locale type, and provides functions for working with locale values, accessing locale properties of the system, and performing locale-sensitive string comparisons through the use of Collator and CollationKey.
  Math
Defines many useful math functions.
  MessageFormat
This module defines a set of functions for formatting strings with message patterns.
  Parser
This module defines a parser combinator library which can be used to define parsers for both context-free and context-sensitive grammars.
  PrettyPrinter
Functions for pretty-printing text.
  QuickCheck
QuickCheck provides a simple mechanism for testing programs by generating arbitrary test data.
  Random
Provides simple mechanisms for generating Lists of pseudo-random numbers of various common types.
  Range
Defines the Range type as well as core support functions associated with ranges.
  RelativeTime
This module contains the RelativeDate, RelativeTime and RelativeDateTime types, together with the functions that operate on them.
  StringNoCase
Defines StringNoCase, a case-insensitive string type and a variety of useful operations and class instances for it.
  StringProperties
This module defines the types StringProperties and StringResourceBundle which are useful for working with string resource files.
  Summary
This is the CAL Summary module.
  Time
This module defines types and functions for working with absolute time values.
  TimeZone
Defines the TimeZone type and its affiliated operations.
  UniqueIdentifier
UniqueIdentifier is a type-safe way of representing a unique name for some value.
  ValueType
This module defines an enumeration to represent several common types.
  XmlBuilder
This module contains types and functions for creating XML documents.
- Cal
- Collections
  Array
Defines the abstract data type Array along with a variety of functions and instances for the type.
  ArrayPrimitives
This module is a helper module for the Array module, defining the necessary functions and types to support the various Java primitive arrays.
  IntMap
An efficient implementation of maps from Int to values.
  List
Defines many useful functions for the List type.
  LongMap
An efficient implementation of maps from Long to values.
  Map
An efficient implementation of maps from keys to values.
  Set
An efficient implementation of sets of values.
- Core
  Bits
Defines the type class and operations for bitwise operations.
  Char
Defines many useful functions for the Char type.
  Debug
Defines some useful functions and type classes for use when debugging CAL programs.
  Dynamic
Defines the Dynamic type along with a variety of functions for working with it.
  Exception
Provides core support for handling exceptions in CAL.
  Memoize
Implementation of memoization: based on the paper 'Disposable Memo Functions' by Cook and Launchbury.
  Prelude
The Prelude module is the core module of CAL and must be imported by every other CAL module.
  Record
Defines many useful functions for working with CAL record types.
  Resource
Provides access to user resources in the CAL environment.
  String
Defines many useful functions for the String type.
  System
This module contains functions for interacting with the current CAL execution environment.
- Data
  BusinessCalendar
This module contains the BusinessCalendar type which provides information about valid period values, display names, etc... for period types (Year, Quarter, Month, etc...) in the calendar.
  DataDictionary
This module contains the DataDictionary type class, which exposes a simplified view of a database and can be queried more simply than constructing SQL (directly or using the Cal.Data.Sql module types).
  DataGems
DataGems provide a way to access database metadata, as well as query and modify database tables.
  DatabaseMetadata
This module provides types that model the metadata of a relational database.
  DictionaryQuery
This module contains the model for constructing high-level database queries against data dictionaries.
  FiscalBusinessCalendar
This module contains an implementation of a BusinessCalendar based on a simple fiscal calendar which can be shifted some number of months from the Gregorian calendar.
  GregorianBusinessCalendar
This module contains an implementation of a BusinessCalendar based on the Gregorian calendar.
  Sql
This module provides a combinator library for creating abstract SQL queries.
  SqlBuilder
This module contains implementations of SqlBuilder for several kinds of RDBMS.
  SqlDataDictionary
This module contains an implementation of a DataDictionary based on the Sql and DataGems modules.
  SqlParser
This module implements a SQL parser.
  SqlType
This module contains a type describing type data types of SQL database values.
- Experimental
- Concurrent
  BlockingQueue
This module defines a fixed length blocking queue, that can be used in conjunction with the Cal.Experimental.Concurrent.Parallel module to pass items between threads.
  Parallel
Various functions for parallel evaluation in CAL.
- Graphics
  Drawing
This experimental module contains functions which give access to Java2D functionality from CAL.
- Utilities
  CollectionUtilities
Utilities for manipulating collections.
  Encoding
This module implements simple string encoding and decoding based on Java's Charset class.
  XmlCharacterClasses
This module provides optimized functions for testing whether characters match the productions in Appendix B, Character Classes, of the XML 1.0 specification.
  XmlParser
This module implements an XML 1.0 parser based on the functions from the Parser library module.
  XmlParserEngine
This module implements an XML 1.0 parser based on the functions from the Parser library module.
  XmlParserState
This module implements the state for an XML 1.0 parser written using the Parser library module.
  XmlPrinters
This module implements functions for printing XML to strings.
- Graphics
  Color
Defines the CAL Color type, as well as associated functions.
- IO
  Console
The Console module defines basic functions for working with Console input and output.
  File
The File module defines types and functions for working with files and directories.
- Samples
  CellularAutomata
This module contains an implementation of simple 1-dimensional cellular automata.
  DirectedGraphLibrary
This module exposes the functionality of Cal.Utilities.DirectedGraph in a way that can be exported via a standalone library JAR.
  GemModelDemo
Contains a variety of "demo" gems.
  GemModelDemo_Designs
Contains a variety of "demo" gems.
  Plot
This module is intended as a low level plotter for geometric objects.
  SimpleLibrary
This is a demo of some simple functions exposed via a standalone library JAR.
  Sudoku
This module contains gems defining and solving a Sudoku puzzle.
- Tutorials
  CALDoc
This tutorial module goes over the basics of writing documentation comments (a.k.a. CALDoc) in CAL.
  CalIntro
This module contains a basic tutorial on the CAL language.
  DataProcessing
This is a tutorial module intended to show how CAL can be used to connect to a database and retrieve and process records.
  Fibonacci
This is a tutorial module that shows various approaches to writing a function to produce the nth Fibonnaci number in CAL.
  LocalizedStrings
This tutorial module goes over the basics on using localized string resources in CAL.
  QuickCheck
This is a tutorial module that shows how the Cal.Utilities.QuickCheck module can be used to facilitate testing.
- Utilities
  Accumulate
Defines accumulation functions, that can be used to compute multiple summaries over data, along with finalizing the results.
  Decimal
Defines many useful functions for the Decimal type.
  DirectedGraph
A directed graph of distinguishable objects.
  ExpressionLexer
This module implements a lexer for general expressions, based on the module Parser.
  Format
Defines some useful functions for formatting collections of Strings for pleasant viewing.
  Locale
This module defines the Locale type, and provides functions for working with locale values, accessing locale properties of the system, and performing locale-sensitive string comparisons through the use of Collator and CollationKey.
  Math
Defines many useful math functions.
  MessageFormat
This module defines a set of functions for formatting strings with message patterns.
  Parser
This module defines a parser combinator library which can be used to define parsers for both context-free and context-sensitive grammars.
  PrettyPrinter
Functions for pretty-printing text.
  QuickCheck
QuickCheck provides a simple mechanism for testing programs by generating arbitrary test data.
  Random
Provides simple mechanisms for generating Lists of pseudo-random numbers of various common types.
  Range
Defines the Range type as well as core support functions associated with ranges.