Каковы различия между Bigloo и ECL с точки зрения внедрения?
Я искал встраивания Lisp в некоторый код C++. Меня интересуют два варианта: схема Bigloo и ECL (Common Lisp). Читая документы, они, кажется, поддерживают очень похожий набор функций. Очевидно, что Bigloo - это схема, а ECL - CLisp, но какие еще есть различия?
В частности меня интересуют следующие критерии:
- Простота встраивания (для C++, а не только для C). Я не хочу писать кучу шаблонов.
- Спектакль. Bigloo основывается на производительности и имеет много опций оптимизации компилятора, хотя я не могу найти ничего похожего на ECL.
- Стиль кодирования. Это больше для Bigloo - это более функционально, чем ECL?
Я нацеливаю этот вопрос на кого-то, кто использовал оба.
1 ответ
Удобство встраивания: для C++ должно быть примерно одинаково. У Bigloo есть лучшая история для встраивания Java и C# IIRC.
Производительность: действительно зависит от того, для чего вы собираетесь его использовать. Они оба "хорошие" исполнители, насколько Лиспс идет. Возможность встраивания в C уменьшает возможности для многих оптимизаций.
Стиль кодирования: это действительно большая разница между этими двумя понятиями, и поэтому в комментарии говорится, что это означает "я должен изучить Scheme или Common Lisp". Оба являются зрелыми встраиваемыми реализациями двух совершенно разных стандартов (R5RS и ANSI Common Lisp).