The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Релиз языка программирования Perl 5.34.0, opennews (??), 21-Май-21, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


48. "Релиз языка программирования Perl 5.34.0"  +1 +/
Сообщение от Anonymoustus (ok), 21-Май-21, 15:02 
Зачем тебе ООП в скриптах на сотню строк, анон? Выучи уже процедурную декомпозицию и наслаждайся жизнью. Перл для этого идеален.

https://studopedia.su/12_116675_ponyatie-protsedurnoy-i-stru...

Ответить | Правка | К родителю #33 | Наверх | Cообщить модератору

57. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Аноним (32), 21-Май-21, 15:37 
> Зачем тебе ООП в скриптах на сотню строк, анон? Выучи уже процедурную
> декомпозицию и наслаждайся жизнью. Перл для этого идеален.

У меня хелловорды на питоне в 10000 строк (не считая зависимости, банально накидать решить задачу за вечер). Без реюза это всё легко разрастётся на 1000000 строк и без ООП с таким количеством переменных и структур совершенно не ясно кто на ком стоял и кто где должен видеть что. Если процессов несколько, то всё может быть ещё интереснее.

Ответить | Правка | Наверх | Cообщить модератору

59. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Anonymoustus (ok), 21-Май-21, 15:49 
>> Зачем тебе ООП в скриптах на сотню строк, анон? Выучи уже процедурную
>> декомпозицию и наслаждайся жизнью. Перл для этого идеален.
> У меня хелловорды на питоне в 10000 строк (не считая зависимости, банально
> накидать решить задачу за вечер). Без реюза это всё легко разрастётся
> на 1000000 строк и без ООП с таким количеством переменных и
> структур совершенно не ясно кто на ком стоял и кто где
> должен видеть что. Если процессов несколько, то всё может быть ещё
> интереснее.

Ничего себе!

Ответить | Правка | Наверх | Cообщить модератору

60. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Аноним (32), 21-Май-21, 15:52 
Ну и потом, это удобно когда я могу изменить поведение какого-нибудь requests или pyyaml. Как это сделать без ООП, форкать весь код себе? Потом его сопровождать?
Ответить | Правка | Наверх | Cообщить модератору

87. "Релиз языка программирования Perl 5.34.0"  +2 +/
Сообщение от bi brother (?), 21-Май-21, 17:46 
Эталонный ооп программист. Думал ты существуешь только в анекдотах ))
Ответить | Правка | Наверх | Cообщить модератору

92. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Аноним (32), 21-Май-21, 18:02 
Любой кодер с задачами чуть сложнее самого простого сразу сталкивается с недостаточными возможностями готовых батареек. Когда у тебя скоп это инстанс, можно удобно скрыть всё лишнее за пределами этого инстанса. Рядом у тебя может висеть другая копия того же кода (а значит, изменения/исправления в нём, влияют на всех пользователей) с другими параметрами или переопределениями для не удовлетворяющих частей.
Ответить | Правка | Наверх | Cообщить модератору

95. "Релиз языка программирования Perl 5.34.0"  –1 +/
Сообщение от inferrna (ok), 21-Май-21, 18:46 
Вот как у нас на расте: заводишь отдельный трейт и уже его имплементишь для внешней структуры. И сразу видно, что откуда растёт.
Ответить | Правка | К родителю #60 | Наверх | Cообщить модератору

105. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Псевдоним (??), 21-Май-21, 21:39 
Так удали 990 пустых строк и комментариев с войной и миром!
Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

109. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Аноним (32), 21-Май-21, 22:14 
Смешно(нет), но нет, остаётся ещё 9010 строк. Комментарии почти не занимают отдельных строк, код на питоне самодокументирован.
Ответить | Правка | Наверх | Cообщить модератору

128. "Релиз языка программирования Perl 5.34.0"  +2 +/
Сообщение от Анончик (?), 22-Май-21, 07:18 
Это вам первые полгода кажется что у вас код самодокументирован, а потом документация волшебным образом выветривается.
Ответить | Правка | Наверх | Cообщить модератору

147. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Anonymoustus (ok), 22-Май-21, 11:32 
На Пихтоне (в отличие, скажем, от Сишечки) можно легко писать так, что будет понятно и без комментариев. Для этого всего-то надо не лениться и давать всему осмысленные имена, в количестве знаков никто вас не ограничивает.
Ответить | Правка | Наверх | Cообщить модератору

