parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

MoKo 07.11.2014 21:07

Боюсь красиво никак. Хотя можно например прятать internal_obj не в самом объекте, а где-нибудь еще, по ключу ^reflection:uid[$self]. :)

А вот если вы скажете в каком-нибудь сообществе пользователей типизированного языка про возможность через $caller обратиться к локальной переменной вызывающего метода - они вообще в обморок упадут. :)

Еще в парсере можно например так:

$myobj[^myclass::create[$myhash]
$.property1[value1]
^if($some_condition){ $.property2[value2] }
]

В общем у каждого языка свои особенности и сильные/слабые стороны, надо уметь пользоваться сильными сторонами и избегать слабых, а не буквально следовать какой-нибудь парадигме. Постоянная работа через @GET_DEFAULT сильно ударит по производительности, делать это только для изоляции - неправильно.