From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JwIEF-0002d5-Ft for qemu-devel@nongnu.org; Wed, 14 May 2008 10:45:15 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JwIEE-0002cS-QY for qemu-devel@nongnu.org; Wed, 14 May 2008 10:45:15 -0400 Received: from [199.232.76.173] (port=32817 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JwIEE-0002cE-Gd for qemu-devel@nongnu.org; Wed, 14 May 2008 10:45:14 -0400 Received: from yw-out-1718.google.com ([74.125.46.155]:1619) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JwIEE-0005EN-5x for qemu-devel@nongnu.org; Wed, 14 May 2008 10:45:14 -0400 Received: by yw-out-1718.google.com with SMTP id 6so1908326ywa.82 for ; Wed, 14 May 2008 07:45:02 -0700 (PDT) Message-ID: <90eb1dc70805140745t61c01ee6w1d9478b02bce3e03@mail.gmail.com> Date: Wed, 14 May 2008 09:45:02 -0500 From: "Javier Guerra" Subject: Re: [kvm-devel] [Qemu-devel] Re: [PATCH] Add support for a configuration file In-Reply-To: <200805141526.34293.paul@codesourcery.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <1210713545-11916-1-git-send-email-aliguori@us.ibm.com> <482ABF6E.6090100@qumranet.com> <482ADA80.3000309@bellard.org> <200805141526.34293.paul@codesourcery.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paul Brook Cc: kvm-devel@lists.sourceforge.net, qemu-devel@nongnu.org What about Lua? (http://www.lua.org) it started up as a configuration language, and evolved into a full programming language, while remaining _very_ light (less than 200K with all libraries), and wonderfully easy to embed into C programs. it lets you write things like: drives = { hda = {if='scsi', file='hda.img'}, hdb = {if='ide', file='hdb.img'}, } mem = 512*MB or, equivalently: drives={} drives.hda={} drives.hda.if='scsi' drives.hda.file='hda.img' drives.hdb={} drives.hdb.if='ide' drives.hdb.file='hdb.img' mem=512*MB or, if you want: drive {if='scsi', file='hda.img'} drive {if='ide', file='hdb.img'} mem(512*MB) or even: for img in lfs.dir("*.img") do drive{if='scsi', file=img} end -- Javier