Jonathan, thank you for your feedback.

Jonathan Leffler wrote [to just the ttm list]:
Sounds reasonable to me...there are languages that do that already - Pascal and family.

    var
         x : int;
         y, z : float;

For declared-name/data-type pairs I had already been doing this too; eg:

  var x : Int
  var y : Float
  var z : Float

... and I have no intention of changing the ordering there.

I don't see an explicit side-by-side comparison of the 'current' and 'suggested' notations. I think that would have been helpful.

I'll repeat the relevant portions from my first message, with minor changes, demonstrating the flip of a material-kind/declared-name flip.

The current way:

  function cube (Int <-- topic : Int) {
    topic exp 3
  }

A possible new way:

  cube ::= function (Int <-- topic : Int) {
    topic exp 3
  }

or:

  let cube ::= function (Int <-- topic : Int) {
    topic exp 3
  }

While the exact syntax can possibly change, I would be happy with the new syntax given above as-is. Note that the last 2 are essentially the same format, such that "let" is an optional keyword meant to aid readability but there is no ambiguity without it.

And of course, Muldis D lets you format your whitespace however you want.

Note also that the newer format might resemble an EBNF grammar token somewhat, like my existing uses of ::= ... such as this is intentional, the idea that this being a format for declaring things that has precedents.

Thank you in advance for any further feedback.

-- Darren Duncan
_______________________________________________
muldis-db-users mailing list
muldis-db-users@mm.darrenduncan.net
http://mm.darrenduncan.net/mailman/listinfo/muldis-db-users

Reply via email to