Ito ang command happy na maaaring patakbuhin sa OnWorks free hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
masaya - ang generator ng parser para sa Haskell
SINOPSIS
masaya [OPTION] ... file [OPTION] ...
DESCRIPTION
Ang manu-manong pahinang ito ay nagdodokumento ng maikling masaya utos.
Ang manu-manong pahinang ito ay isinulat para sa Debian GNU/Linux distribution dahil ang orihinal
Ang programa ay walang manu-manong pahina. Sa halip, mayroon itong dokumentasyon sa iba't ibang iba pa
mga format, kabilang ang DVI, Impormasyon at HTML; tingnan sa ibaba.
Masaya ay isang parser generator system para sa Haskell. Ang `HAPPY' ay isang dyslexic acronym para sa `A
Yacc-like Haskell Parser generator'.
Mayroong dalawang uri ng grammar file, file.y at file.ly, na ang huli ay nagmamasid sa
reverse comment bird track convention (ibig sabihin, ang bawat linya ng code ay dapat magsimula sa `>'). Ang
mga halimbawa na ipinamahagi sa Masaya ay lahat ng .ly form.
Caveat: Kapag gumagamit hbc (Chalmers Haskell) ang istraktura ng command argument ay bahagyang
magkaiba. Ito ay dahil ang hbc run time system ay kumukuha ng ilang mga flag bilang sarili nito (para sa
pagtatakda ng mga bagay tulad ng laki ng tambak, atbp). Maaaring malampasan ang problemang ito sa pamamagitan ng pagdaragdag ng a
single dash (`-') sa iyong command line. Kaya kapag gumagamit ng hbc na nabuong bersyon ng Happy,
ang istraktura ng argumento ay:
masaya - [OPTION] ... file [OPTION] ...
Opsyon
Ang mga programa ay sumusunod sa karaniwang GNU command line syntax, na may mahabang opsyon na nagsisimula sa dalawa
mga gitling (`--'). Ang isang buod ng mga opsyon ay kasama sa ibaba. Para sa kumpletong paglalarawan, tingnan
ang iba pang dokumentasyon.
-h, - Tumulong
Ipakita ang buod ng mga opsyon.
-v, --bersyon
I-print ang impormasyon ng bersyon sa karaniwang output pagkatapos ay matagumpay na lumabas.
-a, --array
Nagtuturo kay Happy na bumuo ng parser gamit ang array-based shift reduce parser.
Kapag ginamit kasabay ng -g, ang mga array ay ie-encode bilang mga string, na magreresulta
sa mas mabilis na mga parser. Kung wala -g, gagamitin ang karaniwang Haskell arrays.
-g, --ghc
Nagtuturo sa Happy na bumuo ng isang parser na gumagamit ng mga extension na tukoy sa GHC upang makuha
mas mabilis na code.
-c, --pilitan
Gumamit ng GHC hindi ligtasCoerce# extension upang makabuo ng mas maliliit na mas mabilis na mga parser. Isang sagabal
ay ang ilang uri ng kaligtasan ay nawala, na nangangahulugan na ang isang parser ay nabuo gamit ang -c maaari
mag-compile ng maayos ngunit nag-crash sa run-time. Tiyaking i-compile ang iyong grammar nang wala -c
una upang matiyak na ito ay uri-tama.
Ang pagpipiliang ito ay may lubos na makabuluhang epekto sa pagganap ng resulta
parser, ngunit tandaan na ang mga parser na nabuo sa ganitong paraan ay maaari lamang i-compile ng
GHC 3.02 at mas mataas.
Ang opsyong ito ay maaari lamang gamitin kasabay ng -g.
-d, --debug
Bumuo ng parser na magpi-print ng impormasyon sa pag-debug stderr sa run-time,
kasama ang lahat ng mga shift, reduction, state transition at token input na ginawa
ng parser.
Ang opsyong ito ay maaari lamang gamitin kasabay ng -a.
-i [FILE], --impormasyon[=FILE]
Direktang Masaya na gumawa ng file ng impormasyon na naglalaman ng detalyadong impormasyon tungkol sa
grammar, parser states, parser actions, at conflicts. Ang mga file ng impormasyon ay mahalaga sa panahon
ang pag-debug ng mga grammar.
Ang argumento ng filename ay opsyonal, at kung aalisin ang file ng impormasyon ay isusulat sa
FILE.info (kung saan FILE ay ang input file name na may anumang extension na inalis).
-o FILE, --outfile=FILE
Tinutukoy ang patutunguhan ng nabuong module ng parser. Kung tinanggal, ang parser
ilalagay sa FILE.hs, Kung saan FILE ay ang pangalan ng input file na may alinman
tinanggal ang extension. Kung FILE is - ang nabuong parser ay ipinadala sa pamantayan
output.
-m NAME, --magic-name=NAME
Inilalagay ng Happy prefix ang lahat ng mga simbolo na ginagamit nito sa loob ng alinman masaya or Masaya. Upang
gumamit ng ibang string, halimbawa kung ang paggamit ng masaya ay sumasalungat sa isa sa
iyong sariling mga function, tukuyin ang prefix gamit ang -m pagpipilian.
-t DIR, --template=DIR
Nagtuturo kay Happy na gamitin ang direktoryo na ito kapag naghahanap ng mga template file: ang mga file na ito
naglalaman ng static na code na kasama ng Happy sa bawat nabuong parser. Ikaw
hindi dapat kailanganing gamitin ang opsyong ito kung maayos na na-configure ang Happy para sa iyong
computer.
-l, --glr
Nagtuturo kay Happy na mag-output ng isang GLR parser sa halip na isang LALR(1) parser.
-k, --decode
Nagiging sanhi ng GLR parser upang makabuo ng code para sa pag-decode ng parse forest sa isang listahan ng
mga resulta ng semantiko (nangangailangan --ghc).
-f, --filter
Nagiging sanhi ng pag-filter ng GLR parser ng mga node na hindi kinakailangan para sa semantic
resulta (isang pang-eksperimentong pag-optimize, nangangailangan --ghc).
Gumamit ng masaya online gamit ang mga serbisyo ng onworks.net