• avatar VBI
  • 1
отличная глава
Удивительно универсальная глава
  • avatar VBI
  • 0
мне нравится.
именно вариант с: нравится.
Дело не только в скорости, а ещё и в том, что у тебя строка делает ЧТО-ТО ОДНО. Это как одна команда в каком-то языке чуть посложнее. Считай, ты макрос ввёл.

Потому что мы все имеем опыта программирования на более высоком уровне, выделение строки для каждой команды слишком «разбавляет» код. Да, я тоже терпеть не могу вереницы присваиваний
ld hl,#4000,de,#4001,bc,6911,(hl),l:ldir

Но пора перестать мешать в кучу код в строку (нормальная идея) от синтаксиса шторма — это не одно и то же.

Голова не обязательно должна кружиться от кода в строчку:
ld hl,#4000 : ld de,#4001 : ld bc,6911 : ld (hl),l : ldir

Разумеется, любую, даже самую хорошую идею можно довести до абсурда. Но что это доказывает? Правильно, ничего.
нет, ну это край, конечно(:


dec bc:ld a,b:or c:jp nz,m1

вполне логическая связка, годная для быстроты ввода.
ld a,h, b,l,i,a,d,e,b,a,n,a,v,r,o,t: or a: jr z,milf

Если это прочитать быстро то можно вызвать демона :) Чем продолжительней строка тем круче демон.
  • avatar nyuk
  • 3
Дядечка очень в тему топика получился. Зажог и смотрит.

я пишу в sjasm код, получается .sna, для отладки ставится jr $, далее ставятся бряки сами.
  • avatar PheeL
  • 1
Я, кстати, в С очень часто обработку ошибок в одну строчку пишу, чтобы простыни снизу равной кол-ву основного кода не было когда с вложением проверки делаешь. Метку «error» использую в качестве аналога деструктора, если до этой проверки были выделены ресурсы (инициализированы драйвера, аллоцирована память (да, я пользуюсь динамическим выделением памяти)).
Типа:
...
if (OS_NULL == queue_hd) { s = S_INVALID_QUEUE; OS_LOG_S(L_WARNING, s); goto error; }
...
error:
    //free allocated resources
    return s;
  • avatar PheeL
  • 2
А ведь ещё можно монитор вертикально повернуть! :) Ну это у тех моделей, где подставка позволяет. Я в таком режиме документацию обычно читаю в *.pdf
Ну просто сидя в каком-нибудь Intellisense редакторе, ты всерьёз будешь мне говорить что может возникнуть проблема от того что у кого-то 5 команд в строке? Ну да, чуть другой интерфейс понадобится, но несерьёзно это как аргумент выдавать.

Напомню, в C разрешено больше одной команды в строке. И мы все до сих пор живы.
  • avatar Raider
  • 1


:)))

(шутка, shinilb0g!)
  • avatar Raider
  • 3
Я скорее о том что существуют два вектора — люди в сторону усложнения, и люди в сторону упрощения.
(Эйнштейн) «Все должно быть изложено так просто, как только возможно, но не проще.»

С этим тесно связан закон достаточного основания. Любая сложность должна быть весомо аргументирована. Но это уже из области построения систем, как таковых.
  • avatar Raider
  • 0
Написать «сочиняешь что попало» хорошая такая аргументация, ага. Перейдем от сущностей на людей ;)
Всё должно быть устроено ровно настолько сложно, насколько нужно! :)

Это не всегда означает просто, увы.
  • avatar Raider
  • 1
А вот с точки зрения рефакторинга — это хорошая, блестящая аргументация, которая бьет все остальное.

я кажется делал так: вводил две метки, одну на строке с командой, чтобы нельзя было ничего вписать между меткой, а вторую ставил вне строки. Т.е.
trb_play
track_pos:  ld hl,0

Соответственно, первая метка это имя функции для call/jump, вторая чисто для данных. Да, ее нельзя использовать «где-то там» без контроля, и это плохо, error-prone.
Плохо уже помню, но кажется конструкций вида label equ $+1 в некоторый момент просто не было… Сейчас лучше использовать label equ $+1, еще и потому на других машинах встретится именно это.
Выходит, у разных людей разная практика…
Ну серьёзно, просто сочиняешь что попало уже.
  • avatar Raider
  • 0
Не вполне размышлизмы, с моей стороны это напротив, хардкорная практика, практика, практика.
Сейчас конкретно я сижу перед браузером :) А вообще, бывает, работаю с кодом открывая три и даже четыре окна параллельно рядом друг с другом. Почему окна открываются слева-направо, четырьмя столбцами окон? Почему там код в столбец? Почему они не открываются друг-под-другом? (ну ок, два окна еще можно). И почему я матюгаюсь, скроллируя окошко влево-вправо, когда какой-то деятель нафигачил длинных строк? :)

Всерьез убеждаю тебя освоить редактирование с параллельным открытием нескольких окошек рядом… Дико удобно, да и если кто-нибудь видит, немедленно оценит твою крутизну :))))