littleguga
@littleguga
Не стыдно не знать, а стыдно не интересоваться.

Как это устроено?

Доброго времени суток.
Вопрос носит академический интерес.
Допустим я решил написать обертку вокруг любого языка(например hello; -> будет преобразовано в <?="Hello World!"?>.
1. Как эта обертка будет называться?
2. Как будет называться полученная вещь? Препроцессор/постпроцессор или по другому?
3. Как заменять фразы? Регулярки?
4. Очень прошу направить в нужное русло, чтобы получить информацию по данному вопросу.

ps
Очень прошу не отвечать вроде:
"Глупость, забудь об этом и это не нужно."

Заранее благодарен за ответ!
  • Вопрос задан
  • 394 просмотра
Решения вопроса 4
Denormalization
@Denormalization
Смотря как оно будет использоваться.
Это может быть отдельный язык (Elixir для Erlang), со своим компилятором\vm.
Это может быть шаблонизатор (Smarty\Twig\etc).
Это может быть DSL.

Как называть и как "заменять" зависит контекста и способа использования.
Могут быть и регулярки, и свой препроцессор\компилятор и т.д.
Ответ написан
@mamkaololosha
Транслятор/Препроцессор
Ответ написан
Комментировать
uvelichitel
@uvelichitel
habrahabr.ru/users/uvelichitel
Кажется такая штука называется lexer и parser. Например Lexx Yacc Bison. Или модный нынче PEG
Ответ написан
Комментировать
@SeptiM
У JetBrains-а есть забавная штука: MPS. Похоже на то, что вам нужно. Как минимум избавит от стадии построения AST, если нужен прототип обертки. Я какое-то время работал в Ютреке на ней.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы