GNU Bison

GNU Bison
Тип генератор синтаксичних аналізаторів
Автор Robert P. Corbettd[1]
Розробник GNU Project
Операційна система крос-платформовий
Мова програмування C
Ліцензія GPL
Онлайн-документація gnu.org/software/bison/manual/
Репозиторій git.savannah.gnu.org/cgit/bison.git
Вебсайт www.gnu.org/software/bison

Bison (бізон) — генератор синтаксичних аналізаторів загального призначення, який перетворює опис контекстно-вільної LALR граматики в програму мовою C для синтаксичного аналізу текстів відносно заданої граматики.

Bison, придатний для розробки аналізаторів мов досить широкого класу: від тих, що використовуються в простих настільних калькуляторах до складних мов програмування. Bison типово використовується разом з генератором лексичних аналізаторів Flex.

Bison зворотно сумісний з Yacc: всі правильні граматики Yacc повинні без змін працювати з Bison. Кожен, хто добре знає Yacc, не повинен мати великих проблем при використанні Bison.

Bison написаний, в основному, Робертом Корбеттом (Robert Corbett). Річард Столмен (Richard Stallman) зробив його сумісним з Yacc. Вільфред Хансен (Wilfred Hansen) з Carnegie Mellon Univerisity додав підтримку багатосимвольних літералів та інші можливості.

Умови використання Bison

Починаючи з версії Bison 1.24 змінено умови поширення yyparse, дозволивши використовувати результат роботи Bison в невільних програмах. Раніше аналізатори, створені Bison, могли бути використані лише в програмах, які є вільним програмним забезпеченням.

Інші інструменти GNU для програмування, такі як компилятор GCC, ніколи не містили такої вимоги. Вони завжди могли використовуватися для розробки невільного програмного забезпечення. Bison відрізнявся від них не через якесь особливе політичне рішення, просто до всього первісного коду Bison застосовувалася звичайна Універсальна Громадська Ліцензія (GPL).

Вихід Bison — файл аналізатора Bison — містить точну копію частини Bison як код функції yyparse (всі дії вашої граматики вставляються в функцію в одному місці, решта функції при цьому не змінюється). У результаті застосування умов GPL до коду yyparse, використання виходу Bison було обмежене вільним програмним забезпеченням.

Див. також

Посилання

  • сторінка Bison [Архівовано 3 серпня 2004 у Wayback Machine.]
  • п
  • о
  • р
Історія
Маніфест GNU • Проєкт GNU Фонд ВПЗ Історія ВПЗ
Ліцензії
GNU GPL GNU LGPL Affero GPL GNU FDL GPL linking exception[en]
Програмне
забезпечення
GNU (варіанти) • Hurd GNOME Bash GCC GRUB GNU Emacs Guile glibc Coreutils Autotools • GNUnet •GNU linker GNU DebuggerGNUzilla (GNU IceCat) • Gnash • Guix Shepherd інші пакети...
Персони
Alexandre Oliva • Benjamin Mako Hill • Bradley Kuhn • Eben Moglen • Federico Heinz • Георг Греве • Джошуа Гей • Loïc Dachary • Мет Лі • Ricardo Galli • Річард Столмен Robert Chassell • William John Sullivan
Інше
Суперечка про найменування GNU/Linux • Revolution OS BadVista • Defective by Design
Програмне забезпечення Це незавершена стаття про програмне забезпечення.
Ви можете допомогти проєкту, виправивши або дописавши її.
  1. Corbett R. P. Static Semantics and Compiler Error Recovery — 1985.
    d:Track:Q89537144d:Track:Q89537850