Вообще говоря, так можно, да... Правда после этого пропадает вообще вся 
лаконичность записи и тогда уж лучше перехватывать те 3 опа, о которых было 
сказано выше.
То есть такая запись выглядит еще хуже, чем определение хеша и навешивание 
магии "потом", ИМХО.


>Вторник, 21 июня 2016, 10:22 +03:00 от Гришаев Анатолий <[email protected]>:
>
>1) Что типа:
>      a) $var = deep_hash_magic( q => $w, ... )
>      b) $var = deep_array_magic( $w0, $w1, ... )
>      c) Если нужны многоуровневые хэши, то включаем рекурсию
>             dhm( q=> dhm(r1=> $w1, q2=>  $w2) )
>      d) можно делать перехват синтаксического вызова процедуры и 
>проанализировать аргументы во время компиляции этого вызова, заменить их на 
>свои и 
>          наблюдать счастье, если конечно есть "железные" яйца.
>
>                  
>20 июня 2016 г., 17:52 пользователь  [email protected] < [email protected] > 
>написал:
>>1) А запись для Хеша можно показать?...
>>$var = {
>>  q => 'w'
>>}; 
>>magic($var->{q});
>>
>>2) Это не то ))
>>
>>3) Сахар. Синтаксический сахар. Исключительно чтобы можно писать
>>$var = magic(...);
>>
>>
>>>Понедельник, 20 июня 2016, 17:35 +03:00 от Гришаев Анатолий < 
>>>[email protected] >:
>>>
>>>
>>>Дико не понятно, что собственно хочется:
>>>
>>>Я иногда делаю так:
>>>1) magic( $var = 1)
>>>2) tie $var, tied($some_other_var)->clone()
>>>3) А зачем нам вообще магию копировать? 
>>>
>>>20 июня 2016 г., 15:52 пользователь Vansevich Evgeniy  < [email protected] > 
>>>написал:
>>>>Коль, а ты можешь рассказать про оригинальную постановку задачи? просто 
>>>>задача звучит так, что перехват опов будет проще чем любой другой путь)
>>>>
>>>>
>>>>
>>>>Отправлено с Mi Phone
>>>>" [email protected] " < [email protected] > | От: 20 июня 2016 г. 15:04 | 
>>>>Сообщение:
>>>>>Может кто уже реализовывал...
>>>>>
>>>>>Итак... Есть магия. PERL_MAGIC_ext У нее перебит svt_get. В текущей 
>>>>>реализации задается магия через
>>>>>$var = 1;
>>>>>magic($var);
>>>>>
>>>>>Это неудобно. Хочется так: $var = magic(); Но так не работает, так как 
>>>>>svt_get должна сделать sv_setsv на магическую переменную. И потом в 
>>>>>sassign ее скопируют без магии. Вернее не так... Если туда передать другую 
>>>>>магическую переменную, то на ней опять-таки позовется svt_get и будет 
>>>>>бесконечный цикл.
>>>>>
>>>>>Можно, конечно, перехватить sassign, anonhash, anonarray но кто знает - 
>>>>>какие еще опы надо перехватывать и это уже совсем из области черной магии.
>>>>>
>>>>>Может быть кто-то сталкивался с похожей задачей копирования магии?..
>>>>>
>>>>>
>>>>>-- 
>>>>>Nick unnoun
>>>>--
>>>>Moscow.pm mailing list
>>>>[email protected] |  http://moscow.pm.org
>>>>
>>>
>>>-- 
>>>Moscow.pm mailing list
>>>[email protected] |  http://moscow.pm.org
>>
>>
>>--
>>Moscow.pm mailing list
>>[email protected] |  http://moscow.pm.org
>>
>
>-- 
>Moscow.pm mailing list
>[email protected] |  http://moscow.pm.org

-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить