This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-04-26
Channels
- # aleph (2)
- # beginners (119)
- # boot (18)
- # cider (19)
- # cljs-dev (46)
- # cljsjs (1)
- # cljsrn (30)
- # clojure (101)
- # clojure-dusseldorf (12)
- # clojure-finland (1)
- # clojure-greece (7)
- # clojure-india (2)
- # clojure-italy (6)
- # clojure-poland (4)
- # clojure-russia (120)
- # clojure-sg (3)
- # clojure-spec (147)
- # clojure-uk (75)
- # clojurescript (86)
- # cursive (4)
- # datomic (50)
- # docker (1)
- # emacs (4)
- # juxt (51)
- # leiningen (16)
- # liberator (1)
- # luminus (1)
- # lumo (116)
- # mount (2)
- # off-topic (2)
- # onyx (38)
- # pedestal (4)
- # protorepl (2)
- # re-frame (44)
- # reagent (8)
- # ring-swagger (16)
- # schema (5)
- # specter (16)
- # test-check (226)
@dragoncube я прикидываю для приложения с сотнями форм - большинство будет однородных, но как обычно с исключениями
Я кстати обещал тестовое задание - let it be - формбилдер основанный на json-schema for re-frame ;)
Тут вчера рекламка промелькнула " стек datomic +(clojure back) + clojurescript (front)" Меня тоже этот стек интересует. Есть ли на Гитхабе пример небольшого проекта в котором бы все это было красиво и правильно связано между собой?
можно посмотреть на luminus http://www.luminusweb.net/docs/profiles.md -- вот тут есть примеры темплейтов с кложаскриптом и датомиком, например Но это все темплейты, они игрушечные
@arsenguzhva вот пример коммерческого продукта написанного на этом стеке: https://www.youtube.com/watch?v=RI6KrCzXDjo
там под капотом datomic, clojure
спасибо
засада с формами такая что описать их данными не так уж сложно
валидации там и прочее
а вот вьюхи для них часто специфичные сильно
поэтому мы вот так и делаем как @kishanov показал - есть отдельно описание форм данными и отдельно вьюха которая составляется из набора примитивов/контролов
но у нас правда не сотня форм, а пару десятков может
@nicola вот твой пример - это довольно простые формы поддерживаются - максимум - другим виджетом поле рендеришь
У нас на бэкенде есть метадата, в частности json-schema - вот и хочется ее переиспользовать
ну ее видимо удастся переиспользовать для задания структуры формы
а вот вьюхи - это ортогональная проблема
или выбираешь что все формы простые и тогда можно общий код рендеринга или писать кастомные вьюхи
кстати и с валидацией тоже есть проблемы
далеко не все валидации можно уложить в json схему
например зависимые поля
Да, должна быть функция - чистая или не очень - принимает значение формы - возвращает ошибки, схема это только шэйп, чтоб фигню не тестить - типы, длины етц
с другой стороны так как мы делаем - ничего не мешает общий код для генерации вьюх написать который такими же примитивами/контролами будет пользоваться и если что-то надо подхачить то пишешь вьюху руками
но у нас все вьюхи специфичные поэтому мы так не делаем 🙂
дорогой чатик, у кого-нибудь получилось завести эту шарманку https://anmonteiro.com/2017/03/requiring-node-js-modules-from-clojurescript-namespaces/ ?
лень создавать cljsjs пакет, хочу попробовать жить на острие 😃 но что-то не подхватывает cljs эти зависимости
у меня не получилось, но я пробовал до того момента как closure compiler с фиксом зарелизили
не, ну ты попробуй мож заведется) я просто не пробую потому что надо с реактом че то придумывать, в глобальную переменную пихать для реагента
да, был
я вот как раз с мастера и пробовал. но с того момента релиз был и в closure compiler тоже
так я попробовал из последней версии, которая типа поддерживает, но то ли руки кривые, то ли не работает ещё
то ли cljsbuild не все compiler опции дальше передаёт, то ли компилятор не понял, что я от него хочу
не, у меня cljsbuild понял, мож ты не в то место впихнул) там потом при резолве депенденси ошибка какая то была
но он не зафетчил пакет npm'ом и при попытке сделать require на пакет, сказал, что такого нет
а у меня понял что начал npm install делать
я вроде даже коммит не делал, так что не могу тебе скинуть пример...
https://cljs.github.io/api/compiler-options/npm-deps
:foreign-libs
еще
Вернулся к react native опять, смотрел что с роутреами - обнаружил https://reactnavigation.org Все в одном! И табы и drawer, прощай react-native-simple-router... похоже есть лучше от создателей RN. Еще интересно, что сайт c документацией сделан с применениме react-nativigation... Нужно порыть этот react-native-for-web….
react-navigation вообще офигенен
там есть конечно огрехи в доке, но все равно он крут
@savelichalex скоро тоже до него руки дойдут. там много интеропа/стейта из js?
смотря что хочешь, я не стал парится, сделал пару врапперов и все. ни в каком стэйти ниче не храню
хочу после перезапуска аппликейшена перематывать на экран, на котором закончилась предыдущая сессия, при этом восстановив весь стек до этого экрана. типа если закончил на 5 шагу визарда в третей табе - восстановить 5 шаг третей табы так, чтобы кнопочка назад/отмена(или чо там) - отмотала с анимацией на 4 шаг, а не упёрлась в пустоту
+, естественно, запомнить где ты в первой табе находишься, когда с нее на 3 переключился (и ввязался визард проходить)
ну там есть у него с редаксом завязка, значит и стэйт есть. может его и можно как то сохранить
@savelichalex смотреть сериалы и изучать английский - хорошая идея 😄
ну так а то! только доделать все не могу 😄
@savelichalex я тоже в этом направлении отметился - http://playphrase.me
@potapenko кул! интересная идея :thinking_face: 😄
а как ты фразы из текста доставал?
я все не могу придумать как парсить субтитры чтобы фразы понимать
у меня просто без бэка, а на клиент че то не охота здоровую либу тащить)
а я тупо регекспами - но там ошибок много, сам знаешь, субтитры они какие только не бывают
лучше ты сам базу субтитров создай, и загружай на клиент уже все готовое, с json-ом каким с фразами
ну я так и понял уже что просто эту проблему не решить)
регекспами это конечно сильно))
subtitles можно искать/брать тут - лучшее что видел http://www.quodb.com
о, за базу отдельное спасибо! 👍
вообще с обучением отдельная проблема, по идее то нужен corpus на субтитры ориентированный, так как больше разговорных фраз
а обычные corpus не очень подходят имхо
заофтопили тут все)
О чем он в конце сказал? "Tail call recursion невозможен"?
Я плохо разбираюсь, но recur
тогда что?
Разве recur
как раз таки не делает goto?
наверно имелось ввиду что jvm не делает такой оптимизации сама
Типа если я не recur
сделаю, а просто сделаю рекурсивный вызов в хвостовой позиции, то jvm goto не сделает?
Так или иначе, слабая претензия
Так прелесть хвостовой рекурсии как раз в том что стек не растет если есть tail call optimization. Здесь как раз об этом кмк
видели анонс от Алекса? https://groups.google.com/forum/#!msg/clojure/10dbF7w2IQo/ec37TzP5AQAJ
спеку выносят из ядра в либу
блин, ну это не круто(( Если в ядре - юзали бы все, а так опционально и не взлетит, грусть печаль
особенно:
this is a first step towards increased support for leveraging dependencies within Clojure.
@artemyarulin какое тебе дело до всех?
судя по треду они начали применять идеи доклада Spec-ulation на практике
о, уже и артефакт "испекли" [org.clojure/spec.alpha "0.1.94"]
если оно везде = все либы будут ее юзать. Если она не в ядре - то половина забьет (я сто раз подумаю добавить завимиость в либу), вторая половина будет юзать всякие схемы и прочие призматики и полтора человека спеку причем разных версий. Вот в моей нелюбимей гошечке сделали каналы в ядре - все (все!) либы их юзают, вот цветет и пахнет.
ну и да если у меня спека в приложении ессно я хочу чтобы все либы были с ней
ну и кто хочет спеку использовать - использует несмотря на альфу уже. а кто нет – может и со впаяной никогда не начнет
спека новая концепция и должна пройти какую то “обкатку” . Вообще странно что они сразу ее в ядро запилили, если завтра ктонибудь придумает “суперспеку” легче будет на нее переехать, если она вынесена все-таки. Так что по мне так оно, отдельно логичнее
@rmuslimov нужно было подхачить clojure.core чтобы спека заработала, потому она не как либа началась