Re[6]: Parsec port
От: VladD2 Российская Империя www.nemerle.org
Дата: 03.03.10 12:29
Оценка:
Здравствуйте, Elifant, Вы писали:

E>Возможно. С помощью PEG можно выразить конструкцию "число, затем столько точек, каково значение этого числа"?


Ну, если число конкретное, по почему бы и нет. Будет что-то вроде:
Rule = "1." / "2.." / "3..." / ...

Если же речь идет о переменном числе, то это можно отработать только во время анализа распознанного, т.е. грамматика будет:
Rule = [0..9]+ "."*

а далее уже в обработчике:

Rule(num : Token, dots : Token) : ?
{
  def x = int.Parrse(num.GetString());
  assert(dots.Length == x);
  ...
}
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.