Ответ 1
Duktape написан на C, с акцентом на переносимость и компактность: http://duktape.org/
Мне нужна очень крошечная реализация (возможно, подмножества?) Javascript. Размер кода и использование памяти чрезвычайно важны (скорость не в вопросе, она может работать так медленно, как ей нравится). Он должен быть написан на C (не С++), и это тоже ANSI C (расширения GCC в порядке). Если он работает на виртуальной машине, было бы лучше, потому что мне придется написать для него компилятор. Любые предложения?
EDIT: оба ответа, которые я кажутся хорошими, кроме:
SpiderMonkey концентрирует много усилий на том, чтобы сделать это быстрее, меня не волнует, если его быстро.
Четырехколесные звуки хорошие, за исключением активности на нем, а комментариев кода мало (я портирую это на другую архитектуру, если это поможет).
Итак, любые другие ответы были бы замечательными. Или, я мог бы развернуть мою собственную упрощенную версию JS (но это не звучит весело)
Duktape написан на C, с акцентом на переносимость и компактность: http://duktape.org/
Я только что открыл этот рубин: https://github.com/gfwilliams/tiny-js
Я довольно долго смотрел на это, так как spidermonkey/v8 обычно довольно большой и имеет несколько зависимостей. Tiny-js - это портативный "run make and your done" -linux c-class. Отлично, если вы ищете только простые привязки и предпочитаете javascript/c-синтаксис над lua/другими удивительными сценариями.
Двигатель ANSI-C для ECMA-262: http://code.google.com/p/quad-wheel/
Mozilla SpiderMonkey также написана на C, но, вероятно, для вас сложная и большая.
SpiderMonkey - это реализация JavaScript в Mozilla C.
muJS от Artifex Software может быть еще одним вариантом внедрения встроенной JS/ES.
Вы должны посмотреть на Jsi, который был только что выпущен. Он очень мал, является подмножеством javascript и находится в C (полученном из quadwheel).
Я думаю, что jsi, о котором он говорит, таков: http://pdqi.com/cgi-bin/cgiwrap/pdqi/jsi.cgi/doc/tip/jsi/www/usingjsi.wiki
(Не обвиняйте, что это не... хе-хе)
http://jsish.org перенаправит вас на сайт хоста.
https://github.com/cesanta/v7 предназначен для встроенных систем. Имеет очень малую площадь.
Вы посмотрели JerryScript?