You can use ATS to implement game logic and then use the xcode platform to
develop GUI. Your ATS code may use some ATS library functions. Instead of
requiring the
availablility of libatslib.a, you can simply generate C code for the
library functions
you use. You can find such an example in the following directory:
In the file mylib.dats, you can see the following lines:
local
// #include
"libats/DATS/stringbuf.dats"
//
in (* in of [local] *)
//
// HX: it is intentionally left to be empty
//
end // end of [local]
By compiling mylib.dats, the functions (not function templates) in
stringbuf.dats are compiled into C code,
which can be readily used in cross-platform development.
I packaged the .cats files and .h files needed for compiling C code
generated from ATS source.
Please find the file ATS2-Postiats-include-0.0.4.tgz in the following
directory:
This package contains various .h and .cats files needed for compiling
C code generated from ATS source. It is primarily created for
cross-platform
development where it is difficult to generate on the source platform object
code needed for an application designed to be running on the target
platform.
Instead, it is more convenient or even necessary to compile C code on the
target platform to generate the needed object code.On Tuesday, December 17, 2013 2:16:21 AM UTC-5, gmhwxi wrote:
Say you want to write a game running on iPhone.
You can use ATS to implement game logic and then use the xcode platform to
develop GUI. Your ATS code may use some ATS library functions. Instead of
requiring the
availablility of libatslib.a, you can simply generate C code for the
library functions
you use. You can find such an example in the following directory:
In the file mylib.dats, you can see the following lines:
local
// #include
“libats/DATS/stringbuf.dats”
//
in (* in of [local] *)
//
// HX: it is intentionally left to be empty
//
end // end of [local]
By compiling mylib.dats, the functions (not function templates) in
stringbuf.dats are compiled into C code,
which can be readily used in cross-platform development.