Вот тут, те кто знает математику со школы и будут чесать репу: как так а+ будет равно b[i++].... Потом, новичек прознает, что "=" имеет исконно сравнивающую функцию только в условиях, а в остальных случаях это оператор присваивания. Тогда остается непонятным следующее: как b[i++] (с чем более-менее понятно) может быть записано в а+? И только спустя годы тренировок написания на С и тонны перечитанных манов дадут новичку понять, что это значит. Но тогда, он уже будет далеко не новичек.....Shaos wrote:P.S. То что я привел в качестве примера выше на сях пишется так: a=b[i++];a+=b[i++];
Pascal
Moderator: Shaos
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
-
- Senior
- Posts: 185
- Joined: 07 Aug 2006 10:18
Угу. А новичёк в паскале будет думать как это в выражении a:=2, можно положить 2 на диск a: [:)]HardWareMan wrote:Вот тут, те кто знает математику со школы и будут чесать репу: как так а+ будет равно b[i++].... Потом, новичек прознает, что "=" имеет исконно сравнивающую функцию только в условиях, а в остальных случаях это оператор присваивания.Shaos wrote:P.S. То что я привел в качестве примера выше на сях пишется так: a=b[i++];a+=b[i++];
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
БУЯ. В паскале сразу определяется: "=" - равно и ":=" - присвоение. Так что новичек будет думать как же сделать дискетку флешкой и писать код типо a:=flash. %)bar wrote:Угу. А новичёк в паскале будет думать как это в выражении a:=2, можно положить 2 на диск a: [:)]HardWareMan wrote:Вот тут, те кто знает математику со школы и будут чесать репу: как так а+ будет равно b[i++].... Потом, новичек прознает, что "=" имеет исконно сравнивающую функцию только в условиях, а в остальных случаях это оператор присваивания.Shaos wrote:P.S. То что я привел в качестве примера выше на сях пишется так: a=b[i++];a+=b[i++];
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
в условиях это называется ==HardWareMan wrote:Вот тут, те кто знает математику со школы и будут чесать репу: как так а+ будет равно b[i++].... Потом, новичек прознает, что "=" имеет исконно сравнивающую функцию только в условиях, а в остальных случаях это оператор присваивания...Shaos wrote:P.S. То что я привел в качестве примера выше на сях пишется так: a=b[i++];a+=b[i++];

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
ну и в сях тоже - "==" это равно, а "=" это присваиваниеHardWareMan wrote:БУЯ. В паскале сразу определяется: "=" - равно и ":=" - присвоение. Так что новичек будет думать как же сделать дискетку флешкой и писать код типо a:=flash. %)bar wrote:Угу. А новичёк в паскале будет думать как это в выражении a:=2, можно положить 2 на диск a: [:)]HardWareMan wrote:Вот тут, те кто знает математику со школы и будут чесать репу: как так а+ будет равно b[i++].... Потом, новичек прознает, что "=" имеет исконно сравнивающую функцию только в условиях, а в остальных случаях это оператор присваивания.Shaos wrote:P.S. То что я привел в качестве примера выше на сях пишется так: a=b[i++];a+=b[i++];

