Skip to content

DanArmor/SetsBuilder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SetsBuilder

Программа строит множества СЛЕД и ПЕРВ для символов грамматики:

image

Также она строит множества ВЫБОР для правил и находит пересечения в них:

image

Требования к вводу:

  • В папке, где происходит запуск, должен находиться файл rules.json с описаниями грамматики.
  • Первый символ, с которого начинается вывод - S
  • Все нетерминалы и терминалы должны состоять из одного символа - недопустимы нетерминалы/терминалы вида S' / a' и т. п.

Пример содержимого rules.json:

{
    "rules": [
        {
            "left": "S",
            "right": "S;O"
        },
        {
            "left": "S",
            "right": "Z;"
        },
        {
            "left": "O",
            "right": "Y[S]"
        },
        {
            "left": "O",
            "right": "Y[S][S]"
        },
        {
            "left": "O",
            "right": "{[S]Y}"
        },
        {
            "left": "O",
            "right": "{Y[S]}"
        },
        {
            "left": "O",
            "right": "a=Y"
        },
        {
            "left": "Y",
            "right": "(Y|Y)"
        },
        {
            "left": "Y",
            "right": "(Y&Y)"
        },
        {
            "left": "Y",
            "right": "!(Y)"
        },
        {
            "left": "Y",
            "right": "a"
        },
        {
            "left": "Z",
            "right": "O"
        }
    ]
}

About

A program that constructs the sets of FIRST, NEXT and CHOICE

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages