tech-userlevel archive

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

Re: proplist

Adam Hoka <> writes:

> Disclaimer: no offense meant, but this is a classic bikeshed here.

No, it isn't. (Let's add fuel to this.)

> On Wed, 14 Apr 2010 14:47:26 -0400
> Matthew Mondor <> wrote:
>> '(:plist (:version "1.0" :encoding "UTF-8")
>>   (:dict (("CFBundleGetInfoString" "Heimdal @VERSION@")
>>        ("CFBundleName" "Heimdal")
>>        ("CFBundleIdentifier" "org.h5l.heimdal.pkg")
>>        ("CFBundleShortVersionString" "1.0")
>>        ("IFPkgFlagAllowBackRev" t)
>>        ("IFPkgFlagAuthorizationAction" "RootAuthorization")
>>        ("IFPkgFlagDefaultLocation" "/")
>>        ("IFPkgFlagFollowLinks" t)
>>        ("IFPkgFlagIsRequired" t)
>>        ("IFPkgFlagOverwritePermissions" t)
>>        ("IFPkgFlagRelocatable" nil)
>>        ("IFPkgFlagRestartAction" "NoRestart")
>>        ("IFPkgFlagRootVolumeOnly" t)
>>        ("IFPkgFlagUpdateInstalledLanguages" nil)
>>        ("IFPkgFormatVersion" 0.10000000149011612))))
> Wow, this is actually uglier than XML.

No, it isn't. Contrary to XML it doesn't require closing
<SomewhatLongAndUgly/> tags, thus saving your eyesight.

In addition you don't need special tools to test whether the expression
is syntactically valid (it only needs to check that parentheses are
balanced, even vi-alikes support this operation), and it doesn't need
writing any parser because it is ready to process by standard reader.

>> Such a format is easily readable and parsable by a few lines of CL
>> code.  In this example, keyword symbols are used to avoid package
>> issues and aid in identifying sections, plist's "arguments" are a CL
>> plist, :dict are using a CL alist (yet identified with :dict to easily
>> distinguish it from other lists), bools are booleans, integers
>> integers, real floats, and arrays litteral arrays.
> FYI one one is using lisp or obscure languages like it, so
> why support an obscure data format nobody is using?
> Im pretty sure that we could export to brainfuck too, but why would we?
> People use XML, JSON and sometimes YAML.

First of all, Lisp isn't obscure language, it is no more obscure than
Java or ECMAScript, and it is certainly less obscure than Ruby or Perl.

If you are serious in your observation on formats in use, then we should
stop talking about Lua in base and think about ECMAScript.

But it is definitly better to get Lisp back.


Home | Main Index | Thread Index | Old Index