The OpenNET Project / Index page

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



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

Оглавление

Доступен язык программирования Rust 1.16, opennews (?), 19-Мрт-17, (0) [смотреть все]

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


23. "Доступен язык программирования Rust 1.16"  +3 +/
Сообщение от Аномномномнимус (?), 19-Мрт-17, 12:00 
Вообще интересно, чем люди мотивируются, создавая кучу костылей в каждом "новом великолепном ЯП". Они как бы забывают, что ЯП вообще делаются не для машин, а для людей. Конечно гибкость инструмента хочется иметь максимальную, но это не должно идти в ущерб читаемости кода и скорости разработки. Языков программирования уже создавалось вагон и маленькая тележка на волне хайпа "вау, компы приходят в жизнь простых смертных!". Из них выкристаллизовались самые удачные в соотношении читаемости/гибкости, стали классикой, заняли свой честный TOP10, на их основе соответственно сформировались огромные комьюнити, написано масса документации, их изучают в ВУЗах. И тут приходит контора и такая "Мы решили что во всех наших ошибках виноват ЯП, мы запилим свой и будем совать его во все места, мы ж корпорация бобра, мы могём". А потом выясняется, что "во все места" только воткнуты "// TODO(user_name): implement this", в итоге работают только какие-то примитивы, документацию найти фиг, структура библиотеки не позволяет на бегу исправить архитектурный косяк
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

29. "Доступен язык программирования Rust 1.16"  +3 +/
Сообщение от angra (ok), 19-Мрт-17, 12:11 
Да не стесняйся ты так, скажи открыто: "мне лень понимать и учить новые ЯП".
TOP10 ЯП сегодня и TOP10 10/20/30/40/50 лет назад мягко говоря различаются. А с твоим подходом надо было остановится еще в 60-х.
Ответить | Правка | Наверх | Cообщить модератору

33. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Аноним (-), 19-Мрт-17, 12:21 
А что "новые языки" это какая-то самостоятельная ценность и их обязательно все учить ?
Ответить | Правка | Наверх | Cообщить модератору

37. "Доступен язык программирования Rust 1.16"  +/
Сообщение от angra (ok), 19-Мрт-17, 12:34 
Нет, необязательно. Можно было выучить Fortran 60 лет назад или APL 50 лет назад и программировать на них по сей день.
Ответить | Правка | Наверх | Cообщить модератору

42. "Доступен язык программирования Rust 1.16"  –2 +/
Сообщение от Аномномномнимус (?), 19-Мрт-17, 12:43 
В текущих реалиях можно выучить пару основных для десктопа, и php/python, html+js+css для веба, и ещё останется лет на 30 что в процессе разработки продуктов по мере появления доп. вопросов (от code style, тестовых фреймворков и инструментария аля IDE, нужных API, до всяких RFC, алгоритмов подавления шумов и специфики железа). И этого будет достаточно чтобы учиться постоянно и не скучать по фортрану.
Ответить | Правка | Наверх | Cообщить модератору

74. "Доступен язык программирования Rust 1.16"  +4 +/
Сообщение от Аноним (-), 19-Мрт-17, 16:01 
> В текущих реалиях можно выучить пару основных для десктопа, и php/python, html+js+css
> для веба, и ещё останется лет на 30 что в процессе

Задним умом мы конечно все крепки, но только вот 20 лет назад в основных для десктопа, вполне возможно мог быть дельфи, вместо пыха или питона - перловочка, а JS c CSS были забавными, но маргинальными новинками.

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

87. "Доступен язык программирования Rust 1.16"  +1 +/
Сообщение от angra (ok), 19-Мрт-17, 17:10 
Согласен. Добавлю, что через пять лет может оказаться, что js и css все-таки не способны удовлетворительно решить большинство задач и индустрия вернеттся к идее написания под веб на других ЯП с последующей трансляцией в webassembly или еще что-то. И все js и css фреймворки разом отправятся на свалку истории.
Ответить | Правка | Наверх | Cообщить модератору

206. "Доступен язык программирования Rust 1.16"  +/
Сообщение от cp (?), 20-Мрт-17, 23:20 
> в основных для десктопа, вполне возможно мог быть дельфи, вместо пыха или питона - перловочка

И мы ничего бы не прогадали!

> JS c CSS были забавными, но маргинальными новинками

CSS в котором десять только основных рецептов центрирования блока, и еще костыли в отдельных случаях.

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

40. "Доступен язык программирования Rust 1.16"  +2 +/
Сообщение от Аномномномнимус (?), 19-Мрт-17, 12:36 
> Да не стесняйся ты так, скажи открыто: "мне лень понимать и учить
> новые ЯП".
> TOP10 ЯП сегодня и TOP10 10/20/30/40/50 лет назад мягко говоря различаются. А
> с твоим подходом надо было остановится еще в 60-х.

Мне лень начинать каждые 2 года с джуниора (с соответсвующей зарплатой) ради языка, который ещё через 2 года загнётся (в лучшем случае в честь нового стартапчика того же гугла, в худшем - просто загнётся).

