Язык программирования с поддержкой нативного кода, Нет фреймворка (я пишу фреймворк)
Я ищу язык программирования. Это должен быть легкий язык для изучения, и должен быть сборщик мусора. Это должен быть базовый язык с такими функциями, как базовые типы (целочисленные, логические), массивы и т. Д., И я должен написать фреймворк.
Я хочу написать для редактора игр. Дизайнер редактора напишет код интерфейса на этом языке программирования. Фреймворк будет представлять собой 2D-графику и аудио-фреймворк, и в будущем он будет также 3D-моделью.
Я думал о новом языке Go, но он не имеет большой поддержки и нет привязки к OpenGL и т. Д.
Есть идеи?
Благодарю.
7 ответов
Очевидные два: [C] ( http://en.wikipedia.org/wiki/C_(programming_language)) или C++. Однако [D] ( http://en.wikipedia.org/wiki/D_(programming_language)) ближе к Java и C#, учитывая, что в стандарте есть сборщик мусора, а также альтернативная стандартная библиотека, которая довольно ближе к Java, чем стандартная библиотека C++. Недостатком D является то, что они не настолько развиты, как C++ или C, и сообщество не такое большое.
Очевидное решение, хотя это просмотреть список скомпилированных языков в википедии и посмотреть, какой вам нравится внешний вид.
Ну, это довольно широкий вопрос, и без более конкретных требований трудно дать сфокусированный ответ, но похоже, что C (или C++) подойдет вам. Все языки, которые вы описали, обязаны своим синтаксисом C. Си будет компилироваться в нативный код. C является базовым языком в том смысле, что помимо базового синтаксиса не нужно много учить, и в нем есть все основные примитивы, которые вам нужны.
Теперь, когда вы добавили требование языка для сборки мусора, я полагаю, что вы можете попробовать Go, но этот язык не является зрелым, и всегда есть риск.
Если вы не хотите самостоятельно управлять памятью, например, C или C++, попробуйте новый язык Go. Он компилируется в собственный код (хотя пока только для Linux и MacOSX) и поставляется с базовым фреймворком, который можно легко заменить на ваш собственный фреймворк.
У него очень активная пользовательская база, поэтому IMO можно быстро взрослеть.
Наслаждайтесь вызовом?
Попробуй иди.
Вот технический доклад Роба Пайка, а также дискуссионная группа: http://groups.google.com/group/golang-nuts/topics.
Поскольку мы не знаем, что вы хотите сделать, я не знаю, каковы шансы на успех. Для этого, как насчет языка, в котором вы должны установить вероятность вашего утверждения провалиться:
Встречайте GOTO ++.
Не говори "спасибо", это на мне.
Вы можете посмотреть на Луа.
Lua - относительно крошечный язык, который способен быть способным и универсальным с помощью всего лишь нескольких концепций. Спецификация BNF для всего языка легко помещается на одной странице. Он имеет числа, логические значения, таблицы и функции, и, что удивительно, это все типы данных, которые ему нужны. Это может даже работать объектно-ориентированным способом.
Есть компилятор Luac, который компилирует Lua в байт-код.
Lua уже используется в качестве языка программирования пользовательского интерфейса для игр. Аддоны для World of Warcraft и нескольких других игр запрограммированы на Lua. Я считаю, что Луа очень хорошо подходит для такого рода задач.
Вы хотите OpenGL? ОК... http://luagl.wikidot.com/ - библиотека OpenGL для Lua.
C++ - это здорово, это не язык сценариев, так что вам даже не нужен хост сценариев.