LINUX.ORG.RU
ФорумTalks

Образец годного ЯП

 ,


0

7

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

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

2. Обязательно наличие строгой статической типизации: никаких int = double быть не должно. Желательно иметь о подобном предупреждение по дефолту. В идеале - сообщение об ошибке.

3. Желательна, но не обязательна объектная ориентированность: цель структурирование кода, настоящая модульность.

4. Желательно наличие REPL дабы можно было на лету проверять свои догадки и предположения о тех или иных аспектах кода.

5. Мэйнстримный: брейнфаки идут лесом ибо некому сопровождать и поддерживать код.

1. Каковы ваши предпочтения?

2. Есть ли что-нибудь удовлетворяющее этим пунктам?

Дискасс.

★★★★★

Последнее исправление: LongLiveUbuntu (всего исправлений: 1)

>2. Есть ли что-нибудь удовлетворяющее этим пунктам?

кроме 4-го пункта — Ада.

arsi ★★★★★
()

Краткая суть ОП: «мозг не нужен»

Где-то я уже читал, про идеальный ЯП. Ты пишешь по-русски «необходимо разработать проект, согласно таким-то пожеланиям ..., срок до ...» и жмешь кнопочку «отправить письмо».

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

А второе, какой ты, к черту, программист, если не можешь выбрать несколько элементов из вполне себе конечного нечетко описанного множества?

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

Кажется, ты путаешь строгую и статическую типизацию. Для статики вполне есть реплы хаскеля и sml

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

Дональд Кнут же дурачок, а вот buddhist всё знает как правильно

http://rutracker.org/forum/viewtopic.php?t=3757255

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

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

Scala

это ЯП который обязан сменить С++, если во втором только недавно к NULL добавили nullptr, то в первом есть null, Null, None, Nothing и Nil

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

Назови по-настоящему типизированный строгий скриптовый язык.

У тебя там «интерпретируемый/скриптовый», если что. Впрочем, строго типизированный скриптовый язык - Perl. А может, тебе нужен статически типизированный интерпретируемый язык? Java, Ocaml.

tailgunner ★★★★★
()

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

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

Выбор из двух и более кандидатов. Самый демократический язык.

LongLiveUbuntu ★★★★★
() автор топика

По удобству написания меня более всего устраивали Java (NetBeans IDE) и C# (MS Visual Studio, Windows). Но вот оба ужасно медленно работают с попиксельной отрисовкой графики. Для C#, к тому же, на порядок меньше живых поддерживаемых библиотек, чем для Java. А Java нифига не лаконична и требует обёртки для всех возможных исключений, что увеличивает код в 2 раза. С UI в Java тоже не очень удобно работать, WinForms под C# интуитивнее. Однако, те самые WinForms не умеют работать в мультитредовых приложениях, соответственно, всякие городушки с BackgroundWorkers, таймерами и Invoke'ами. WPF с XAML невыносимы в силу новомодного MVC.

Хочу один из этих языков со всеми фичами соответствующих IDE, но с UI на HTML5...

Sadler ★★★
()

Первое условие бредово и по сути то же самое, что и второе.
Короче Ocaml. Или Scala. Или F#. или вообще Haskell. Выбор «есть».

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

Ну понятно, что и на Скале скрипты писать можно, но зачем?

хотел написать в ответ стену текста, потом увидел ник и стер стену текста назад

stevejobs ★★★★☆
()

зачем ты описал haskell?

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

Ага, особенно радует исключение Interrupted для Sleep :))) Вот, блин, постоянное место сегфолтов. В результате каждый слип оборачивается...

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

Но вот оба ужасно медленно работают с попиксельной отрисовкой графики

а если написать этот вывод на сях, и потом дернуть через JNI?

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

Дональд Кнут же Б-г, и его мнение является единственно верной непререкаемой истиной.

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

Придётся во-первых написать такую либу, а во-вторых, компилить для всех платформ, 32- и 64-битных.

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

Это ведь настраивается в самой среде.

Впервые слышу о возможности подавить ошибку «необработанное исключение». Может быть, для этого нужно перейти на Eclipse с NetBeans?

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

Ой да ладно, в том треде вы пишите такую ахинею, что аж читать становится смешно:

1)Вырвиглазный синтаксис

А ничё, что в Java/C# он как минимум такой же, а местами и хуже: очень доставляет перед _каждым_ методом писать модификатор доступа. А так в целом, все более-менее ынтерпрайзные и распространённые языки наследуют синтаксис плюсов.

2)Ручное управление памятью — auto_ptr, есть уже в стандартных либах, есть в бусте умные указатели, есть наконец и сборщики мусора - подключай, да пользуйся. Зато! Динамическая память доступна, вообще-то, не везде. Ну ой, да? Ваш мега язычок тупо не заработает by design.

5) пункт вообще уг какое-то: питон наследует tk из tcl и никто не жалуется.

6) вменяемая работа со строками есть, вас обманули

7)42 - в С++ сильная типизация и ещё какая.

8)42 на 42 сидит и 42 погоняет

Ну это так, краткий обзорчик — остальные пункты тоже бредовые.

next_time ★★★★★
()

Хаскель. В ноябре, после того как протрезв^W закончится ICFP, обещают выпустить GHC 7.8, в который будет добавлено много весьма годных фич.

А если аллергия на хаскель, то вон тут некий сумрачный гений пилит Mythril — «промышленный» форк SML/NJ.

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

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

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

Да уж напиши, мне интересно.

если убрать тонну баттхерта и оставить REPL, то в чем наши альтернативы? Ну, еще питон, но чую не по нраву он тебе

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

В месте <int> = <double>, <bool> = <ptr>, <int> и еще в дофига каких.

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