По топам: за 10 лет не сильно они изменились, потому что индустрия сформировалась более-менее со всеми её требованиями (как в части десктопа, контроллеров и мобильных, так и в части веба) и более правильный подход нынче - не пилить на каждый чих с нуля какую-то ересь, а обоснованно дорабатывать уже имеющиеся средства, если необходимость реально есть.

Я не могу относиться к этим стартапчикам серьёзно, когда там элементарные вещи либо не работают, либо работают только у разработчика оного опуса, либо сделаны ещё хуже чем в софте сделанном 20 лет назад, например из golang-гугльгруппы
>> Also, make sure you do not put spaces between directories listed in the path variable.

Шёл 2017-ый год...

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

43. "Доступен язык программирования Rust 1.16"  +1 +/
Сообщение от freehckemail (ok), 19-Мрт-17, 12:47 
> Да не стесняйся ты так, скажи открыто: "мне лень понимать и учить новые ЯП".
> TOP10 ЯП сегодня и TOP10 10/20/30/40/50 лет назад мягко говоря различаются.
> А с твоим подходом надо было остановится еще в 60-х.

Ну знаете ли. Этих новых языков в последнее время попёрло столько, что нет ни времени, ни сил на них на все. :)

К тому же, разработка нового языка - задача не такая уж сложная. Берёшь flex+bison (или если не на Си пишешь, но соответствующую своему языку связку lex/yacc), определяешь грамматику и синтаксис - и готово. Таким образом начать разработку нового языка - дело в общем-то плёвое. Вот их и расплодилось столько.

Другое дело, что потом наступает долгая и ответственная фаза оптимизации производительности и вылизывания генерируемого компилятором кода. Она может затянуться на годы. К тому же, языку нужна коллекция стандартных библиотек, что тоже займёт порядочное время.

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

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

50. "Доступен язык программирования Rust 1.16"  +1 +/
Сообщение от angra (ok), 19-Мрт-17, 13:00 
> Ну знаете ли. Этих новых языков в последнее время попёрло столько, что
> нет ни времени, ни сил на них на все. :)

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

> Берёшь flex+bison (или если не на Си пишешь, но соответствующую своему языку связку lex/yacc), определяешь грамматику и синтаксис - и готово. Таким образом начать разработку нового языка - дело в общем-то плёвое. Вот их и расплодилось столько.

Ты бы хоть поинтересовался в каком году появился yacc.

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

59. "Доступен язык программирования Rust 1.16"  +/
Сообщение от freehckemail (ok), 19-Мрт-17, 13:19 
>> Ну знаете ли. Этих новых языков в последнее время попёрло столько, что
>> нет ни времени, ни сил на них на все. :)
> Да не больше, чем в иные времена. И никто не говорит про
> полноценно учить всё подряд. Но если какой-то язык из года в
> год увеличивает свою долю, то можно потратить одни выходные на базовое
> ознакомление, вдруг понравится.

Я думаю, лучше это делать по мере необходимости. Вот пользуешься ты программой, захотел доработать и отправить фикс - вот тогда и ознакомился с языком, на котором она написана. Это подход практического императива, и он часто себя оправдывает.

>> Берёшь flex+bison (или если не на Си пишешь, но соответствующую своему языку связку lex/yacc), определяешь грамматику и синтаксис - и готово. Таким образом начать разработку нового языка - дело в общем-то плёвое. Вот их и расплодилось столько.
> Ты бы хоть поинтересовался в каком году появился yacc.

Какое же это имеет значение? Я ж не про утилиту yacc, а про класс ПО, к которому в частности относятся такие вещи, как bison, ocamlyacc, menhir.

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

85. "Доступен язык программирования Rust 1.16"  +/
Сообщение от angra (ok), 19-Мрт-17, 17:06 
Я к тому, что написание парсеров за счет существования lex/yacc и аналогов стало простой задачей не пять, не десять и даже не двадцать лет назад. А ты привел их существование как одну из причин появления множества новых ЯП в последнее время. На мой же взгляд появление новых ЯП почти никак не связано с легкостью их первичной реализации. Новые ЯП появляются во множестве, когда набирается достаточно много новых задач, которые старые ЯП решают неудовлетворительно.  Потом идет период стабильности, а потом развитие технологий создает новые проблемы и как следствие провоцирует создание новых ЯП.
Ответить | Правка | Наверх | Cообщить модератору

123. "Доступен язык программирования Rust 1.16"  +/
Сообщение от freehckemail (ok), 19-Мрт-17, 21:51 
> А ты привел их существование как одну из причин появления множества новых ЯП в последнее время.

Не совсем. Я лишь пояснял, почему их пишут все, кому не лень. Я понятья не имею, почему в последнее время их стало появляться особенно много.

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

Ну да, ну да. Perl5 "неудовлетворительно" решал задачи динамической генерации web-страниц, а PHP был "венцом" инженерной мысли.

> Потом идет период стабильности, а потом развитие технологий создает новые проблемы и как следствие провоцирует создание новых ЯП.

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

