yacplan9 - ക്ലൗഡിൽ ഓൺലൈനിൽ

Ubuntu Online, Fedora Online, Windows online emulator അല്ലെങ്കിൽ MAC OS ഓൺലൈൻ എമുലേറ്റർ എന്നിങ്ങനെയുള്ള ഞങ്ങളുടെ ഒന്നിലധികം സൗജന്യ ഓൺലൈൻ വർക്ക്സ്റ്റേഷനുകളിലൊന്ന് ഉപയോഗിച്ച് OnWorks സൗജന്യ ഹോസ്റ്റിംഗ് ദാതാവിൽ പ്രവർത്തിപ്പിക്കാൻ കഴിയുന്ന yacplan9 കമാൻഡ് ഇതാണ്.

പട്ടിക:

NAME


yacc - മറ്റൊരു കമ്പൈലർ-കംപൈലർ

സിനോപ്സിസ്


yac [ ഓപ്ഷൻ ... ] വ്യാകരണം

വിവരണം


യാക്ക് ഒരു സന്ദർഭ രഹിത വ്യാകരണവും വിവർത്തന കോഡും ഒരു കൂട്ടം പട്ടികകളാക്കി മാറ്റുന്നു
LR(1) പാർസറും വിവർത്തകനും. വ്യാകരണം അവ്യക്തമായിരിക്കാം; നിർദ്ദിഷ്ട മുൻഗണനാ നിയമങ്ങളാണ്
അവ്യക്തതകൾ തകർക്കാൻ ഉപയോഗിക്കുന്നു.

ഔട്ട്പുട്ട് ഫയൽ, y.tab.c, ഇത് ഒരു പ്രോഗ്രാം നിർമ്മിക്കുന്നതിന് സി കമ്പൈലർ സമാഹരിച്ചിരിക്കണം
പ്രോഗ്രാം ഒരു ലെക്സിക്കൽ അനലൈസർ ഫംഗ്‌ഷൻ ഉപയോഗിച്ച് ലോഡ് ചെയ്യണം, yylex(അസാധു) (പലപ്പോഴും സൃഷ്ടിച്ചത്
Lex(1)), കൂടെ a പ്രധാന(int ആർജിസി, പ്രതീകം *argv[]) പ്രോഗ്രാം, കൂടാതെ ഒരു പിശക് കൈകാര്യം ചെയ്യൽ പതിവ്,
yerror(char*).

ഓപ്ഷനുകൾ എന്നിവയാണ്

-o ഔട്ട്പുട്ട് പകരം നിർദ്ദിഷ്ട ഫയലിലേക്ക് നേരിട്ട് ഔട്ട്പുട്ട് y.tab.c.

-Dn ഫയൽ സൃഷ്ടിക്കുക y.ഡീബഗ്, ഡയഗ്നോസ്റ്റിക് സന്ദേശങ്ങൾ അടങ്ങിയിരിക്കുന്നു. അവരെ ഉൾപ്പെടുത്താൻ
പാർസർ, പ്രീപ്രൊസസ്സർ ചിഹ്നം ഉപയോഗിച്ച് കംപൈൽ ചെയ്യുക yydebug നിർവചിച്ചിരിക്കുന്നത്. തുക
പാഴ്സറിൽ നിന്നുള്ള ഡയഗ്നോസ്റ്റിക് ഔട്ട്പുട്ട് മൂല്യം അനുസരിച്ചാണ് നിയന്ത്രിക്കുന്നത് n. മൂല്യം 0 റിപ്പോർട്ട് ചെയ്യുന്നു
പിശകുകൾ; 1 റിപ്പോർട്ടുകൾ കുറവുകൾ; ഉയർന്ന മൂല്യങ്ങളിൽ (4 വരെ) കൂടുതൽ വിവരങ്ങൾ ഉൾപ്പെടുന്നു
സംസ്ഥാന പരിവർത്തനങ്ങളെക്കുറിച്ച്.

-v ഫയൽ സൃഷ്ടിക്കുക y.ഔട്ട്പുട്ട്, പാഴ്‌സിംഗ് ടേബിളുകളുടെ വിവരണം ഉൾക്കൊള്ളുന്നു
വ്യാകരണത്തിലെ അവ്യക്തതകളിൽ നിന്ന് ഉണ്ടാകുന്ന വൈരുദ്ധ്യങ്ങൾ.

