diff --git a/ase/doc/ase-en.man b/ase/doc/ase-en.man index b67a5ce0..648959e4 100644 --- a/ase/doc/ase-en.man +++ b/ase/doc/ase-en.man @@ -20,7 +20,8 @@ ase-0.1.0.tgz [[[ * {Quickstart,quickstart-en.html} -* {Embedder guide,awk-en.html} +* {AWK Embedder guide,awk-en.html} +* {LISP Embedder guide,lsp-en.html} * {Frequently Asked Questions,faq-en.html} ]]] diff --git a/ase/doc/awk-en.man b/ase/doc/awk-en.man index 9ae6f30b..e0584aab 100644 --- a/ase/doc/awk-en.man +++ b/ase/doc/awk-en.man @@ -1,9 +1,9 @@ .title ASEAWK -== ASEAWK == += ASEAWK = ASE provides an embeddable processor of a dialect of the AWK programming language. The language implemented is slightly different from {the version developed by Brian W. Kernighan, http://cm.bell-labs.com/cm/cs/awkbook/index.html} and has been adjusted to the author's preference. -=== Overview === +== Overview == The following code fragment illustrates the basic steps of embedding the processor. {{{ @@ -36,7 +36,7 @@ The following code fragment illustrates the basic steps of embedding the process More detailed description is available {here,awk-mini-en.html}. You may refer to other sample files such as [[ase/test/awk/awk.c]] and [[ase/awk/jni.c]]. -=== Primitive Functions === +== Primitive Functions == A set of primitive functions is needed to create an instance of the AWK processor. A primitive function is a user-defined function to help the library perform system-dependent operations such as memory allocation, character class handling. {{{ @@ -112,7 +112,7 @@ struct ase_ccls_t The functions in these groups perform the memory operations and character class related operations respectively. They follow the style of the memory allocation functions and character class handling functions of the standard C library except that they accept a pointer to the user-defined data as the first argument, thus providing more flexibility. The pointer to the user-defined data is specified into the [[custom_data]] field of each group. The [[realloc]] field, however, can be [[ASE_NULL]], in which case the functions pointed by the free and the malloc field replace the role of the function pointed by the [[realloc]] field. -=== Source IO Handler === +== Source IO Handler == The source code is handled by a source input handler provided by the user. The optional source code output handler can be provided to have the internal parse tree converted back to the source code. @@ -197,6 +197,6 @@ if (ase_awk_parse (awk, &srcios) == -1) } }}} -=== External IO Handler === +== External IO Handler == External IO handlers should be provided to support the AWK's built-in IO facilities. diff --git a/ase/doc/awk-mini-en.man b/ase/doc/awk-mini-en.man index 3fb723fe..2ccb86b6 100644 --- a/ase/doc/awk-mini-en.man +++ b/ase/doc/awk-mini-en.man @@ -1,10 +1,10 @@ .title Annotated ASEAWK Embedding Sample -== Annotated ASEAWK Embedding Sample == += Annotated ASEAWK Embedding Sample = This document annotates a simple embedding sample code [[ase/test/awk/mini.c]]. Locate the [[ase_main]] function to begin exploring the sample. -=== mini.c === +== mini.c == {{{ #include diff --git a/ase/doc/awk-ref-en.man b/ase/doc/awk-ref-en.man deleted file mode 100644 index a249dc9a..00000000 --- a/ase/doc/awk-ref-en.man +++ /dev/null @@ -1,17 +0,0 @@ -.title ASEAWK FUNCTION REFERENCE - -== Function == - -=== ase_awk_open === -{{{ -ase_awk_t* ase_awk_open (const ase_awk_prmfns_t* prmfns, void* custom_data, int* errnum); -}}} - -The function creates an object of the type ase_awk_t. It requires a set of system functions as described in the type ase_awk_prmfns_t. - -=== ase_awk_close === -{{{ -int ase_awk_close (ase_awk_t* awk); -}}} - - diff --git a/ase/doc/lsp-en.man b/ase/doc/lsp-en.man new file mode 100644 index 00000000..e56c269d --- /dev/null +++ b/ase/doc/lsp-en.man @@ -0,0 +1,22 @@ + +== ASELSP == + +ASELSP is an implementation of a lisp-like language for embedding purposes. + +== Types == + +[[[ +* ase_lsp_t +* ase_lsp_io_t +* ase_lsp_obj_t +]]] + +== Functions == + +[[[ +* ase_lsp_open +* ase_lsp_close +* ase_lsp_read +* ase_lsp_eval +* ase_lsp_print +]]] diff --git a/ase/doc/quickstart-en.man b/ase/doc/quickstart-en.man index 8096b18b..4e23a20f 100644 --- a/ase/doc/quickstart-en.man +++ b/ase/doc/quickstart-en.man @@ -1,10 +1,10 @@ .title ASE Quick Start Guide -== ASE Quck Start Guide == += ASE Quck Start Guide = The first step in using this library is to build it as the pre-compiled binary is not available at this moment. This document shows how to build the core library on various operating systems. -=== Unix/Linux === +== Unix/Linux == You may run the [[configure]] script on most of the Unix-like operation systems to set up the build environment and then run the [[make]] utility at the top-level directory. @@ -30,7 +30,7 @@ CC=gcc CFLAGS="-Wall -O2 -m64" LDFLAGS="-m64" ./configure # 64-bit CC=gcc CFLAGS="-Wall -O2" ./configure # 32-bit }}} -=== OpenVMS === +== OpenVMS == You may use the [[mms]] command or the [[mmk]] command to build the library. No counterpart for the [[configure]] script is provided. As not top-level build script is provided, you have to run the command in each directory that you want to build the library in. @@ -56,13 +56,13 @@ aseawk :== $DISK$GEIN_SYS:[USERS.BACON.ASE.TEST.AWK]aseawk.exe aseawk -f hello.awk }}} -=== MS-Windows === +== MS-Windows == You may use the Visual Studio 6 or later to use the provided project file. Otherwise open the command-line build environment and use the [[make]] utility. A set of make scripts is provided to support the Microsoft build environement and the Borland build environment. The script for the Miscrosoft build environment is named [[makefile.msw.cl]] while it is [[makefile.msw.bcc]] for the Borland counterpart. -If you are building the AWK library and the test program, this might be what you have to do. +If you are building the AWK library and the test program, this is probably what you have to do. {{{ cd ase\cmn @@ -74,3 +74,9 @@ nmake /f makefile.msw.cl cd ..\test\awk nmake /f makefile.msw.cl }}} + +However, The COM module can only be built within the Visual Studio environment. After having built the COM module, you may open [[ase/test/com/ase.vbp]] for testing. + +== JNI Interface == + +Some make scripts contain the target to build the JNI interface for Java. The Java class files can be built with the standard [[javac]] command.