ANN: Seed7 Release 2007-10-10 - Unix

This is a discussion on ANN: Seed7 Release 2007-10-10 - Unix ; Hello, I have released a new version of Seed7: seed7_05_20071010.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 ...

+ Reply to Thread
Results 1 to 3 of 3

Thread: ANN: Seed7 Release 2007-10-10

  1. ANN: Seed7 Release 2007-10-10

    Hello,

    I have released a new version of Seed7: seed7_05_20071010.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).

    Changelog:
    - The compiler (comp.sd7) was improved to support the
    'remove(array, index)' function.
    - The functions isLeapYear, daysInMonth, weekOfYear, weekDateYear
    and weekDateWeek were added to the time.s7i library.
    - The exception checking program chkexc.sd7 was improved to check
    for exceptions raised with arrays.
    - Documentation for the bigInteger type was added to the manual.
    - Some strings in pic32.s7i and pairs.sd7 were enlarged to avoid
    a RANGE_ERROR exception when accessing them.

    Greetings Thomas Mertes

    Seed7 Homepage: http://seed7.sourceforge.net
    Seed7 - The extensible programming language: User defined statements
    and operators, abstract data types, templates without special
    syntax, OO with interfaces and multiple dispatch.


  2. Re: ANN: Seed7 Release 2007-10-10

    On Oct 10, 5:27 pm, thomas.mer...@gmx.at wrote:

    > In the Seed7 programming language new statements and operators
    > can be declared easily.


    Thomas, I noticed this new extensible language
    http://groups.google.com/group/comp....47c2e462a58842

    (QUOTE)The Felix language allows the end user to define their own
    grammar,
    in particular to add whole 'Domain Specific Sub Languages' to
    the system, as a combination of libraries and syntax extensions.

    This is implemented with two Ocaml libraries: Dypgen, an extensible
    GLR
    parser takes care of the parsing, whilst the user actions are written
    using a tool-chain that starts with Scheme code to calculate AST nodes
    as
    Scheme values (S-expressions): Felix is using OCS Scheme, which is an
    R5RS
    compliant embedded Scheme implementation written in Ocaml
    (/QUOTE)

    it's at http://Felix.SF.Net

    just a heads up, Cheers,
    Terrence


  3. Re: ANN: Seed7 Release 2007-10-10

    On 16 Okt., 21:33, "terrence.x.13"
    wrote:
    > On Oct 10, 5:27 pm, thomas.mer...@gmx.at wrote:
    >
    > > In the Seed7 programming language new statements and operators
    > > can be declared easily.

    >
    > Thomas, I noticed this new extensible languagehttp://groups.google.com/group/comp.lang.scheme/browse_thread/thread/...


    Thank you for the information.

    >From my short investigation:

    Felix claims that it is an Algol like procedural programming
    language. The extension example of the mail uses Scheme
    values (S-expressions) for the syntax and semantic description.

    For me this sounds more like:
    The end users can define their own grammar by changing the compiler.

    In contrast to that:
    Seed7 uses Seed7 to describe syntactical and semantical extensions.
    In Seed7 it is not necessary to change the interpreter or
    compiler, when you add new statements and operators.

    An example how a statement is defined in Seed7 is:

    $ syntax expr: .for.().range.().to.().do.().end.for is -> 25;

    const proc: for (inout baseType: variable) range (in arrayType:
    arr_obj) do
    (in proc: statements)
    end for is func
    local
    var integer: number is 0;
    begin
    for number range 1 to length(arr_obj) do
    variable := arr_obj[number];
    statements;
    end for;
    end func;

    This example can be found at
    http://seed7.sourceforge.net/examples/declstat.htm
    As you can see: It is not necessary to use a different
    language to define a new statement.

    Greetings Thomas Mertes

    Seed7 Homepage: http://seed7.sourceforge.net
    Seed7 - The extensible programming language: User defined statements
    and operators, abstract data types, templates without special
    syntax, OO with interfaces and multiple dispatch.


+ Reply to Thread