-d ഫയൽ സൃഷ്ടിക്കുക y.tab.h, അടങ്ങുന്ന # നിർവചിക്കുക ബന്ധപ്പെട്ട പ്രസ്താവനകൾ yac- ഏൽപ്പിച്ചു
ഉപയോക്താവ് പ്രഖ്യാപിച്ച 'ടോക്കൺ പേരുകൾ' ഉള്ള 'ടോക്കൺ കോഡുകൾ'. ഉറവിട ഫയലുകളിൽ ഇത് ഉൾപ്പെടുത്തുക
ഒഴികെ y.tab.c ടോക്കൺ കോഡുകളിലേക്ക് ആക്സസ് നൽകാൻ.

-s ശബ്ദം ഫയലുകളുടെ പേരുകളുടെ പ്രിഫിക്‌സ് മാറ്റുക y.tab.c, y.tab.h, y.ഡീബഗ്, ഒപ്പം y.ഔട്ട്പുട്ട് ലേക്ക്
ശബ്ദം.

-S എന്നതിന് പകരം Stdio ഉപയോഗിക്കുന്ന ഒരു പാഴ്സർ എഴുതുക അച്ചടിക്കുക libc-യിലെ ദിനചര്യകൾ.

-l ജനറേറ്റ് ചെയ്‌ത പാഴ്‌സറിൽ #ലൈൻ നിർദ്ദേശങ്ങൾ പ്രവർത്തനരഹിതമാക്കുക.

-a Yyarg എന്ന തരത്തിലുള്ള ഒരു ആർഗ്യുമെന്റ് എടുത്ത് ഈ ആർഗ്യുമെന്റ് പാസാക്കുന്ന ഒരു പാർസർ ജനറേറ്റ് ചെയ്യുക
ലെക്‌സർ ഫംഗ്‌ഷന്റെ ഓരോ ആഹ്വാനത്തിനും, yylex. Yyarg-ൽ ഓരോ സന്ദർഭവും അടങ്ങിയിരിക്കുന്നു
സംസ്ഥാനവും ഉപയോക്താവിന് ദൃശ്യമാകുന്ന ഒരൊറ്റ അംഗവും, arg, തരം ശൂന്യമാണ്*.

ന്റെ സവിശേഷത yac അതിൽ വിവരിച്ചിരിക്കുന്ന UNIX പതിപ്പിന് സമാനമാണ്
താഴെ പരാമർശിച്ചിരിക്കുന്ന അവലംബങ്ങൾ. കൂടാതെ -D ഓപ്ഷൻ, പ്രധാന പ്രസക്തമായ വ്യത്യാസങ്ങൾ ഇവയാണ്:

സി എൻവയോൺമെന്റിലേക്കുള്ള ഇന്റർഫേസ് ഡിഫോൾട്ട് വഴിയാണ് അതിലും കൂടുതൽ
; The -S ഓപ്ഷൻ ഇത് വിപരീതമാക്കുന്നു.

പാഴ്സർ UTF ഇൻപുട്ട് ടെക്സ്റ്റ് സ്വീകരിക്കുന്നു (കാണുക utf(7)), ഇതിന് രണ്ട് ഇഫക്റ്റുകൾ ഉണ്ട്.
ആദ്യം, റിട്ടേൺ മൂല്യം yylex() ഇനി a യിൽ ചേരില്ല കുറിയ; രണ്ടാമത്, തുടക്കം
നോൺ-ടെർമിനലുകൾക്കുള്ള മൂല്യം ഇപ്പോൾ 0-നേക്കാൾ 000xE257 ആണ്.

ജനറേറ്റ് ചെയ്‌ത പാഴ്‌സർ ആവർത്തനമാകാം: പ്രവർത്തനങ്ങൾക്ക് വിളിക്കാം yyparse, ഉദാഹരണത്തിന് വരെ
ഒരു തരം നടപ്പിലാക്കുക # ഉൾപ്പെടുത്തുക ഒരു വ്യാഖ്യാതാവിൽ പ്രസ്താവന.

അവസാനമായി, പാഴ്‌സറിന്റെ ചില രേഖകളില്ലാത്ത ആന്തരിക പ്രവർത്തനങ്ങൾ മാറ്റി
അതിന്റെ ഘടനയെക്കുറിച്ച് വളരെയധികം അറിയാവുന്ന പ്രോഗ്രാമുകളെ ബാധിച്ചേക്കാം.

onworks.net സേവനങ്ങൾ ഉപയോഗിച്ച് yaccplan9 ഓൺലൈനായി ഉപയോഗിക്കുക



ഏറ്റവും പുതിയ ലിനക്സ്, വിൻഡോസ് ഓൺലൈൻ പ്രോഗ്രാമുകൾ