Hi nicolas I saw the following: Print all Array either as literal form #( ... ) or brace form { ... } and abandon the default form anArray( ... ) Now I recall why I introduced anArray (....) for printing. This is for case where the { . } does not work. Imagine that you have an object that does not have a printing version The key point of the design of self evaluating was that you could select an expression ie {10@20 . 30@20} and print it and get the same object this way we could manipulate a lot of objects much better in an inspector or debugger. So if we { anObjectWithAWrongForm . 10@20} it defeats the purpose of self evaluating. since there are situations like that anyway this is why we decided to have anArray( ....) to really indicate that this could not be self evaluating. The form #() and {} on the other sides where always something that we could manipulate. so I had the impression that fixing some classes would be nicer than removing the distinction. Stef