LINUX.ORG.RU

Почему многим не нравятся следующие ЯП?

 


0

2

Например, Shell (я про sh, а не про bash), Perl (и вообще редко вспоминаемый Raku), Lua, JS. При этом массово пишут программы на Python (странный ЯП, логику написанной программы можно сломать одним пробелом и даже не пикнет, что программист ошибся).

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

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

Это же просто описание C++. За логичностью надо идти в функциональщину, OСaml, Haskell, и т. п.

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

у кого занял?

у меня например. И есть еще код на py2 который до сих пор не переведен. В частности потому что 2to3 много с чем не справляется, приходится ручками править а местами и логику немного менять.

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

у меня например. И есть еще код на py2 который до сих пор не переведен.

Если проект не развивается активно, то нафиг не надо его ни на что переводить.

у меня например.

а у меня все переведено :)

потому что 2to3

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

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

При переводе проблемы со swig-ом, с этими дурацкими байтовыми строками и ещё со всяким разным.

Оно нужно, им пользуются постоянно - но пока проще приволочь py2 чем переводить на py3.

AntonI ★★★★★
()

Почему многим не нравятся следующие ЯП?

А почему они должны нравиться?

(странный ЯП, логику написанной программы можно сломать одним пробелом и даже не пикнет, что программист ошибся).

Странный аргумент, логику в js и perl можно сломать любым символом кроме пробела.

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

Тем что это однопоточный диспетчер очередей на языке который для этого не предназначен

Это касается и php с python-ом (они тоже однопоточные и блокирующие, GIL пока на месте). Вот C# и JAVA я не просто так выделил, они другие.

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

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

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

Это касается и php с python-ом (они тоже однопоточные и блокирующие, GIL пока на месте)

PHP вообще умирает после каждого запроса, но php fpm позволяет делать воркеры образуя неблокирующий многопоток. А в Python вполне себе есть threading.Thread.

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

Нет конечно. Более-менее большой программой считаются программы от 10К строк.

Чисто по строкам некорректно будет оценивать, скажем хаскель или лисп с макросами в те же 10к позволяют упаковать программу аналог который на традиционных ООП языках будет >100k строк.

anonymous
()

sh мне не нравится тем, что в нём слишком многого не хватает, а также тем, что я не понимаю, где его взять. Есть всякие dash, режимы совместимости у разных shell-ов, но по сути это всё мишура и не гарантирует того, что ты ничего не упустил. К тому же, когда пишешь на sh, предполагается, что ты и другие тулзы используешь в рамках POSIX, а это добавляет ещё больше неопределённости. Конечно есть shellcheck но он не идеальный.

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

Perl - не знаю, даже, раньше я на нём писал, а последние лет 15 забросил. Как-то вышел он из моды. Сам не понимаю - почему. Для задач обработки текста ничего лучше я не знаю.

Lua и JS отличные языки, мне нравятся.

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

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

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

А размер проекта от которого растёт головная боль зависит от языка. Внезапно Java и C# разработчики упарываются в архитектуру и абстракции больше других как раз потому что у них проекты быстро пухнут. Ну ещё и C++ разработчики тоже вынуждены, но их ещё и производительность беспокоит так что совсем бездумно ехал интерфейс через интерфейс и классы пустые чтоб красиво наследоваться они не так часто пишут.

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

И бухгалтера на счётах успешно считали.

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

Француз Блез Паскаль начал создавать суммирующую машину «Паскалину» в 1642 году в возрасте 19 лет, наблюдая за работой своего отца, который был сборщиком налогов и часто выполнял долгие и утомительные расчёты.

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

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

Это не поможет, тулзы могут вести себя по разному в разных ОС, при этом как бы быть POSIX-совместимыми. По ссылке дичь, но вполне конкретный пример разного поведения простых конструкций под Линукс и БСД 8 два head -n 1 из файла

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

P.S. мне sh не нравится тем, что в каждую тему про bash-скрипт придёт кто-нибудь и начнёт доказывать, что башизмы это плохо и всё нужно писать на sh.

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

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

не самое главное

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

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

Всё так, только мало их было калькуляторов. Хотя после середины 80 ситуация стала выравниваться. Вы какой отрезок времени имели ввиду?

кому оклад, кому сделку, кому почасовка

«Единицы нормы и расценки» - брошюрка такая была, достаточно стабильные рачеты были даже очень рутинные без инфляции. Обсчитаешь - БХСС, работяги с этой брошюрой в профсоюз пойдут.

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

Нда.. так о чём это я?

Бугалтеры остановились потом на кальулятарах с крупными кнопками, и с жалостью стали посматривать на гиков с минималистическими девайсами, а наиболее жалостливые ещё и молочка наливать подкармливать. Что поделать.. дурачки))))

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

даже индексация с 1 обычно

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

Кстати, в паскале можно индексировать с любого числа. Массив по диапазону 8..17? Пожалуйста! И с нулём, разумеется, тоже никаких проблем.

// Мимо крокодил писатель на C++ и изредка на сишке без плюсов.

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

счёты проиграли калькуляторам

Между ними были арифмометры. Пацаном разобрал три штуки (мама работала на машиносчётной станции) – до сих пор не израсходовал все винтики-болтики. :)

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

Я не про какой-то конретный год/месяц. Я про то, что даже если blef2021 такой уникум, что:

На абаках быстрее калькулятора простые исчисления выполняю.

То в среднем по палате (бухгалтерии) калькулятор оказался быстрее счёт. И проводились местечковые соревнования, кто быстрее счёты или калькулятор...

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

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

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

mky ★★★★★
()