172. "Релиз языка программирования Perl 5.34.0"  –1 +/
Сообщение от Анончик (?), 22-Май-21, 20:40 
> На Пихтоне (в отличие, скажем, от Сишечки) можно легко писать так, что
> будет понятно и без комментариев. Для этого всего-то надо не лениться
> и давать всему осмысленные имена, в количестве знаков никто вас не
> ограничивает.

На сишечке вы не можете давать осмысленные имена, я правильно понял?
Как ведите сишечку так сразу отшибает часть мозга, она занята вычислением границ массивов )))

Ответить | Правка | Наверх | Cообщить модератору

173. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Anonymoustus (ok), 22-Май-21, 21:25 
>> На Пихтоне (в отличие, скажем, от Сишечки) можно легко писать так, что
>> будет понятно и без комментариев. Для этого всего-то надо не лениться
>> и давать всему осмысленные имена, в количестве знаков никто вас не
>> ограничивает.
> На сишечке вы не можете давать осмысленные имена, я правильно понял?

Как можно такое понять из моего комментария?

> Как ведите сишечку так сразу отшибает часть мозга, она занята вычислением границ
> массивов )))

Разве что жертвам акушерской халатности, вроде поцтеринга.

На Сишечке бест практисез рекомендуют (а иногда и требуют) стремиться к максимальной компактности и переносимости, а значит — к стандарту 89/90 или даже к K&R. Имена в жизни могут быть ограничены:

> At least the first 31 characters of an internal name are significant. For function names and external variables, the number may be less than 31, because external names may be used by assemblers and loaders over which the language has no control. For external names, the standard guarantees uniqueness only for 6 characters and a single case. Keywords like if, else, int, float, etc., are reserved: you can't use them as variable names. They must be in lower case.

Хотя поцтеринги пишут свой быдлокод столь отвратительным вряд ли по причине этого напутствия.

Ответить | Правка | Наверх | Cообщить модератору

185. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Карабьян (?), 23-Май-21, 18:42 
А вот инлайна в этих стандартах нет, сплошь и рядом применяющегося в системном программировании, так же как и gcc-специфических атрибутов по этой же теме
Ответить | Правка | Наверх | Cообщить модератору

186. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Anonymoustus (ok), 23-Май-21, 19:32 
> А вот инлайна в этих стандартах нет, сплошь и рядом применяющегося в
> системном программировании, так же как и gcc-специфических атрибутов по этой же
> теме

А должен быть? А почему?

Давайте вспомним, что Си был создан как «высокоуровневый ассемблер» для PDP. Этим обусловлено всё специфически сишное в его устройстве. На других архитектурах, естественно, Си не отражает их адекватно. И даже не должен быть использован для них. Есть другие языке, которые лишены изначальной привязки к одной конкретной аппаратуре: Ada, C++ и так далее. То, что Си всё-таки можно использовать (и фактически используют) везде, по сути является отходом от его первичного назначения.

Ответить | Правка | Наверх | Cообщить модератору

188. "Релиз языка программирования Perl 5.34.0"  –2 +/
Сообщение от bi brother (?), 23-Май-21, 19:48 
>[оверквотинг удален]
>> системном программировании, так же как и gcc-специфических атрибутов по этой же
>> теме
> А должен быть? А почему?
> Давайте вспомним, что Си был создан как «высокоуровневый ассемблер» для PDP.
> Этим обусловлено всё специфически сишное в его устройстве. На других архитектурах, естественно,
> Си не отражает их адекватно. И даже не должен быть использован
> для них. Есть другие языке, которые лишены изначальной привязки к одной
> конкретной аппаратуре: Ada, C++ и так далее. То, что Си всё-таки
> можно использовать (и фактически используют) везде, по сути является отходом от
> его первичного назначения.

А использование колеса в болидах - это отход от его первичного назначения, повозки бронзового века... угу.

Ответить | Правка | Наверх | Cообщить модератору

189. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Anonymoustus (ok), 23-Май-21, 19:52 
> А использование колеса в болидах - это отход от его первичного назначения,
> повозки бронзового века... угу.

