LINUX.ORG.RU

Подскажите перспективный ЯП, которому требуются батарейки

 , , , ,


0

6

Хочу уделить время написанию полезных библиотек (парсеры популярных форматов, http серверы, вебсокеты или что-то подобное). Для какого-нибудь ЯП, где от этого будет польза.

Ответ на: комментарий от eao197

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

Уже много раз писал здесь и еще раз повторюсь (для тех, кто не знаком с haskell, а это 99%). Система в rust похожая на ООП, но не являющаяся при этом ООП - это по-сути скопипащенный из haskell способ работы с объектами. Ну, не 1:1, но по сути очень близко. Тоже модули, но классы типов только называются типажами, да и то представлены в очень упрощенном виде.

По мне так вполне нормальная система. В haskell она доказала свою жизнеспособность. Немного непохожая на другие, но вполне рабочая.

Если разобраться, то нового rust - разве что идея владения объектами и связанная с ней идея использования ссылок. Все остальное в той или иной мере скоммуниздено, или из Си, или из haskell. Вот два основных источника идей)

dave ★★★★★
()
Ответ на: комментарий от dave

В haskell она доказала свою жизнеспособность.

А сам Haskell уже доказал свою жизнеспособность? Ну за пределами очень узкой группы шибко умных товарищей.

Вы вот, например, себе на жизнь, наверное, программированием на Scala зарабатываете, а не на Haskell-е?

eao197 ★★★★★
()
Ответ на: комментарий от annulen

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

dzidzitop ★★
()
Ответ на: комментарий от eao197

Синтаксис у раста вполне норм. Вот лайфтаймы - там боль самая. Хотя есть тенденция к улучшению.

Но я раст в основном приминительно к контроллерам пинал, там своя атмосфера.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от yyk

Т.е. те, кто говорят что привыкли, нагло врут?.. ))

Всё так. Нагло врут, причём, прежде всего себе.

anonymous
()
Ответ на: комментарий от nihirash

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

den73 ★★★★★
()
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от den73

1с - монополист на рынке, причем тут лисп. А количество вакансий скорей говорит о том, что толку от его русскоязычности немного, и всем нужны программеры, которые почему-то не горят желанием писать на этом великом и могучем.

anonymous
()
Ответ на: комментарий от eao197

ущербный вариант C++

А есть другой? Со ссылками на примеры.

RazrFalcon ★★★★★
()
Ответ на: комментарий от eao197

Тем обиднее наблюдать странные решения его авторов.

Опять вкусовщина. Половина ноет, что нет исключений, а вторая половина воет от восторга. Всем не угодишь.

Начиная от неприятия ООП

Ну так composition over inheritance - тренд последних лет. Только об этом и говорят.

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

И это говорит человек, который не воспринимает критику C++ в принципе.

Критику, как раз, нормально. Только вот вы, например, не критикуете же, а именно что говном поливаете. Не вы ли, например, говорили про то, что STL в C++ — это говно вообще, и что STL не обеспечивает каких-то там гарантий?

А есть другой?

Есть. Это проекты, которые активно используют Boost или Folly от Facebook-а.

Тот же dzidzitop здесь ссылки на свои библиотеки неоднократно публиковал. Вроде как там ничего криминального и олдскульного из начала 90-х замечено не было.

Ну так composition over inheritance - тренд последних лет. Только об этом и говорят.

На форумах много о чем говорят. О том же Haskell-е, OCaml-е или, прастихоспади, Common Lisp-е.

eao197 ★★★★★
()
Ответ на: комментарий от eao197

что STL в C++ — это говно вообще

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

Ссылочка на тему: https://bitbashing.io/std-visit.html

что STL не обеспечивает каких-то там гарантий

Такого не помню. У C++, по сравнению с раст, вообще нет гарантий. Либа ничего не решит.

Boost

Про его убогость не писал только ленивый.

Тот же dzidzitop здесь ссылки на свои библиотеки неоднократно публиковал.

У меня от них до сих пор кошмары снятся. Это эталонный ужас.

RazrFalcon ★★★★★
()
Последнее исправление: RazrFalcon (всего исправлений: 2)
Ответ на: комментарий от RazrFalcon

Обсуждать вкусовщину - это клиника.

Где-то я это уже слышал... Ах да, от фанатов лиспа. У них тоже нет никаких проблем с чтением кода, а остальные просто придираются.

anonymous
()
Ответ на: комментарий от RazrFalcon

И? Это всё равно часть языка, как вы её не называйте.

Это как обвинять класс std::basic_string, что он не умеет писать в файл. Он же часть языка, как его не называй.

anonymous
()
Ответ на: комментарий от RazrFalcon

«Синтаксис раста говно» - это вершина критики.

А кто говорил, что это критика? Вот не нравится мне синтаксис Rust-а, я об этом и говорю. Можете назвать это хейтерством.

«STL говно» - да ты просто хейтер.

