Newbie questions about Pliant

Newbie questions about Pliant

Literal Arrays

Can I express or build arrays (and other data sets)
in a literal fashion?
Message posted by mujtaba on 2003/02/25 20:53:07
Can I express or build arrays (and other data sets) 
in a literal-like fashion? 

Can I for example do something like:

var Int m := 4 
var (Array Int ) array := (m,5,5,5) 
#Do comas have any real meaning?

instead of:
 var Int m := 4
 var (Array Int 4) array
 
 array:0 := m
 for (var Int i) 1 3
  array:i := 5

Message posted by hubert.tonneau on 2003/02/25 22:22:59
You just need to write a new Pliant meta defining the new way to constuct
an array through providing each element.

Pliant default syntax does not use ',' sign. You could use it for your home
made extensions.
Message posted by pom on 2003/02/27 09:50:43
Instead of a new construction, it might be preferable to extend '+=' to handle
multiple right argument. 
(See <a href="http://pliant.cx/pliant/browse/forum/pliant.patch/032YB3C/">Extension of +=</A> Patch forum message).

Your example would then write as:
module "/pom/extension.pli"
...
var Int m := 4 
var Array:Int array := new Array:Int # clear it (local)
array += m 5 5 5

Or

gvar Int m := 4 
(gvar Array:Int array) += m 5 5 5 # globals do not need to be cleared