Поясняю примером: в 60х были разработаны первые версии Lisp. Их потыркали в продакшене и бросили. Хотя по выразительной силе они и сейчас превосходят все прочие языки. В начале 90х было дано начало ML-подобным языкам, предоставляющим ни с чем не сравнимую систему вывода типов. ML-и в продакшен тоже пошли слабо.

А что в продакшен пошло? Да хоть та же ява, которая появилась в середине девяностых и была медленным интерпретируемым языком с си-подобным синтаксисом и ООП без множественного наследования. Не самая лучшая затея. Не понятно для чего нужная. Её пилили много лет, не зная, куда её пристроить. Пытались и гуёвые приложения, которые получили малое распространение из-за тормозов и непомерно большого рантайма, пытались внедрять её в качестве плагинов для браузеров, да не тоже не вышло. Много лет прошло прежде, чем она заняла свою нишу серверных приложений.

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

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

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

128. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 19-Мрт-17, 23:06 
>>Ну да, ну да. Perl5 "неудовлетворительно" решал задачи динамической генерации web-страниц, а PHP был "венцом" инженерной мысли.

а всё дело в том, что чем дальше тем меньше кода будут писать, и будущему поколению просто в лом писать это всё, если в ЯП (точнее в стдлиб ЯП) нет того функционала который допустим нужен для веб страничек - это плохой ЯП для веба, на нём бабла быстро не срубишь. Кто пишет на асм веб странички - тот дурак.

>>PHP "венец" инженерной мысли

уже не найти разработчика который бы писал с нуля какой нить форумный движок, всем подавай ларавелы, ЙИИ, кодигнайтеры, "чур меня чур" писать на плейн пхп движок. И всем до лампочки, что вконтакте выпилило "ООПешное Г" из пхп и запили всё в процедурном стиле.

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

157. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от angra (ok), 20-Мрт-17, 12:21 
> Ну да, ну да. Perl5 "неудовлетворительно" решал задачи динамической генерации web-страниц,
> а PHP был "венцом" инженерной мысли.

Практически так и было. Код на perl времен cgi.pm(и тогда это еще был очень хороший вариант) и современный различаются как небо и земля. По сравнению с ним PHP со всеми его родовыми травмами действительно был шагом вперед.


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

Нет, я говорил про цикличность в появлении новых ЯП, а не про монотонное возрастание.

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

169. "Доступен язык программирования Rust 1.16"  +/
Сообщение от freehckemail (ok), 20-Мрт-17, 13:25 
>> Ну да, ну да. Perl5 "неудовлетворительно" решал задачи динамической генерации web-страниц,
>> а PHP был "венцом" инженерной мысли.
> Практически так и было. Код на perl времен cgi.pm(и тогда это еще
> был очень хороший вариант) и современный различаются как небо и земля.
> По сравнению с ним PHP со всеми его родовыми травмами действительно
> был шагом вперед.

Современный - это какой? Perl5 несколько десятилетий был неизменен. Не вижу особой разницы.

>> Интересное мнение, но я такого не наблюдаю. Ваше рассуждение подразумевает, что график
>> развития технологий монотонно возрастает со временем. Тем не менее, мы можем
>> наблюдать заметные спады время от времени.
> Нет, я говорил про цикличность в появлении новых ЯП, а не про монотонное возрастание.

Да нет. Судя по тому, что Вы написали, выглядит это как монотонное возрастание:
1) накопилось проблем, начинаем развивать технологию быстрее (резко вверх)
2) развили, осваиваем технологию, отлаживаем (медленно вверх)
3) отладили, поняли, что есть не решаемые проблемы -> возвращаемся к п.1

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

171. "Доступен язык программирования Rust 1.16"  +/
Сообщение от angra (ok), 20-Мрт-17, 13:56 
> Современный - это какой? Perl5 несколько десятилетий был неизменен. Не вижу особой  разницы.

Может потому, что ты не пишешь на нем сейчас и не писал тогда. Поэтому всё, что ты видишь, это мажорная циферка версии. А для меня он десять лет был основным ЯП, так что я вижу совсем другую картину.


> Да нет. Судя по тому, что Вы написали, выглядит это как монотонное
> возрастание:
> 1) накопилось проблем, начинаем развивать технологию быстрее (резко вверх)
> 2) развили, осваиваем технологию, отлаживаем (медленно вверх)
> 3) отладили, поняли, что есть не решаемые проблемы -> возвращаемся к п.1

А, в этом смысле. Да, всё именно так. Могут быть конечно небольшие флуктуации, но в целом идет развитие.

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

203. "Доступен язык программирования Rust 1.16"  +/
Сообщение от freehckemail (ok), 20-Мрт-17, 21:43 
>> Современный - это какой? Perl5 несколько десятилетий был неизменен. Не вижу особой  разницы.
> Может потому, что ты не пишешь на нем сейчас и не писал тогда.

Нихт. Сейчас я на нём почти не пишу. Много писал как раз лет 8-10 тому назад.

> А, в этом смысле. Да, всё именно так. Могут быть конечно небольшие флуктуации, но в целом идет развитие.

А я как раз и пишу, что топовые технологии активно не развиваются, развиваются в основном среднячковые, которые лоббируются корпорациями. Ладно, проехали.

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

86. "Доступен язык программирования Rust 1.16"  –2 +/
Сообщение от Вареник (?), 19-Мрт-17, 17:06 
> В общем, я не знаю, когда вылижут Rust, но для начала надо
> дождаться хотя бы нескольких больших FOSS-проектов, написанных на нём.

Без поддержки ТНК уровня фейсбука - никогда.
Но подобным организациям нужна прикладуха, существующие ядра/системные либы их полностью устраивают.

Игроделы не будут переделывать популярные и отлаженные движки на вырвиглазную хрень без либ.

Руст - язык без ниши. Как системный, для игр и вычислений - он запоздал на 30 лет, как прикладной не состоятелен.

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

193. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от анонимус вульгарис (?), 20-Мрт-17, 17:06 
> Руст - язык без ниши. Как системный, для игр и вычислений -
> он запоздал на 30 лет, как прикладной не состоятелен.

Почему же без ниши? У него есть вполне определённая ниша. Правда вот беда, она в точности совпадает с нишей, занятой C++. И чтобы его оттуда вытеснить, языку надо иметь очень много преимуществ. А у rust оно ровно одно — модель памяти. Сомневаюсь, что этого хватит, хотя — время покажет.

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

72. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от Sw00p aka Jerom (?), 19-Мрт-17, 15:53 
>>но это не должно идти в ущерб читаемости кода и скорости разработки.

какой ещё скорости разработки? что это за понятие "быстро разработать"? писать строки кода (кодинг) это разве разработка?  

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

88. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Вареник (?), 19-Мрт-17, 17:11 
>>>но это не должно идти в ущерб читаемости кода и скорости разработки.
> какой ещё скорости разработки? что это за понятие "быстро разработать"? писать строки
> кода (кодинг) это разве разработка?

На С++ програмист напишет сложную систему медленней, чем на Java, #C, Python, Ruby.
На уровне одной формы/мелкой утилиты разницы никакой. Чем сложней программа - тем больше будет разница.
Rust не дает преимуществ перед С++, наоборот усложняет нечитабельностью.

Это факт. Зачем Вы хотите отрицать очевидное?

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

101. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 19-Мрт-17, 19:01 
>>На С++ програмист напишет сложную систему медленней, чем на Java.

Проектировать ПО и писать код - разные задачи. И сей факт в том, что время тратися в основном на проектирование (обдумывании всего функционала, или конкретно алгоритма). Вы же не напишите код если не спроектируете заранее.

  
>>На уровне одной формы/мелкой утилиты разницы никакой.

какая разница на каком ЯП написан алгоритм, он будет выполнять ровно то, на что он задуман.

>>Чем сложней программа - тем больше будет разница.

ну конечно, война и мир на русском будет содержать 1к страниц, а на китайских иероглифах 10к страниц - и что? нужно отказаться от китайского, китайских хуже русского?

К примеру определение функции в одиних ЯП пишем function function_name(x) в других func name(x), в-третьих f name(x), name(x) в итоге (x) и т.д. - и что разница только в количестве нажатий на клавиши при наборе текста кода, ЭТО РАЗВЕ ПОКАЗАТЕЛЬ "БЫСТРОТЫ" РАЗРАБОТКИ ПО?

>>Rust не дает преимуществ перед С++

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

>>наоборот усложняет нечитабельностью.

Не читабельность это самый "нубский" аргумент, конечно для русскоязычного китайский будет не читабелен пока он его не выучит, всё упирается в то, на сколько хорошо вы знаете ЯП. В первом классе вы же тоже читали по слогам предложения, а сейчас?

>>Это факт. Зачем Вы хотите отрицать очевидное?

Ничего я не хочу отрицать, для себя я сделал очевидный вывод (моё мнение), что все эти ЯП - не нужны, есть машинные коды и есть вполне "читабельный" транслятор (ага АСМ). А холивары на тему ЯП будут всегда, разработка ПО давно уже из науки перевалилась в сруб бабла, и подчиняется закону бабла - "время деньги", чем "быстрей" вы напишите на какомто лэго ЯП программу тем быстрей получите своё бабло.


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

108. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от Аномномномнимус (?), 19-Мрт-17, 20:12 
> Не читабельность это самый "нубский" аргумент, конечно для русскоязычного китайский будет
> не читабелен пока он его не выучит, всё упирается в то,
> на сколько хорошо вы знаете ЯП. В первом классе вы же
> тоже читали по слогам предложения, а сейчас?

Большую часть времени разработчик не стучит по кнопкам, а именно читает код и думает, читает документацию и думает, читает. Очевидно что читать то, что написано на нормальном языке, нормальным стилем, гораздо легче и приятнее, чем э слыш чотенька тут вот а тут так там тыгыдым акошка мне запили хопа гангнамстайл (далее 50 экранов страниц сплошной портянки из однобуквенных переменных, двухбуквенных функций и одной строкой, это любители JS "оптимизировали" весь исходник). А нктрые думт чт мжн ещ тк скрщт прдлжн чтб мнш псть. И без межстрочных интервалов, вот прям весь код одной портянкой, а лучше чтобы строки друг на друга залезали - ТАК ЖЕ БОЛЬШЕ ВЛЕЗАЕТ НА ЭКРАН!
И таких вредных советов - вагон и маленькая тележка. Но зачем их использовать как руководство к действию?

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

118. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от RobotsCantPoop (?), 19-Мрт-17, 21:31 
Для любителей чтива, приближенного к одному из естесственных языков, придумали COBOL. Его конечно ругают очень-очень сильно, но пока си пытается указателем в указатель на переменную попасть, COBOL рулит транзакциями на миллиарды.
Ответить | Правка | Наверх | Cообщить модератору

126. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 19-Мрт-17, 22:37 
>>Очевидно что читать то, что написано на нормальном языке, нормальным стилем, гораздо легче и приятнее, чем э слыш чотенька тут вот а тут так там тыгыдым акошка мне запили хопа гангнамстайл

вот к этому я и вёл ))) слеш точка запятая - китайская грамота, русскому не понять если он её не изучит как родной язык.

>>(далее 50 экранов страниц сплошной портянки из однобуквенных переменных, двухбуквенных функций и одной строкой, это любители JS "оптимизировали" весь исходник)

.min.js )))) а что вы хотели ? я просто не понял вы сторонник (x) или function function_name(argument x)? Лично для меня без разницы, итог один (в опкодах) в принципе.

>>а именно читает код и думает, читает документацию и думает, читает.

1) время на чтение + время на "думает" + опять время на чтение = быстрая разработка.

вывод: человек должен уметь быстро читать, быстро думать, и повторно быстро читать (избыточностью попахивает) - то он быстро разработает ПО, и ЯП тут как видимо ни какой роли не играет.

2) хорошо второй юзкейс:

человек читает по слогам + человек тугодум + человеку лень повторно читать по слогам = ну очень медленная разработка

вывод: такому разработчику ПО нужен такой "быстрый ЯП", где не нужно читать, думать и повторно читать.


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

156. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от Аномномномнимус (?), 20-Мрт-17, 12:18 
>> 1) время на чтение + время на "думает" + опять время на чтение = быстрая разработка.
>> вывод: человек должен уметь быстро читать, быстро думать, и повторно быстро читать (избыточностью попахивает) - то он быстро разработает ПО, и ЯП тут как видимо ни какой роли не играет.

Чтобы быстро думать - не должно ничего отвлекать. Ты не должен спотыкаться на каждом чихе и думать "почему тут изобрели какой-то велосипед, которого нет у остальных для решения вполне канонической задачи?". Языковые правила, в том числе правила китайского языка, формировались сотни, а то и тысячи лет, в процессе развития коммуникации между людьми. И "шмяк-шмяк мы тут на коленке за пол часа придумаем новый язык, а вы просто выучите его" - не прокатит. Нельзя писать 95% на C++, а потом по щелчку пальца (т.е. мгновенно) переключиться на какой-нибудь SP-Forth или брейнфак и продолжить разработку как ни в чём не бывало, даже при условии что ты и то, и то знаешь /* тут стоит принять тот факт, что шизофреники могут, как могут и в уме сумасшедшие числа считать, но врядли стоит брать это за самоцель */

И тут ещё стоит принять во внимание тот факт, что китайский как бы не часто становится базовым для сфер в которых нужно быстро и ёмко описывать алгоритм. Как впрочем и русский. А вот английский (который из всех выбранных самый упрощённый, в т.ч. по историческим причинам) оказался как раз кстати /* вот тут конечно за державу обидно, но как есть */.

На эту тему интересный опус был у Фейнмана, он сначала тоже для записи формул и рассчётов использовал "свою нотацию", но потом вдруг выяснилось, что надо ещё и с людьми общаться хотя бы иногда.

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

183. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Вареник (?), 20-Мрт-17, 15:37 
> я просто не понял вы сторонник (x) или function function_name(argument x)? Лично для меня без разницы, итог один (в опкодах) в принципе.

- для стиля xyz - должен быть комментарий (Y - квартальное начисление по % от косвенной условной задолженности...), чтобы код оставался сопроводжаемым.

В стиле function_name(argument x) - большинство комментариев оказываются избыточными и код в целом получается КОРОЧЕ и читабельней (не нужно искать определение x и комментарий над ним). Внезапно :)

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

186. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 20-Мрт-17, 16:35 
>>- для стиля xyz - должен быть комментарий
>>В стиле function_name(argument x) - большинство комментариев оказываются избыточными

