Re[32]: на чём писать бэкенд?
От: Ночной Смотрящий Россия  
Дата: 03.06.19 06:51
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Да ладно, когда у тебя любое S-выражение можно выполнить на лету, это куда как удобнее. В языках с компиляцией это еще пересборка


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

KP>, написание теста


Зачем для REPL написание теста?

KP> и т.д., что куда как более трудоемкие задачи на фоне "выполнить S-выражение".


Трудоемкие для кого?

KP> но только REPL до сих пор вне конкуренции в отличие от остальных возможностей.


Ну сделали в дотнете REPL, и? Никто им не пользуется.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[33]: на чём писать бэкенд?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 03.06.19 07:15
Оценка: :)
Здравствуйте, Ночной Смотрящий, Вы писали:

KP>> но только REPL до сих пор вне конкуренции в отличие от остальных возможностей.

НС>Ну сделали в дотнете REPL, и? Никто им не пользуется.

Ожидаемо, REPL действительно хорош только при наличии S-выражений. Во всех остальных случаях лучшее будет уровня Jupyter, что хорошо, но не великолепено.
Re[34]: на чём писать бэкенд?
От: Ночной Смотрящий Россия  
Дата: 03.06.19 08:43
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Ожидаемо, REPL действительно хорош только при наличии S-выражений. Во всех остальных случаях лучшее будет уровня Jupyter, что хорошо, но не великолепено.


Но все равно не пользуются. А Jupyter — пользуются. Так может REPL языкам с проверкой типов не так уж и нужен?
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[35]: на чём писать бэкенд?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 03.06.19 08:46
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Но все равно не пользуются. А Jupyter — пользуются. Так может REPL языкам с проверкой типов не так уж и нужен?


Ты это адептам Haskell расскажи
Re[36]: Сполски
От: Evgeny.Panasyuk Россия  
Дата: 03.06.19 11:43
Оценка:
Здравствуйте, kaa.python, Вы писали:

EP>>Есть Hy. Это Lisp с двусторонней совместимостью с Python. Ему доступны все Python'овские библиотеки by-design.

KP>Не знаю, Python все же и сам имеет просто прекрасный синтаксис и возможности с одной стороны и улучшения тут врятли нужны

Нормальных лямбд например нет — без них использование ФВП становится более громоздким. В Python либо однострочные lambda, либо многострочные не-лямбда замыкания def fun. В Hy соответственно есть нормальные лямбды.
Ну и макросы конечно же. Собственно во время написания очередной типовой синтаксической конструкции на Python, которую хотелось бы вынести за скобки, а нормально на Python'е никак — поймал себе на мысли что хорошо бы Python с Lisp'омподружить (а-ля Clojure), пошёл в Google и обнаружил Hy

KP>плюс он и так дико тормозной с другой стороны и делать его еще медленнее за счет дополнительной прослойки та еще идея.


Там где Python используется это обычно рояли не играет. Да и макросы в итоге вполне могут быть быстрее встроенных аналогов.
Re[32]: на чём писать бэкенд?
От: Evgeny.Panasyuk Россия  
Дата: 03.06.19 12:02
Оценка:
Здравствуйте, kaa.python, Вы писали:

EP>>По части обратной связи при "игре с кодом", юнит тесты (в том числе на C++, ага) ничем не уступают — написал строчку, нажал кнопку (или настроил авто-запуск) и через мгновение получаешь результат

KP>Да ладно, когда у тебя любое S-выражение можно выполнить на лету, это куда как удобнее.

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

KP>В языках с компиляцией это еще пересборка,


Переборка одного юнит-теста это обычно очень быстро, даже на C++.

KP>написание теста и т.д.,


Так его и не нужно писать. У тебя либо уже есть готовая песочница в которую ты переходишь по одной кнопке/команде.
Либо если этот тест планируется оставить — запускаешь одну команду которая спросит имя и весь этот boilerplate создаст за тебя, да ещё и курсор в нужное место переведёт.
Re: на чём писать бэкенд?
От: trop Россия  
Дата: 03.06.19 12:36
Оценка:
Здравствуйте, Dair, Вы писали:
D>Хотел было в веб-программирование, но там трут за фронтенд, решил сюда.
D>Я в основном умею в C++, но пишу ещё на Swift и Kotlin.

"хорошо ложка к обеду"

написать на kotlin ,потом, если нужно будет, нанять обезьян которые перепишут на ноде
-
Re[33]: на чём писать бэкенд?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 03.06.19 13:01
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Так его и не нужно писать. У тебя либо уже есть готовая песочница в которую ты переходишь по одной кнопке/команде.

EP>Либо если этот тест планируется оставить — запускаешь одну команду которая спросит имя и весь этот boilerplate создаст за тебя, да ещё и курсор в нужное место переведёт.

А что такие волшебные вещи в Emacs умеет делать!?
Re[34]: на чём писать бэкенд?
От: Evgeny.Panasyuk Россия  
Дата: 04.06.19 13:18
Оценка: 1 (1)
Здравствуйте, kaa.python, Вы писали:

KP>А что такие волшебные вещи в Emacs умеет делать!?

EP>>У тебя либо уже есть готовая песочница в которую ты переходишь по одной кнопке/команде.

Это обычные закладки.

EP>>Либо если этот тест планируется оставить — запускаешь одну команду которая спросит имя и весь этот boilerplate создаст за тебя, да ещё и курсор в нужное место переведёт.


Это 5-10 строчек Lisp'а — спрашиваешь у пользователя название теста, копируешь файл-шаблон теста в нужное место, заменяешь плейсхолдеры в шаблоне на то что ввёл пользователь, и переходишь на нужную строчку.
Вместо файла-шаблона можно открыть пустой файл и вставить нужный yasnippet.

Но это можно и без Emacs — обычным внешним скриптом, последней командой которого отрываешь файл теста на нужной строке в нужном редакторе.
Re[28]: на чём писать бэкенд?
От: vdimas Россия  
Дата: 04.06.19 14:30
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Ты не в ту степь пошел совсем. Причина намного проще — почти всегда клиентов у сервера существенно больше, чем имеет смысл делать потоков выполнения.


При условии тяжеловесности переключения потоков ср-вами ОС, иначе не принципиально.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.