caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* Looking for a configuration file library
@ 2005-09-27 13:09 David MENTRE
  2005-09-27 13:23 ` [Caml-list] " Bruno De Fraine
                   ` (2 more replies)
  0 siblings, 3 replies; 15+ messages in thread
From: David MENTRE @ 2005-09-27 13:09 UTC (permalink / raw)
  To: caml-list

Hello,

For easy configuration of my programs, I'm looking for some OCaml code
to read and write a user configuration file.

Currently, I have following requirements:

 - pure OCaml, without depencies on other libraries (I have enough
depencies in my program);

 - allows human readable and editable configuration files (i.e. no
XML), preferably structured;

 - (preferably) allows to easily load and save OCaml data structure,
like Hashtbl.

On the Hump, I found Config_file:
  http://caml.inria.fr/cgi-bin/hump.fr.cgi?contrib=335

Any other suggestion?

Many thanks in advance,
Yours,
d.


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-27 13:09 Looking for a configuration file library David MENTRE
@ 2005-09-27 13:23 ` Bruno De Fraine
  2005-09-27 16:26   ` Samuel Mimram
  2005-09-27 17:02 ` brogoff
  2005-10-05 10:16 ` Richard Jones
  2 siblings, 1 reply; 15+ messages in thread
From: Bruno De Fraine @ 2005-09-27 13:23 UTC (permalink / raw)
  To: David MENTRE; +Cc: caml-list

Hello,

On 27 Sep 2005, at 15:09, David MENTRE wrote:
> For easy configuration of my programs, I'm looking for some OCaml code
> to read and write a user configuration file.
[...]
> On the Hump, I found Config_file:
>   http://caml.inria.fr/cgi-bin/hump.fr.cgi?contrib=335
>
> Any other suggestion?