нет я не это имел ввиду, акцент на обьявлении функции, а не её имени. Суть в синтаксической конструкции языка - что правильней обьявлять function, fun, def, или просто что-то на подобии (x) ->. Разница, как я уже говорил, в количестве символов, и если мы говорим о так называемой "быстрой разработке", то вариант (x) -> с таким синтаксисом ЯП довольно короткий и быстро вводится, но как заметили он якобы не читаемый, конечно не читаемый тому кто не "в теме", тому кто не знает синтаксиса ЯП. И возникает вопрос, а нужна ли эта "самодостаточность" new function definition f(x) { } которую человек "не в теме" спокойно прочтёт и поймёт в чём суть или "лаконичная" (x) -> - коротко и ясно тому кто "в теме".

Опять таки если всё сводить к "самодостаточности (само за себя говорящее)", то существовал бы всего один ЯП.

пс: Я был бы только рад этому одному "самодостаточному (самоописывающему синтаксис)" ЯП.
пс2: По поводу коментариев, они скорее нужны для описания алгоритма, а не описания какой символ на какой заменили. Внизу в коменте http://www.opennet.ru/openforum/vsluhforumID3/110728.html#129 я привёл код функции и закрасил её имя, нужно определить что эта функция выполняет. По имени достаточно легко можно было бы понять для чего она предназначена. А по алгоритму трудно тому кто "не в теме". И тут конечно не только имя играет роль у функции ну и сопровождающий коментарий описывающий алгоритм этой функции.


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

207. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от Аномномномнимус (?), 21-Мрт-17, 01:08 
Правильно объявлять function или func, если вы хотите функцию, а не класс, объект или ещё стопицот вариантов синтаксического сахара, не (x) и тем более не fun. Если вы хотите фана, то вам конечно без разницы на чём писать. А если чтобы работало, было читаемо, сопровождаемо и вообще не стыдно было показать, то нужно чтобы намерение было чётко задекларировано. Все эти огрызки и экономия на спичках - зло. Сиди потом, гадай, fn - это function или filename, или ещё что-то. Например, если нужно быстро найти функцию, но не помнишь точного её имени, внезапно все эти скобочки, косточки, звёздочки в ряд начинают мешать, а не помогать. Равно как и аббревиатуры, ты помнишь что оно в имени функции было что-то про перемножение, ищешь multiple, а потом выясняется что народ так "сэкономил оперативы и времени", что в коде оно mlt. И как бы автор каждого такого кастратика кричит "достаточно один раз выучить", но таких методов десятки в каждом классе, классов сотни, да ещё и проектов вагон и маленькая тележка и сводится всё к зубрению вместо понимания.
Код должен быть самодостаточный и наглядный. Тогда его можно реально показывать "людям не в теме" и они смогут сказать "вот тут у тебя ошибка в рассчётах". А если чтобы одну функцию понять и поправить нужно сначала пару томиков intro изучить и месяц хелловорлды грызть, то это фейл и конечно придётся вариться в собственном соку. И у меня такие случаи в жизни были, когда приходилось обсуждать алгоритм глядя на незнакомый (тогда ещё) язык.
Возьмите тот же SP-Forth, там как бы ничего сложного, "в тему" вникнуть легко - ложим всё на стек, потом выполняем нужные операции. Но вынос мозга на сколь нибудь большом и сложном коде я вам обещаю.
Ответить | Правка | Наверх | Cообщить модератору

210. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 21-Мрт-17, 17:56 
>>Правильно объявлять function или func,

Без доказательное утверждение, замена одних символов на других - дело вкуса, и если даже заменяем, то заменяем в одно-однозначном отношении, без противоречий. Форма записи (x) может приводит к неоднозначному отношению. Поэтому, чтобы этого всего избегать нужно придумать синтаксис из конечных предложений типа

new function definition function_name_blabla(Argument X) {}

а не просто func blabla(x) в этом случае имя "неправильно подобранное" имя функции может ввести неоднозначное соответствие к её алгоритму. Поэтому добавил вначале префикс function_name_USER_DEFINED_FUNCTION_NAME. Вызов функции ранее обьявленной также -

call user defined function function_name_blabla(Argument X) и тд.

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


>>Если вы хотите фана, то вам конечно без разницы на чём писать.

Да, без разницы, потому-что итог должен быть один, оптимальный конечный машинный код.


>>А если чтобы работало, было читаемо, сопровождаемо и вообще не стыдно было показать, то нужно чтобы намерение было чётко задекларировано.

Чтобы удовлетворить ваши критерии языка - ЯП должен быть фактически схож с естественным человеческим языком, но даже если так и будет, что мы обычными предложениями естественного языка писали алгоритмы, то не было бы на данный момент никаких проблем с машинным переводами. Но, что будет делать ЦП (центральный процессор) когда он встретит предложения антиномии (парадоксы)?


>>Код должен быть самодостаточный и наглядный.

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

>>Тогда его можно реально показывать "людям не в теме" и они смогут сказать "вот тут у тебя ошибка в рассчётах".

