LINUX.ORG.RU

История изменений

Исправление liksys, (текущая версия) :

в любом случае это побочным эффектом не считается

Очень удобно.

но я думаю, такое допустимо

Ну вот, пошли расхождения в толковании «не убий». Вроде и низя, но для крестовых походов сделаем исключение. Это отлично демонстрирует, что столяровское разделение искусственно и не имеет ничего общего с реальностью.

Можно возвращать значение через var-параметр

Это увеличивает кашу в голове и начинают появляться вопросы, а нахрена оно вообще всё надо было, если в итоге всё сводится к возвращаемым значениям разного рода.

Именно по этой причине ни один современный императивный язык не имеет деления на процедуры и функции: потому что граница расплывчата, и в реальности проще сделать одну удобную конструкцию и для процедур, и для функций. В этом плане питон даже лучше: ты можешь вернуть несколько значений в виде результатов вычислений.

Разница есть как раз таки в голове… сразу видно, где вызов подпрограммы ради эффекта (не побочного, а именно основного), а где ради значения.

Поэтому проще учить нормальные языки типа питона и си, в которых нет искусственного разделения, и просто объяснить, что не надо менять входные данные без необходимости. А в случае си просто обмажься const-модификаторами, и сразу станет ясно, есть тут локальный (!) побочный эффект, или нет.

А почему бы и нет? Если давать для начала Pascal и объяснить различие между функциями и процедурами, то автоматически всё будет.

Нет смысла и количество учебных часов ограничено. Перечитывай мой исходный пост в этом треде, там всё доступно расписано.

Исправление liksys, :

в любом случае это побочным эффектом не считается

Очень удобно.

но я думаю, такое допустимо

Ну вот, пошли расхождения в толковании «не убий». Вроде и низя, но для крестовых походов сделаем исключение. Это отлично демонстрирует, что столяровское разделение искусственно и не имеет ничего общего в реальности.

Можно возвращать значение через var-параметр

Это увеличивает кашу в голове и начинают появляться вопросы, а нахрена оно вообще всё надо было, если в итоге всё сводится к возвращаемым значениям разного рода.

Именно по этой причине ни один современный императивный язык не имеет деления на процедуры и функции: потому что граница расплывчата, и в реальности проще сделать одну удобную конструкцию и для процедур, и для функций. В этом плане питон даже лучше: ты можешь вернуть несколько значений в виде результатов вычислений.

Разница есть как раз таки в голове… сразу видно, где вызов подпрограммы ради эффекта (не побочного, а именно основного), а где ради значения.

Поэтому проще учить нормальные языки типа питона и си, в которых нет искусственного разделения, и просто объяснить, что не надо менять входные данные без необходимости. А в случае си просто обмажься const-модификаторами, и сразу станет ясно, есть тут локальный (!) побочный эффект, или нет.

А почему бы и нет? Если давать для начала Pascal и объяснить различие между функциями и процедурами, то автоматически всё будет.

Нет смысла и количество учебных часов ограничено. Перечитывай мой исходный пост в этом треде, там всё доступно расписано.

Исправление liksys, :

в любом случае это побочным эффектом не считается

Очень удобно.

но я думаю, такое допустимо

Ну вот, пошли расхождения в толковании «не убий». Вроде и низя, но для крестовых походов сделаем исключение. Это отлично демонстрирует, что столяровское разделение искусственно и не имеет ничего общего в реальности.

Можно возвращать значение через var-параметр

Это увеличивает кашу в голове и начинают появляться вопросы, а нахрена оно вообще всё надо было, если в итоге всё сводится к возвращаемым значениям разного рода.

Именно по этой причине ни один современный императивный язык, в том числе сделанный академистами, не имеет деления на процедуры и функции: потому что граница расплывчата, и в реальности проще сделать одну удобную конструкцию и для процедур, и для функций. В этом плане питон даже лучше: ты можешь вернуть несколько значений в виде результатов вычислений.

Разница есть как раз таки в голове… сразу видно, где вызов подпрограммы ради эффекта (не побочного, а именно основного), а где ради значения.

Поэтому проще учить нормальные языки типа питона и си, в которых нет искусственного разделения, и просто объяснить, что не надо менять входные данные без необходимости. А в случае си просто обмажься const-модификаторами, и сразу станет ясно, есть тут локальный (!) побочный эффект, или нет.

А почему бы и нет? Если давать для начала Pascal и объяснить различие между функциями и процедурами, то автоматически всё будет.

Нет смысла и количество учебных часов ограничено. Перечитывай мой исходный пост в этом треде, там всё доступно расписано.

Исходная версия liksys, :

в любом случае это побочным эффектом не считается

Очень удобно.

но я думаю, такое допустимо

Ну вот, пошли расхождения в толковании «не убий». Вроде и низя, но для крестовых походов сделаем исключение. Это отлично демонстрируею, что столяровское разделение искусственно и не имеет ничего общего в реальности.

Можно возвращать значение через var-параметр

Это увеличивает кашу в голове и начинают появляться вопросы, а нахрена оно вообще всё надо было, если в итоге всё сводится к возвращаемым значениям разного рода.

Именно по этой причине ни один современный язык, в том числе сделанный академистами, не имеет деления на процедуры и функции: потому что граница расплывчата, и в реальности проще сделать одну удобную конструкцию и для процедур, и для функций. В этом плане питон даже лучше: ты можешь вернуть несколько значений в виде результатов вычислений.

Разница есть как раз таки в голове… сразу видно, где вызов подпрограммы ради эффекта (не побочного, а именно основного), а где ради значения.

Поэтому проще учить нормальные языки типа питона и си, в которых нет искусственного разделения, и просто объяснить, что не надо менять входные данные без необходимости. А в случае си просто обмажься const-модификаторами, и сразу станет ясно, есть тут локальный (!) побочный эффект, или нет.

А почему бы и нет? Если давать для начала Pascal и объяснить различие между функциями и процедурами, то автоматически всё будет.

Нет смысла и количество учебных часов ограничено. Перечитывай мой исходный пост в этом треде, там всё доступно расписано.