Download
ATS is Open Source and
Free Software, and
it is freely available under the GNU GENERAL PUBLIC LICENSE version 3
(GPLv3) as is
published by the Free Software Foundation. The current implementation of
ATS is given the name ATS/Postiats or simply Postiats. Sometimes, this
implementation is also referred to as ATS2 for it is the successor of the
previous ATS programming language, which may be referred to as ATS1. The
latest released ATS/Postiats packages are available at the following links:
The following requirements are supposed to be met in order to install ATS:
- Operating System requirement: ATS is supported under the following
operating systems:
- Linux
- Windows with Cygwin
- MacOS
- Programming Language requirement:
GNU C-Compiler (gcc). Other C-compilers (e.g., clang) should work in principle.
We plan to port ATS to other platforms in the future. If you have succeeded
in porting ATS to a platform not listed here, please drop us a note.
The GMP library (libgmp.a), which is in general included in a GNU/Linux
distribution, is currently optional and it may be required for
installing a release of ATS2 in the future. Please see http://gmplib.org for more details on GMP.
There is an official Debian package (dpkg) of ATS2 currently maintained by
Matthew Danish.
Please find unofficial RPM distribution of ATS2
on-line currently maintained by
Matthew Danish.
This installation method requires access to gcc or some other C-compilers
(such as clang), and it is also in need of the
GMP
library.
- Step 1:
After downloading a compressed tarball containing a release of ATS2 from the
following site:
http://sourceforge.net/projects/ats2-lang/download
please untar it in a directory, say FOO, of your choice. This, for
instance, can be done by executing the following command-line:
tar -zvxf ats2-positiats-x.x.x.tgz
where ats2-positiats-x.x.x.tgz refers to the downloaded ATS
package and x.x.x is its version number.
All the files and directories extracted from the tarball are now in the
directory FOO/ATS-Postiats.
If you have access to the git command, then you can also do a
git-clone to obtain the current release of ATS2:
git clone git://git.code.sf.net/p/ats2-lang/code ATS-Postiats
- Step 2:
Assume that your current directory is FOO/ATS-Postiats.
Please execute ./configure and then:
make all
This generates executables patscc and patsopt in
the directory FOO/ATS-Postiats/bin, which are the commands you
need for compiling ATS programs, and a library file
libatslib.a in the directory
FOO/ATS-Postiats/ccomp/atslib/lib/, which you may
need for linking.
It is possible to choose a C-compiler for compiling patsopt.
Currently, the following options are available:
make CCOMP=gcc all
make CCOMP=clang all
It is also possible to set the flag GCFLAG explicitly so as to choose
a particular GC for providing memory management needed for running patsopt.
Currently, the following options are available:
make GCFLAG=-D_ATS_NGC all
make GCFLAG=-D_ATS_GCATS all
make GCFLAG=-D_ATS_GCBDW all
The first one means no GC support for running patsopt while
the second one and the third one require the built-in GC (of ATS) and the
Boehm-Demers-Weiser GC, respectively.
The current default setting is the following one:
make CCOMP=gcc GCFLAG=-D_ATS_GCATS all
In general, if the default setting does not work out, please try the no-GC
option by setting GCFLAG to -D_ATS_NGC.
- Step 3:
If you do not want to install ATS, please set the environment variable
PATSHOME to FOO/ATS-Postiats.
- Step 4:
Optionally, you may choose to install ATS. If you do, please first execute
the following command-line:
./configure --prefix=DESTDIR
where DESTDIR refers to the directory into which ATS is to be installed.
If the argument [--prefix=DESTDIR] is missing, then the default directory
for installing ATS is /usr/local.
You can now install by executing:
make install
After installation, you need to set PATSHOME to
DESTDIR/lib/ats2-postiats-x.x.x, which is the directory where
ATS is installed.
Note that you can always re-configure before executing
make install if you would like to change a previously selected
directory for installation:
./configure --prefix=DESTDIR2
Also, you can perform staged installation by making use of the variable
DESTDIR. Please see explanation
here.
ATS2-contrib primarily consists of external contributions made to the ATS2
programming language system in the forms of library packages, tutorials,
examples, and all sorts of documentation, etc.
- Step 1:
After downloading a compressed tarball containing a release of
ATS2-contrib from the following site:
http://sourceforge.net/projects/ats2-lang-contrib/download
please untar it in a directory, say BAR, of your choice. This, for
instance, can be done by executing the following command-line:
tar -zvxf ats2-lang-contrib-x.x.x.tgz
where ats2-lang-contrib-x.x.x.tgz refers to the downloaded
ATS2-contrib package and x.x.x is the version number of the package.
All the files and directories extracted from the tarball are now in the
directory BAR/ATS-Postiats-contrib. Please set the environment
variable PATSHOMERELOC to this directory name and then you are ready to use
ATS2-contrib.
If you have access to the git command, then you can also do a
git-clone to obtain the current release of ATS2-contrib:
git clone git://git.code.sf.net/p/ats2-lang-contrib/code ATS-Postiats-contrib
- Step 2:
If you want to install ATS2-contrib, you can move the content of the
directory BAR/ATS-Postiats-contrib into ${PATSHOME} and then
set PATSHOMERELOC to ${PATSHOME}, where ${PATSHOME} refers to the value of
the environment variable PATSHOME.