@Banan44
Full Stack

Как написать свой яп и компилятор под него на php?

Есть например строка которую я получил из файла, это goPrint("Test");
И все что находится в () в goPrint нужно вывести на экран , через echo.
И что бы я мог другие функции придумывать например goRand(1, 10), альтернатива rand()
  • Вопрос задан
  • 158 просмотров
Решения вопроса 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Это не ЯП, а скрипт-язык.
Самое простое - сделать связку goPrint(%s) -> echo(%s) (и т.д. для остальных нужных функций) и после парсинга (regex-выражениями) переводить скрипт в код PHP и, затем, исполнять (проверив, что он безопасен!).
Посмотрите готовые "движки"-шаблонизаторы: здесь.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
SerafimArts
@SerafimArts
Senior Notepad Reader
1) Реализация "жадного" простого и мультистейт лексера, рекуррентного рекурсивного левоассоциативного (хотя зависит от правил) парсера и компилятор-компиляторов для грамматики, основанной на Hoa: https://github.com/phplrt/phplrt
Документацию можно юзать ветки 1.x, для второй я ещё не дописал

2) Пример реализации для GraphQL: https://github.com/railt/graphql
Грамматика находится в ресурсах.
Ответ написан
Комментировать
Driver86
@Driver86
Немодератор toster.ru
Зачем придумывать. Описываете функции в файле как код php и вызывайте через include, а не fread
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы