Comments 17
По моему без знания html и css не обойтись. Соответствующие dsl только предоставляют более простой синтаксис, а семантику знать надо.
+3
А DSL я так понимаю компилируемые? Т.е. при ошибке в шаблоне проект не скомпилируется?
+1
Да, и это не перестаёт радовать, помимо прочих плюшек DSL.
0
Да, макросы выполняются во время компиляции.
+1
Не знаю насчет garden, но hiccup не проверяет на предмет ошибок. Т.е. если вместо
Сильно подозреваю, что с garden аналогично, не запихивать же постоянно в нее поддержку новых экспериментальных css-свойств и подобного.
div
написать diiv
— так оно и отрендерится. Ну и генерировать структуры данных для скармливания hiccup-у можно в рантайме, хотя используя макросы библиотека и пытается сделать прекомпиляцию, где это возможно.Сильно подозреваю, что с garden аналогично, не запихивать же постоянно в нее поддержку новых экспериментальных css-свойств и подобного.
0
Большое спасибо за статью, как раз интересовала инфраструктура для веб-проектов в Clojure. Буду пристально вглядываться в библиотеки, которые вы упомянули.
0
Добавьте пожалуйста сортировку языков, а то русский найти проблема
+2
Из-за множественных закрывающих скобок в конце где-то на подсознательном уровне код такого вида
когда на него посмотришь, как будто говорит «Ну что написал? Ну-ну :))))))»
(.on input "typeahead:closed" (fn []
(reset! query (.val input))))))
когда на него посмотришь, как будто говорит «Ну что написал? Ну-ну :))))))»
0
Спасибо за статью, приятно видеть все возрастающий интерес к Clojure. Я так понимаю, у вас была задача попробовать побольше всего разного что напридумывали в Clojure?
Вместо defapi сделали бы middleware и обернули свои API routes в него.
Вместо js-obj в новых clojurescript версиях удобно писать #js [1 2 3] или #js {:a 1 :b 2} чтобы получить нативные js-объекты.
Зачем нужен dsl для css не очень понятно — у вас css динамический разве?
Размер скомпилированного js-файла тоже хотелось бы увидеть в gzipped варианте и с advanced compilation. А то у меня например весь datascript в 39 кб умещается, а тут аж 290
Вместо defapi сделали бы middleware и обернули свои API routes в него.
Вместо js-obj в новых clojurescript версиях удобно писать #js [1 2 3] или #js {:a 1 :b 2} чтобы получить нативные js-объекты.
Зачем нужен dsl для css не очень понятно — у вас css динамический разве?
Размер скомпилированного js-файла тоже хотелось бы увидеть в gzipped варианте и с advanced compilation. А то у меня например весь datascript в 39 кб умещается, а тут аж 290
+5
Я так понимаю, у вас была задача попробовать побольше всего разного что напридумывали в Clojure?Да, хотел попробовать clojure для web'а.
Зачем нужен dsl для css не очень понятно — у вас css динамический разве?Статический, garden использовал только для того, чтобы всё было на clojure, это как некий челенж был.
Размер скомпилированного js-файла тоже хотелось бы увидеть в gzipped варианте и с advanced compilation. А то у меня например весь datascript в 39 кб умещается, а тут аж 290290 и так в advanced, но там внутри reagent, react и jayq.
gzipped — 80
+1
А такой вопрос, чем компилировали clojurescript в js? Использовали там grunt, минификаторы, или ещё что-то?
0
Sign up to leave a comment.
Как я написал web-приложение, используя только clojure