ЯП для прототипирования
От: varenikAA  
Дата: 24.11.20 03:16
Оценка:
Какой ЯП вы предпочитаете для создания прототипа?
Основной или отдельный типа кложы фшарпа?
В чем его приемущество перод основным?
И почему окончательная версия все же на другом ЯП(обстоятельства, иные приемущества)?

Я вот балдею от лиспа, синтаксис кложы более выразителен(ты просто смотришь на хешмапу и видишь живые данные), одна идею можно четко выразить на алгебраических типах в фшарпе, которые сразу отсекут не нормированное множество значений.
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re: ЯП для прототипирования
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 24.11.20 03:38
Оценка: +4
Здравствуйте, varenikAA, Вы писали:

AA>Какой ЯП вы предпочитаете для создания прототипа?


Python

AA>Основной или отдельный типа кложы фшарпа?

AA>В чем его приемущество перод основным?

Потому что а) писать реально быстро, б) есть библиотеки для вообще всего, в) читать его умеют вообще все, г) есть Jupyter.

AA>И почему окончательная версия все же на другом ЯП(обстоятельства, иные приемущества)?


Ну тормозной же как улитка

AA>Я вот балдею от лиспа, синтаксис кложы более выразителен(ты просто смотришь на хешмапу и видишь живые данные), одна идею можно четко выразить на алгебраических типах в фшарпе, которые сразу отсекут не нормированное множество значений.


Ага, Clojure — это круто, только мало кто согласен читать Lisp-ы в современном мире. И его динамическая типизация отстой даже если сравнивать с Python, где всё же аннотации прижились и стали хорошим тоном.
Re: ЯП для прототипирования
От: a_g_99 США http://www.hooli.xyz/
Дата: 24.11.20 04:23
Оценка:
Здравствуйте, varenikAA, Вы писали:

AA>Какой ЯП вы предпочитаете для создания прототипа?

если не мл то ruby
Re: ЯП для прототипирования
От: varenikAA  
Дата: 24.11.20 05:58
Оценка:
Здравствуйте, varenikAA, Вы писали:

AA>Какой ЯП вы предпочитаете для создания прототипа?


query {
    for e in ctx.Spets.WpPosts do
        where (e.PostType = "product")
        select e
        take 10
} |> Seq.iter (fun e -> printfn "%s" e.PostTitle)


А мне вот всё больше нравится фшарп. только вот заметил, что чем мощнее и удобней ЯП, тем сложнее его запустить.
Под капотом уже не паровая машина, а термоядерный реактор, если образно.
Пример, провайдеры типов(код выше), столько надо знать чтобы запустить это чудо инженерной мысли. )))
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re: ЯП для прототипирования
От: student__  
Дата: 24.11.20 10:43
Оценка:
Здравствуйте, varenikAA, Вы писали:

AA>Какой ЯП вы предпочитаете для создания прототипа?


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

В большинстве "десктопно-вебсервиснных" случаев Python, ибо:
1) есть нативные библотеки и биндинги для очень широкого спектра задач;
Не будет сильным преувеличением сказать, что на сегодняшний момент Python "залез в каждую дырку";
2) кроссплатформа, будет меньше проблем с переносом;
3) Императивная ООП парадигма, легко переписывать на мейнстрим язык;
4) Наличие простых/примитивных средств для экспериментов (Jupyther), ускоряющих изучение неизвестных библиотек в режиме REPL и с визуализацией;
5) Интерпретируемость (отсутствие фазы компиляции) ускоряет эксперименты;
6) при случае можно даже не переписывать на целевой ЯП, а ограничиться переписыванием боттлнеков на С;


Минусы:
1) GIL, может быть неудобно прототипировать все, что связано с task parallelization;
2) ЯП с динамической типизацией и интерпретируемый, если не используется подход "test by run", могут быть скрытые баги на ровном месте.
Re[2]: ЯП для прототипирования
От: amironov79  
Дата: 25.11.20 08:01
Оценка:
Здравствуйте, student__, Вы писали:

__>2) ЯП с динамической типизацией и интерпретируемый, если не используется подход "test by run", могут быть скрытые баги на ровном месте.


Тот, для кого динамическая типизация минус, всегда может использовать typing.
Re[3]: ЯП для прототипирования
От: Artem Korneev США https://www.linkedin.com/in/artemkorneev/
Дата: 03.12.20 21:48
Оценка:
Здравствуйте, amironov79, Вы писали:

A>Тот, для кого динамическая типизация минус, всегда может использовать typing.


Оно не даёт гарантий. Изрядно помогает, но гарантий не даёт. Вообще, без компиляции проверить согласованность всех исходников физически невозможно — если я поменял внешний интерфейс своего модуля, то пока я не загружу в IDE все клиентские модули или не запущу их, я не узнаю, что и где там сломалось.

Но для мелких скриптов этого достаточно, да.
С уважением, Artem Korneev.
Re: ЯП для прототипирования
От: rosencrantz США  
Дата: 04.12.20 04:38
Оценка:
Здравствуйте, varenikAA, Вы писали:

AA>Какой ЯП вы предпочитаете для создания прототипа?


Не умею писать "прототипы", делаю сразу настолько адекватно, насколько умею.
Re[4]: ЯП для прототипирования
От: amironov79  
Дата: 04.12.20 09:22
Оценка:
Здравствуйте, Artem Korneev, Вы писали:

AK>Оно не даёт гарантий. Изрядно помогает, но гарантий не даёт. Вообще, без компиляции проверить согласованность всех исходников физически невозможно — если я поменял внешний интерфейс своего модуля, то пока я не загружу в IDE все клиентские модули или не запущу их, я не узнаю, что и где там сломалось.


Почему не дает гарантий? Чем проверка типов линтером будет отличаться от проверки типов компилятором?
Re: ЯП для прототипирования
От: HFTMan  
Дата: 04.12.20 09:29
Оценка: +1
Здравствуйте, varenikAA, Вы писали:

AA>Какой ЯП вы предпочитаете для создания прототипа?

F#
Re: ЯП для прототипирования
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 04.12.20 17:40
Оценка:
Здравствуйте, varenikAA, Вы писали:

AA>Какой ЯП вы предпочитаете для создания прототипа?

AA>Основной или отдельный типа кложы фшарпа?
AA>В чем его приемущество перод основным?

Последний раз, когда на работе делал прототип, писал его на Хаскеле. Ибо удобные алгебраические типы и вообще многое короче выходит.

AA>И почему окончательная версия все же на другом ЯП(обстоятельства, иные приемущества)?


Основной проект на D, поэтому когда на прототипе решение нащупал, потом перевел на D и дальше развивал уже там.
Re[5]: ЯП для прототипирования
От: Artem Korneev США https://www.linkedin.com/in/artemkorneev/
Дата: 04.12.20 19:05
Оценка:
Здравствуйте, amironov79, Вы писали:

A>Почему не дает гарантий? Чем проверка типов линтером будет отличаться от проверки типов компилятором?


Про линтер я почему-то не подумал. Да, наверное линтер справится.
Линтер может сделать указание типов обязательным? Выдавать ошибку, если тип не указан.
С уважением, Artem Korneev.
Re[6]: ЯП для прототипирования
От: amironov79  
Дата: 06.12.20 07:14
Оценка: 1 (1) +1
Здравствуйте, Artem Korneev, Вы писали:

AK>Про линтер я почему-то не подумал. Да, наверное линтер справится.

AK>Линтер может сделать указание типов обязательным? Выдавать ошибку, если тип не указан.

Может, у mypy достаточно гибкий конфиг. Может даже динамическую типизацию запретить.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.