I threw together a parser for a simple data description language in BlitzMax.  The syntax is something like that in Python or Lua, but not quite. Whitespace is always insignificant and there are no fatal syntax errors: the whole file is always parsed, and non-conforming markup is ignored (silently by default).

Sample structures:
num = 1.234e-56 str = 'Hello "World"' list = [1,2,3] map = {1=2, 3=4} array = (0,1,2)

Download: otus.dataparser.zip

Install: Extract to BlitzMax/mod, build modules, rebuild docs.