Пожалуйста, порекомендуйте хорошее чтение о белке
Пожалуйста, поделитесь своими любимыми ссылками на этом языке, где можно узнать лучшее из него.
А также, пожалуйста, опишите в нескольких словах наиболее важные особенности этого языка, отличающиеся от других языков, таких как Lua.
Я просто не могу понять, зачем изобретать другой Lua/Python/ и т.д. Может я что то пропустил...
Но мне нравится идея производительности + сценариев, поэтому я должен ее понять!
2 ответа
Лучший (и почти единственный) ресурс о языке Белка - это его официальный веб-сайт и форумы: http://squirrel-lang.org/
По сравнению с другими хорошо развитыми языками, Squirrel все еще находится на ранней стадии с очень небольшим сообществом, но в некоторых отношениях он очень перспективен среди других современных языков сценариев:
Вдохновленный Lua, с обычными концепциями таблиц, стека Lua и т. Д., Но с НАМНОГО более чистым синтаксисом и C API.
Подсчет ссылок с дополнительным сборщиком мусора. Дизайн среды выполнения побуждает пользователя удалять циклические ссылки, а не полностью полагаться на сборку мусора (который может быть медленным или недетерминированным). Пользователь может даже пересобрать среду выполнения с отключенным сборщиком мусора.
Это язык с синтаксисом C/C++. Это своего рода вкус, но это главная причина, почему я предпочитаю Белку, а не Луа.
Встроенная поддержка класса, где в Lua вам нужно сделать немного магии, чтобы симулировать его.
Поддерживая C# подобный атрибут, поэтому вы можете предоставлять метаданные для вашего класса и свойств. Я использую эту функцию, чтобы выставить мои объекты скрипта в сетку свойств.net.
Неопределенные переменные приводят к исключениям вместо того, чтобы молча создавать новое нулевое значение, такое как Lua.
Другие функции, такие как лямбда-функции, генератор и сопрограммы, все встроены в этот маленький, но мощный язык сценариев, который только что сделал из ~6000 строк
C++
код.
В заключение, язык Squirrel подходит для взаимодействия с низкоуровневыми модулями в приложениях, критичных к производительности (т. Е. Игровом движке), он может служить лучшей Lua. В то время как язык, подобный питону, больше ориентирован на общую цель, язык решения повседневных проблем удобен.
Emo Framework, бесплатная среда разработки игр с открытым исходным кодом для iOS и Android, основана на Squirrel. Его исходный код содержит несколько примеров программ / демонстраций, а также некоторый библиотечный код, написанный на Squirrel. Чтение источника их может быть познавательным, я считаю.
Я искренне рекомендую взглянуть на эмо всем, кто желает изучать язык Squirrel, одновременно занимаясь разработкой игр или других приложений для iOS и Android.