Menu

Tree [b27cbb] master /
 History

HTTPS access


File Date Author Commit
 compiler 2024-04-24 Daniel Weaver Daniel Weaver [70436b] Change version to 1.2
 tools 2022-12-22 Daniel Weaver Daniel Weaver [b1bb00] Add an option to handle conditional compile wit...
 tws 2018-03-16 Daniel Weaver Daniel Weaver [48928b] Add the builtin variable input_record_limit to ...
 COPYING 2017-11-16 Daniel Weaver Daniel Weaver [b2a958] Initial commit
 README 2024-04-24 Daniel Weaver Daniel Weaver [edde7c] Revision 1.2
 makefile 2020-08-15 Daniel Weaver Daniel Weaver [bab92a] Add xtags to the makefile clean target.
 xpl.man 2018-03-16 Daniel Weaver Daniel Weaver [2f0fb4] Update the documentation.
 xpl.rtf 2024-04-24 Daniel Weaver Daniel Weaver [41be5c] Add xread() and xwrite().

Read Me

2024/04/23 Release 1.2 changes.

1) Add xread() and xwrite().

2022/12/22 Release 1.1 changes.

1) Fix an error reported by the GNU C compiler.
2) Add an option to XXREF to allow it to process MODCOMP XPL programs.

2021/5/15 Release 1.0 changes.

1) Fix a concatenate bug where it would fail if both strings ended at FREEPOINT.
2) The builtin function EXIT will now abort the program when it is used
   without an argument.  This is compatible with the original XPL standard.
3) When used with an argument the EXIT function will perform a normal return
   with the argument as the return value.  This is compatible with the EXIT
   function in the C language.

2020/8/14 Release 0.7 changes.

1) Add a program xtags to create a tags file for VI to use on XPL programs.
2) Fix a bug when a RETURN statement is used in an IF statement and is the
   last statement of a procedure that should return a value but doesn't.
3) Fix the xrewind() function to correctly flush I/O before rewinding.
4) Generate an error message when a parameter is redefined.
5) Add caret(^) to xxref as an operator.
6) Add xformat option -n to specify the number of spaces before a comment
   that starts a line.
7) Add xformat option -w to to give a warning when a line exceeds a given
   length.
8) Minor changes to the documentation.

2018/3/16 Release 0.6 changes.

1) Added xformat program to reformat XPL source code.
2) Added xxref program to produce a cross reference of XPL programs.
3) Port to DJGPP on DOS.  This is supported with new makefiles.
4) Added the builtin variable input_record_limit to limit the size of the
   strings returned by INPUT().  This is useful for reading input records
   that are not terminated with <newline>.
5) Allow more than 255 entries in a case statement.
6) Report DO/END label errors.  This will help catch missing END statements.
7) Allow the buffer array used with FILE() to be indexed.

2018/1/10 Release 0.5 changes.

1) New library functions: xfdopen, xio_get_flags, xio_get_flags.
2) Fix a C compiler warning with the xfprintf function on the unit parameter.
3) Many of the XPL builtin functions and variables are now mapped to allow the
   names to be used as EXTERNAL procedures.
4) Fix large constants to append L or LL as necessary.
5) Fix short formats without arguments for xprintf, xfprintf and xsprintf.
6) Remove trace and untrace from the runtime.  They are now handled in the
   compiler.
7) Put string constants in Read/Write memory if they were declared with INITIAL
   statements.
8) Announce the compiler before printing Usage.
9) Add XPL_EOF as an EOF indicator used by xerrno.
10) Add a title to the symbol table dump.
11) Standardize the error numbers returned by the runtime.
12) Portability changes to the makefiles.
13) Fix ticket #6.  The compiler will now assign the iteration variable
    after evaluating the TO and BY expressions.
14) Fix Ticket #5.  Hex constants at the end of a C compatible string.
15) Once the -I option is turned on, do not allow it to be turned off.
16) Describe the -G option as a cross compile option.
17) Do not allow margin chop to be used on the command line.
18) Corrected the list of reserved words for C99 and C11.
19) The input builtin function will now accept any of the following as a
    newline: <cr>, <lf>, <cr><lf>, <lf><cr>.

2017/12/16 Release 0.4 changes.

1) New library functions: xunlink(), xrewind() and xmkstemp()
2) New keyword EXTERNAL.  Add the ability to define function prototypes
   for external functions.
3) New keyword TRANSPARENT.  Similar to the keyword EXTERNAL but is
   intended to be used with C include files.
4) Add CORELONGWORD() to access 64-bit memory objects.
5) Enhancements to the INLINE() function.
6) The XPL variable errno was changed to xerrno to allow programs to
   access the C variable errno.
7) Many additions to the documentation.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.