EnglezăFrancezăSpaniolă

Ad


Favicon OnWorks

yaccplan9 - Online în cloud

Rulați yaccplan9 în furnizorul de găzduire gratuit OnWorks prin Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

Aceasta este comanda yaccplan9 care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

PROGRAM:

NUME


yacc - încă un alt compilator-compilator

REZUMAT


yacc [ opțiune ... ] gramatică

DESCRIERE


Yacc convertește o gramatică și un cod de traducere fără context într-un set de tabele pentru un
LR(1) analizator și traducător. Gramatica poate fi ambiguă; regulile de prioritate specificate sunt
folosit pentru a sparge ambiguitățile.

Fișierul de ieșire, y.tab.c, trebuie compilat de compilatorul C pentru a produce un program This
programul trebuie să fie încărcat cu o funcție de analizor lexical, yylex (gol) (generat adesea de
Lex(1)), cu a principal (int argc, car de război *argv[]) program și cu o rutină de gestionare a erorilor,
yyerror(car*).

Opțiunile sunt

-o producție Ieșire directă către fișierul specificat în loc de y.tab.c.

-Dn Creați fișier y.debug, care conțin mesaje de diagnosticare. Pentru a le incorpora in
analizatorul, compilați-l cu simbolul preprocesorului yydebug definit. Cantitatea de
ieșirea de diagnosticare de la parser este reglată de valoare n. Raportează valoarea 0
erori; 1 raportează reduceri; valorile mai mari (până la 4) includ mai multe informații
despre tranzițiile de stat.

-v Creați fișier y.ieşire, care conține o descriere a tabelelor de parsare și a
conflicte care decurg din ambiguităţile din gramatică.

-d Creați fișier y.tab.h, conținând #defini afirmaţii care asociază yacc-atribuit
„coduri de simboluri” cu „nume de simboluri” declarate de utilizator. Includeți-l în fișierele sursă
altele decât y.tab.c pentru a acorda acces la codurile token.

-s stăvili Schimbați prefixul numelor fișierelor y.tab.c, y.tab.h, y.debug, și y.ieşire la
stăvili.

-S Scrieți un parser care să folosească Stdio în loc de imprima rutine în libc.

-l Dezactivează directivele #line în parserul generat.

-a Generați un parser care preia un argument de tip Yyarg și transmite acest argument
la fiecare invocare a funcției lexer, yylex. Yyarg conține per-instanță
state și un singur membru vizibil de utilizator, arg, de tip void*.

Specificația yacc în sine este în esență aceeași cu versiunea UNIX descrisă în
referințele menționate mai jos. Pe langa -D opțiunea, principalele diferențe relevante sunt:

Interfața cu mediul C este implicit prin mai degrabă decât
; -S opțiunea inversează acest lucru.

Analizorul acceptă textul de intrare UTF (vezi utf(7)), care are câteva efecte.
În primul rând, valoarea returnată a yylex() nu se mai încadrează într-o mic de statura; al doilea, pornirea
valoarea pentru non-terminale este acum 0xE000, mai degrabă decât 257.

Analizatorul generat poate fi recursiv: acțiunile pot apela yyparse, de exemplu la
implementează un fel de #include declarație într-un interpret.

În cele din urmă, unele funcții interioare nedocumentate ale parserului au fost modificate, ceea ce
poate afecta programele care cunosc prea multe despre structura sa.

Utilizați yaccplan9 online folosind serviciile onworks.net


Servere și stații de lucru gratuite

Descărcați aplicații Windows și Linux

  • 1
    Phaser
    Phaser
    Phaser este o deschidere rapidă, gratuită și distractivă
    cadru de joc HTML5 sursă care oferă
    Redare WebGL și Canvas
    browsere web desktop și mobile. Jocuri
    poate fi co...
    Descărcați Phaser
  • 2
    Motor VASSAL
    Motor VASSAL
    VASSAL este un motor de joc pentru creare
    versiuni electronice ale plăcii tradiționale
    și jocuri de cărți. Oferă suport pentru
    redarea și interacțiunea pieselor de joc,
    și ...
    Descărcați VASSAL Engine
  • 3
    OpenPDF - Furk of iText
    OpenPDF - Furk of iText
    OpenPDF este o bibliotecă Java pentru creare
    și editarea fișierelor PDF cu un LGPL și
    Licență open source MPL. OpenPDF este
    Succesorul LGPL/MPL open source al iText,
    o ...
    Descărcați OpenPDF - Furk of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Sistem pentru automatizare
    Analize Geoștiințifice - este un Geografic
    Sistemul informatic (GIS) software cu
    capacități imense pentru geodate
    procesare și ana...
    Descărcați SAGA GIS
  • 5
    Caseta de instrumente pentru Java/JTOpen
    Caseta de instrumente pentru Java/JTOpen
    IBM Toolbox for Java / JTOpen este un
    biblioteca de clase Java care acceptă
    programare client/server și internet
    modele către un sistem care rulează OS/400,
    i5/OS, o...
    Descărcați Toolbox pentru Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (sau D3 pentru documente bazate pe date)
    este o bibliotecă JavaScript care vă permite
    pentru a produce date dinamice, interactive
    vizualizări în browsere web. Cu D3
    tu...
    Descărcați D3.js
  • Mai mult »

Comenzi Linux

  • 1
    abidiff
    abidiff
    abidiff - comparați ABI-urile fișierelor ELF
    abidiff compară aplicația binară
    Interfețe (ABI) a două biblioteci partajate
    în format ELF. Emite un sens
    repor ...
    Fugi abidiff
  • 2
    abidw
    abidw
    abidw - serializați ABI-ul unui ELF
    fișierul abidw citește o bibliotecă partajată în ELF
    format și emite o reprezentare XML
    a ABI-ului său la ieșirea standard. The
    emis...
    Run abidw
  • 3
    copac2xml
    copac2xml
    bibutils - conversie bibliografie
    utilitati...
    Rulați copac2xml
  • 4
    Copt
    Copt
    copt - optimizator peephole SYSNOPIS:
    fișier copt.. DESCRIERE: copt este a
    optimizator de uz general pentru vizor. Aceasta
    citește codul din intrarea sa standard și
    scrie un...
    Fugi copt
  • 5
    gather_stx_titles
    gather_stx_titles
    gather_stx_titles - aduna titlul
    declarații din documentele Stx...
    Rulați gather_stx_titles
  • 6
    gatling-banc
    gatling-banc
    bench - http benchmark...
    Alerga gatling-bench
  • Mai mult »

Ad