lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


I only mention this here because OGDL seems to address very prettily
one of the smaller, simpler problems that Lua handles, one that was
fairly central in Lua's birth (as I understand it), specifying
structured data. <URL:http://ogdl.org/>

OGDL isn't a programming language, like Lua. Instead, it's just a
data specification language. It uses indentation to specify a tree
structure. [Actually, there are provisions for handling generalized
directed graphs, but they can be viewed as an add-on].

I've been using Lua as the spec file language for a software
packaging tool I'm developing. I just stumbled across OGDL and it
lured me away. Here are my bash spec files,
in Lua:

    pkg = "bash-2.05b";
    url = [[
        http://mirrors.kernel.org/gnu/bash/bash-2.05b.tar.gz
        http://downloads.linuxfromscratch.org/bash-2.05b-2.patch
    ]];
    build = [[
        tar xzf bash-2.05b.tar.gz
        cd bash-2.05b
        ./configure --enable-static-link --with-curses \
            --prefix=/ --mandir=/usr/share/man --infodir=/usr/share/info
        make
        make prefix=$BPM_ROOT mandir=$BPM_ROOT/usr/share/man \
            infodir=$BPM_ROOT/usr/share/info install
        ln -s bash $BPM_ROOT/bin/sh
        rm -f $BPM_ROOT/usr/share/info/dir
        find $BPM_ROOT -type f|xargs file|grep 'ELF.*executable'|sed 's/:.*$//'|xargs strip
    ]];

and OGDL:

    pkg bash-2.05b

    url http://mirrors.kernel.org/gnu/bash/bash-2.05b.tar.gz
        http://downloads.linuxfromscratch.org/bash-2.05b-2.patch

    build \
        tar xzf bash-2.05b.tar.gz
        cd bash-2.05b
        ./configure --enable-static-link --with-curses \
            --prefix=/ --mandir=/usr/share/man --infodir=/usr/share/info
        make
        make prefix=$BPM_ROOT mandir=$BPM_ROOT/usr/share/man \
            infodir=$BPM_ROOT/usr/share/info install
        ln -s bash $BPM_ROOT/bin/sh
        rm -f $BPM_ROOT/usr/share/info/dir
        find $BPM_ROOT -type f|xargs file|grep 'ELF.*executable'|sed 's/:.*$//'|xargs strip

Like I said, this is mostly off-topic for this list; please direct
followups to me unless they are talking about Lua.

-Bennett

Attachment: pgpi1PGXD6Jqa.pgp
Description: PGP signature