No, but I've used Config_file for one of my applications, I was  
pleased with it and I think it meets all three of your requirements.  
To load and save custom types, you can write wrappers from/to the  
"raw" types. Only disadvantage is that I can't be installed as a  
Debian package (or not one that I'm aware of).

Best regards,
Bruno

-- 
Bruno De Fraine
Vrije Universiteit Brussel
Faculty of Applied Sciences, INFO - SSEL
Room 4K208, Pleinlaan 2, B-1050 Brussels
tel: +32 (0)2 629 29 75
fax: +32 (0)2 629 28 70
e-mail: Bruno.De.Fraine@vub.ac.be


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-27 13:23 ` [Caml-list] " Bruno De Fraine
@ 2005-09-27 16:26   ` Samuel Mimram
  2005-09-28  6:59     ` David MENTRE
  0 siblings, 1 reply; 15+ messages in thread
From: Samuel Mimram @ 2005-09-27 16:26 UTC (permalink / raw)
  Cc: caml-list, Sylvain Le Gall

Bruno De Fraine wrote:
> Hello,
> 
> On 27 Sep 2005, at 15:09, David MENTRE wrote:
> 
>> For easy configuration of my programs, I'm looking for some OCaml code
>> to read and write a user configuration file.
> 
> [...]
> 
>> On the Hump, I found Config_file:
>>   http://caml.inria.fr/cgi-bin/hump.fr.cgi?contrib=335
>>
>> Any other suggestion?
> 
> No, but I've used Config_file for one of my applications, I was  pleased 
> with it and I think it meets all three of your requirements.  To load 
> and save custom types, you can write wrappers from/to the  "raw" types. 
> Only disadvantage is that I can't be installed as a  Debian package (or 
> not one that I'm aware of).

Well, apparently it's now part of the new cameleon library which is 
packaged in Debian. So I guess it's just a matter of time, until the 
package gets updated.

Cheers,

Samuel.


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-27 13:09 Looking for a configuration file library David MENTRE
  2005-09-27 13:23 ` [Caml-list] " Bruno De Fraine
@ 2005-09-27 17:02 ` brogoff
  2005-09-28  7:06   ` David MENTRE
  2005-10-05 10:16 ` Richard Jones
  2 siblings, 1 reply; 15+ messages in thread
From: brogoff @ 2005-09-27 17:02 UTC (permalink / raw)
  To: David MENTRE; +Cc: caml-list

On Tue, 27 Sep 2005, David MENTRE wrote:

> Hello,
>
> For easy configuration of my programs, I'm looking for some OCaml code
> to read and write a user configuration file.
>
> Currently, I have following requirements:
>
>  - pure OCaml, without depencies on other libraries (I have enough
> depencies in my program);
>
>  - allows human readable and editable configuration files (i.e. no
> XML), preferably structured;
>
>  - (preferably) allows to easily load and save OCaml data structure,
> like Hashtbl.
>
> On the Hump, I found Config_file:
>   http://caml.inria.fr/cgi-bin/hump.fr.cgi?contrib=335
>
> Any other suggestion?

David,
    I like the Lua-ML package used in C--. Lua is just about right as a
configuration language, especially if you wish to do some computation in your
config  file. It should satisfy your listed requirements.

    On the minus side IMO (I hate to be negative about something free) it uses
noweb, and is not up to date with the latest version of Lua. In particular,
the  use of noweb is annoying, but with a bit of grunt work you can undo that.

-- Brian


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-27 16:26   ` Samuel Mimram
@ 2005-09-28  6:59     ` David MENTRE
  2005-09-28  7:06       ` Maxence Guesdon
  0 siblings, 1 reply; 15+ messages in thread
From: David MENTRE @ 2005-09-28  6:59 UTC (permalink / raw)
  To: Samuel Mimram; +Cc: Sylvain Le Gall, caml-list

Hello,

2005/9/27, Samuel Mimram <samuel.mimram@ens-lyon.org>:
[ About Config_file ]
> Well, apparently it's now part of the new cameleon library which is
> packaged in Debian. So I guess it's just a matter of time, until the
> package gets updated.

While browsing the debian packaging of Cameleon, I noticed that there
is a liboptions-ocaml-dev for cameleon 1.3. Is it the same library
that we are speaking about or a different one?
 http://packages.debian.org/stable/libdevel/liboptions-ocaml-dev

Yours,
d.


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-27 17:02 ` brogoff
@ 2005-09-28  7:06   ` David MENTRE
  2005-09-28 15:15     ` brogoff
  2005-09-28 15:40     ` skaller
  0 siblings, 2 replies; 15+ messages in thread
From: David MENTRE @ 2005-09-28  7:06 UTC (permalink / raw)
  To: brogoff; +Cc: caml-list

Brian,

2005/9/27, brogoff <brogoff@speakeasy.net>:
>     I like the Lua-ML package used in C--. Lua is just about right as a
> configuration language, especially if you wish to do some computation in your
> config  file. It should satisfy your listed requirements.

I did not thought about this option but this is an interesting
suggestion. In the long term, I also want to add scripting
capabilities to my program so that might be done both at once.

>     On the minus side IMO (I hate to be negative about something free) it uses
> noweb, and is not up to date with the latest version of Lua. In particular,
> the  use of noweb is annoying, but with a bit of grunt work you can undo that.

I'm already using noweb for my program, so this is not an issue for me[1].

Yours,
d.

[1] Even if, in the long term, I want to remove noweb in order to use
a literate programing style relying on language source code, like
ocamldoc.


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-28  6:59     ` David MENTRE
@ 2005-09-28  7:06       ` Maxence Guesdon
  0 siblings, 0 replies; 15+ messages in thread
From: Maxence Guesdon @ 2005-09-28  7:06 UTC (permalink / raw)
  To: David MENTRE; +Cc: Samuel Mimram, Sylvain Le Gall, caml-list

On Wed, 28 Sep 2005 08:59:45 +0200
David MENTRE <david.mentre@gmail.com> wrote:

> Hello,
> 
> 2005/9/27, Samuel Mimram <samuel.mimram@ens-lyon.org>:
> [ About Config_file ]
> > Well, apparently it's now part of the new cameleon library which is
> > packaged in Debian. So I guess it's just a matter of time, until the
> > package gets updated.
> 
> While browsing the debian packaging of Cameleon, I noticed that there
> is a liboptions-ocaml-dev for cameleon 1.3. Is it the same library
> that we are speaking about or a different one?
>  http://packages.debian.org/stable/libdevel/liboptions-ocaml-dev

The Config_file library was originally the Options library included in Cameleon.
Jean-Baptiste Rouquier made from Options an object-oriented library,
Config_file, which is also easier to use. 
In Cameleon2, the Options library has been replaced by the Config_file library.
So the Config_file library can be retrieved separately or with Cameleon2.

Regards,

-- 
Maxence Guesdon


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-28  7:06   ` David MENTRE
@ 2005-09-28 15:15     ` brogoff
  2005-09-28 16:37       ` skaller
  2005-09-28 15:40     ` skaller
  1 sibling, 1 reply; 15+ messages in thread
From: brogoff @ 2005-09-28 15:15 UTC (permalink / raw)
  To: David MENTRE; +Cc: caml-list

On Wed, 28 Sep 2005, David MENTRE wrote:

> Brian,
>
> 2005/9/27, brogoff <brogoff@speakeasy.net>:
> >     I like the Lua-ML package used in C--. Lua is just about right as a
> > configuration language, especially if you wish to do some computation in your
> > config  file. It should satisfy your listed requirements.
>
> I did not thought about this option but this is an interesting
> suggestion. In the long term, I also want to add scripting
> capabilities to my program so that might be done both at once.

Lua's designers intended that it be used for writing config files. It has found
some success in this niche, and even if you don't wish to use it's procedural
features, it works fine for var=val type files.

> >     On the minus side IMO (I hate to be negative about something free) it uses
> > noweb, and is not up to date with the latest version of Lua. In particular,
> > the  use of noweb is annoying, but with a bit of grunt work you can undo that.
>
> I'm already using noweb for my program, so this is not an issue for me[1].
>
> Yours,
> d.
>
> [1] Even if, in the long term, I want to remove noweb in order to use
> a literate programing style relying on language source code, like
> ocamldoc.

That is exactly what I wish they had done. I haven't gone all the way and
used ocamldoc properly, but when I have time I will do that to my version of
Lua-ML.

-- Brian


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-28  7:06   ` David MENTRE
  2005-09-28 15:15     ` brogoff
@ 2005-09-28 15:40     ` skaller
  1 sibling, 0 replies; 15+ messages in thread
From: skaller @ 2005-09-28 15:40 UTC (permalink / raw)
  To: David MENTRE; +Cc: brogoff, caml-list

On Wed, 2005-09-28 at 09:06 +0200, David MENTRE wrote:
> Brian,
> 
> 2005/9/27, brogoff <brogoff@speakeasy.net>:
> >     I like the Lua-ML package used in C--. Lua is just about right as a
> > configuration language, especially if you wish to do some computation in your
> > config  file. It should satisfy your listed requirements.
> 
> I did not thought about this option but this is an interesting
> suggestion. In the long term, I also want to add scripting
> capabilities to my program so that might be done both at once.

You might consider Nicolas Cannasse's program Neko.

> >     On the minus side IMO (I hate to be negative about something free) it uses
> > noweb, and is not up to date with the latest version of Lua. In particular,
> > the  use of noweb is annoying, but with a bit of grunt work you can undo that.
> 
> I'm already using noweb for my program, so this is not an issue for me[1].
> 
> Yours,
> d.
> 
> [1] Even if, in the long term, I want to remove noweb in order to use
> a literate programing style relying on language source code, like
> ocamldoc.

Ocamldoc is NOT a literate programming tool, but a document
generator. As such it is good for documenting the programming
interfaces to be used by developers of the Ocaml code of you
project.. and nothing else (since Demexp is an end user product,
not a programmers product such as, for example, ExtLib).

So, use of Ocamldoc is entirely independent of your LP tool
use -- in Felix I use both.

The real problem with tools like noweb is that, like all LP
tools, they invade and dominate the whole project structure,
but fail to provide enough power to actually manage a project.

This is why, if you choose to use LP, you should use Interscript,
since it is precisely the whole of standard Python plus a library,
all of which is accessed in your LP documents by executing
Python script.. therefore, you can provide arbitrary processing
in your documents, extending the system from within: there is
no need to write external plugins (although you can do that too).

Felix uses this power a bit: for example, the language has
certain keywords which are defined in a Python list.
The lexer, parser and man page are *generated* using that list,
so all three are guaranteed to be in synch at all times.
Certain build scripts are adapated the same way: a few lines
of interscript completely replaces the whole Autotools rubbish.

-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-28 15:15     ` brogoff
@ 2005-09-28 16:37       ` skaller
  2005-09-28 16:55         ` brogoff
  2005-09-29  7:24         ` Christian Lindig
  0 siblings, 2 replies; 15+ messages in thread
From: skaller @ 2005-09-28 16:37 UTC (permalink / raw)
  To: brogoff; +Cc: David MENTRE, caml-list

On Wed, 2005-09-28 at 08:15 -0700, brogoff wrote:

> > [1] Even if, in the long term, I want to remove noweb in order to use
> > a literate programing style relying on language source code, like
> > ocamldoc.
> 
> That is exactly what I wish they had done. 

Why? Is there problem with running noweb to extract the source?
Or is there a problem editing noweb files?

-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-28 16:37       ` skaller
@ 2005-09-28 16:55         ` brogoff
  2005-09-29  3:33           ` skaller
  2005-09-29  7:24         ` Christian Lindig
  1 sibling, 1 reply; 15+ messages in thread
From: brogoff @ 2005-09-28 16:55 UTC (permalink / raw)
  To: skaller; +Cc: David MENTRE, caml-list

On Thu, 29 Sep 2005, skaller wrote:
> On Wed, 2005-09-28 at 08:15 -0700, brogoff wrote:
>
> > > [1] Even if, in the long term, I want to remove noweb in order to use
> > > a literate programing style relying on language source code, like
> > > ocamldoc.
> >
> > That is exactly what I wish they had done.
>
> Why?

Getting off topic, but since you ask...

Because, Borg like, I wish to integrate whatever source code I grab into my
own code base, perhaps modifying it, and I don't wish to add yet another layer
of perl scripts and extra  weird tools into my flow. I'd rather Lua-ML be just
like the libraries that are distributed with OCaml.

Also, I don't believe programs are enough like books that LP is worth
adopting. In short I'm an LP unbeliever (behead me!).

> Is there problem with running noweb to extract the source?

That's the first step, then you need to get the comments right. And there
was a problem with yacc stuff, but nothing beyond grunt work, like I said.

> Or is there a problem editing noweb files?

I don't want to edit noweb files. I'm willing to do it once to undo the hard
work the authors put into it, but then it's goodbye to all that.

Back to config files. Other languages like Python and Scheme could also be used
as configuration files, but Lua is especially suitable when "non programmers"
are writing the config scripts.

-- Brian


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-28 16:55         ` brogoff
@ 2005-09-29  3:33           ` skaller
  2005-09-29  4:02             ` brogoff
  0 siblings, 1 reply; 15+ messages in thread
From: skaller @ 2005-09-29  3:33 UTC (permalink / raw)
  To: brogoff; +Cc: caml-list, David MENTRE

On Wed, 2005-09-28 at 09:55 -0700, brogoff wrote:
> On Thu, 29 Sep 2005, skaller wrote:
> > On Wed, 2005-09-28 at 08:15 -0700, brogoff wrote:
> >
> > > > [1] Even if, in the long term, I want to remove noweb in order to use
> > > > a literate programing style relying on language source code, like
> > > > ocamldoc.
> > >
> > > That is exactly what I wish they had done.
> >
> > Why?
> 
> Getting off topic, but since you ask...

Packaging is hardly off topic in any programming language list.

Last Ocaml tool I tried to build, that nice re library ..
failed on the first line. Gave up in disgust. First line
started with 'findlib' ... its a third party tool.

I also get annoyed when you need to have 'make' to build
a package.. usually you need bash as well. Neither
is standard on Windows.

> Because, Borg like, I wish to integrate whatever source code I grab into my
> own code base, perhaps modifying it, and I don't wish to add yet another layer
> of perl scripts and extra  weird tools into my flow. 

That I understand. Though note: noweb is written in Icon (under debian
noweb package requires iconx package .. that's the end, two binaries).

> I'd rather Lua-ML be just
> like the libraries that are distributed with OCaml.
> 
> Also, I don't believe programs are enough like books that LP is worth
> adopting. In short I'm an LP unbeliever (behead me!).

Using MY tool, interscript, I don't care about the 'literate' 
part much either. What I *do* care about is the code generation --
precisely because "I don't wish to add yet another layer
of perl scripts and extra  weird tools into my flow"

Hard to describe, but if you look at Felix, you'll see
the tarball contains a single directory of files
ending in .ipk or .pak. These are the LP sources.
Everything else: be it Ocaml, HTML, C++, Felix, test data,
Python, build scripts, man pages .. for the language
comparisons there is Ada, Haskell, Scheme, Java,
and a few other languages in there too .. EVERYTHING is
stored in a single format in just one directory. 

Furthermore, using tables I can keep all these codes synchronised, 
that is, remove redundant and error prone repetition -- all
without any external tools, other than interscript, which
is supplied in the tarball in machine independent form.
Of course, you need Python .. and Ocaml (and for Felix
a C++ compiler). But you don't need bash or make!
(Felix now builds *from source* on raw Win32 using only
major programming language tools).

> > Is there problem with running noweb to extract the source?
> 
> That's the first step, then you need to get the comments right. And there
> was a problem with yacc stuff, but nothing beyond grunt work, like I said.

Oh yes, you have a problem: if you manually run noweb and fiddle
the result, then include that in your own product (which is what
I do all the time with 3pl software) then you have two SERIOUS
problems:

(a) you can't easily synchronise with the upstream author
(b) you have the usual Licence problem, you whole project
is now probably a 'derived work'

> Back to config files. Other languages like Python and Scheme could also be used
> as configuration files, but Lua is especially suitable when "non programmers"
> are writing the config scripts.

I doubt that. I'm a programmer, and I spent some time with Lua.
Simple assignments in Lua are the same as Python:

x = 1 
y = "Hello"

Anything more complex is HARD, and much harder in Lua than
Python -- I never really figured it out. And anything that
simple can be parsed by a few lines of Ocaml..

I actually looked at Lua as a replacement for Python
to control configuration but threw it out. I am very happy
now, sticking with Python (the platform independent build
would have been harder in Lua). However I don't need to
embed reading of config scripts (Felix has it own mechanism
for conditional compilation etc).

In the end, I would have to recommend using a pure Ocaml
solution.. because if your Ocaml code embeds native Lua,
then you need your clients who are 'building from source'
to have a C compiler to compile Lua.. and you need to
provide build scripts to do it .. and .. its all a huge
mess. 

Ocaml is much easier to build .. except that people
insist on using 'findlib' and INRIA insists on NOT
supplying it as part of Ocaml. It's an old problem.
Sigh. GODI and Debian solve these problems entirely .. but they're
very heavy weight.


-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-29  3:33           ` skaller
@ 2005-09-29  4:02             ` brogoff
  0 siblings, 0 replies; 15+ messages in thread
From: brogoff @ 2005-09-29  4:02 UTC (permalink / raw)
  To: skaller; +Cc: caml-list, David MENTRE

On Thu, 29 Sep 2005, skaller wrote:
> That I understand. Though note: noweb is written in Icon (under debian
> noweb package requires iconx package .. that's the end, two binaries).

You don't need Icon to untangle the Lua-ML sources, and build. Perl and
make and all of that nonstandard stuff that runs on every Unix. I had no
problems on vanilla solaris and RH linux sans Icon.

[...snip...]

> Oh yes, you have a problem: if you manually run noweb and fiddle
> the result, then include that in your own product (which is what
> I do all the time with 3pl software) then you have two SERIOUS
> problems:
>
> (a) you can't easily synchronise with the upstream author

That's the problem.

> (b) you have the usual Licence problem, you whole project
> is now probably a 'derived work'

Public domain.

> > Back to config files. Other languages like Python and Scheme could also be used
> > as configuration files, but Lua is especially suitable when "non programmers"
> > are writing the config scripts.
>
> I doubt that. I'm a programmer, and I spent some time with Lua.
> Simple assignments in Lua are the same as Python:
>
> x = 1
> y = "Hello"
>
> Anything more complex is HARD, and much harder in Lua than

No. It is easy, and I have (admittedly subjective) data from dozens
of nonprogrammer engineers who use it, who formerly wrote config
files in OCaml. So, forgive me if I don't take your word for it, but rather
take theirs.

Much config file data is tabular, and Lua has built in hash tables.

> I actually looked at Lua as a replacement for Python
> to control configuration but threw it out. I am very happy
> now, sticking with Python

I'm happy that you're happy!

> In the end, I would have to recommend using a pure Ocaml
> solution.. because if your Ocaml code embeds native Lua,
> then you need your clients who are 'building from source'
> to have a C compiler to compile Lua.. and you need to
> provide build scripts to do it .. and .. its all a huge
> mess.

Perhaps you need to carefully read every line of my reply to David Mentre,
or, even better, download Lua-ML and give it a try. There is a reason it is
called Lua-ML (hint: it is entirely written in OCaml, no C/C++/Java/Felix!).

> Ocaml is much easier to build .. except that people
> insist on using 'findlib' and INRIA insists on NOT
> supplying it as part of Ocaml. It's an old problem.
> Sigh. GODI and Debian solve these problems entirely .. but they're
> very heavy weight.

I agree that the packaging issue is a big problem.

One of the reasons I prefer OCaml to it's competitors is that it works well
with a Unix style tool chain. If I used Windows, I might feel differently.

-- Brian


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-28 16:37       ` skaller
  2005-09-28 16:55         ` brogoff
@ 2005-09-29  7:24         ` Christian Lindig
  1 sibling, 0 replies; 15+ messages in thread
From: Christian Lindig @ 2005-09-29  7:24 UTC (permalink / raw)
  To: Caml List


Am 28.09.2005 um 18:37 schrieb skaller:

> Why? Is there problem with running noweb to extract the source?
> Or is there a problem editing noweb files?

In the case of Lua-ML you don't need Noweb to compile and use it. 
Lua-ML comes with Nofake, a Perl script that emulates Noweb to extract 
the source code.

I do recommend installing Noweb if you want to work on the Lua-ML 
source code, although you could work with Nofake alone.

If you are interested in a simpler application than Quick C-- that uses 
Lua-ML for configuration, take a look at Quest, my testing tool for C 
compilers:

	http://www.st.cs.uni-sb.de/~lindig/src/quest/index.html

The interesting bits are in lualink.nw.

-- Christian



^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Caml-list] Looking for a configuration file library
  2005-09-27 13:09 Looking for a configuration file library David MENTRE
  2005-09-27 13:23 ` [Caml-list] " Bruno De Fraine
  2005-09-27 17:02 ` brogoff
@ 2005-10-05 10:16 ` Richard Jones
  2 siblings, 0 replies; 15+ messages in thread
From: Richard Jones @ 2005-10-05 10:16 UTC (permalink / raw)
  To: David MENTRE; +Cc: caml-list

On Tue, Sep 27, 2005 at 03:09:18PM +0200, David MENTRE wrote:
> For easy configuration of my programs, I'm looking for some OCaml code
> to read and write a user configuration file.
[...]

This is probably not directly relevant to you, but we have had a lot
of success using comma-separated values (CSV) files for configuration.
Our "configuration" requirements consist mainly of long lists of
advertising campaigns and targets, so obviously CSV files make a bit
of sense here.  Our campaign manager edits the CSV files using Excel.
The CSV files translate into in-memory 'string list list' structures
and are thus simple to iterate over and generate.

http://merjis.com/developers/csv

Rich.

-- 
Richard Jones, CTO Merjis Ltd.
Merjis - web marketing and technology - http://merjis.com
Team Notepad - intranets and extranets for business - http://team-notepad.com


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2005-10-05  9:59 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-09-27 13:09 Looking for a configuration file library David MENTRE
2005-09-27 13:23 ` [Caml-list] " Bruno De Fraine
2005-09-27 16:26   ` Samuel Mimram
2005-09-28  6:59     ` David MENTRE
2005-09-28  7:06       ` Maxence Guesdon
2005-09-27 17:02 ` brogoff
2005-09-28  7:06   ` David MENTRE
2005-09-28 15:15     ` brogoff
2005-09-28 16:37       ` skaller
2005-09-28 16:55         ` brogoff
2005-09-29  3:33           ` skaller
2005-09-29  4:02             ` brogoff
2005-09-29  7:24         ` Christian Lindig
2005-09-28 15:40     ` skaller
2005-10-05 10:16 ` Richard Jones

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).