; TeX output 1997.09.11:1205ufv6fvDtGGcmr17Literate7tProgramming:r7Prolog7tDoscumenqtationwithLdKGXQ cmr12AT[-E;gXlύtGerdNeugebauerMMainzerStr.8856321Rhens(Germanry)Net:8߆T cmtt12gerd@informatik.uni-koblenz.de@kvyo cmr9ThisTdoAcumen9tdescribesplv9ersion3.0asof1996/05/30.(/6Nff cmbx12Intros3ductionq6K`y 3 cmr10InspiredUb!ytheideabMehindthewebsystemIUfelttheneedtohaveasystem 6toܦwritedoMcumen!tedPrologprograms.Butinsteadofhavingtotransform6the'commonsourcein!toprogramordoMcumentationthecentralideawasto6dev!elop amethoMdtohaveonecommonsourcewhichcanbMeinterpretedbya6Prolog|{Ycmr81systemasw!ellasbyLٺAGT,[wEB X.TeoachivethisgoaltheLٺAGT,[wEB Xcommands6arefhiddenfromPrologb!yenclosingthemintocomments.GTheZC-Prologallo!wstwokindsofcomments.UThe rstkindstartswith6a#ufv6fv홊6AffSample񍍟J%%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J%%^^A?Thisisasamplefiletodemonstratetheuseofthe\LaTeXstyleoptionJ%%^^A?pl.sty.J%%^^AJ%%^^A?The^^Aisjustusedtomakeitprintablewiththedocumentation.J%%^^A?doc.styinsistsonit.Otherwiseasingle%wouldhavebeenenough.J%%^^AJ%%^^A?writtenbygene11/94J%%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J:-?module(sample)./*JThis?isadummymoduletoshowthepossibilitiesofthe\LaTeX{}styleJoption?pl.JWe?defineapredicate.ItlookslikeJ\Predicate?select/3(Member,List,Rest).JThis?predicatedescribestherelationofthethreeargumentswhichfulfillJ$\mbox{\it?Member}\in\mbox{\itList}$\/and$\mbox{\itRest}=\mbox{\itJList}\backslash\mbox{\it?Member}$.JAnd?herecomestheimplementation:J\PL*/Jselect(Member,[Member|Rest],Rest).Jselect(Member,[Head|List],[Head|Rest])?:-tselect(Member,List,Rest).J/*PLJ\Predicate?in/2(Member,List).JThis?predicateisareimplementationofthepredicate\verb|member/2|Jusing?the\verb|select/3|predicate.J\PL*/Jin(Member,List) :-tselect(Member,List,_).J/*PLJNow?wearedonewiththeexample.J\EndProlog*/C38 Cpufv6fv홊64NLTheffMos3dule0߆Tff cmtt12sample.plqGThisisadumm!ymoMduletoshowthepMossibilitiesoftheLٺAGT,[wEB Xstyle 6optionfpl.Weede neapredicate.ItloMokslik!e65-LŸ,͍Mߍselect(Member,List,Rest),L„-LŽwSsample.plGThisDpredicatedescribMestherelationofthethreeargumen!tswhichful ll6Membper^2 List`andfRpestEx= ListanMembper%.GAndfherecomestheimplemen!tation:J:-?module(sample). Jselect(Member,[Member|Rest],Rest).Jselect(Member,[Head|List],[Head|Rest])?:-tselect(Member,List,Rest).65-LŸ,͍Mߍin(Member,List),L„-LŽwSsample.plGThispredicateisareimplemen!tationofthepredicatemember/2using6thefselect/3predicate.Jin(Member,List) :-tselect(Member,List,_).GNo!wfwearedonewiththeexample.C39 J ufv6fv홊65NLTheffImplementation񍍑:@1AU`\ifx\documentclass\relax?\else :@2KZ\ProvidesPackage{pl}[\filedate\space?gene(\fileversion)]:@3AU`\fi65.1TOptionsandDefaults6Firstofallw!ede nethemacroscontainingthedefaultvdDaluesforcertain 6options.The=Zuserma!yrede nethemwith\renewcommandtoadaptthem6tofthepMersonalpreferences.:@4AU`\def\PrologFont{\small\tt}6Themacro\PrologFontcon!tainsthefontchangingcommandexecutedto6t!ypMesetfthePrologcodeinthev!erbatim-likefenvironment.:@5AU`\def\PrologIndent{2em}6The:macro\PrologIndentcon!tainstheindentationofthePrologcoMdein6thefv!erbatim-likeenvironment.:@6AU`\def\PrologNumberFont{\tiny\rm}6Theށmacro\PrologNumberFontcon!tainsthefontchangingcommandused6toft!ypMesetthelinenumbMers(ifenabled)intheverbatim-likeenvironment.:@7AU`\def\PrologRuleWidth{0pt}6The/macro\PrologRuleWidthcon!tainsthewidthoftherulesepMerating6PrologfcoMdeandtext.:@8AU`\def\PrologListFont{\small\tt}6TheE0macro\PrologListFontcon!tainsthefontchangingcommandtotypMe-6setfaProloglist(expMorts).:@9AU`\def\PrologListIndent{2em}6Themacro\PrologListIndentcon!tainstheindentationforaProloglist6(expMorts).610AU`\def\PrologModule#1#2{\section{The?Module{\tt#1}}}6The|macro\PrologModulecon!tainsthecommandwhichiscalledatthe6bMeginningofamodule.The rstargumen!tisthenameofthemodule.The6secondfargumen!tisthelistofexpMorts.GThismacroissuppMosedtoberede nedb!ytheuserwith\renewcommand.611AU`\def\PrologFile#1#2{\section{The?File{\tt#1}}}f10 OƠufv6fv홊6The¯o\PrologFilecon!tainsthecommandwhichiscalledatthebMe- 6ginningkofanon-moMduleProlog le.@The rstargumen!tisthenameofthe6moMdule.Thefsecondargumen!tisusuallyemptye.GThismacroissuppMosedtoberede nedb!ytheuserwith\renewcommand.#612AU`\def\PredicateFont{\tt}6Themacro\PredicateFontcon!tainsthefontswitchingcommandusedin6\PredicatefforthebModyfofthepredicatedescription.613AU`\def\PredicateFileFont{\small\sf}6Theּmacro\PredicateFileFontcon!tainsthefontswitchingcommandused6inf\Predicateforthe lename614AU`\def\PredicateSkip{\smallskip}6Themacro\PredicateSkipcon!tainstheskipcommandexecutedbMefore6andfafter\Predicate.615AU`\def\PredicateIndent{5em}6The5macro\PredicateIndentcon!tainslengthofthemaximalindentation6infthemacro\Predicate.616AU`\def\PredicateFileExtension{}6Themacro\PredicateFileExtensioncon!tainsthetextappMendedto le6namefinthe\Predicatecommand.617AU`\def\PredicateFileWidth{5em}6The)macro\PredicateFileWidthcon!tainstheminimumwidthofthe le6name_inthe\Predicatecommand.BShorter lenamesarepaddedtothis6length.618AU`\def\PredicateFileSep{1em}6Themacro\PredicateFileSepcon!tainsthewidthoftheseparatingspace6bMet!weenfthepredicatedescriptionandthe lename.619AU`\def\PredicateBoxSep{3pt}6Themacro\PredicateBoxSepcon!tainstheamountofspacebMetweenthe6bMo!xGandcontentsinthe\Predicatecommand.aThisissimilarto\fboxsep6infLٺAGT,[wEB X.620AU`\def\PredicateBoxRule{0.5pt}6TheCmacro\PredicateBoxRulecon!tainsthelinethicknessofbMoxinthe6\Predicatefcommand.Thisissimilarto\fboxruleinLٺAGT,[wEB X.621AU`\def\PredicateIndex#1{\index{#1}}f11 Xufv6fv홊6Themacro\PredicateIndexcon!tainsthecommandwhichiscalledtoput 6afpredicatein!toanindex.Theargumentisthestringtoindex.GThisfmacroma!ybMerede nedbytheuserwith\renewcommand.622AU`\newif\ifPrologNumberLines6switc!hftoenablelinenumbMeringR65.2TInternalse623AU`\def\PrologEXPORTS{}6Thefmacro\PrologEXPORTScon!tainsthecurrentlistofexpMorts. 624AU`\def\PrologFILE{}6TheMmacro\PrologFILEBcon!tainsthecurrentmoMduleor lename.gThisis 6notsuppMosedtobesetb!ytheuser.,NeverthelesstheremightbMeoccasions6wherefthisisneccesary(e.g.inthedoMcumen!tationofthisstyleoption).65.3TCon gurationCommands6Thebdi eren!tPrologdialectshavedi erentwaystodeclaremoMdules.Thus6plãneedstokno!wwhichdialectiscurrentlyused. 5Thisin uenceshow6PrologInputfhandlesthe rstPrologclause.625AU`\def\PrologDialect#1{% 626KZ\@ifundefined{PL@start@module@#1}%627U0{\message{***?Prologdialect#1isundefined.Ignored.}}%628U0{\gdef\PL@Dialect{#1}}}629AU`\def\PL@Dialect{eclipse}6Theicommand\PrologDialectcanbMeusedtodeclarethePrologdialect 6used. The uvdDalueisstoredinthemacro\PL@Dialectforlateruse.Thisis6onlyfdoneifanappropriatemacrotohandleamoMdulearede ned.630AU`\gdef\PL@@delayed{}6Keepfsomec!haracterswhichwerereadinadvdDance.631AU`\newcount\PL@line6WeefalloMcateanewcoun!terforthelinenumbMerofPrologcode(ifenabled).R65.4TTyp`esettingPrologCode6PrologcoMdeist!ypesetisav!erbatim-likewaye.>ForthispurpMoseamodi ed 6v!ersionoftheverbatimenvironmentfromtheT,[wEB XbMookisused.Feoran6explanationfseepages380{382intheT,[wEB XbMook.f12 a0ufv6fv홊632AU`\gdef\PL@code@setup{\PrologFont\parskip=0ex\parindent=0pt 633KZ\ifx\PL@@delayed\empty\else%634VUT\parbox{\PrologIndent}{%635`N\ifPrologNumberLines?\PrologNumberFont\the\PL@line%636`N\global\advance\PL@line1637`N\else\?\fi}\PL@@delayed%638VUT\gdef\PL@@delayed{}\par639KZ\fi%640KZ\def\par{\leavevmode\egroup\box0\endgraf}641KZ\def\do##1{\catcode`##1=12?}\dospecials642KZ\obeyspaces643KZ\obeylines644AU`% \catcode`\`=\other645KZ\catcode`\^^I=13646KZ\everypar{\parbox{\PrologIndent}{%647`N\ifPrologNumberLines?\PrologNumberFont\the\PL@line%648`N\global\advance\PL@line1649`N\fi650`N\hfill}\PL@code@startbox}}651AU`\def\PL@code@startbox{\setbox0=\hbox\bgroup}652AU`{\catcode`\^^I=13 653F]\gdef^^I{\leavevmode\egroup654QW\dimen0=\wd0?%thewidthsofar,orsincetheprevioustab655QW\setbox1=\hbox{\PrologFont\space}\dimen1=8\wd1656QW\divide\dimen0by\dimen1657QW\multiply\dimen0?by\dimen1%computepreviousmultipleoftab658QW\advance\dimen0 by\dimen1?%advancetonextmultipleoftab659QW\wd0=\dimen0?\box0\PL@code@startbox}%660AU`}661AU`{\obeyspaces\global\let?=\}662AU`\def\PL*/{\PL@PL@init%663KZ\begingroup664KZ\PL@code@setup665KZ\PL@doPL}G|fistempMoraryescapec!haractertocatchtheend/*PL666AU`{\catcode`\|=0?\catcode`\\=12667KZ|obeylines|gdef|PL@doPL^^M#1/*PL{#1|endgroup|PL@PL@exit}}GInitializationfmacro668AU`\def\PL@PL@init{%669kUH\ifdim\PrologRuleWidth>0pt%670uB\par\noindent\rule{\textwidth}{\PrologRuleWidth}\par%671kUH\else\medskip\par\fi}f13j4ufv6fv홊672AU`\def\PL@PL@exit{% 673kUH\ifdim\PrologRuleWidth>0pt%674uB\vspace{-2ex}\noindent\rule{\textwidth}{\PrologRuleWidth}\par%675kUH\else\smallskip\par\fi}ƍGDirt!yfhack.make:activetocatch:-useagrouptohidethechanges676AU`\def\PL@INIT{\begingroup\catcode`:=13\catcode`/=13}T,677AU`\def\PL@EXIT{\endgroup}Gw!efmake:activeandincludethe le678AU`\gdef\PrologInput{% 679KZ\begingroup680KZ\catcode`\_=12681KZ\PL@Input682AU`}T,683AU`\PL@INIT684AU`\gdef\PL@Input#1{%685KZ\gdef\PrologFILE{#1}%686KZ\gdef\PrologMODULE{}%687KZ\gdef\PrologEXPORTS{}%688KZ\global\PL@line=1%689KZ\endgroup690KZ\PL@INIT%691KZ\let:=\PL@COLON692KZ\let/=\PL@SLASH693KZ\input{#1}%694KZ\gdef\PrologFILE{}%695KZ\gdef\PrologMODULE{}%696KZ\gdef\PrologEXPORTS{}%697KZ}698AU`\PL@EXIT65.5TEndaFileofPrologCo`de6A!t0theendofa lethereisa*/whichterminatesthelastcommentfor 6Prolog.ڴThoset!wocharactersarestrippMedawaybythemacro\EndProlog.699AU`\def\EndProlog#1*/{}65.6TDe nitionforVariousFileTyp`es65.6.1\zDe ninitions2forNon-MoYduleFiles6A3 leRcanstartwith/*.BThiscaseishandledb!ymakingthe/activeand 6bindingittothecommand\PL@SLASH.Thiscommandc!hecksifthenextf14rkufv6fv홊6c!haracter"isa*.InthiscasethecatcoMdesof/and:canberestoredtotheir 6defaults.Thisfisdoneb!y\PL@EXIT.GFinallyXtheunderscore_ismadeactiv!eand\PL@start@stariscalled6tofdotherest.1100AU`\def\PL@SLASH{\@ifnextchar*{% 1101VUT\PL@EXIT1102VUT\PL@US@start1103VUT\PL@SLASH@STAR}{/}}1104AU`\def\PL@SLASH@STAR*{%1105KZ\PrologFile{\PrologFILE}{}%1106KZ\PL@US@end}1107AU`\def\PL@COLON{\@ifnextchar-{\PL@goal}{:?}}1108AU`\def\PL@goal-{%1109KZ\PL@EXIT1110KZ\PL@US@start1111KZ\@ifnextchar?m{\csnamePL@start@module@\PL@Dialect\endcsname}%1112KZ{\@ifnextchar?t{\PL@start@true}%1113VUT{\csname?PL@start@file@\PL@Dialect\endcsname}}}1114AU`\def\PL@start@true?true./*{%1115KZ\PrologFile{\PrologFILE}{}%1116KZ\PL@US@end}65.6.2\zDe ninitions2forECLiPSe-Prolog6ThebMeginningofamodule leineclipsecanbeinoneofthefollo!wingforms:6:-2moYduleiffintterface(1F C 3 cmbxti10MoZdule)6:-2moYdule(MoZdule)GWeestripa!waytheactualpredicatenamegettingtherestinthemacro 6parameter#1.tThecompletemoMduledeclarationisstoredinthemacro6\PL@delayedftobMeinsertedlater.1117AU`\def\PL@start@module@eclipse?module#1(#2)./*{% 1118KZ\global\PL@line=11119KZ\gdef\PL@@delayed{:-?module#1(#2).}1120KZ\gdef\PrologMODULE{#2}%1121KZ\catcode`\,=13?%1122KZ\PrologModule{\PrologFILE}{}%1123KZ\PL@US@end}f15ymufv6fv홊65.6.3\zDe nitions2forQuinttus-Prolog6ThefbMeginningofamodule leinQuin!tusisinthefollowingform:6:-2moYdule(MoZdule,Exports)1124AU`\def\PL@start@module@quintus?module(#1,{% 1125KZ\global\PL@line=11126KZ\gdef\PrologFILE{#1}%1127KZ\catcode`\,=13?%1128KZ\PL@start@module@quintus@}1129AU`\def\PL@start@module@quintus@[#1]).?/*{%1130KZ\gdef\PrologEXPORTS{#1}%1131KZ\PrologModule{\PrologFILE}{#1}%1132KZ\PL@US@end}65.6.4\zDe nitions2forC-Prolog6I[don'tݫkno!wifC-ProloghasamoMdulesystemnowadays.Thelasttime 6Ic!heckedithadnone.]IfnobModyhasabMetterideaIuseQuin!tusProlog6syn!taxfinthiscaseevenitdoMesnotmakeanysense.1133AU`\let\PL@start@module@cprolog=\PL@start@module@quintus65.6.5\zDe nitions2forSixtus-Prolog6IOdon'tnkno!wwhat'susedinSixtus-Prolog.ESoIusethesamevdDalueasfor6eclipse.1134AU`\let\PL@start@module@sixtus=\PL@start@module@eclipse65.6.6\zDe nitions2forSWI-Prolog6FeortunatelymthemoMdulesystemofSWI-Prologiscompatiblewiththemodule6systemfofQuin!tusProlog.Sowejustusethede nitionhereagain.1135AU`\let\PL@start@module@swiprolog=\PL@start@module@quintus65.6.7\zDe nitions2forSB-Prolog6I[don'tݫkno!wifC-ProloghasamoMdulesystemnowadays.Thelasttime6Ic!heckedithadnone.]IfnobModyhasabMetterideaIuseQuin!tusProlog6syn!taxfinthiscaseevenitdoMesnotmakeanysense.1136AU`\let\PL@start@module@sbprolog=\PL@start@module@quintusf16ufv6fv홊65.6.8\zDe nitions2forbin-Prolog6Idon't*kno!wwhat'susedinbin-Prolog.*SoIusethesamevdDalueasfor 6eclipse.a1137AU`\let\PL@start@module@binprolog=\PL@start@module@eclipse΍65.7TTyp`esetaBoxedPredicateDescription6The{ rststepistoprotecttheunderscoresinthepredicatenamesandthe6argumen!ts.a1138AU`\def\Predicate{\PL@US@start\Predicate@}GThe!syn!taxisorientedtowardsPrologsyntax. Thenameandthearity6offthepredicatema!ynotcontain/or(.1139AU`\def\Predicate@#1/#2(#3).{% 1140KZ\PredicateSkip\par\noindent%1141KZ{\setbox1=\hbox{\PredicateFileFont?\PrologFILE\PredicateFileExtension}%1142QW\fboxrule=\PredicateBoxRule%1143QW\fboxsep=\PredicateBoxSep%1144QW\fbox{\PredicateIndex{#1/#2}%1145pE\dimen255=\wd11146pE\ifdim\dimen255<\PredicateFileWidth?\dimen255=\PredicateFileWidth\fi1147pE\dimen255=-\dimen2551148pE\advance\dimen255?by-\PredicateFileSep1149pE\advance\dimen255?by\textwidth1150pE\parbox{\dimen255}{\raggedright1151-\setbox0=\hbox{\normalsize\PredicateFont?#1(}1152-\dimen254=\wd011531154-\ifdim\dimen254>\PredicateIndent?\dimen254=\PredicateIndent\fi1155-\dimen253=\dimen255?\advance\dimen253by-\dimen2541156-\parshape=2?0mm\dimen255\dimen254\dimen2531157-\normalsize\PredicateFont?#1\ifx\@empty#3\else(#3)\fi1158kUH}}%1159VUT\hfill?\box1\PredicateSkip\par1160KZ}\PL@US@end}΍65.8TTyp`esetaListofPrologPredicatese1161AU`\def\PrologList{\par\noindent%1162KZ\PL@US@start1163KZ\PrologListFont1164KZ\catcode`\,=13%1165KZ\parindent=\PrologListIndent\parskip=0pt\parf17ޠufv6fv홊1166KZ\PL@List}FZ1167AU`{\catcode`\,=13 1168AU`\gdef\PL@List[#1]{%1169KZ\def,{\par}%1170KZ#11171KZ\PL@US@end\par}1172AU`}1173AU`\def\PrologListEXPORTS{\PrologList[\PrologEXPORTS]}FZ65.9TSp`ecialTreatmentoftheUnderscore6Wee؆de net!wo؆macrostoactivdDateanddeactivatetheunderscorerespMectiv!elye. 6Those}t!womacroshavetocomeinpairsalways.:The rstoneopMensagroup6toƷprotectthec!hanges.>Theclosingmacrosimplyclosesthegroup,thus6undoingfthee ectsofthe rstmacro.1174AU`\def\PL@US@start{\begingroup\catcode`\_=13?} 1175AU`\def\PL@US@end{\endgroup?}1176AU`\def\WithUnderscore{\begingroup\catcode`\_=13?\With@Underscore}1177AU`\def\With@Underscore#1{#1\endgroup}65.10[Misc6Aspin#o proMductofthisst!yle leisamacrotoincludea leverbMoselye.rSuch 6amacroisalsopro!videdbytheverbatimpackdDageandothers.Nevertheless6Ifha!veleftitin.1178AU`\def\Listing#1{\par\begingroup% 1179KZ\PL@line=1%1180KZ\PL@code@setup%1181KZ\input{#1}%1182KZ\endgroup}"(66NLBackwardffCompatibilityMos3de:32pcode.styq6Feorbac!kwardcompatibilitysomemacrosarede nedinastyle leunderthe 6oldlnamepcode.sty.Thenewst!yle lehastobMeacessibleunderthenew6namefpl.sty.This leisloadedbMeforesomemacrosarede ned.1183AU`\ifx\PrologFont\relax\else\input?pl.sty\fiGInformerv!ersionsmainlythePrologdialectQuintushasbMeensupported.6Th!usCUabMooleanCUwasenoughtotellapartthedialectsQuintusandeclipse|6whic!hfcamenext.Thisisemulatedwiththenexttwomacros.f184ufv6fv홊1184AU`\def\PrologQuintustrue{\PrologDialect{quintus}} 1185AU`\def\PrologQuintusfalse{\PrologDialect{eclipse}}GTheymacro\WithUnderscorew!asnamed\WithActiveUnderscoreina 6formerTv!ersionofpcode.sty.ڂTheApctivepartofthenamewasmissleading6forrusers.̲Th!usithasbMeenremoved.̲Theoldnameismadeanaliasforthe6newfone.1186AU`\let\WithActiveUnderscore=\WithUnderscoreGIn2\anancien!tversionofpcode.stythemacro\EndPrologwasnamed6\StopProlog.Th!usfwemakeanaliasfortheoldname.1187AU`\let\StopProlog=\EndPrologGMak!e_\PL@INITusablefortheuseraswell.}Idon'tknowwherethismight6bMeYpused.Ithasbeenintheoldv!ersion,2soIYBputitintothecompatibility6moMde.1188AU`\let\PrologInit=\PL@INIT"A6Indexq6Num!bMers/rwritteninitalicrefertothepagewherethecorrespondingen!try6isndescribMed,0theonesunderlinedtothecodelineofthede nition,0therest6tofthecoMdelineswheretheen!tryisused. +F6K`y cmr10EndProlog=\subitem?*+\EndProlog+,99,1876 ledate=\subitem?*+\filedate+,2 76 leversion=\subitem?*+\fileversion+,26ifPrologNumbGerLines=\subitem?*+\ifPrologNumberLines+,22,35,476Listing=\subitem?*+\Listing+,1786COLON=\subitem?COLON+,91,1076Dialect=\subitem?Dialect+,28,29,111,1136doPL=\subitem?doPL+,656EXIT=\subitem?EXIT+,77,98,101,1096goal=\subitem?goal+,107,1086INIT=\subitem?INIT+,76,83,90,1886Input=\subitem?Input+,81,846line=\subitem?line+,31,35,36,47,48,88,118,125,1796List=\subitem?List+,166,1686SLASH=\subitem?SLASH+,92,100+FPL=\subitem?*+\PL+,62 i=\subitem?+,138,139Predicate=\subitem?*+\Predicate+,138PredicateBoxRule=\subitem?*+\PredicateBoxRule+,20,142PredicateBoxSep=\subitem?*+\PredicateBoxSep+,19,143PredicateFileExtension=\subitem?*+\PredicateFileExtension+,16,141PredicateFileF*ont=\subitem?*+\PredicateFileFont+,13,141PredicateFileSep=\subitem?*+\PredicateFileSep+,18,148PredicateFileWidth=\subitem?*+\PredicateFileWidth+,17,146PredicateF*ont=\subitem?*+\PredicateFont+,12,151,157PredicateIndent=\subitem?*+\PredicateIndent+,15,154PredicateIndex=\subitem?*+\PredicateIndex+,21,144PredicateSkip=\subitem?*+\PredicateSkip+,14,140,159PrologDialect=\subitem?*+\PrologDialect+,25,184,185PrologEXPOR*TS=\subitem?*+\PrologEXPORTS+,23,87,96,130,173PrologFILE=\subitem?*+\PrologFILE+,24,85,94,105,115,122,126,131,141PrologFile=\subitem?*+\PrologFile+,11,105,115PrologF*ont=\subitem?*+\PrologFont+,4,32,55,183f19ufv6fvU6PrologIndent=\subitem?*+\PrologIndent+,5,34,46 6PrologInit=\subitem?*+\PrologInit+,1886PrologInput=\subitem?*+\PrologInput+,786PrologList=\subitem?*+\PrologList+,161,1736PrologListEXPOR*TS=\subitem?*+\PrologListEXPORTS+,1736PrologListF*ont=\subitem?*+\PrologListFont+,8,1636PrologListIndent=\subitem?*+\PrologListIndent+,9,1656PrologMODULE=\subitem?*+\PrologMODULE+,86,95,1206PrologMoGdule=\subitem?*+\PrologModule+,10,122,131PrologNumbGerF*ont=\subitem?*+\PrologNumberFont+,6,35,47 PrologQuintusfalse=\subitem?*+\PrologQuintusfalse+,185PrologQuintustrue=\subitem?*+\PrologQuintustrue+,184PrologRuleWidth=\subitem?*+\PrologRuleWidth+,7,69,70,73,74StopProlog=\subitem?*+\StopProlog+,187Underscore=\subitem?Underscore+,176,177 WithActiveUnderscore=\subitem?*+\WithActiveUnderscore+,186WithUnderscore=\subitem?*+\WithUnderscore+,176,186f20;ufv1F C 3 cmbxti100߆Tff cmtt12/m#R 3 cmss10.m#R cmss10-Cscmtt8,"V 3 cmbx10+- 3 cmcsc10*