The ## syntax that some Smalltalks have (Smalltalk/X, forexample, which calls it a Dolphin extension) is relatedto Common Lisp's���� #.e���������� the result of evaluating e at *read* time,���������������������� taken as a literal���� #,e���������� the result of evaluating e at *load* time,���������������������� taken as a literal.This reminds us there are several times that a ## formcould be evaluated:��- in the parser, when a method is parsed (before code���� generation)��- when code is generated��- when code is generated AND whenever the image is���� restored��- when the value is first needed (I'd prefer this)��- when the value is first needed in a thread (that���� is, each thread that encounters it will evaluate���� it just once, so each thread may see a different���� value).One continuing annoyance in Smalltalk is that I cannotput a Fraction, a Date, a Time, or a DateAndTime in aliteral.�� It would be nice to have #1969-07-20 or #1/2or #16:40:32 as literals and they contain no expressionsthat could result in any confusion about when they areevaluated and cannot be changed any more than a characterliteral can.Curly brace syntax {e1. ... en} is an expression form,not a literal form.�� Similar forms for sets of severalkinds and dictionaries of several kinds are supportedin my Smalltalk, and they are indeed useful, but theyare especially useful because they are *not* literalsbut create new values every time.On 28 April 2018 at 16:13, lb <liangbing64@126.com> wrote:Hi,I think the question is��How automaticly create literal's objects , not initialize.e.g'aString'#aSymbol{ anArray}#[]............Cheers�� Liang