Людям нужно показывать псевдо код, если мы ищем логические ошибки, а если показывать конкретно код на конкретном ЯП - то это только поможет найти синтаксические ошибки, которые за нас ищет сам ЯП (компилятор и т.д.). В математике тоже самое - есть формула достаточно короткая и под ней её полное доказательное описание на естественном языке, никто не пытается создавать самодостаточные формулы, а если это делать то мы придём к естественному языку.

>>"достаточно один раз выучить"

Выучить что? если есть одно-однозначное отношение между new function definition и func, то почему бы и нет ? Типичная символьная замена.

>>Возьмите тот же SP-Forth, там как бы ничего сложного, "в тему" вникнуть легко - ложим всё на стек, потом выполняем нужные операции. Но вынос мозга на сколь нибудь большом и сложном коде я вам обещаю.

Зачем должен быть вынос мозга если стоит задача разобрать код программы?
И плюс хорошей практикой является документирование кода, не просто коментарии к коду а именно документирование. Как в математике, когда пишется формула - то описываются все входящие в неё символы и какой смысл они носят.

пс:

>>Сиди потом, гадай, fn - это function или filename, или ещё что-то.

не придётся гадать если есть описание этой замене символов. Вы в праве использовать как f, fn, fun, func, function и т.д., но дайте описание по использованию этих символов (сокращений) на естественном языке, ибо ваши замены ясны только лишь ЦП (ЯП), отсюда выводится очевидное, что код программы пишется для машины (хотя утверждают, что код должен писаться "понятным" для человека). Машина не способна понять естественный человеческий язык, хотя человек спокойно разберётся с любым языком предназначенным для машины (даже если он состоит из 0,1).


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

211. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 22-Мрт-17, 01:14 
блин у комента кажись ограничение по длине текста хмммм
скока текста порезалось ((((((
Ответить | Правка | Наверх | Cообщить модератору

114. "Доступен язык программирования Rust 1.16"  +/
Сообщение от angra (ok), 19-Мрт-17, 20:58 
Титеретик или тролль?
Ну реализуй любой готовый алгоритм на брейнфаке и сравни со временем его же реализации хотя бы на С.
Ответить | Правка | К родителю #101 | Наверх | Cообщить модератору

127. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 19-Мрт-17, 22:40 
> Титеретик или тролль?
> Ну реализуй любой готовый алгоритм на брейнфаке и сравни со временем его
> же реализации хотя бы на С.

к чему это? к тому, что не смогу или "быстро написать" не получится?


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

159. "Доступен язык программирования Rust 1.16"  +/
Сообщение от angra (ok), 20-Мрт-17, 12:28 
Это яркий пример, иллюстрирующий ошибочность твоих разглагольствований о том, что проектирование занимает основное время и выбор ЯП почти не сказывается на времени написания программы. Конечно разница во времени между написанием программы на С и python будет не такой большой как в случае с brainfuck, но тем не менее она будет весьма существенной.
Ответить | Правка | Наверх | Cообщить модератору

189. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от Sw00p aka Jerom (?), 20-Мрт-17, 16:49 
> Это яркий пример, иллюстрирующий ошибочность твоих разглагольствований о том, что проектирование занимает основное время и выбор ЯП почти не сказывается на времени  написания программы.

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

>Конечно разница во времени между написанием программы на С
> и python будет не такой большой как в случае с brainfuck,
> но тем не менее она будет весьма существенной.

Опять таки, вы щас сравнимаете "готовое", если у меня есть готовая функция (написанная до меня) на питоне, и таковой нет на си и которую я должен реализовать, то конечно со стороны выглядит, что на питоне я "быстрей" напишу. А если эта же функция уже "готова" на си, то разницы - ни какой. Но суть программирования не в "использовании готового". И ниже привёл вам пример функции косинуса угла. И не ужели никогда не появлялась мысль о том, а что там за cos(a) и у неё под капотом?


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

197. "Доступен язык программирования Rust 1.16"  +/
Сообщение от angra (ok), 20-Мрт-17, 18:39 
Таки титеретик. Причем случай крайне запущенный, если даже пример с brainfuck не заставил хоть чуть-чуть подумать.
Ответить | Правка | Наверх | Cообщить модератору

201. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 20-Мрт-17, 20:54 
тады уж на ТМ, брейнфак в сторонке курит
Ответить | Правка | Наверх | Cообщить модератору

202. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 20-Мрт-17, 20:59 
> тады уж на ТМ, брейнфак в сторонке курит

дополнение: если про ТМ не в курсе

https://ru.wikipedia.org/wiki/%D0%9C%D0%...

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

129. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от Sw00p aka Jerom (?), 19-Мрт-17, 23:08 
> Титеретик или тролль?

static const double
one =  1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */
C1  =  4.16666666666666019037e-02, /* 0x3FA55555, 0x5555554C */
C2  = -1.38888888888741095749e-03, /* 0xBF56C16C, 0x16C15177 */
C3  =  2.48015872894767294178e-05, /* 0x3EFA01A0, 0x19CB1590 */
C4  = -2.75573143513906633035e-07, /* 0xBE927E4F, 0x809C52AD */
C5  =  2.08757232129817482790e-09, /* 0x3E21EE9E, 0xBDB4B1C4 */
C6  = -1.13596475577881948265e-11; /* 0xBDA8FAE9, 0xBE8838D4 */

double
ЧТО_ЗА_ФУНКЦИЯ(double x, double y)
{
    double hz,z,r,w;

    z  = x*x;
    w  = z*z;
    r  = z*(C1+z*(C2+z*C3)) + w*w*(C4+z*(C5+z*C6));
    hz = 0.5*z;
    w  = one-hz;
    return w + (((one-w)-hz) + (z*r-x*y));
}

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

184. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от Вареник (?), 20-Мрт-17, 15:40 
>> Титеретик или тролль?
> static const double
> one =  1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */
> C1  =  4.16666666666666019037e-02, /* 0x3FA55555, 0x5555554C */
> C2  = -1.38888888888741095749e-03, /* 0xBF56C16C, 0x16C15177 */

- Хуже, преподаватель. Сам в реальных проектах не писал, не сопровождал, но имеет мнение и "опыт", хрен оспоришь :)

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

187. "Доступен язык программирования Rust 1.16"  +1 +/
Сообщение от Sw00p aka Jerom (?), 20-Мрт-17, 16:40 
> - Хуже, преподаватель. Сам в реальных проектах не писал, не сопровождал, но
> имеет мнение и "опыт", хрен оспоришь :)

)))) ментор. Ждал этот аргумент ))

