Pull to refresh

Comments 31

Какой-нибудь диалект Lisp смотрелся бы лучше.
Тут бы любой нормальный язык прогрммирования смотрелся бы лучше
Задача сводилась к тому чтобы сделать именно из декларативного формата.
Только получился почему-то императивный язык, который прилично так изуродовали
Не вижу противоречия. Взяли декларативный формат и разработали правила для описания императивной программы. «Уродство» – следствие имеющихся ограничений формата.
На выходе нужен был JSON. Видимо, поэтому авторы и подумали, почему бы не сделать его и на входе. Требовалось расширить имеющийся инструмент. Объектом вдохновения могли быть, например, препроцессоры CSS: человек, знакомый с CSS, разберется с препроцессором в мгновение ока. Но одно дело — развить формат описания данных в расширенный формат описания данных или расширить язык программирования до языка программирования с большими возможностями. И совсем другое — расширить формат описания данных до языка программирования.

В простейших случаях, возможно, доля удобства в этом и будет, но только в них. Конструкции получаются громоздкими, а решения проблем, обозначенных как предпосылки к созданию нового языка, я не увидел.
Точно. IoC в HATEOAS/JSON-API гораздо интереснее в плане сохранения декларативности json, и одновременно передачи api управления поведения приложения.
Ну, например, если из приведённого JSON (литералов JavaScript) удалить двоеточия, получится валидный edn (литералы Clojure), чем не декларативный формат. На этом этапе разницы практически никакой, но зато можно весь этот "_WTF" заменить на обычные вызовы функций и получить вполне пристойный EDSL. Да, в сущности, и на JavaScript можно было бы, но авторы же хотели иммутабельность и ленивость из коробки?
«Любая достаточно сложная программа на C или Фортране содержит заново написанную, неспецифицированную, глючную и медленную реализацию половины языка Common Lisp» © Филип Гринспен
Противоречие тут в другом. Вместо того, чтобы выбрать простой и надежный путь — взять один из тучи скриптовых языков, который бы сделал все тоже самое, люди создали свое уродство из того, что для задачи изначально вообще не предназначено. Весело, интересно, но мне всегда интересно — зачем? Ведь оно рождено умереть. Я специально сейчас пробежался в гугле — такое ощущение, что интернет вообще не знает про это приложение. При этом, автор, судя по всему, надеется привлечь к созданию карточек других людей. Это — правильно. А вот ставить задачу перед ними учить такую вот ужасть — совсем неправильно.

Прошу прощения, это ответ rumkin выше.
Возможно, они начали с какого-нибудь простого внешнего API и описания его маппинга с помощью JSON, а потом немного увлеклись :)

На iOS есть ограничения по использованию скриптовых языков внутри приложений — вроде бы, нельзя подгружать извне исполняемый код, кроме JavaScript в WebView.
Да, про это я забыл. Но тогда вопрос, почему модераторы пропустили даже это — по факту, это исполняемый код.
Возможно решили, что пользоваться этим всё равно никто не будет и ущерба бизнесу Эпла не будет :)
Все оказалось намного проще. Из интернета загружаются только JSON, внутри которых нет функций — просто набор HTML тегов и их атрибуты. Все, что содержит код, скачивается вместе с приложением и лежит среди ресурсов. Все как требует Apple.
С недавних пор можно подгружать и исполнять JS через JavaScriptCore.

Apple Developer Program License Agreement, п. 3.3.2.
Ну так можно весь этот велосипед с самопальным языком программирования отменять и использовать JavaScript.
UFO just landed and posted this here
UFO just landed and posted this here
День прошёл зря, если не создан новый язык программирования.
Но нет, я лучше lua возьму. Или javascript, если нет ограничений по памяти.
QML лучше всего для этих целей. Непонятно, почему его боятся использовать, ведь крайне мощная штука!
UFO just landed and posted this here
А что, разве при добавлении нового формата сериализации мы получаем новый язык?
Сериализуй это в XML — вот тебе XML-based язык. Сериализуй в LISP — вот LISP-based.
Всё-таки язык не форматом хранения в файле текста программы определяется.
А почему нельзя было писать на обычном скриптовом языке, а в JSON положить одну строку с целиковым исходником?
Ну а что это за программирование такое без велосипедов на костылях?
тут должна быть эта картинка:
Скрытый текст
image
Почему, мистер Андерсон, почему? Во имя чего? Что Вы делаете? Зачем, зачем вы это делаете с JSON?
Потому что иначе заголовок этой публикации звучал бы «Как мы сделали из jsonnet язык программирования». На этом бы различия заканчивались.
Sign up to leave a comment.

Articles