ATSlogo
Home(old)
Downloads
Documents
Libraries
Community
Papers
Examples
Resources
Implements
Mailing-list
ats-lang-users
ats-lang-devel
Try ATS on-line
The ATS Programming Language
Unleashing the Potentials of Types and Templates!

Introduction to Programming in ATS

This book starts from the core of ATS, a statically typed call-by-value functional programming language, gradually introducing the reader to dependent types, linear types and the paradigm of programming with theorem-proving. It assumes no familiarity of the reader with functional programming but it does expect the reader to have already acquired basic understanding of programming and possibly some programming skills.
Links: pdf html htmltoc htmlone e-pdf code
Backup Links: pdf html htmltoc htmlone e-pdf code
Translation in Chinese: (TBA)
Translation in Japanese: html

A Tutorial on Programming Features in ATS

The primary purpose of this tutorial is to bring insights into a rich set of programming features in ATS and also demonstrate through concrete examples that these features can be made of effective use in the construction of high-quality programs. For someone familiar with both ML and C, it is possible to learn programming in ATS by simply studying the tutorial. However, a coherent and systematic view of ATS is diffcult to be gained from the tutorial alone.
Links: pdf html htmltoc htmlone e-pdf code
Backup Links: pdf html htmltoc htmlone e-pdf code
Translation in Chinese: html
Translation in Japanese: html

A Crash into Functional Programming via ATS

This book consists of a set of lecture notes for a crash course on functional programming in ATS. The primary focus of these notes is set upon advocating a style of problem-solving that makes extensive use of list-processing and stream-processing functions. After finishing this course, one will have become familiar with recursion in problem-solving and ready to formulate high-level combinator-based programming solutions.
Links: pdf html htmltoc mylib
Backup Links: pdf html htmltoc mylib

Effective Programming in ATS through Examples

Please find on-line (backup) various (short) programs in ATS plus detailed explanation that are written for the purpose of advocating effective programming in ATS.
Translation in Chinese: (TBA)
Translation in Japanese: html

What is new?


2018-01-10:
ATS-CodeBooK
by Hongwei Xi
2018-01-06:
Effective ATS:
Streamization and Stream-Processing in Parallel
by Hongwei Xi
2017-12-09:
Effective ATS:
Doing Divide-and-Conquer in Parallel
by Hongwei Xi
2017-02-23:
Effective ATS:
Let's build a template-based package for D&C!
by Hongwei Xi
2017-01-28:
Effective ATS:
Let's start with package-based programming!
by Hongwei Xi
2016-11-23:
Effective ATS:
A Template-Based Implementation of Graph Search
by Hongwei Xi
2016-11-06:
Effective ATS:
FRP in ATS via Bacon.js
by Hongwei Xi
2016-11-02:
Effective ATS:
Functional Programming with Combinators
by Hongwei Xi
2016-07-12:
Effective ATS:
Linear Streams for Memory-Clean Programs
by Hongwei Xi
2016-02-04:
Effective ATS:
Imperative vs. Functional vs. Linear Functional
by Hongwei Xi
2016-01-05:
Effective ATS:
Two styles of theorem-proving in ATS
by Hongwei Xi
2016-01-01:
ATS2TUTORIAL:
Chapter "Stack-allocated Closure-Functions" is added.
by Hongwei Xi
2015-12-31:
Dataview for linear C-strings
by Hongwei Xi
2015-12-15:
Effective ATS:
Parsing Combinators of CPS-style
by Hongwei Xi
2015-12-15:
Effective ATS:
Encoding Propositional Logic
by Hongwei Xi
2015-12-13:
ATS2TUTORIAL:
Chapter "Boxed Tuples and Records" is added.
by Hongwei Xi
2015-12-09:
Effective ATS:
Session Combinators
by Hongwei Xi
2015-11-24:
Effective ATS:
Session-Typed Channels
by Hongwei Xi
2015-10-29:
ATS books in pdf format
by Hongwei Xi
2015-09-20:
Using codegen2-directives
by Hongwei Xi
2015-03-31:
ATS2TUTORIAL:
Chapter "Linearly Typed Lists" is added.
by Hongwei Xi
2015-03-19:
ATS2TUTORIAL:
Chapter "Functional Sets and Maps" is added.
by Hongwei Xi
2015-03-12:
ATS2TUTORIAL:
Chapter "Persistent Hashtables" is added.
by Hongwei Xi
2015-03-11:
INT2PROGINATS:
Chapter "From genericity to late-binding" is added.
by Hongwei Xi
2015-03-11:
INT2PROGINATS:
Section "Template-based support for late-binding" is added.
by Hongwei Xi
2015-03-07:
INT2PROGINATS:
Section "Genericity of template implementations" is added.
by Hongwei Xi
2015-02-10:
INT2PROGINATS:
Section "Programmer-centric theorem-proving" is added.
by Hongwei Xi
2015-01-20:
INT2PROGINATS:
Section "Linear channels for IPC" is added.
by Hongwei Xi
2015-01-16:
INT2PROGINATS:
Section on locking and unlocking is added.
by Hongwei Xi
2015-01-11:
ATS2TUTORIAL:
Chapter "Datatypes" is added.
by Hongwei Xi
2015-01-07:
ATS2TUTORIAL:
Chapter "Recursion" is added.
by Hongwei Xi
[thePageRFooterSep]
This page is created by Hongwei Xi
with tools including ATS/weboxy, atscc2js and atscc2php.