[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: What's up with token filters (Re: New operators?)
- From: Fabien <fleutot+lua@...>
- Date: Sat, 14 Apr 2007 12:17:21 +0200
I think token filters should not be activated on the command line but
instead separately for each chunk. [...] For loading one could reuse the
existing require-mechanism
So do I. If there are several variants of the language, it's important that the variant in which a file is written is remembered by the file itself, not by a Makefile.
Metalua's approach to this is that all compile-time operations, including plugging stuff into the parser, happens between
-{ ... }. So you can load a parser extension module with
-{require "myextension"}. Since nontrivial extensions often also require a runtime support, there is an adapted variant of require, extension(), which takes take of both compile-time and runtime loadings. For instance, if a file uses pattern matching and extended list syntax, it should start with:
-{extension "match"}
-{extension "clist"}
An example of a macro system relying on command line options is OCaml's camlp4. Since OCaml partially automates Makefile generation, handling a project with some camlp4 quickly becomes baroque, to say the least.