Scala 2.6.1-final

API Specification

This document is the API specification for Scala Library Documentation

Class Summary
trait AbstractSyntax extends AnyRef
This component provides the core abstractions for representing an Abstract Syntax Tree
trait Binders extends AbstractSyntax with Mappable

This component provides functionality for enforcing variable binding during parse-time.

When parsing simple languages, like Featherweight Scala, these parser combinators will fully enforce the binding discipline. When names are allowed to be left unqualified, these mechanisms would have to be complemented by an extra phase that resolves names that couldn't be resolved using the naive binding rules. (Maybe some machinery to model `implicit' binders (e.g., `this' and imported qualifiers) and selection on a binder will suffice?)

trait Mappable extends AnyRef

This trait provides the core Scrap-Your-Boilerplate abstractions as well as implementations for common datatypes.

Based on Ralph Laemmel's SYB papers.