- 1
Псст. А где здесь говнокод "подопьём и разговариваем про всякое"? Я, признаться, совсем одичал за последние полгода.
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
Псст. А где здесь говнокод "подопьём и разговариваем про всякое"? Я, признаться, совсем одичал за последние полгода.
Нет бы как нормальные люди, на пхп писать
[@]
Нареки его «At&t»
Вообще в PHP можно дефайны делать, так что можно писать
Про вторую часть: нельзя. Это не сишный дефайн. У PHP нет препроцессора.
Во-первых, в PHP define записывает в константу текущее значение правой части. Т. е. если даже написать а потом изменить значение $x, то значение RBX не изменится.
Во-вторых, изменять значения констант нельзя. Т. е. mov в принципе нельзя реализовать (если не ковыряться в ядре PHP).
*****
Тем не менее, есть идея, как реализовать такой синтаксис: завести глобальный массив под регистры.
Далее вставить банальные определения:
И тогда реализация mov будет совсем простой:
Я и не думал их менять, подразумевал именно
> завести глобальный массив под регистры
Мы же передаём в mov имя регистра, имена mov не изменяет.
Из PHP эту ненужную фишку собираются убрать:
https://wiki.php.net/rfc/deprecate-bareword-strings
Сколько же говнокода придётся исправлять, если разработчики PHP наконец-то вытряхнут скелет из шкафа.
Батенька, говнокод никто даже не будет запускать на ваших модных "PHP 7"
А внутри функции аргументы можно проверять с помощью is_array.
Ещё можно задефайнить регистры как числовые константы. Тогда можно будет использовать синтаксис «база+смещение»:
Только надо задать значения побольше, чтобы суммы не пересекались.
Можно ли безопасно реализовать SIB (scale-index-base), я пока не думал. Тут и с постоянным смещением (вроде mov(RAX, [RBX+8])) можно налететь на неприятности.
А ты попробуй переопределить оператор сложения
http://pecl.php.net/package/operator
Но только для классов, а правая часть define поддерживает только скалярные типы и строки. Так что тогда придётся писать так:
А ты попробуй ещё и define использовать
Возможно, вы имели в виду «ax, bx»?
al, bl
а как ты провёл выходной, %username%?
1) дочку
2) жену, которая родила дочку
3) ПИЗДЕЦ ПИЗДЕЦ ПИЗДЕЦ
Вот, через без малого год, я пытаюсь вернуться. Аск ми, ну вот это всё.