LINUX.ORG.RU
ФорумTalks

Самые уродливые ЯП


0

2

Какие языки программирования/автоматизации, из числа тех, что вам действительно доводилось использовать на практике, были самыми неудобными и уродливыми?

Мне в память больше всего врезались:

  • LAMMPS script
  • vimscript
  • bash
  • GLSL

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

да ещё в прошлом веке были в C++ SmartPointer'ы, которые умели находить что тебе угодно.

ну вот wota говорит, что без libastral-а никуда

что тебе мешает сделать всё тоже самое в C++? Хоть шаблонами, хоть другим модулем.

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

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

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

это у тебя он частый, а императивщики пишут просто:

for( int& n : v )
    ++n;

шёл 21 век...
только иммутабельность, только хардкор!

я предпочитаю реальность лозунгам :)

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

не особо нужны, кому надо ФП - берут другие ЯП

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

не особо нужны, кому надо ФП - берут другие ЯП

ладно, утомился я :)

Пойду не поработаю не на дядю, шабат, да и погода хорошая.

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

ну вот wota говорит, что без libastral-а никуда

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

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

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

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

Ну времени уже сколько прошло)
В виме вообще есть пара древних моментов, которые было бы очень неплохо поправить

Интегрировать с сустемд, например :D ^U

actics
()

Работал я как-то в конторе под названием «Кодекс», так там было разработано нечто под названием «KScript», которое как бы серверный JavaScript (ога, даже замыканий нету). Работали с этим только сильные духом.

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

а как тогда он модуль компилировал?

он его 10 лет назад компилировал, и не знал, что 1≤i≤5 сейчас. А если компилировать два таких модуля сразу — будет знать.

Вот я сейчас написал примитивный пример с std::vector (из STL)(12 строчек). На выходе получился файл в 20224 строк на C++, с учётом ВСЕХ хидеров. Круто, да?

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

ну вот wota говорит, что без libastral-а никуда

если твоя религия позволяет тебе только тупые сишные указатели применять - таки да.

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

они сделали STL. Чем ты недоволен?

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

KISS — это простота не использования, а реализации.

пруф можно?

Интерпретатор пишется за пять минут.

и что это доказывает? В этом «ЯП» вообще ВСЁ уродливое. Реализация конечно простая, ну прям как транспортное средство — коровье дерьмо. Вот специально для тебя картинка, а теперь доказывай, что на ЭТОМ нельзя ездить. Можно, причём очень быстро. Т.е. если считать «простоту реализации», и «возможность получение нужного функционала», то коровье дерьмо как транспортное средство вполне годно, да ещё и полностью соответствует твоему KISS принципу.

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

пруф можно?

http://en.wikipedia.org/wiki/KISS_principle

и что это доказывает?

Что BF прост как палка.

Реализация конечно простая, ну прям как транспортное средство — коровье дерьмо.
теперь доказывай, что на ЭТОМ нельзя ездить.

Сначала докажи, что на этом можно ездить, умняша.

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

http://en.wikipedia.org/wiki/KISS_principle

для Ъ: The principle is best exemplified by the story of Johnson handing a team of design engineers a handful of tools, with the challenge that the jet aircraft they were designing must be repairable by an average mechanic in the field under combat conditions with only these tools. Hence, the 'stupid' refers to the relationship between the way things break and the sophistication available to fix them.

А теперь напомню, что мы про ЯП говорим. Вот код helloworld выше, исправь его так, что-бы он печатал «Привет, мир!», слабо?

А теперь сравни с C на Windows, там попроще, но всё-же не очень, ибо придётся почитать MSDN, и узнать, что там программы ты пишешь в cp1251, а работают они в cp866.

А теперь сравни с Linux

#include <stdio.h>
int main (void) {
    printf ("Привет мир!\n");
    return 0;
}
можешь сам убедиться, что оно отлично работает в любом Linux. И исправить может любой, даже тот, кто вообще никогда код не писал.

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

Не могу понять, чем тут народу bash не угодил.

не осилили.

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

могу и не съежать: простота интерпретатора только кажущаяся. На самом деле, это НЕ интерпретатор, а виртуальная машина. Она — да, простая. Можно и не виртуальную собрать, любому школьнику из говна и палок за пару часов. А вот переложить это дело на любой ассемблер у тебя просто так не получится, слишком разные принципы. Даже с LISP'ом и то попроще.

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

На самом деле, это НЕ интерпретатор, а виртуальная машина.

Диалог можно прикрутить, но не суть.

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

А кто ж спорит

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

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

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

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

да ты наркоман вдвойне. нука выкати кусок кода, который тебя коробит + его аналог на hlsl

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

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

нука выкати
ты наркоман
ты

С таким как вы мне разговаривать не хочется, извините.

dmfd
() автор топика
Ответ на: комментарий от AptGet

входной язык autotools

Удваиваю этого оратора. Ничего страшнее в жизни не видел.

no-such-file ★★★★★
()

На основе XML: например, скрипты для ant или XSLT.

C++ ужасен, примерно как многие естественные языки (например, русский) на фоне эсперанто. Но за уродливость это не считаю, пока не придумали альтернативу, сравнимую по возможностям, но менее ужасную.

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

За 2 недели фултайм можно освоить досконально любой ЯП.

Нет. За 2 недели фуллтайма можно освоить (да и то не досконально) язык, похожий на один из тех, которые уже досконально освоены. А если имеем аьбстрактного императивного/ООП прогера в вакууме, а новый язык - что-то вроде Хаскеля или Merсury, то это не две недели.

На библиотеки нужен еще месяц.

Ахаха. Чтобы освоить все библиотеки Явы, не хватит жизни %) В зависимости от осваиваемого набора библиотек на это может уйти и больше месяца, и меньше.

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

проблема в том, что даже когда без неё вполне можно обойтись - без неё в C, и что самое страшное,в якобы высокоуровневом C++ - без неё нельзя обойтись

проблема в том, что програмист на жабе - рукожопый code monkey. поэтому у рукожопых вечно «память утекает» и всё падает

ckotinko ☆☆☆
()

python
мозг уродует донельзя

megabaks ★★★★
()

Pascal

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

quantum-troll ★★★★★
()

bash

он божественнен
прост и понятен

megabaks ★★★★
()

PHP своими бесконечными вопросами и скобками, HTML, XML (править только приходилось, но все же), Pascal я бы вписал сюда же, хоть он и выглядит чуть более адекватно, но скорее только потому, что ненавижу его всей душой как никому никогда и низачем не нужный калл, виндовый cmd это вообще в отдельный расстрельный список вместе с еще чем то, чего я сейчас не вспомню. Ну и Русский язык в конце концов, почти всю жизнь на нем программирую, в основном на бумаге шариковой ручкой, ненавижу.

SjZ ★★★★★
()
Ответ на: комментарий от quantum-troll

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

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

после изучения Си можно начать осиливать Кресты, за программирования на которых платят настоящие деньги

Программировать за настоящие деньги можно на чём угодно.

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

LOL.

// Я, кстати, паскаль не знаю совсем.

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

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

разбавляя это дерьмо формочками и нашлепыванием бессмысленных кнопок и боксов

MVC нынче не проходят? Печально.

Кресты

Воистину, язык костылей. Казалось бы, индустрия клином не сошлась на плюсах, иди учи нормальный язык, но нет — ТОЛЬКО ПЛЮСЫ, ТОЛЬКО ХАРДКОР.

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

quantum-troll ★★★★★
()
Ответ на: комментарий от olibjerd

Я, кстати, паскаль не знаю совсем

Везет же людям...

SjZ ★★★★★
()
Ответ на: комментарий от quantum-troll

индустрия клином не сошлась на плюсах

Еще как сошлась.

паскаль уже порядком устарел

...лет эдак 20 назад.

заменить на какой-нибудь современный, но простой ЯП — например,

...Пистон, как уже предлагал один человек, но всем как всегда. Да и Си по прежнему востребован.

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

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
https://github.com/languages
Нет, не сошлась.

Пистон

Динамическая типизация, сомнительный синтаксис, не умеет в конкурентность, и так далее.
Но в принципе, не столь плохой вариант.

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