Давайте спросим у Д. Кнут-а сколько кода он написал ))) Суть программирование не в объёме кода. Вы можете в вотсапа написать килограммами текста за всю жизнь, но не напишите никогда Войну и мир, и возникает вопрос, если вы столько пишите в вотсапе, то почему вы не написали Отцы и дети и не считаетесь писателем?

пс: https://github.com/freebsd/freebsd/blob/386ddae58459341ec567...


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

208. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от Илья (??), 21-Мрт-17, 09:40 
о господи. Ну хорошо хоть в одном файле уместилась
Ответить | Правка | Наверх | Cообщить модератору

213. "Доступен язык программирования Rust 1.16"  +/
Сообщение от anonymous (??), 22-Мрт-17, 06:16 
> Давайте спросим у Д. Кнут-а сколько кода он написал )))

Много.

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

215. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 22-Мрт-17, 16:08 
)))
Ответить | Правка | Наверх | Cообщить модератору

176. "Доступен язык программирования Rust 1.16"  –1 +/
Сообщение от Вареник (?), 20-Мрт-17, 14:59 
>> И сей факт в том, что время тратися в основном на проектирование.

- На тестирование, отлаживание, сопровождение (многочисленные доработки по запросам). Внезапно. 90% объема работ.

Есть, конечно, категория архитекторов высокого полета - "напроектировал и сбежал", пока рутина не началась (из которой работа системы и состоит).

UML и ОО-скелет все равно на чем набросать, лишь бы в языке структуры/классы были, а они даже в ассемблере есть. Можно и на русте, не вопрос :)

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

190. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Sw00p aka Jerom (?), 20-Мрт-17, 16:52 
> - На тестирование, отлаживание, сопровождение (многочисленные доработки по запросам).
> Внезапно. 90% объема работ.

Внезапно до вас дошло, что синтаксис ЯП и его стдлиб никакой роли не играет.

>>Можно и на русте, не вопрос :)

Ну вотъ, ЯП значения не имеет.

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

219. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Некулхацкер (?), 24-Мрт-17, 13:06 
>>>>но это не должно идти в ущерб читаемости кода и скорости разработки.
>> какой ещё скорости разработки? что это за понятие "быстро разработать"? писать строки
>> кода (кодинг) это разве разработка?
> На С++ програмист напишет сложную систему медленней, чем на Java, #C, Python,
> Ruby.
> На уровне одной формы/мелкой утилиты разницы никакой. Чем сложней программа - тем
> больше будет разница.
> Rust не дает преимуществ перед С++, наоборот усложняет нечитабельностью.
> Это факт. Зачем Вы хотите отрицать очевидное?

На Питоне или Руби -- нет. У них нет даже зачаточных инструментов сборки и управления проектом. А на подобные процедуры уходи три четверти времени.

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

220. "Доступен язык программирования Rust 1.16"  +/
Сообщение от Аноним (-), 24-Мрт-17, 21:46 
>[оверквотинг удален]
>>> какой ещё скорости разработки? что это за понятие "быстро разработать"? писать строки
>>> кода (кодинг) это разве разработка?
>> На С++ програмист напишет сложную систему медленней, чем на Java, #C, Python,
>> Ruby.
>> На уровне одной формы/мелкой утилиты разницы никакой. Чем сложней программа - тем
>> больше будет разница.
>> Rust не дает преимуществ перед С++, наоборот усложняет нечитабельностью.
>> Это факт. Зачем Вы хотите отрицать очевидное?
> На Питоне или Руби -- нет. У них нет даже зачаточных инструментов
> сборки и управления проектом.

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


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

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

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




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

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