On 04/25/2012 01:25 AM, H. Hirzel wrote:
Göran
Thank you for this illustration.
http://goran.krampe.se/blog/Squeak/Tirade.rdoc
I understand that
1) the Tirade parser parses a subset of regular Smalltalk messages.
Exactly. It doesn't do binary messages. And of course, it doesn't do any
expressions.
2) the receiver is not given as it is assumed to be always the Tirade
parser object.
Right, but if you use the TiradeReader (which is a bit more
experimental) it maintains a stack of objects and will send the next
Tirade message to the object on the top of the stack. Then one can
register a set of "control messages" and those are always sent to the
object first on the stack - which is the TiradeReader itself.
As I said, this is an experiment on a generic mechanism for being able
to construct complex objects from a series of Tirade messages.
3) the Tirade parser acts like a builder for objects?
The parser actually only parses the Tirade messages, it doesn't try to
build anything. But your own subclass of it should implement these
messages and typically build something.
4) It solves problems JSON and STON do not.
I think this idea is very worth to pursue.
The elegancy of messaging is quite powerful and makes it easier to
construct a file format that is less fragile and has very little structure.
regards, Göran