Многие ошибки в писанине на Сях обусловлены тем, что люди не понимают, как сишная лексика связана с машиной. И понять это в самом деле затруднительно, потому что машина-то уже совсем другая, а слова всё те же. Написано на детали «колесо», а прикручено почему-то к багажнику.

Ответить | Правка | К родителю #188 | Наверх | Cообщить модератору

191. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от bi brother (?), 23-Май-21, 20:10 
>> А использование колеса в болидах - это отход от его первичного назначения,
>> повозки бронзового века... угу.
> Многие ошибки в писанине на Сях обусловлены тем, что люди не понимают,
> как сишная лексика связана с машиной. И понять это в самом
> деле затруднительно, потому что машина-то уже совсем другая, а слова всё
> те же. Написано на детали «колесо», а прикручено почему-то к багажнику.

Ошибки обусловлены тем, что си дает большую свободу программисту чем та же ада, или раст, и ко всему прочему - си гораздо распространеннее.

Люди просто делают ошибки, не ищи в этом какого-то конкретного непонимания чего-то. Даже когда человек все понимает - у него есть лаги. Есть инструменты для выявления ошибок, но в случае си они в большей степени опциональны а не обязательны. А сверхопека вроде ады или раста показывают, во-первых, что на них не программируют без надобности (военка на аде) или фанбойства (раст). А во-вторых, что и там есть эпик фейлы, только программировать на них - боль. Такая же боль, и даже больше и качественней может быть достигнута всякими анализаторами для си, но не удивительно что человек по натуре своей избегает боли.

Ответить | Правка | К родителю #189 | Наверх | Cообщить модератору

193. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Anonymoustus (ok), 23-Май-21, 20:14 
Зачем так много болтовни? Покажите, где в вашем процессоре x86 _разные_ инкременты и декременты.
Ответить | Правка | К родителю #191 | Наверх | Cообщить модератору

196. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от yourc (?), 23-Май-21, 20:27 
> Зачем так много болтовни? Покажите, где в вашем процессоре x86 _разные_ инкременты
> и декременты.

В моем процессоре даже for/while нет. Выкидываем?)

// истеричка))

Ответить | Правка | К родителю #193 | Наверх | Cообщить модератору

206. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от n00by (ok), 24-Май-21, 08:45 
> Зачем так много болтовни? Покажите, где в вашем процессоре x86 _разные_ инкременты
> и декременты.

Это о чём вопрос? x86 не используется пару десятков лет, в IA32 и AMD64 даже NOP можно закодировать массой способов.

Ответить | Правка | К родителю #193 | Наверх | Cообщить модератору

205. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от n00by (ok), 24-Май-21, 08:39 
> А вот инлайна в этих стандартах нет, сплошь и рядом применяющегося в
> системном программировании, так же как и gcc-специфических атрибутов по этой же
> теме

6.7.4 Function specifiers
Syntax
1 function-specifier:
inline
_Noreturn

Это из n1570.pdf, а что там в стандарте, пусть специалисты смотрят.

Ответить | Правка | К родителю #185 | Наверх | Cообщить модератору

184. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Карабьян (?), 23-Май-21, 18:40 
> На Пихтоне (в отличие, скажем, от Сишечки) можно легко писать так, что
> будет понятно и без комментариев. Для этого всего-то надо не лениться
> и давать всему осмысленные имена, в количестве знаков никто вас не
> ограничивает.

Дело в том, что комментировать можно не только отдельную строчку. То есть строка может быть и понятна сама по себе, но что и зачем делает некоторая последовательность (необязательно даже функция или блок), может ускользнуть от понимания, так как требует более высокой абстракции, чем предоставляет язык в данном месте. То есть писать комментарии иногда все-таки надо, имхо

Ответить | Правка | К родителю #147 | Наверх | Cообщить модератору

187. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Anonymoustus (ok), 23-Май-21, 19:41 
> Дело в том, что комментировать можно не только отдельную строчку. То есть
> строка может быть и понятна сама по себе, но что и
> зачем делает некоторая последовательность (необязательно даже функция или блок), может
> ускользнуть от понимания, так как требует более высокой абстракции, чем предоставляет
> язык в данном месте. То есть писать комментарии иногда все-таки надо,
> имхо

