|
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
|
||||||||||||||||||||||||||||||||
C++ vs Common Lisp: кодогенерация, метапрограммирование25.03.2017, 11:14. Показов 7093. Ответов 64
Дано описание произвольного математических выражений на XML вида:
Задача: в compile time сгенерировать функцию, аргументами которой будут все var имена переменных из xml. Функция должна вычислять выражение описанное в xml. Такой простой eDSL. У нас есть 2 стула: Common Lisp и "всемогущий" C++. Я сажусь на первый стул. Беру первый попавшийся xml parser - xmls. Долблю на коленке кодогенератор.
Использую.
Но подождите? Ведь есть второй кошерный стул - кресты. Темплейты, туда сюда. Что же мне делать? Как решить задачу? Добавлено через 2 минуты hoggy, есть чё на лурке по этому поводу? Добавлено через 5 часов 28 минут
0
|
||||||||||||||||||||||||||||||||
| 25.03.2017, 11:14 | |
|
Ответы с готовыми решениями:
64
Common Lisp vs D Common Lisp vs D (2) Книги или другой источник, где описана история версий Lisp и Common Lisp |
|
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
|
|||||
| 01.05.2017, 18:05 [ТС] | |||||
|
Добавлено через 5 минут И новый стандарт подъехал - теперь всё можно. А когда начинаешь спрашивать за конкретные примеры - крестоплебей сразу сливается и начинает мычать про лайкосы и "ручное управление памятью".Добавлено через 4 минуты ![]() Добавлено через 2 минуты
0
|
|||||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
||||||
| 01.05.2017, 18:13 | ||||||
|
0
|
||||||
|
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
|
|||||||
| 02.05.2017, 00:26 [ТС] | |||||||
Понятно, что amqp, а в частности RabbitMQ, штука не тривиальная и имеет ряд интересных и полезных особенностей. Но тем не менее это просто транспорт. Никакого отношения к языку не имеет. Совсем. Это вопрос библиотеки. Написана она или нет и какого качества. Эта библиотека может быть написана на любом языке и api будет выглядеть везде приблизительно одинаково.По наличию или отсутствию какой либо библиотеки нельзя судить о языке. Добавлено через 5 минут А вообще я не отрицаю того, что качество, скажем, pika или какой-нибудь популярной плюсовой либы будет выше, чем какой-то там cl-bunny написанный одним человеком. Только это не говорит о качестве языков. Совершенно. Конкретно мне, если кровь из носа, понадобиться разговаривать с RabbitMQ средствами CL, я решу этот вопрос без особой боли. Допишу что будет необходимо, я же не калека. Добавлено через 5 минут Тут Lisp явно не так удобен, дописывать ещё чего придётся.Добавлено через 14 минут Добавлено через 15 минут
0
|
|||||||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
|||||
| 02.05.2017, 01:40 | |||||
0
|
|||||
|
331 / 200 / 9
Регистрация: 12.05.2015
Сообщений: 334
|
||||
| 02.05.2017, 05:29 | ||||
|
Добавлено через 51 минуту когда они описывали свою архитектуру в начале нулевых, получалось что ввод-вывод они сделали целиком на С, а прикладной код который собствено деньги зарабатывает на лиспе и увязано это с помощью FFI/MMAP. Который они попутно тоже применительно к лиспу хвалили. Это я все я к чему Когда ты говоришь что на лиспе только xml-ки компилировать, а вот у тебя реальный "уровня предприятия" c mq(!). А тебе в ответ что библиотека для твоего MQ пишется на коленке по потребности. И вот вы вторую страницу выясняете кто из вас блаб Дословно и в лицах пересказвая байку о слепцах вокруг слона![]() P.S. Да и спустя 10 лет все так же. ITA коммитит в SBCL плюшки для компилятора, а не IO. Добавлено через 20 минут
0
|
||||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
|||||||||
| 18.05.2017, 04:30 | |||||||||
Тут просто такой "полезный" кейс привели, в котором лисп сильно упрощает жизнь, что не удержался.А внезапно еще есть всякие grpc, базы типа Cassandra, и прочая-прочая. Удачи там.
0
|
|||||||||
|
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
|
|||||||
| 18.05.2017, 09:03 [ТС] | |||||||
А пример намерено простой, что бы могли попробовать справиться не только на Lisp. Но ты, как любитель переливать по API, понял, что дело гиблое и даже не попытался, а забатхёртил на тему: "На Lisp переливать не так удобно, либ меньше, а если вдруг какой-то либы нет - то всё, тушите свет" ![]() Добавлено через 5 минут Добавлено через 4 минуты Весёлая у тебя работка, нечего сказать...Добавлено через 9 минут Добавлено через 3 минуты ![]() Добавлено через 2 минуты
0
|
|||||||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
||||||||
| 18.05.2017, 09:32 | ||||||||
Куда уж важнее то.![]() ![]() Добавлено через 10 минут Добавлено через 9 минут
0
|
||||||||
|
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
|
||||
| 18.05.2017, 12:02 [ТС] | ||||
|
Добавлено через 48 секунд Добавлено через 3 минуты
0
|
||||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
|
| 18.05.2017, 13:29 | |
|
nullxdth, не заметил, куда он там осилил. Сообщения из очереди забирать это лишь полдела. Главное - отказоустойчивость, обнаружение проблем, умение нормально в кластера и всякое такое. Сишный клиент кстати не может нормально в хертбиты и даже таймаут на логин появился совсем недавно. В питоне, эрланге, эликсире, го проблем не заметил.
Если бы я был лиспер, то был бы безработный. Или кодил в одиночку в стол или за еду. Так что спасибо, но нет.
0
|
|
|
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
|
||||||
| 18.05.2017, 13:59 [ТС] | ||||||
|
Добавлено через 57 секунд Добавлено через 1 минуту Добавлено через 1 минуту
0
|
||||||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
|
| 18.05.2017, 16:51 | |
|
nullxdth, да что там вообще можно заметить - ни доки, ни примеров. Ты сам-то как заметил, поделись.
RabbitMQ умеет в кластер, но не умеет нормально при этом в wan. Не надо мне по этой теме заливать. Да я вообще понял, что суть лисперов - писать 8 часов на java или go, а в свободное время балаболить про лисп и называть всех вне секты обезьянами Тут ничего нового.
0
|
|
|
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
|
||||||||
| 18.05.2017, 18:58 [ТС] | ||||||||
|
Добавлено через 5 минут Добавлено через 42 секунды Добавлено через 5 минут Добавлено через 2 минуты Это подгузники. Цели ясны.Добавлено через 1 минуту
0
|
||||||||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
|||||||
| 18.05.2017, 19:22 | |||||||
|
Добавлено через 3 минуты
0
|
|||||||
|
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
|
|||||||
| 18.05.2017, 19:39 [ТС] | |||||||
Ты уверен, что ты работаешь не за еду?Добавлено через 42 секунды Добавлено через 44 секунды Добавлено через 46 секунд
0
|
|||||||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
|
| 18.05.2017, 20:05 | |
|
nullxdth, ты со мной в игры словесные не играй. Мне это не сильно интересно на самом деле. Если есть что по делу сказать - то окей. По делу - это когда есть такая-то система, я беру лисп, потому что он дает решающий выигрыш вот тут и вот поэтому. А не по делу - я беру лисп, потому что у меня от его фич глазки горят.
0
|
|
|
2305 / 1064 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
|
|||
| 18.05.2017, 20:12 [ТС] | |||
Не верю.Добавлено через 2 минуты
0
|
|||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
||
| 18.05.2017, 20:26 | ||
|
0
|
||
| 19.05.2017, 17:35 | |
|
Испытываю редкое чувство понимания обоих дискутирующих, что последнее время у меня не часто случается (в связи с сезонно возросшей категоричностью
). Радикально потребительский подход имеет право на жизнь, но кто-то все же
0
|
|
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
||
| 20.05.2017, 00:37 | ||
|
Тут еще такое дело. Нельзя так просто взять и что-то зафигачить в проекте на лиспе, если даже очень хочется. Потому что расширяется технологический стэк. Это значит, что что-то придется менять в налаженном процессе от разработки до деплоя. Это значит, что должны быть еще люди, понимающие лисп, чтобы ты мог с ними вести разработку и спокойно уходить в отпуск. Это значит, что если потребуются еще люди, то требования в вакансии возрастут, а значит их дольше искать. Да и вообще изначально должен быть как минимум 1 человек с нормальным опытом лиспа в проде. Плюс всякие разные либы нужно будет написать, а потом еще и поддерживать. Окупится ли это время тем, что в проде лисп? Непонятно и зависит от проекта. В итоге, если в команде уже есть люди с лисповым опытом, а с либами, нужными для данного проекта все окей, - то внедрение лиспа можно рассматривать. Но обычно ситуация не такая.
0
|
||
| 20.05.2017, 00:37 | |
|
Common Lisp Common lisp Common lisp ООП Common Lisp Вопрос по common lisp Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|