axiom-architectures


Presentations and Open Source for Scala, Grails and Architecture

The Evolution of 4-Tier Architectures with REST

Dec. 15 talk to the North Colorado Architects Group in Fort Collins

A Practical Road Map for Enterprise Architecture

A collection of 8 diagrams in PDF that show and briefly describe practices:

  1. Enterprise Architecture Practice Diagram

  2. Enterprise Architecture Practice Descriptions

  3. A 4-Tier Architecture Footprint

  4. Gap Analysis Strategy with Architecture Alignment Benefits

  5. Agile Development & Production Practices Road Map

  6. Agile Development Change Management and Governance

  7. Agile Development & Production Practice Descriptions

  8. Zachman Framework Influence

Upcoming Presentations and Code Examples

1. A Scala DSL for Grails Metadata

We begin with a motivating example about Grails Metadata. Grails brings the "coding by convention" paradigm to Groovy. The Metadata in Grails is the cornerstone of this convention.

Scala's capabilities for a Grails Metadata DSL will be described in four parts:

  1. Why Scala for DSLs? Why not Groovy or Java?

  2. Scala ADTs (Algebraic Data Types) and how ADTs model Metadata.

  3. How to use BNF grammars to write parsers for ADT Metadata input.

  4. How Scala's pattern matching transforms ADT Metadata into ANYTHING.

2. Symbolic Mathematics in Scala

This presentation begins with a discussion about AsciiMathML - the most elegant way to represent symbolic math expressions with simple text strings. Whats more Peter Jipsen has created a JavaScript parser that translates AsciiMathML to MathML inside the browser. See:

http://www1.chapman.edu/~jipsen/asciimath.html

Taking AsciiMathML as our inspiration we discuss how perform symbolic mathematics in Scala by:

  1. Representing math expressions as Scala ADTs (Algebraic Data Types).

  2. Adding syntactic sugar to ADTs with overloaded operators and implicit conversions.

  3. Parsing AsciiMathML into ADTs.

  4. Transforming math expression ADTs with pattern matching with examples for:

Text Output: ADTs, AsciiMathML and MathML

Evaluation, Simplification, Differentiation and Integration.

3. Introduction to Scala

Project Information

Labels:
Scala Grails Enterprise Metadata Architecture