Конечно. Критики C++ с вашей стороны нет. Есть тупые наезды, в которых легко выясняется, что кроме как на Qt+C++ вы ничего-то и не программировали. Т.е. плюсов толком не знаете, но говном разбрасываетесь.

eao197 ★★★★★
()
Ответ на: комментарий от RazrFalcon

Тот же dzidzitop здесь ссылки на свои библиотеки неоднократно публиковал.

У меня от них до сих пор кошмары снятся. Это эталонный ужас.

А обосновать?

eao197 ★★★★★
()
Ответ на: комментарий от eao197

Qt+C++

Это какая-то особая форма сегрегации? Что плохого в том, что выбираю более удобный инструмент?

Т.е. плюсов толком не знаете

Сильное заявление.

Критики C++ с вашей стороны нет.

А смысл? Вы будете всё опровергать. Чисто из-за упёртости. Проверенно не раз.

RazrFalcon ★★★★★
()
Ответ на: комментарий от eao197

Мне code review сделать?

Да и как вообще можно обсуждать либу под GPLv3?

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

Это какая-то особая форма сегрегации?

Это показатель уровня ваших знаний. Очевидно, что такое понятие, как modern C++, целиком прошло мимо вас. Не смотря на то, что ему уже лет 16-ть.

А смысл?

Смысл в том, чтобы подтвердить ваш же тезис: «И это говорит человек, который не воспринимает критику C++ в принципе.»

Мне code review сделать?

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

Да и как вообще можно обсуждать либу под GPLv3?

Какое отношение качество кода и подход к использованию C++ имеет к лицензии библиотеки?

eao197 ★★★★★
()
Ответ на: комментарий от dzidzitop

и не всегда это можно увидеть в документации к библиотеке

Так что увидев незнакомую библиотеку, grep -R throw src

annulen ★★★★★
()
Ответ на: комментарий от RazrFalcon

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

STL - не стандартная библиотека C++. STL - это про итераторы, контейнеры, алгоритмы. Отличная вещь, особенно как концепт.

У меня от них до сих пор кошмары снятся. Это эталонный ужас.

Рад, что ты настолько впечатлился.

dzidzitop ★★
()
Ответ на: комментарий от eao197

Не смотря на то, что ему уже лет 16-ть.

Что это за C++ такой? C++03, 11? Кто сказал, что я им не пользуюсь? У меня все проекты - C++11.

Смысл в том, чтобы подтвердить ваш же тезис

Он уже неоднократно подтверждался.

Какое отношение качество кода и подход к использованию C++ имеет к лицензии библиотеки?

Адекватный человек не будет распространять либу под такой лицензией. Это первый звоночек.

RazrFalcon ★★★★★
()
Ответ на: комментарий от dzidzitop

STL - не стандартная библиотека C++. STL - это про итераторы, контейнеры, алгоритмы. Отличная вещь, особенно как концепт.

Все итераторы, контейнеры и алгоритмы - часть стандарта, в котором об STL не слова (во всяком случае в C++14/17).

anonymous
()
Ответ на: комментарий от RazrFalcon

Что это за C++ такой?

Ба, да вы даже с термином Modern C++ не знакомы? А название «Modern C++ Design» вам что-нибудь говорит?

Адекватный человек не будет распространять либу под такой лицензией.

Ахринеть, дайте два! GPLv3 неадекваты писали, RazrFalcon не даст соврать!

eao197 ★★★★★
()
Ответ на: комментарий от eao197

Понеслась:

  • GPLv3 для либы - клиника. Хотя в сорцах LGPL...
  • Отсутствие coding style. Как хочу, так и пишу.
  • Сборная солянка. Тут и json, и строки (сюрприз), и что угодно. Предназначение либы совершенно не понятно. Очередная попытка исправить кривой std, который «не кривой», ага.
  • Собственный assert, что странно. Хотя учитывая, что assert - это бесполезное наследние сишки, то не грех его переделать.
  • Бессмысленные шаблоны. Я ничего против них не имею, но зачем их везде пихать? Ну вот смысл от шаблонов при генерации URL?!
  • Своя реализация md5. Круто. «ПМ не нужен, нам и так хорошо.»
  • Отсутствие документации.
  • И эти люди рассказывают мне как писать на C++.
  • Жуткий код: раз, два, три.
  • Ну и вишенка на торте: 0 звёзд за 4 года. Ненужно!
RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

Вам в журналисты пора, с таким перекручиванием.

Ну так если GPLv3 писали адекватные люди, то почему другим адекватным людям нельзя ее использовать?

eao197 ★★★★★
()
Ответ на: комментарий от eao197

Мне картинку нарисовать? (с)

Если Вася делает либу под GPLv3, значит её можно использовать только в GPLv3 проекте, а значит для большинства случаев она не подходит. И пользоваться ей не будут. Что делает её ненужной.

Как вы думаете, почему во всех популярных ЯП с ПМ советуют выкладывать либы только под MIT/Apache?