P.S. то что меня бесило в паскале, когда в начале 90-х нас им мучили на первых курсах университета, так это полная нелогичность в расстановке ; после разных конструкций - типа надо было зазубривать после каких сочетаний if then else оно положено, а после каких - нет, ну а begin-ы/end-ы это просто песня - столько времени на это угрохано было

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
Чего тут нелогичного? ";" не ставится перед ELSE и все. Причем это может быть только одна команда между THEN и ELSE, либо это должен быть END. Далее, касаемо BEGIN/END - а разве в С отменили {}? Такая же нелогичность, только писать меньше.Shaos wrote:P.S. то что меня бесило в паскале, когда в начале 90-х нас им мучили на первых курсах университета, так это полная нелогичность в расстановке ; после разных конструкций - типа надо было зазубривать после каких сочетаний if then else оно положено, а после каких - нет, ну а begin-ы/end-ы это просто песня - столько времени на это угрохано было
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
{} против BEGINEND - си в ЧЕТЫРЕ раза компактнееHardWareMan wrote:Чего тут нелогичного? ";" не ставится перед ELSE и все. Причем это может быть только одна команда между THEN и ELSE, либо это должен быть END. Далее, касаемо BEGIN/END - а разве в С отменили {}? Такая же нелогичность, только писать меньше.Shaos wrote:P.S. то что меня бесило в паскале, когда в начале 90-х нас им мучили на первых курсах университета, так это полная нелогичность в расстановке ; после разных конструкций - типа надо было зазубривать после каких сочетаний if then else оно положено, а после каких - нет, ну а begin-ы/end-ы это просто песня - столько времени на это угрохано было

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
А я и говорю - С язык для ЛЕНИВЫХ. Все сокращают до 1 буквы, а потом ломай голову, как оно работает (когда изучаешь чужие исходники).Shaos wrote:{} против BEGINEND - си в ЧЕТЫРЕ раза компактнееHardWareMan wrote:Чего тут нелогичного? ";" не ставится перед ELSE и все. Причем это может быть только одна команда между THEN и ELSE, либо это должен быть END. Далее, касаемо BEGIN/END - а разве в С отменили {}? Такая же нелогичность, только писать меньше.Shaos wrote:P.S. то что меня бесило в паскале, когда в начале 90-х нас им мучили на первых курсах университета, так это полная нелогичность в расстановке ; после разных конструкций - типа надо было зазубривать после каких сочетаний if then else оно положено, а после каких - нет, ну а begin-ы/end-ы это просто песня - столько времени на это угрохано было
-
- Retired
- Posts: 1474
- Joined: 03 Aug 2003 22:37
- Location: Moscow
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
Это крайнесть. С другой стороны я хорошо знаю асм, но это мне не помогало хорошо разобраться в исходниках, которые написаны другим человеком, особенно если он не приучен к порядку в исходниках, не приучен комментировать (хъотябы не каждую команду а блоки), не приучен структуризировать и пишет сплошняком. В таком тексте даже мега-проггер, папа языка сломает голову. Не так ли? Так вот, ИМХО пропустить при разборе исходника { или } легче, чем BEGIN или END, потому как 1 символ быстрее выпадет с поля зрения чем слово. С другой стороны, есть куча прог и скриптов, тематической и структурной подсветки, что конечно поможет.Mac Buster wrote:Если ты не знаешь языка, то голову ломать будешь при чтении любых исходников.
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
если для чтения текста программы на языке нужна тулза с подсветками, автоматическим выравниванием, схлопыванием-расхлопыванием и т.д. - то это как бы уже и не язык программирования получается, ибо на настоящем языке программирования можно писать в любом текстовом редактореHardWareMan wrote:Это крайнесть. С другой стороны я хорошо знаю асм, но это мне не помогало хорошо разобраться в исходниках, которые написаны другим человеком, особенно если он не приучен к порядку в исходниках, не приучен комментировать (хъотябы не каждую команду а блоки), не приучен структуризировать и пишет сплошняком. В таком тексте даже мега-проггер, папа языка сломает голову. Не так ли? Так вот, ИМХО пропустить при разборе исходника { или } легче, чем BEGIN или END, потому как 1 символ быстрее выпадет с поля зрения чем слово. С другой стороны, есть куча прог и скриптов, тематической и структурной подсветки, что конечно поможет.Mac Buster wrote:Если ты не знаешь языка, то голову ломать будешь при чтении любых исходников.

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Retired
- Posts: 1474
- Joined: 03 Aug 2003 22:37
- Location: Moscow
Опять же, если ты не знаешь языка и не понимаешь что должно быть сделано в результате, то тебе никакое форматирование не поможет. Я сейчас работаю с людьми, которые читают, понимают и правят ошибки в тексте, написанном на неизвестном им языке (будь то С, С++, Objective C, F#, Рефал, Пролог или Лисп) и для малоизвестной или вовсе неизвестной архитектуры. Причем всё это требует не более часа.HardWareMan wrote:В таком тексте даже мега-проггер, папа языка сломает голову. Не так ли?
Extreme Entertainment
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
Смысл такой "правки", если они не знают что делают?Mac Buster wrote:Опять же, если ты не знаешь языка и не понимаешь что должно быть сделано в результате, то тебе никакое форматирование не поможет. Я сейчас работаю с людьми, которые читают, понимают и правят ошибки в тексте, написанном на неизвестном им языке (будь то С, С++, Objective C, F#, Рефал, Пролог или Лисп) и для малоизвестной или вовсе неизвестной архитектуры. Причем всё это требует не более часа.HardWareMan wrote:В таком тексте даже мега-проггер, папа языка сломает голову. Не так ли?
-
- Maniac
- Posts: 269
- Joined: 05 Oct 2006 04:45
- Location: Moscow
Такое возможно только в очень хорошо структурированном коде (для понимания которого достаточно уметь читать). Если код функций сплошь и рядом, к примеру, заканчивается так:Mac Buster wrote:Опять же, если ты не знаешь языка и не понимаешь что должно быть сделано в результате, то тебе никакое форматирование не поможет. Я сейчас работаю с людьми, которые читают, понимают и правят ошибки в тексте, написанном на неизвестном им языке (будь то С, С++, Objective C, F#, Рефал, Пролог или Лисп) и для малоизвестной или вовсе неизвестной архитектуры. Причем всё это требует не более часа.HardWareMan wrote:В таком тексте даже мега-проггер, папа языка сломает голову. Не так ли?
Code: Select all
...........................................
}
}
}
}
}
}
}
}
}
}
}
}
Всем добра!
-
- Retired
- Posts: 1474
- Joined: 03 Aug 2003 22:37
- Location: Moscow