Seed7 Release 2013-03-03
Sun, 3 Mar 2013 23:50:01 -0800 (PST)

          From comp.compilers

Related articles
Seed7 Release 2013-03-03 (2013-03-03)
| List of all articles for this month |

Newsgroups: comp.compilers
Date: Sun, 3 Mar 2013 23:50:01 -0800 (PST)
Organization: Compilers Central
Keywords: available, OOP
Posted-Date: 05 Mar 2013 00:06:38 EST


I have released a new version of Seed7: seed7_05_20130303.tgz In the
Seed7 programming language new statements and operators can be
declared easily. Types are first class objects and therefore
templates/generics need no special syntax. Object orientation is used
when it brings advantages and not in places when other solutions are
more obvious.

Seed7 is covered by the GPL (and LGPL for the Seed7 runtime library).

- The library editline.s7i has been added. This library defines a
    file type for linewise editing with history.
- The manual chapter describing types, especially the type program,
    has been improved.
- The calc.sd7 example has been improved to allow linewise editing.
- The handling of the internal program representation in interpreter
    and compiler has been improved to free most unused memory.
- The handling of the functions prgGlobalObjects, refArrToList,
    refHshDataToList, refHshKeyToList, refLocalVars and refSctToList
    in compiler and run-time library has been improved to free unused
- The stack trace has been improved to display infix operators
    better and to write parameter names.
- The compiler has been improved to support the action TYP_FUNC.
- The functions copy_expression and free_expression in listutl.c
    have been optimized.
- The function substitute_params has been added to match.c .
- The functions free_params and free_name_list have been added to
    name.c .
- The function dump_list has been added to objutl.c .
- The function copy_params has been added to entutl.c .
- The functions prot_float and prot_params have been added to
    traceutl.c .
- The functions free_type and close_type have been added to
    typeutl.c .
- The free list management has been improved to be configurable
    in config.h.
- The memory management in heaputl.h has been improved to work with
- The function free_file and remove_prog_files have been added to
- The functions itf_cpy and itf_cpy2 in itflib.c have been improved
    to support assigning forward declared objects to an interface.
- The function emptylist and the macro to_empty_list have been
    renamed to free_list and free_list2.
- In prg_comp.c the function prgDeclObjects has been renamed to
- In ref_data.c the functions refArrmaxidx, refArrminidx,
    refArrtolist, refScttolist and refHshKeyToList have been renamed
    to refArrMaxIdx, refArrMinIdx, refArrToList, refSctToList and
- In ref_data.c the functions refResult, refResini and refSetParams
    have been improved to raise RANGE_ERROR when the argument is NULL
    or when it is not a BLOCKOBJECT.
- In progs.s7i the functions sys_var, error_count, declared_objects,
    params, setParams, func_result, func_res_init, local_consts,
    local_vars, array_to_list, array_min_index, array_max_index,
    struct_to_list, hash_data_to_list, hash_key_to_list,
    interface_to_struct, obj_number, type_number and match_obj have
    been renamed to sysVar errorCount, globalObjects, formalParams,
    setFormalParams, resultVar, resultInitValue, localConsts,
    localVars, arrayToList, arrayMinIdx, arrayMaxIdx, structToList,
    hashDataToList, hashKeysToList, interfaceToStruct, objNumber,
    typeNumber and typeObject.
- In seed7_05.s7i the functions is_func, is_varfunc, result_type and
    is_derived have been renamed to isFunc, isVarfunc, resultType and

Thomas Mertes

Seed7 Homepage:
Seed7 - The extensible programming language: User defined statements
and operators, abstract data types, templates without special
syntax, OO with interfaces and multiple dispatch, statically typed,
interpreted or compiled, portable, runs under linux/unix/windows.

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.