Да, может, но до кучи памяти.
var a = {};
var i = 0;
while(true){
a[i] = null;
i++;
}
ФАТАЛЬНАЯ ОШИБКА: CALL_AND_RETRY_LAST Распределение не удалось - куча JavaScript не хватает памяти
blockquote>Так что это зависит от размера вашей памяти.
re2c генерирует код C. Я не уверен, под чем Вы подразумеваете 'динамично' - AFAIK, который необходимо было бы скомпилировать и динамическая нагрузка вывод, если Вы хотите обратиться к сгенерированному коду во время того же выполнения, что Вы генерировали его.
Ragel может быть тем, что вы ищете.
Он генерирует код C / C ++ / D / Ruby / Java для конечных автоматов. Они описываются с использованием как регулярных выражений, так и операторов.
Проверьте веб-сайт, его титульный лист довольно явный.
Это не могло бы быть точно, что Вы ищете, но Преобразователь Конечного состояния ксерокса поддерживает регулярные выражения, создает машину и даже может создать использование графического представления GraphViz.
Это - действительно острота для вещей как морфология, но иначе, я предложил бы это главным образом, если Вы смотрите что-то для исследования теоретической стороны конечных автоматов.
Два протеста: это использует свой собственный синтаксис, таким образом, это не обязательно собирается перевести в Ваши предпочтительные языки легко, и я вполне уверен, необходимо получить лицензию на него. Это идет с книгой Karttunnen и Beesley "Морфология Конечного состояния", которая является очень интересным чтением самостоятельно.
То, что вы просите, - это лексер ... Существует множество их для множества языков программирования. Для начала вы можете посмотреть здесь .