RazrFalcon ★★★★★
()
Последнее исправление: RazrFalcon (всего исправлений: 4)
Ответ на: комментарий от RazrFalcon

Если Вася делает либу под GPLv3, значит её можно использовать только в GPLv3 проекте, а значит для большинства случаев она не подходит. И пользоваться ей не будут. Что делает её ненужной.

Да это просто пипец какой-то.

eao197 ★★★★★
()
Ответ на: комментарий от anonymous

И да, английский для программирования нужен в настолько мизерных кол-вах

переменные транслитом обзывать?

MyTrooName ★★★★★
()
Ответ на: комментарий от RazrFalcon

Если Вася делает либу под GPLv3, значит её можно использовать только в GPLv3 проекте, а значит для большинства случаев она не подходит. И пользоваться ей не будут. Что делает её ненужной.

Лол :-) Это не твоя ли любимая хвалёная Qt под GPLv3 распространяется? :-) Ведь под LGPL там даже графиков (которые charts) нет :-) Кастрат какой-то, а не либа :-)

Как вы думаете, почему во всех популярных ЯП с ПМ советуют выкладывать либы только под MIT/Apache?

А как ты думаешь, почему хвалёная Qt (которая Open Source, т.е. свобода и всё такое) продаётся за $295 в месяц на одного разработчика? :-) Лол :-)

anonymous
()
Ответ на: комментарий от RazrFalcon

Жуткий код: раз, два, три.

Ну так а ты обоснуй что тут жуткого то? :-) Я вот недавно в исходники Qt заглянул :-) Так даже пионеры редко пишут :-) Лол :-)

anonymous
()
Ответ на: комментарий от anonymous

Ты своей неадекватностью и попугайничеством позоришь доброе имя анонимуса.

Это ты давай кэша досвидания :-) Лол :-)

anonymous
()
Ответ на: комментарий от RazrFalcon

Ну давайте пройдемся «по конкретике»

GPLv3 для либы - клиника.

Бред.

Хотя в сорцах LGPL...

Речь вообще не про лицензию на код. Но, судя по двум файлам COPYING, эта библиотека лицензируется сразу под GPLv3 и LGPLv3.

Отсутствие coding style. Как хочу, так и пишу.

Не заметил.

Сборная солянка. Тут и json, и строки (сюрприз), и что угодно. Предназначение либы совершенно не понятно.

К качеству кода это не имеет отношения. Опять же нет информации о том, для каких целей все это создается. Может в условиях dzidzitop-а это оправданное велосипедостроение.

Собственный assert, что странно.

Ничего странного. Бывает, что делают собственные assert-ы, если хотят получить от них что-то больше, чем от стандартного. В этом случае хотят иметь stack trace. Вполне достаточное обоснование для собственного assert-а.

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

Почему бесполезно, вы, конечно же, сказать откажетесь.

Бессмысленные шаблоны.

Если вы не видите смысла в шаблонах, это еще не значит, что они бессмысленные.

Ну вот смысл от шаблонов при генерации URL?!

Если речь про UrlBuilder, то шаблоны здесь вполне могут использоваться, чтобы получить нужный вариант UrlBuilder-а в compile-time.

Своя реализация md5. Круто. «ПМ не нужен, нам и так хорошо.»

И что? Ради md5 тащить в свой проект OpenSSL, Botan или Crypto++? А если искать готовую стороннюю реализацию md5 и подключать ее к себе посредством какого-нибудь менеджера зависимостей, то откуда уверенность, что сторонняя реализация лучше?

Отсутствие документации.

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

Жуткий код: раз, два, три.

И что тут жуткого? В двух случаях из трех просто большой набор конструкторов. Где-то с применением SFINAE, но это вполне обычное дело для шаблонных конструкторов.

Ну и вишенка на торте: 0 звёзд за 4 года. Ненужно!

К качеству кода и способу использования C++ это вообще не имеет отношения.

Итого, претензия по делу всего одна: по поводу документации. Как-то слабовато для «Это эталонный ужас».

eao197 ★★★★★
()
Ответ на: комментарий от RazrFalcon

Тут и json, и строки (сюрприз), и что угодно...Очередная попытка исправить кривой std, который «не кривой», ага.

Судя по тому, что в afc::SimpleString и в afc::FastStringBuilder для управления памятью используются std::malloc и std::free, а так же присутствует метод detach, который снимает владение с SimpleString/FastStringBuilder и возвращает наружу голый указатель, эти классы предназначены для интеропа с C (а через C, возможно, и с другими ЯП). std::basic_string такого не умеет.

eao197 ★★★★★
()
Ответ на: комментарий от eao197

std::basic_string такого не умеет.

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

anonymous
()
Ответ на: комментарий от den73

Ну да-да, зато по лиспу, вместе с кложей, вакансий целых 3 - как раз в 1000 раз меньше

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

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

nihirash ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.