Я имею в виду, что Питон позволяет (и склоняет к этому), например, такие вещи:


...
element = random.choice(list)

list.remove(element)
...

где:

list — некая коллекция значений,

element — некоторое значение в этой коллекции.

Достаточно дать им осмысленные для данного конкретного применения имена, и комментарии для пояснения этого кода уже не нужны, он сам себя объясняет.


В Си, конечно, тоже можно так писать, но большинство предпочитает писать поменьше, иногда сокращая переменные до одного символа.

Ответить | Правка | Наверх | Cообщить модератору

190. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Карабьян (?), 23-Май-21, 19:55 
Согласен, что тенденции есть, но в целом это уже вопрос не языка, а стиля (который изначально мог идти от первого)
Ответить | Правка | Наверх | Cообщить модератору

192. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Anonymoustus (ok), 23-Май-21, 20:12 
> Согласен, что тенденции есть, но в целом это уже вопрос не языка,
> а стиля (который изначально мог идти от первого)

И стиля, конечно, но и языка тоже.

Си начинался во времена больших машин и терминалов и, как пишут сами же его создатели, иногда требует экономии выразительных средств по причинам сторонних ограничений. Повторюсь, это никак не оправдывает поцтерингоподобных руконогих.

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

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

Ответить | Правка | Наверх | Cообщить модератору

195. "Релиз языка программирования Perl 5.34.0"  –1 +/
Сообщение от bi brother (?), 23-Май-21, 20:23 
>[оверквотинг удален]
>> а стиля (который изначально мог идти от первого)
> И стиля, конечно, но и языка тоже.
> Си начинался во времена больших машин и терминалов и, как пишут сами
> же его создатели, иногда требует экономии выразительных средств по причинам сторонних
> ограничений. Повторюсь, это никак не оправдывает поцтерингоподобных руконогих.
> Перл, для сравнения, всюду подразумевает один конкретный контекст: скалярный либо списочный.
> И контекст во многом определает удобные или возможные в этом случае
> подходы к решению задачи.
> В Питоне изначально есть выразительность, позволяющая кратко и понятно формулировать проблему
> и её решение средствами самого языка.

У питона выразительность чуть повыразительнее бейсика. Бгг.

Выразительность появляется из богатства языковых средств языка, а не ограничений доведенных до абсурда. Timtowdi самим своим значением указывает на выразительность.

Лечи шизу, дружище. Питон у него выразительный, лол.

Ответить | Правка | Наверх | Cообщить модератору

197. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Карабьян (?), 23-Май-21, 20:47 
Понятно, что Вы про инкременты, например, которые в оригинальной машине наверное должны были умещаться в одну команду. Но разве на других высокоуровневых языках не бывает нужным i := i + 1 безотносительно того, сколько операций процессора это требует?
Если так подумать, по философски, можно знать французский язык и не быть в курсе географии Парижа или аж целой Франции, например
Ответить | Правка | Наверх | Cообщить модератору

198. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Карабьян (?), 23-Май-21, 20:49 

> Если так подумать, по философски, можно знать французский язык и не быть
> в курсе географии Парижа или аж целой Франции, например

И даже (о Боже!) не жить там никогда. Но и французом тогда не считаться

Ответить | Правка | К родителю #197 | Наверх | Cообщить модератору

199. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Карабьян (?), 23-Май-21, 21:04 
Возможно, что и на x86 микроархетиктура давно эту операцию делает за один такт, но мы этого не знаем и не должны знать
Ответить | Правка | К родителю #197 | Наверх | Cообщить модератору

208. "Релиз языка программирования Perl 5.34.0"  +/
Сообщение от Anonymoustus (ok), 24-Май-21, 08:59 
> Возможно, что и на x86 микроархетиктура давно эту операцию делает за один
> такт, но мы этого не знаем и не должны знать

А «умные» компиляторы просто переделывают написанное (сами заменяют инкременты и декременты на что-то другое). То есть на отличных от PDP машинах это всего лишь синтаксический сахар. И какой же смысл, зная это, упорствовать в утверждении о некой уникальной близости Си к аппаратуре в случае x86?


https://stackoverflow.com/q/24886

https://stackoverflow.com/q/24901

Ответить | Правка | К родителю #199 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру