LINUX.ORG.RU
ФорумTalks

Выразительный/компактный ЯП, спортивное прототипирование


0

4

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

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

Тема навеяна тем, что в связи с работой фулл-тайм и учебой хочу вываливать лабы со скоростью света. Так же иногда нужны тулзовины для автоматизации рутинных задач. В итоге написал приложение на выходных с работой с файлами, кучей форумул, графическим интерфейсом на 6 таблиц, которые взаимосвязаны с общей моделью данных, зависят от друг друга, могут редактироваться и в зависимости от этого пересчитываться. Возможны специальные режимы заполнения данных, комбобоксы и т.д. Таблицы формируют отчет в CSV, который потом можно копипастить в протокол

Около 330 строчек один Scala файл. Делимся историями успеха.

P.S. Много людей написали Python. Почему я его не юзаю. Иногда нужно в цикле колбасить числа, ЯП должен быть готов делать это как С++, или хоть приблизительно на такой скорости. Так же вся динамика меня не устраивает качество code completion, который по понятным причинам нельзя сделать качественно

★★★★★

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

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

Karapuz ★★★★★
()

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

Что-то мне кажется, что топикстартер просто понтуется своими профессиональными навыками.

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

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

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

Вы тот говнокод видели? Там ссылка дальше. Это **ный стыд, а не код. Из ФП там обычный monkey see, monkey do из трех операций. И это очень сократило код

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

> Вы тот говнокод видели? Там ссылка дальше. Это **ный стыд, а не код. Из ФП там обычный monkey see, monkey do из трех операций. И это очень сократило код

Показное самоуничижение - это другая форма понтов. И да, я видел код, хотя и не могу судить о его качестве.

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

Показное самоуничижение - это другая форма понтов

Я так понял что вы зашли поговорить явно не по теме.

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

> Его _быстро_ можно писать?

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

:)

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

> Я так понял что вы зашли поговорить явно не по теме.

По теме тебе сказали уже много всего, но я не вижу, чтобы ты что-то выбирал.

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

Пайтон банален. Нет защитников груви и нет лисперов и хасскеллистов, которые реально пишут на эти ЯП, реально пишут быстро. Хотелось бы срача. Пока срач уныл

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

Это жесть даже не потому что она формируется в рантайме, а потому что с этим элементарно неудобно работать. К элементам формы потом обращаться по именам и кастить типы, вместо того чтобы просто обращаться к полям структуры.

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

Запасусь попкорном и буду смотреть как поляк метелит болгарина.

Славяне такие славяне :)

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

> Тогда надо было говорить Common Lisp :)

Не знаю, как дела с Common Lisp. Как минимум, я слышал, что на Lisp пишут какой-то полезный софт. Поэтому Haskell, даже если не шутить.

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

>Komintern, Othniel, тоже хотелось бы пообщаться на эту тему с опытными. Может научите чему?

Спрашивай свои ответы :) Я на самом деле тоже только учусь, и скажу что самое замечательное это Advanced Bash-Scripting Guide: http://www.opennet.ru/docs/RUS/bash_scripting_guide/ И хоть это в основном по BASH'у, я отфильтровываю только нужное мне (POSIX shell).

Пока я пытался разбираться в чужом коде ничего не выходило. Как только начал писать свой, - начал понимать что пишут другие. Для меня помимо всей документации учебниками являются код /etc/rc.subr и прочих системных скриптов :)

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

Её и я активно зубрю... ;)

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

Если коротко, то просто нужен коллега с кем можно будет обсудить тупиковые ситуации.

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

А не например думал пол часа, потому одну строчку написал... Потом еще пол часа

Про полчаса вы загнули. Конечно, тут строчки не пишуться стремительным потоком одна за другим. Подумал минутку-две, написал строку. Подумал ещё — написал. В итоге же выходит быстрее. Плюс учитываем, что чем меньше кода — тем меньше багов, а следовательно время на отладку. Хаскель к тому же имеет достаточно высокоуровневые конструкции и огромнейшую библиотеку => не приходится изобретать велосипед; надо лишь, грубо говоря, из конструктора собрать то, что нужно.

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

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

> А сколько из этих 340 экзистенциальные типы и фолды? ведь без них на скале нельзя писать

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

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

>Если коротко, то просто нужен коллега с кем можно будет обсудить тупиковые ситуации.

Так это без проблем! Мой JID знаешь, стучись.

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