metaclass: (дзедline)
[personal profile] metaclass
В целях недопущения упрощения жизни, а так же чтобы псить, при необходимости, со знанием дела, осиливаю скалу.
Причем начал практически с конца - клепаю RESTful сервис на основе spray с всякими json-маршалингами внутри через имплициты и прочую адову содомию.
При достаточном количестве type-level магии оно выглядит, конечно, так же просто, как какое-нибудь руби, или как лиспы без скобок и с инфиксной записью, но внутренняя сложность, по-моему, зашкаливает. "Импортируй себе немножечко имплиситов и получи на халяву сериализаторы в json для всего", "Оберни маршруты в директивы логгера" и прочее такое.

Сборку завел, сначала через sbt (простой способ), потом импортировал в IDEA (условно простой) и потом стырил у [livejournal.com profile] jdevelop конфигурацию для мавена (нормальный способ). Воедино надо это как-то свести, чтобы не редактировать при добавлении новых зависимостей все вручную. Плюс еще импорт sbt в IDEA выглядит как ад и смерть.

Завести то я это чюдо заведу, но вот что с ним дальше делать, не совсем понятно. На данный момент картина выглядит так: Clojure проще, но скобки и стектрейсы компилятора отпугнут новых пользователей, Scala дико сложнее, но поначалу она выглядит как "почти жаба", обработка ошибок более читабельна и есть шансы, что в эту западню попадутся и желающие новеньких языков и любители сойти с ума на почве вычислений на типах.

Date: 2013-03-09 09:30 pm (UTC)
From: [identity profile] plumqqz.livejournal.com
Пилите, Шура, пилите.

Date: 2013-03-09 11:32 pm (UTC)
From: [identity profile] jdevelop.livejournal.com
это ок

Date: 2013-03-10 03:10 am (UTC)
From: [identity profile] jdevelop.livejournal.com
где ссылко на гитхаб вашего чюда? хочу оценить

Date: 2013-03-10 07:28 am (UTC)
From: [identity profile] metaclass.livejournal.com
Доведу до рабочего состояния - выложу.

Date: 2013-03-10 07:50 pm (UTC)
From: [identity profile] blackyblack.livejournal.com
Пфф... Кому на гитхабе интересно смотреть на рабочую версию... Все хотят смотреть как оно с нуля создавалось.

Date: 2013-03-10 08:34 am (UTC)
From: [identity profile] den shabalin (from livejournal.com)
Почему-бы не попробовать вместо spray заюзать scalatra, а для json-а Jerkson?

Количиства ада уменьшиться на 2 единицы.

Date: 2013-03-10 08:42 am (UTC)
From: [identity profile] xeno-by.livejournal.com
Блин насчет джейсона быстрее бы народ сообразил про имплисит макросы для этого дела, как сделали в плее. Натурально, один макрос и не надо больше никакой магии, даже импортов никаких не надо, даже явно писать ничего не надо - просто все начнет автоматически работать.

Впрочем, в 2.10.0 полной красоты не получится - для каждого класса надо все еще писать руками вызов генерирующего макроса (например, val fooSerializer = genSerializer[Foo]). Я сам дурак конечно, что оставил SI-5923 в 2.10.0, но я ж тогда ничего не понимал в тайпчекере. О, а ведь этот фикс можно легко бэкпортить из 2.11.0-SNAPSHOT в 2.10.2! Следите за новостями.

Date: 2013-03-10 10:15 am (UTC)
From: [identity profile] metaclass.livejournal.com
В jerkson 2.8 или 2.9 скала в требованиях :)

Date: 2013-03-10 09:59 am (UTC)
From: [identity profile] metaclass.livejournal.com
Скалатра захотела giter8 для того, чтобы сделать пример проекта и я подумал, что это слишком далеко по направлению к зоопарку с яками.

Date: 2013-03-10 11:33 am (UTC)
From: [identity profile] metaclass.livejournal.com
Да. Я не могу название сего хипстерства с первого раза никогда нормально написать.

Date: 2013-03-10 05:09 pm (UTC)
From: [identity profile] den shabalin (from livejournal.com)
Согласен, g8 не фонтан, но сам фреймворк очень адекватный и очень прост в понимании. Чего сильно не хватает порой в scala екосистеме после python-a.

Date: 2013-03-10 09:39 am (UTC)
From: [identity profile] alexeyk77.livejournal.com
класс, первый абзац почти уже не уступает по забористости эзотерическим текстам.

Date: 2013-03-10 02:45 pm (UTC)

Date: 2013-03-10 04:39 pm (UTC)
From: (Anonymous)
Если в слове "коворкинг" переставить буквы, получится "коровникг", бгг.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 7th, 2025 05:59 am
Powered by Dreamwidth Studios