name=ABC nameURL=http%3A%2F%2Fds.internic.net%2Fcgi-bin%2Fenthtml%2Fsoftware%2Fabc.b see= logo= type=S%20-%20block-structured desc=ABC%20is%20an%20interpreted%20procedural%20language%0D%0Adesigned%20to%20be%20a%20higher-level%20replacement%0D%0Afor%20BASIC.%20%20The%20design%20of%20the%20language%0D%0Awas%20originally%20based%20on%20a%20task%20analysis%0D%0Aof%20programming%20work%3B%20ABC%20and%20its%0D%0Adevelopment%20environment%20were%20designed%20to%0D%0Amake%20the%20work%20easier.%0D%0A%3Cbr%3E%0D%0AABC%20features%20a%20small%2C%20orthagonal%20set%20of%0D%0Adata%20types%2C%20and%20a%20simple%20goal-oriented%0D%0Asyntax.%20%20The%20data%20types%20are%3A%20strings%2C%0D%0Aunlimit-precision%20numbers%2C%20records%2C%0D%0Alists%2C%20and%20associative%20arrays.%20%20Data%0D%0Ahandling%20is%20mostly%20performed%20by%20%0D%0Aspecialized%20commands%20that%20manipulate%0D%0Athe%20lists%2C%20tables%2C%20and%20records.%20%20The%0D%0Alanguage%20also%20has%20a%20substantial%20set%20of%0D%0Ahigh-level%20operators%20and%20I%2FO%20statements.%0D%0ATo%20facilitate%20top-down%20programming%2C%0D%0AABC%20supports%20%27refinement%27%2C%20a%20mechanism%0D%0Afor%20declaring%20operations%20in-line%20and%0D%0Adefining%20them%20later%20in%20the%20code.%0D%0A%3Cbr%3E%0D%0AABC%20the%20language%20is%20not%20really%20distinct%0D%0Afrom%20its%20programming%20environment%20%28some%0D%0Adialects%20of%20Basic%2C%20and%20many%20of%20Lisp%2C%20also%0D%0Ahave%20this%20property%29.%20%20%20Expressions%20or%0D%0Astatements%20in%0D%0AABC%20can%20be%20part%20of%20function%20or%20predicate%2C%0D%0Aor%20can%20be%20given%20directly%20to%20the%20environment%0D%0Afor%20immediate%20execution.%0D%0A%3Cbr%3E%0D%0AABC%27s%20high-level%20operators%20and%20data%0D%0Astructures%20allow%20many%20kinds%20of%20computations%0D%0Ato%20be%20expressed%20very%20succintly.%20%20ABC%0D%0Ahas%20been%20used%20to%20write%20simple%20natural%0D%0Alanguage%20parsers%20and%20databases.%20%0D%0A%3Cbr%3E%0D%0AABC%20is%20available%20for%20some%20Unix%20systems%2C%0D%0AMS-DOS%2C%20and%0D%0Afor%20the%20Macintosh.%0D%0ASome%20information%20is%20available%20on%20the%20web%2C%0D%0Aand%20there%20are%20also%20books%20about%20the%20%0D%0Alanguage. origin=Geurts%20and%20Pemberton%2C%201987%2C%20after%20Geurts%20and%20Meertens%2C%201975-82 seealso=Basic%2C%20Perl%2C%20Rexx%2C%20Logo%2C%20S remark=The%20ABC%20environment%20is%20persistent%2C%0D%0Ain%20the%20sense%20that%20any%20variable%2C%20function%20or%20%0D%0Apredicate%20defined%20during%20a%20session%0D%0Aremains%20for%20later%20sessions%20until%20the%0D%0Auser%20explicitly%20deletes%20it.%20%20This%20is%0D%0Asimilar%20to%20the%20persistence%20feature%20of%0D%0Athe%20S%20data%20analysis%20language.%0D%0A%3Cbr%3E%0D%0AOne%20oddity%20of%20ABC%20is%20that%20it%20uses%20%0D%0Aindentation%20to%20describe%20control%20structure%0D%0Anesting.%20%20Most%20languages%20use%20special%0D%0Amarkers%20of%20some%20kind%20to%20delimit%0D%0Aareas%20of%20code%20%28for%20example%2C%20BEGIN%20and%0D%0AEND%20in%20Pascal%29%2C%20but%20ABC%20derives%20the%0D%0Asemantic%20structure%20of%20the%20code%20from%20the%0D%0Aamount%20of%20whitespace%20preceding%20source%0D%0Alines. links1=Introduction%20to%20ABC%3Dhttp%3A%2F%2Fwww.cwi.nl%2F%7Esteven%2Fabc.html links2=ABC%20download%20area%3Dhttp%3A%2F%2Fwww.cwi.nl%2Fftp%2Fabc%2F links3= links4= links5= date=Last%20updated%2012%2F6%2F97 sample=This%20example%20from%20the%20ABC%20web%20site%0D%0Aindexes%20a%20document%20that%20is%0D%0Astored%20as%20a%20line-numbered%20array.%0D%0A%3Cp%3E%0D%0A%3Cpre%3E%0D%0A%20%20%20%20%20%20HOW%20TO%20RETURN%20index%20doc%3A%0D%0A%20%20%20%20%20%20%20%20%20%20%20PUT%20%7B%7D%20IN%20where%0D%0A%20%20%20%20%20%20%20%20%20%20%20FOR%20line.no%20IN%20keys%20doc%3A%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20TREAT%20LINE%0D%0A%20%20%20%20%20%20%20%20%20%20%20RETURN%20where%0D%0A%20%20%20%20%20%20%20%20TREAT%20LINE%3A%0D%0A%20%20%20%20%20%20%20%20%20%20%20FOR%20word%20IN%20split%20doc%5Bline.no%5D%3A%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20IF%20word%20not.in%20keys%20where%3A%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20PUT%20%7B%7D%20IN%20where%5Bword%5D%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20INSERT%20line.no%20IN%20where%5Bword%5D%0D%0A%3C%2Fpre%3E _store=1 _add=ABC _usertab=1 _usersearch=0 _format=full = name=ACSL nameURL=http%3A%2F%2Fwww.mga.com%2F see= logo= type=M%20-%20Mathematical%20or%20Simulation desc=ACSL%20-%20Advanced%20Continuous%20Simulation%20Language%0D%0A%3Cbr%3E%0D%0AOriginally%20a%20simple%20FORTRAN%20preprocessor%0D%0Afor%20continuous-system%20modelling%2C%20ACSL%20has%0D%0Abeen%20used%20since%201980.%20%20The%20language%20is%20a%0D%0Ahybrid%20of%20system%20specification%20elements%20%0D%0Aand%20procedural%20processing%20blocks.%20%20Newer%0D%0AACSL%20products%20present%20a%20visual%20front-end%0D%0Abut%20still%20use%20a%20FORTRAN-like%20syntax%20for%0D%0Athe%20programs%20themselves.%0D%0A%3Cbr%3E%0D%0AACSL%20is%20a%20proprietary%20language%2C%20available%0D%0Afrom%20MSA%20Software. origin=Mitchell%20and%20Gauthier%20Associates%2C%201981 seealso=SLAM%2C%20FORTRAN remark=ACSL%20is%20used%20mostly%20be%20specialists%20in%20%0D%0Athe%20areas%20of%20engineering%20design%2C%20%0D%0Abiomedical%20modeling%2C%20and%20real-time%0D%0Asystem%20visualization.%0D%0A%3Cbr%3E%0D%0AACSL%27s%20primary%20strength%20is%20its%20ability%0D%0Ato%20model%20complex%20systems%20with%20highly%0D%0Atuned%20numerical%20integration%20algorithms.%0D%0A%3Cbr%3E%0D%0AACSL%20is%20a%20commercial%20product%2C%20but%0D%0Ademo%20versions%20of%20various%20ACSL%20systems%0D%0Aare%20available%20from%20MGA. links1= links2= links3= links4= sample=%3Cfont%20size%3D%27-1%27%3E%3Cpre%3E%0D%0APROGRAM%20ONE%20WHEEL%0D%0A%20%20%20%22%20Simple%20model%20of%20a%20dynamical%20system%0D%0A%20%20%20%22%20written%20in%20ACSL%201%2C%20circa%201982.%0D%0AINITIAL%0D%0A%20%20%20%20%20%20%20CINTERVAL%20CINT%20%3D%200.05%0D%0A%20%20%20%20%20%20%20ALGORITHM%20IALG%20%3D%204%20%20%24%20%22RK3%22%0D%0A%20%20%20%20%20%20%20CONSTANT%20X1IO%20%3D%200.0%2C%20X2IO%3D0.0%2C%20X1DIC%3D0.0%2C%20X2DIC%20%3D%200.0%0D%0A%20%20%20%20%20%20%20CONSTANT%20M1%20%3D%2025.0%2C%20M2%3D2.0%2C%20DF%3D100.0%2C%20K2%3D5000%0D%0A%20%20%20%20%20%20%20CONSTANT%20TDONE%20%3D%2015.0%0D%0A%20%20%20%20%20%20%20K1%20%3D%201000.0%0D%0AEND%20%24%20%22OF%20INITIALIZATION%22%0D%0ADYNAMIC%0D%0ADERIVATIVE%0D%0A%20%20%20%20%20%20%20X3%3D%20STEP%280.0%29%0D%0A%20%20%20%20%20%20%20X1D%20%3D%20INTEG%28%28-DF%2FM1%29%2A%28X1D-X2D%29%20-%20%28K1%2FM1%29%2A%28X1-X2%29%2C%20X1DIC%29%0D%0A%20%20%20%20%20%20%20X2D%20%3D%20INTEG%28%28-DF%2FM1%29%2A%28X1D-X2D%29%20-%20%28K1%2FM1%29%2A%28X1-X2%29%2C%20...%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%28K2%2FM2%29%2A%28X2-X3%2A5.0%29%2C%20X2DIC%29%0D%0A%20%20%20%20%20%20%20X1%20%3D%20INTEG%28X1D%2CX1IO%29%0D%0A%20%20%20%20%20%20%20X2%20%3D%20INTEG%28X2D%2CX2IO%29%0D%0AEND%20%22OF%20DERIVATIVE%20SECTION%22%0D%0A%20%20%20%20%20%20%20TERMT%28T%20.GE.%20TDONE%29%0D%0AEND%20%22OF%20DYNAMIC%20SECTION%22%0D%0AEND%20%22OF%20PROGRAM%22%0D%0A%3C%2Fpre%3E%3C%2Ffont%3E _store=1 _add=ACSL _usertab=1 _usersearch=0 _format=full = name=Ada nameURL=http%3A%2F%2Fsw-eng.falls-church.va.us%2FAdaIC%2F see= logo=98x128%3Dhttp%3A%2F%2Fwww.adahome.com%2FPictures%2Fladyada.gif type=O%20-%20Object-oriented desc=Ada%20is%20a%20block-structured%20language%20with%20many%0D%0Aobject-oriented%20programming%20features.%20%20It%0D%0Awas%20originally%20designed%20for%20the%20US%20Dept.%20of%20Defense%2C%0D%0Aand%20was%20intended%20to%20support%20large-scale%20programming%0D%0Aand%20promote%20software%20reliability.%20%20Some%20of%20Ada%27s%0D%0Afeatures%20include%3A%20nested%20procedures%2C%20nested%20packages%2C%0D%0Astrong%20typing%2C%20multi-tasking%2C%20generics%2C%20%0D%0Aexception%20handling%2C%20and%0D%0Aabstract%20data%20types.%20%20%0D%0A%3Cbr%3E%0D%0APrimitive%20data%20types%20supported%20by%20Ada%20%0D%0Ainclude%20a%20variety%20of%20numeric%20types%2C%20booleans%2C%0D%0Acharacters%2C%20references%2C%20and%20enumerated%0D%0Asymbols.%20%20Arrays%2C%20records%20%28structures%29%2C%0D%0Aand%20strings%20are%20Ada%27s%20composite%20types.%0D%0AWith%20its%20emphasis%20on%20program%20safety%2C%20it%20is%0D%0Anot%20surprising%20that%20Ada%20is%20a%20strongly%20typed%0D%0Alanguage%3A%20all%20data%20elements%20must%20be%20declared%0D%0Aas%20storing%20a%20particular%20type%20or%20subtype%2C%20and%0D%0Atype%20enforcement%20is%20strictly%20applied%20both%0D%0Awithin%20and%20between%20modules.%0D%0A%3Cbr%3E%0D%0AAda%20supports%20a%20full%20complement%20of%20%0D%0Asequential%20control%20structures%2C%20as%20well%20as%0D%0Acomprehensive%20exception%20handling.%0D%0A%0D%0A%3Cbr%3E%0D%0AAda%20is%20very%20strictly%20standardized%20and%0D%0Awell%20documented%20as%20a%20language.%20%20Ada%0D%0Acompilers%20undergo%20stringent%20validation%0D%0Awith%20an%20official%20test%20suite.%20%20At%20least%20one%0D%0Afree%20Ada%20compiler%20and%20several%20good%0D%0Acommercial%20ones%20are%0D%0Aavailable.%0D%0A%3Cbr%3E%0D%0AAda%20was%20named%20in%20honor%20of%20Lady%20Ada%20Lovelace%20%281815-1852%29%2C%20a%0D%0Afriend%20and%20confidante%20of%20Charles%20Babbage.%0D%0A%3Cbr%3E%0D%0AAda%20was%20initially%20standardized%20in%201983%2C%20and%20was%0D%0Asuperseded%20by%20a%20new%20standard%20in%201995.%20%20These%0D%0Atwo%20versions%20are%20now%20known%20as%20%3Ci%3EAda%26nbsp%3B83%3C%2Fi%3E%0D%0Aand%20%3Ci%3EAda%26nbsp%3B95%3C%2Fi%3E. origin=Jean%20Ichibah%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%201978-1983. seealso=Pascal%2C%20Algol%2C%20Modula-2%2C%20Jovial%2C%20CMS-2%2C%20Java remark=Ada%20is%20a%20fairly%20complex%20language.%20%20It%20has%0D%0Aa%20conventional%20but%20very%20rich%20Pascal-like%0D%0Asyntax%2C%20with%20many%20specialized%20features.%0D%0AThe%20best%20aspects%20of%20Ada%20are%20its%20support%0D%0Afor%20generics%20%28templates%29%2C%20its%20support%0D%0Afor%20task%20synchronization%2C%20and%20its%0D%0Avery%20good%20exception%20handling.%20%20Its%0D%0Aworst%20features%20are%20its%20complex%20syntax%2C%0D%0Aand%20the%20poor%20performance%20of%20the%20code%0D%0Agenerated%20by%20most%20early%20compilers.%0D%0A%28by%20the%20late%201980s%2C%20compilers%20had%20%0D%0Aimproved%2C%20and%20modern%20Ada%20compilers%20%0D%0Agenerate%20code%20as%20fast%20or%20ever%20faster%0D%0Athan%20that%20emitted%20from%20C%20or%20Fortran%0D%0Acompilers%29.%0D%0ANote%20that%20Ada%27s%20semantics%20include%20range%0D%0Achecking%20on%20all%20integer%20types%2C%20and%0D%0Abounds%20checking%20on%20all%20arrays%3B%20these%0D%0Aprogram%20safety%20constraints%20slowed%20down%0D%0Aearly%20compilers%20%28later%20ones%20got%20better%0D%0Aat%20it%2C%20and%20also%20added%20support%20for%0D%0Acompiler%20directives%20and%20pragmas%20that%20%0D%0Adisabled%20certain%20checks%20in%20final%20release%0D%0Acode%29.%0D%0A%3Cbr%3E%20Ada%0D%0Acompilers%20tend%20to%20be%20very%20very%20strict%2C%20%0D%0Abut%20if%20you%20ever%20got%20your%20program%20to%20%0D%0Acompile%20you%20could%20be%20pretty%20sure%20it%20would%0D%0Aat%20least%20do%20something%20comprehensible%0D%0A%28unlike%2C%20for%20example%2C%20C%29.%0D%0A%3Cbr%3E%0D%0AOriginally%2C%20Ada%20was%20designated%20as%20the%20ONLY%0D%0Alanguage%20to%20be%20used%20for%20US%20DoD%20software%0D%0Adevelopment.%20%20This%20policy%20never%20really%0D%0Acaught%20on%2C%20and%20by%201997%20the%20rule%20was%20%0D%0Arescinded.%20%20Basically%2C%20the%20Defense%0D%0AInformation%20Systems%20Agency%20%28DISA%29%20realized%0D%0Athat%20even%20a%20language%20as%20painstakingly%0D%0Adesigned%20as%20Ada%20could%20not%20be%20a%20panacea.%0D%0A links1=AdaPower.com%3Dhttp%3A%2F%2Fwww.adapower.com%2F links2=Ada%20resource%20page%20in%20Switzerland%3Dhttp%3A%2F%2Flglwww.epfl.ch%2FAda%2F links3=ACM%20SIGADA%3Dhttp%3A%2F%2Fwww.acm.org%2Fsigada%2F links4=Ada%20Core%20Technologies%3Dhttp%3A%2F%2Fwww.gnat.com%2F links5=Ada%20at%20DDC-I%3Dhttp%3A%2F%2Fwww.ddci.com%2Fproducts.shtml date=Last%20updated%201%2F8%2F03 sample=%3Cpre%3E%0D%0A--%20simple%20programming%20with%20floating-point%20%23s%0D%0Awith%20Ada.Float_Text_IO%3B%0D%0Ause%20Ada.Float_Text_IO%3B%0D%0Aprocedure%20Think%20is%0D%0A%20%20%20A%2C%20B%20%3A%20Float%20%3A%3D%200.0%3B%20--%20A%20and%20B%20initially%20zero%3B%20note%20the%20period.%0D%0A%20%20%20I%2C%20J%20%3A%20Integer%20%3A%3D%201%3B%0D%0Abegin%0D%0A%20%20%20A%20%3A%3D%20B%20%2A%207.0%3B%0D%0A%20%20%20I%20%3A%3D%20J%20%2A%203%3B%0D%0A%20%20%20B%20%3A%3D%20Float%28I%29%20%2F%20A%3B%0D%0A%20%20%20Put%28B%29%3B%0D%0Aend%20Think%3B%0D%0A%3C%2Fpre%3E%0D%0A _store=1 _add=Ada _usertab=1 _usersearch=0 _format=full = name=Alef nameURL=http%3A%2F%2Fplan9.bell-labs.com%2Fplan9%2Fdoc%2Fref.html see=C logo= type=S%20-%20block-structured desc=Alef%20is%20a%20compiled%20concurrent%20programming%0D%0Alanguage%20similar%20in%20appearance%20to%20C%2C%0D%0Adesigned%20for%20network%20application%20development%0D%0Aunder%20the%20Plan%209%20operating%20system.%0D%0A%3Cbr%3E%0D%0AData%20types%20supported%20by%20Alef%20include%20various%0D%0Asizes%20of%20integers%2C%20reals%2C%20chars%2C%20%0D%0Astring%2C%20tuples%2C%20structures%2C%20unions%2C%0D%0Aarrays%2C%20and%20channels.%20%20The%20language%0D%0Asupports%20definition%20of%20abstract%20data%20types%0D%0Aand%20parameterized%20%28generic%29%20ADTs%20and%0D%0Afunctions.%20%20Alef%27s%20control%20constructs%0D%0Ainclude%20a%20comprehensive%20set%20of%0D%0Aconditional%2C%20goto%2C%20and%20loop%0D%0Astatements%2C%20as%20well%20as%20error%20handling%20and%0D%0Aparallel%20task%20synchronization.%0D%0AAlef%20also%20features%20a%20unique%20explicit%20tail%0D%0Arecursion%20statement.%20%20%0D%0A%3Cbr%3E%0D%0AAlef%20has%20been%20ported%20to%20a%20wide%20variety%0D%0Aof%20hardware%20with%20the%20Plan%209%20operating%0D%0Asystem%2C%20and%20also%20to%20SGI%20IRIX.%0D%0AThe%20Alef%20language%20development%20system%20is%0D%0Aavailable%20as%20part%20of%20the%20Plan%209%0D%0Adistribution.%20%20Spare%20but%20well-written%0D%0Adocumentation%20is%20available%20on-line. origin=P.%20Winterbottom%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%20Bell%20Labs%20%28Lucent%29%2C%201995%3F seealso=C%20%20%2C%20Limbo remark=While%20it%20resembles%20C%20in%20lexical%20flavor%2C%0D%0AAlef%20has%20a%20very%20different%20data%20type%20and%0D%0Aexecution%20model%3A%20it%20supports%20typed%0D%0Apointers%20%28so-called%20%3Ci%3Efat%20pointers%3C%2Fi%3E%29%2C%0D%0Aparallel%20processes%2C%20guarded%20blocks%2C%20%0D%0Aabstract%20data%20types%2C%20run-time%20type%0D%0Ainformation%2C%20and%20other%20high-level%0D%0Afacilities%20that%20C%20does%20not%20have.%0D%0AAlef%20supports%20both%20pre-emptive%0D%0Amulti-processing%20%28with%20its%20%3Ci%3Eproc%3C%2Fi%3E%0D%0Atype%29%20and%20cooperative%20co-routines%20%28with%0D%0Aits%20%3Ci%3Etask%3C%2Fi%3E%20type%29.%0D%0A%3Cbr%3E%0D%0A links1=Plan%209%20distribution%20page%3Dhttp%3A%2F%2Fplan9.bell-labs.com%2Fplan9%2Fdistrib.html links2=Plan%209%20User%27s%20Guide%3Dhttp%3A%2F%2Fplan9.bell-labs.com%2Fplan9%2Fdoc%2Fug.html links3= links4= links5= date=Last%20updated%2011%2F7%2F99 sample=%3Cpre%3E%0D%0A%2F%2A%20An%20Alef%20program%20to%20parse%20numbers%20out%20of%0D%0A%20%2A%20the%20string%20returned%20from%20%2Fdev%2Ftime%2C%20and%0D%0A%20%2A%20print%20them%20from%20a%20separate%20proc.%20%20This%20is%0D%0A%20%2A%20a%20rather%20lame%20conglomeration%20of%20several%0D%0A%20%2A%20examples%20from%20Bob%20Flandrea%27s%20Alef%0D%0A%20%2A%20User%27s%20Guide%0D%0A%20%2A%2F%0D%0Atuple%28int%2C%20uint%2C%20byte%2A%29%0D%0Astrtoui%28byte%2A%20str%2C%20int%20base%29%0D%0A%7B%0D%0A%20%20int%20val%3B%0D%0A%20%20while%28%2Astr%20%21%3D%200%20%26%26%20whitespace%28%2Astr%29%29%0D%0A%20%20%20%20str%20%20%3B%0D%0A%20%20if%28str%20%3D%3D%20nil%20%7C%7C%20%2Astr%20%3D%3D%200%29%0D%0A%20%20%20%20return%280%2C%200%2C%20str%29%3B%0D%0A%20%20while%28%2Astr%20%26%26%20%21whitespace%28%2Astr%29%29%20%7B%0D%0A%20%20%20%20if%28%21validdigit%28%2Astr%2C%20base%29%29%0D%0A%20%20%20%20%20%20return%20%28-1%2C%20val%2C%20str%201%29%3B%0D%0A%20%20%20%20%2F%2A%20extract%20digit%20into%20val%20%2A%2F%0D%0A%20%20%20%20str%20%20%3B%0D%0A%20%20%7D%0D%0A%20%20return%281%2C%20val%2C%20str%29%3B%0D%0A%7D%0D%0Avoid%0D%0Areceive%28chan%28uint%29%20c%29%0D%0A%7B%0D%0A%20%20int%20s%3B%0D%0A%20%20s%20%3D%20%3C-c%3B%0D%0A%20%20print%28%22%25d%5Cn%22%2C%20s%29%3B%0D%0A%20%20if%20%28s%20%3D%3D%200%29%20%0D%0A%20%20%20%20terminate%28nil%29%3B%0D%0A%7D%0D%0A%0D%0Avoid%0D%0Amain%28void%29%0D%0A%7B%0D%0A%20%20chan%28uint%29%20c%3B%0D%0A%20%20alloc%20c%3B%0D%0A%20%20proc%20receive%28c%29%3B%0D%0A%20%20int%20ret%3B%0D%0A%20%20uint%20val%3B%0D%0A%20%20int%20fd%3B%0D%0A%20%20byte%20%2Ap%2C%20buf%5B128%5D%2C%20%2Anewp%3B%0D%0A%20%20fd%20%3D%20open%28%22%2Fdev%2Ftime%22%2C%20OREAD%7COCEXEC%29%3B%0D%0A%20%20if%20%28fd%20%3E%3D%200%29%20%7B%0D%0A%20%20%20%20read%28fd%2C%20buf%2C%20sizeof%28buf%29%29%3B%0D%0A%20%20%20%20for%28p%20%3D%20buf%3B%20%2Ap%3B%20p%20%3D%20newp%29%20%7B%0D%0A%20%20%20%20%20%20%28ret%2C%20val%2C%20newp%29%20%3D%20strtoui%28p%2C%2010%29%3B%0D%0A%20%20%20%20%20%20if%28ret%20%3E%3D%200%29%20c%20%3C-%3D%20val%3B%0D%0A%20%20%20%20%20%20if%28ret%20%3D%3D%200%29%20break%3B%0D%0A%20%20%20%20%7D%0D%0A%20%20%7D%0D%0A%7D%0D%0A%3C%2Fpre%3E _store=1 _add=Alef _usertab=1 _usersearch=0 _format=full = name=Algol nameURL=http%3A%2F%2Fwww.engin.umd.umich.edu%2FCIS%2Fcourse.des%2Fcis400%2Falgol%2Falgol.html see= logo= type=S%20-%20block-structured desc=Algol%20%28for%20Algorithmic%20Language%29%20was%0D%0Aa%20very%20early%20block-structured%20%0D%0Acompiled%20language%0D%0Adeveloped%20a%20committee%2C%20and%20implemented%20by%0D%0Acomputing%20pioneer%20John%20Backus.%0D%0AIt%20was%20designed%20for%20general-purpose%20industial%0D%0Aand%20scientific%20programming.%0D%0A%3Cbr%3E%0D%0ADialects%20of%20Algol%20include%20the%20original%0D%0AAlgol58%2C%20%0D%0AAlgol60%2C%20Algol68%2C%20ABC%20Algol%2C%20Algol%20W%2C%20%0D%0AS-Algol%2C%20and%0D%0Amany%20other%20variants.%20%20Algol58%20was%0D%0Aoriginally%20called%20the%20%22International%20%0D%0AAlgebraic%20Language%22%20%28IAL%29.%0D%0A%3Cbr%3E%0D%0AData%20types%20supported%20by%20Algol60%20include%0D%0Abooleans%2C%20various%20sizes%20of%20integers%20and%0D%0Areals%2C%20and%20strings.%20%20Support%20for%20strings%0D%0Awas%20limited%20in%20standard%20Algol%2C%20but%20later%0D%0Adialects%20and%20implementations%20added%20more%0D%0Asupport.%0D%0AAlgol60%20was%20strongly%20typed%20in%20the%20sense%20%0D%0Athat%20the%20compiler%20checked%20parameter%20types%0D%0Ain%20expressions%20and%20subroutine%20calls.%0D%0AIt%20did%20not%20permit%20the%20declaration%20of%20new%0D%0Adata%20%27types%27%20or%20data%20structures.%20%20Arrays%0D%0Aare%20the%20only%20composite%20data%20type%20in%20Algol60.%0D%0AAlgol60%20supported%20highly%20regular%20block%0D%0Astructure%20and%20a%20complete%20set%20of%20%0D%0Acontrol%20structures%3A%20if-then-else%2C%20case%2C%0D%0Awhile%20loops.%20%20One%20of%20Algol%27s%20main%0D%0Acontribution%20to%20programming%20was%20the%20%0D%0Aintroduction%20of%20block%20nesting%20and%20%0D%0Alexical%20scoping%20of%20local%20and%20block%0D%0Avariables.%0D%0AAlgol60%20did%20not%20support%20any%20kind%20of%20%0D%0Ageneral%20memory%20management%20or%20dynamic%0D%0Amemory%20allocation.%0D%0A%3Cbr%3E%0D%0AVarious%20implementations%20of%20some%20Algol%0D%0Adialects%20are%20still%20available%20commercially.%0D%0AInformation%20on%20the%20web%20seems%20sparse%2C%20but%0D%0Asome%20documentation%20of%20Algol68%20is%20available.%0D%0AOf%20course%2C%20many%20old%20programming%20books%20%0D%0Adescribe%20the%20language. origin=J.%20Backus%20and%20P.%20Naur%2C%201958-60. seealso=Algol68%2C%20Pascal%2C%20Simula%2C%20PL%2F1%2C%20C%2C%20Jovial%2C%20CLU remark=Algol%20itself%20is%20no%20longer%20widely%20used%2C%20but%0D%0Ait%20had%20a%20profound%20effect%20on%20computer%0D%0Alanguage%20design%20from%201958%20onwards.%0D%0AMany%20of%20the%20features%20that%20today%20we%0D%0Aconsider%20essential%0D%0Ain%20a%20general-purpose%20language%20were%20%0D%0Afirst%20proposed%20for%20Algol60%20or%20%0D%0AAlgol68.%0D%0A%3Cbr%3E%0D%0AAlgol60%20was%20probably%20the%20first%0D%0Acomputer%20language%20whose%20syntax%20was%0D%0Acompletely%20described%20with%20a%20formal%0D%0Agrammar%20prior%20to%20writing%20the%20compiler%21%20%3A%29%0D%0A%3Cbr%3E%0D%0AAlgol60%20as%20originally%20defined%20had%20no%20language%0D%0Astatements%20specifically%20for%20I%2FO%2C%20which%20is%0D%0Acommon%20today%20but%20unique%20back%20in%20the%20late%201950s.%0D%0A%3Cbr%3E%0D%0AOne%20interesting%20aspect%20of%20Algol60%20was%20its%0D%0Asupport%20for%20two%20kinds%20of%20subroutine%20parameter%0D%0Apassing%3A%20call-by-value%20and%20call-by-name.%0D%0AThe%20call-by-name%20method%2C%20which%20allowed%20%0D%0AAlgol%20to%20support%20a%20kind%20of%20dynamic%20scoping%0D%0A%28a%20la%20Lisp%29%20was%20supported%20with%20a%20slow%0D%0Abut%20flexible%20mechanism%20called%20a%20%3Ci%3Ethunk%3C%2Fi%3E.%0D%0A%3Cbr%3E%0D%0AThe%20Unisys%20A-series%20computers%20were%20built%0D%0Aespecially%20to%20run%20Algol%2C%20and%20featured%20a%0D%0Amachine%20language%20based%20on%20a%20part%20of%20the%0D%0AAlgol%20standard. links1=http%3A%2F%2Fwww.gregpub.com%2Falgol.html links2=http%3A%2F%2Fwww.cs.colorado.edu%2F%7Ehumphrie%2Fpl%2Falgol60.html links3=Unisys%20Algol%20compiler%20description%3Dhttp%3A%2F%2Fwww.marketplace.unisys.com%2Faseries%2Fsoftware%2Fappsdev%2Fcl_alcomp.htm links4=Unisys%20Software%20documentation%20%28incl.%20Algol%29%3Dhttp%3A%2F%2Fwww.marketplace.unisys.com%2Faseries%2Ftechlib%2Fprodinfo%2Fpiapps.htm links5=U.%20of%20Michigan%20Algol%20Description%3Dhttp%3A%2F%2Fwww.engin.umd.umich.edu%2FCIS%2Fcourse.des%2Fcis400%2Falgol%2Falgol.html date=Last%20updated%2011%2F7%2F99 sample=%3Cpre%3E%0D%0A%2F%2F%20the%20main%20program%2C%20calculate%20the%20mean%20of%0D%0A%2F%2F%20some%20numbers%20%0D%0Abegin%0D%0A%20%20integer%20N%3B%0D%0A%20%20Read%20Int%28N%29%3B%0D%0A%0D%0A%20%20begin%0D%0A%20%20%20%20real%20array%20Data%5B1%3AN%5D%3B%0D%0A%20%20%20%20real%20sum%2C%20avg%3B%0D%0A%20%20%20%20integer%20i%3B%0D%0A%20%20%20%20sum%3A%3D0%3B%0D%0A%0D%0A%20%20%20%20for%20i%3A%3D1%20step%201%20until%20N%20do%0D%0A%20%20%20%20%20%20begin%20real%20val%3B%0D%0A%20%20%20%20%20%20%20%20Read%20Real%28val%29%3B%0D%0A%20%20%20%20%20%20%20%20Data%5Bi%5D%3A%3Dif%20val%3C0%20then%20-val%20else%20val%0D%0A%20%20%20%20%20%20end%3B%0D%0A%0D%0A%20%20%20%20for%20i%3A%3D1%20step%201%20until%20N%20do%0D%0A%20%20%20%20%20%20sum%3A%3Dsum%20%20%20Data%5Bi%5D%3B%0D%0A%20%20%20%20avg%3A%3Dsum%2FN%3B%0D%0A%20%20%20%20Print%20Real%28avg%29%0D%0A%20%20end%0D%0Aend%20%20%20%20%20%0D%0A%3C%2Fpre%3E%0D%0A%3Cp%3E%0D%0AHere%20is%20a%20better%20example%2C%20written%20in%20the%0D%0AAlgol60%20publication%20language%2C%20from%0D%0AJean%20Sammet%20courtesy%20of%0D%0AGlyn%20Webster.%3Cbr%3E%0D%0A%3CPRE%3E%3CB%3Eprocedure%3C%2FB%3E%20problem%20%28a%2C%20b%29%3B%0D%0A%20%20%20%3CB%3Evalue%3C%2FB%3E%20a%2C%20b%3B%20%3CB%3Einteger%3C%2FB%3E%20a%2C%20b%3B%0D%0A%20%20%20%20%20%20%3CB%3Ebegin%3C%2FB%3E%20%3CB%3Einteger%3C%2FB%3E%20k%3B%20%3CB%3Ereal%3C%2FB%3E%20e%3B%0D%0A%20%20%20%20%20%20%20%20%20%3CB%3Efor%3C%2FB%3E%20k%20%3A%3D%202%20%26times%3B%20%28a%20%26divide%3B%202%29%20%20%201%20%3CB%3Estep%3C%2FB%3E%202%20%3CB%3Euntil%3C%2FB%3E%20b%20%3CB%3Edo%3C%2FB%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%3CB%3Ebegin%3C%2FB%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20e%20%3A%3D%20%3CB%3Eif%3C%2FB%3E%20prime%28k%29%20%3CB%3Ethen%3C%2FB%3E%20sqrt%283%20%26times%3B%20k%20%20%20sin%28k%29%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3CB%3Eelse%3C%2FB%3E%20sqrt%284%20%26times%3B%20k%20%20%20cos%28k%29%29%3B%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3CB%3Eif%3C%2FB%3E%20prime%28k%29%20%3CB%3Ethen%3C%2FB%3E%20putlist%28k%2C%20e%2C%20%27prime%27%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3CB%3Eelse%3C%2FB%3E%20putlist%28k%2C%20e%2C%20%27nonprime%27%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%3CB%3Eend%3C%2FB%3E%0D%0A%20%20%20%20%20%20%3CB%3Eend%3C%2FB%3E%20problem%3B%0D%0A%3C%2FPRE%3E%0D%0A _store=1 _add=Algol _usertab=1 _usersearch=0 _format=full = name=Algol68 nameURL= see=Algol logo= type=S%20-%20block-structured desc=Algol68%20was%20a%20greatly%20expanded%20and%20enhanced%0D%0Aversion%20of%20the%20Algol%20block-structured%0D%0Alanguage.%20%20Many%20capabilities%20were%20added%20to%0D%0Athe%20sound%20framework%20of%20Algol60%20to%20create%20a%0D%0Amuch%20more%20capable%20language%20for%20general%0D%0Aapplication%20and%20systems%20programming.%0D%0A%3Cbr%3E%0D%0AAlgol68%20introduced%20a%20large%20number%20of%20new%0D%0Afeatures%20over%20previous%20versions%3A%0D%0Aformalized%20syntax%20and%20semantics%2C%20parallel%0D%0Aprogramming%20constructs%2C%20new%20data%20types%0D%0Aand%20structuring%20methods%2C%20and%20type%0D%0Adeclarations.%0D%0APrimitive%20data%20types%20supported%20by%20Algol68%0D%0Ainclude%20booleans%2C%20chars%2C%20strings%2C%20integers%2C%0D%0Areals%2C%20complex%20numbers%20and%20references.%20%20%0D%0ADynamic%20arrays%2C%0D%0Astructures%2C%20and%20unions%20are%20available%20for%0D%0Abuilding%20complex%20data%20structures.%0D%0AAlgol68%20also%20supports%20separate%20compilation%0D%0Amodules%2C%20as%20Algol60%20did.%0D%0AAlso%20like%20its%20predecessor%2C%20Algol68%20is%0D%0Avery%20strongly%20typed.%0D%0A%3Cbr%3E%0D%0AA%20few%20implementations%20of%20Algol%2068%20and%0D%0Avarious%20dialects%20of%20it%20exist%2C%20including%0D%0Asome%20for%20PCs%20and%20mainframes.%0D%0A%0D%0A origin=A.%20van%20Wijngaarden%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%201965-68. seealso=Pascal%2C%20Ada%2C%20Simula%2C%20C remark=The%20original%201968%20specification%20was%20revised%20%0D%0Ain%201973%2C%20and%20it%20is%20this%20later%20specification%0D%0Athat%20currently%20defines%20%27Algol68%27.%0D%0A%3Cbr%3E%0D%0AThe%20semantics%20of%20%0D%0AAlgol68%20require%20dynamic%20memory%20management%0D%0Aand%20garbage%20collection.%0D%0A%3Cbr%3E%0D%0AHere%20is%20a%20list%20of%20some%20additional%20features%0D%0Athat%20Algol68%20added%20to%20Algol%3A%0D%0A%3Cul%3E%0D%0A%3Cli%3Ecomplex%20numbers%0D%0A%3Cli%3Ebit%20patterns%0D%0A%3Cli%3Eindefinite-length%20strings%0D%0A%3Cli%3Eflexible%20%28resizable%29%20arrays%0D%0A%3Cli%3Emodules%20and%20separate%20compilation%0D%0A%3C%2Ful%3E%0D%0A%3Cbr%3E%0D%0AThe%20official%20syntactic%20and%20semantic%20definition%0D%0Aof%20Algol68%20was%20extremely%20complex%2C%20and%20used%0D%0Anomenclature%20unfamiliar%20to%20many%20computer%0D%0Aprogrammers%20in%20those%20days%20%28and%20today%2C%20for%20%0D%0Athat%20matter%29.%20%20This%20helped%20make%20the%20language%0D%0Aseem%20unfriendly%20and%20unaccessible%20to%20many%0D%0Apractitioners. links1=Algol68%20for%20OS%2F2%3Dhttp%3A%2F%2Fwww.ant.co.uk%2F%7Eborris%2Falgol68.html links2=Some%20info%20about%20Algol68%3Dhttp%3A%2F%2Fwww.cs.colorado.edu%2F%7Ehumphrie%2Fpl%2Falgol68.html links3=Overview%20of%20Algol68%3Dhttp%3A%2F%2Fwww.mod1ndrl.demon.co.uk%2FSSP82%2FAlgol68.html links4= links5= date=Last%20updated%202%2F28%2F98 sample=%0D%0A%3Cbr%3E%3Cb%3Emode%20node%3C%2Fb%3E%20%3D%20%3Cb%3Estruct%3C%2Fb%3E%20%28%20%3Cb%3Eint%3C%2Fb%3E%20val%2C%20%3Cb%3Eref%20node%3C%2Fb%3E%20left%2C%20right%29%3B%0D%0A%3Cbr%3E%3Cb%3Eref%20node%3C%2Fb%3E%20nonode%20%3D%20%3Cb%3Enil%3C%2Fb%3E%3B%0D%0A%3Cbr%3E%3Cb%3Eloc%20ref%20node%3C%2Fb%3E%20start%20%3A%3D%20nonode%3B%0D%0A%3Cbr%3E%0D%0A%3Cbr%3E%3Cb%3Eproc%3C%2Fb%3E%20insert%20%3D%20%28%3Cb%3Eint%3C%2Fb%3E%20v%2C%20%3Cb%3Eref%20ref%20node%3C%2Fb%3E%20place%29%20%3Cb%3Eref%20node%3C%2Fb%3E%3A%0D%0A%3Cbr%3E%20%20%20%20%3Cb%3Eif%3C%2Fb%3E%20place%20%3A%2F%3D%3A%20nonode%0D%0A%3Cbr%3E%20%20%20%20%3Cb%3Ethen%20%20%20if%3C%2Fb%3E%20v%20%26lt%3B%20val%20%3Cb%3Eof%3C%2Fb%3E%20place%20%3Cb%3Ethen%3C%2Fb%3E%20insert%28v%2Cleft%20%3Cb%3Eof%3C%2Fb%3E%20place%29%0D%0A%3Cbr%3E%20%20%20%20%20%20%20%20%20%20%20%3Cb%3Eelse%3C%2Fb%3E%20%23v%20%26gt%3B%20val%20%3Cb%3Eof%3C%2Fb%3E%20place%23%20insert%28v%2C%20right%20%3Cb%3Eof%3C%2Fb%3E%20place%29%0D%0A%3Cbr%3E%20%20%20%20%20%20%20%20%20%20%20%3Cb%3Efi%3C%2Fb%3E%0D%0A%3Cbr%3E%20%20%20%20%3Cb%3Eelse%3C%2Fb%3E%20place%20%3A%3D%20%3Cb%3Eheap%20node%3C%2Fb%3E%20%3A%3D%20%28v%2C%20nonode%2C%20nonode%29%0D%0A%3Cbr%3E%20%20%20%20%3Cb%3Efi%3C%2Fb%3E%3B%0D%0A _store=1 _add=Algol68 _usertab=1 _usersearch=0 _format=full = name=APL nameURL=http%3A%2F%2Fwww.acm.org%2Fsigapl%2F see= logo= type=M%20-%20Mathematical%20or%20Simulation desc=APL%20is%20an%20interpreted%20mathematical%20language%0D%0Acharacterized%20by%20its%20terse%20syntax%20and%0D%0Abizarre%20non-ASCII%20character%20set.%20%20It%20is%0D%0Avery%20strong%20in%20all%20forms%20of%20arithmetic%0D%0Aand%20matrix%20manipulation.%0D%0A%3Cbr%3E%0D%0AAPL%20was%20invented%20in%20the%201960s%2C%20and%20has%0D%0Aenjoyed%20some%20modest%20popularity%20ever%20since.%0D%0ACommercial%20and%20free%20APL%20implementations%0D%0Aexist%20for%20most%20modern%20platforms.%20%20%20%0D%0A%3Cbr%3E%0D%0AThe%20original%20APL%20has%20been%20partly%20superseded%0D%0Aby%20advanced%20variants%2C%20such%20as%20APL2%2C%20J%2C%20 origin=Iverson%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%20IBM%2C%201960s seealso=J%2C%20Matlab%2C%20S remark=According%20to%20its%20fans%2C%20its%20expressive%0D%0Apower%20allows%20a%20skilled%20programmer%20to%0D%0Acreate%20complex%20applications%20in%20a%20very%0D%0Ashort%20time.%20%20Sometimes%2C%20entire%20complex%0D%0Amathematical%20analyses%20can%20be%20coded%20in%20a%0D%0Acouple%20of%20lines%20of%20code.%20%20However%2C%20APLs%0D%0Aunconventional%20structure%20and%20odd%20character%0D%0Aset%20make%20it%20challenging%20to%20learn%20and%20master.%0D%0A%3Cbr%3E%0D%0AToday%2C%20APL%20is%20used%20mainly%20in%20niches%0D%0Ain%20the%20scientific%2C%20financial%2C%20and%0D%0Aeconometric%20communities.%20%20 links1=FTP%20download%20area%20for%20APL%2C%20at%20Waterloo%3Dftp%3A%2F%2Fwatserv1.uwaterloo.ca%2Flanguages%2Fapl%2F links2=Official%20APL%20Information%20site%20at%20ACM%3Dhttp%3A%2F%2Fwww.acm.org%2Fsigapl links3=http%3A%2F%2Fwww.dyadic.com%2F links4=http%3A%2F%2Fwww.vector.org.uk%2F links5= date=Last%20updated%202%2F20%2F98 sample=Unfortunately%2C%20the%20peculiar%20character%20set%0D%0Aused%20by%20APL%20precludes%20placing%20a%20code%20example%0D%0Ahere.%20%20Sorry. _store=1 _add=APL _usertab=1 _usersearch=0 _format=full = name=AppleScript nameURL=http%3A%2F%2Fapplescript.apple.com%2F see= logo=http%3A%2F%2Fapplescript.apple.com%2Fgraphics%2Fas_logo_60.gif type=C%20-%20Command%20or%20Scripting desc=AppleScript%20is%20a%20procedural%2C%20structured%0D%0Acommand%20language%20designed%20for%20the%20Apple%0D%0AMacintosh%20environment.%20%20It%20can%20be%20used%0D%0Ato%20control%20programs%2C%20network%20operations%2C%0D%0Aand%20user%20interfaces%20under%20MacOS.%20%20AppleScript%0D%0Ascripts%20are%20compiled%20into%0D%0Asome%20kind%20of%20intermediate%20code%20prior%20to%0D%0Aexecution.%0D%0A%3Cbr%3E%0D%0AThe%20syntax%20of%20AppleScript%20is%20meant%20to%0D%0Aresemble%20spoken%20language%3A%20verbs%2C%0D%0Anouns%2C%20prepositions%2C%20and%20adjectives.%20%0D%0AA%20program%20consists%0D%0Aof%20statements%2C%20terminated%20by%20end-of-line%20%28like%20%0D%0ATcl%2C%20csh%2C%20and%20other%20command%20languages%3B%20of%20course%2C%0D%0Athere%20is%20a%20line%20continuation%20character%29.%20%20%0D%0AAppleScript%20offers%20a%20small%20complement%20of%0D%0Aprimitive%20data%20types%3A%20integers%2C%20reals%2C%20and%0D%0Astrings.%20%0D%0AAll%20manipulable%20entities%20in%20AppleScript%20are%0D%0Arepresented%20as%20objects%2C%20these%20objects%20have%0D%0Avarious%20properties%2C%20and%20can%20accept%0D%0Acertain%20commands.%20%20Composite%20data%20types%2C%0D%0Alists%20and%20records%2C%20are%20also%20considered%20to%0D%0Abe%20objects%20in%20AppleScript.%20%20%0D%0AAppleScript%20is%20an%20object-oriented%0D%0Aprogramming%20language%2C%20new%20object%0D%0Aclasses%2C%20called%20script%20objects%2C%20can%20be%20%0D%0Adefined%20within%20the%20language.%0D%0A%28New%20classes%20can%20also%20be%20defined%20by%0D%0Abinary%20object%20modules%20called%20%0D%0Ascripting%20extensions.%29%20%0D%0AValues%20in%20AppleScript%20are%0D%0Atyped%2C%20but%20variables%20are%20not%3B%20AppleScript%0D%0Adoes%20not%20enforce%20strong%20type%20checking.%0D%0AThe%20language%20offers%20a%20conventional%20set%0D%0Aof%20procedural%20control%20flow%20constructs%2C%0D%0Asupports%20subroutines%2C%20and%20offers%0D%0Arudimentary%20error%20handling.%0D%0AFor%20object-oriented%20programming%2C%20AppleScript%0D%0Asupports%20single%20inheritance%20and%20delegation%2C%0D%0Aas%20well%20as%20simple%20polymorphism.%0D%0A%3Cbr%3E%0D%0AMacOS%207.5%20was%20shipped%20with%20AppleScript%201.1%2C%0D%0AMacOS%208%20is%20shipped%20with%201.1.2.%0D%0A%3Cbr%3E%0D%0ATutorials%20and%20documentation%0D%0Aabout%20AppleScript%20are%20available%20on%0D%0Athe%20Internet%2C%20as%20well%0D%0Aas%20example%20scripts%20and%20powerful%20extensions.%0D%0AThe%20language%20itself%20is%20available%20from%0D%0AApple%20or%20bundled%20with%20some%20Macintosh%0D%0Aapplications%2C%20but%20utilities%2C%20editors%2C%20and%0D%0Aother%20tools%20for%20developers%20are%20available%20free.%0D%0A origin=Apple%20Computer%2C%201993%20%20%20%28MacOS%20System%207%29%2C%20%201994%20%28MacOS%207.5%29 seealso=HyperTalk%2C%20VBScript remark=AppleScript%20is%20intended%20to%20turn%20MacOS%0D%0Ainto%20a%20completely%20customizable%20extensible%0D%0Awork%20environment.%20%20Unix%20systems%20have%20shell%0D%0Alanguages%20for%20writing%20powerful%0D%0Acommand%20scripts%2C%20and%0D%0AWindows%20has%20OLE%20automation%20and%0D%0AActive%20Scripting%20for%20allowing%0D%0Aapplications%20to%20control%20each%20other%3B%20%0D%0AAppleScript%20serves%20both%20purposes%20%28sort%20of%29.%0D%0AA%20%3Ci%3Escriptable%3C%2Fi%3E%20application%20can%20be%0D%0Aactivated%20and%20controlled%20by%20AppleScript%20code.%0D%0AA%20%3Ci%3Erecordable%3C%2Fi%3E%20application%20can%20use%0D%0Athe%20AppleScript%20system%20to%20record%20user%20actions%0D%0Aas%20macros.%20%20Since%20the%20system%20shell%2C%20the%20Finder%2C%0D%0Ais%20scriptable%2C%20AppleScript%20can%20control%0D%0Athe%20overall%20operation%20of%20the%20computer.%0D%0A%3Cbr%3E%0D%0AAppleScript%20is%20a%20descendant%20of%20Apple%27s%0D%0AHyperTalk%20scripting%20language%2C%20in%20terms%0D%0Aof%20syntax%20and%20general%20appearance.%20%20It%20is%0D%0Amuch%20more%20powerful%20than%20HyperTalk%2C%20however%2C%0D%0Aand%20is%20not%20confined%20to%20a%20single%20application%0D%0Aas%20HyperCard%20was.%0D%0A%3Cbr%3E%0D%0AAn%20extensions%20to%20AppleScript%20is%20called%20%0D%0Aan%20OSAX%0D%0A%28meaning%20Object%20Scripting%20Add-on%3F%29.%0D%0AThere%20is%20some%20controversy%20about%20what%20plural%0D%0Ato%20use.%0D%0A%3Cbr%3E%0D%0A links1=AppleScript%20Language%20Guide%20%28V2%2C%20official%29%3Dhttp%3A%2F%2Fdevworld.apple.com%2Fdev%2Ftechsupport%2Finsidemac%2FAppleScriptLang%2FAppleScriptLang-2.html links2=Scriptweb%20%28Apple%20scripting%20resources%29%3Dhttp%3A%2F%2Fwww.scriptweb.com%2Fscriptweb%2F links3=AppleScript%20FAQ%20List%3Dhttp%3A%2F%2Fwww.tiac.net%2Fprefab%2Fscriptweb%2Fapplescriptfaq.html links4=AppleScript%20FTP%20Area%3Dftp%3A%2F%2Fftp.scriptweb.com%2Fpfterry%2Fapplescript%2F links5= date=Last%20updated%2012%2F14%2F97 sample=%3Cpre%3E%0D%0A--%20Use%20the%20Finder%20to%20close%20all%20applications%0D%0A--%20%28by%20Joshua%20D.%20Baer%29%0D%0A%0D%0Aproperty%20specialApps%20%3A%20%7B%22Finder%22%7D%0D%0A%0D%0Atell%20application%20%22Finder%22%0D%0A%20%20%20%20%20%20%20%20set%20allApps%20to%20name%20of%20processes%0D%0Aend%20tell%0D%0A%0D%0Arepeat%20with%20someParticularApp%20in%20allApps%0D%0A%20%20%20%20%20%20%20%20if%20specialApps%20does%20not%20contain%20someParticularApp%20then%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tell%20application%20someParticularApp%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20activate%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20quit%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20end%20tell%0D%0A%20%20%20%20%20%20%20%20end%20if%0D%0Aend%20repeat%0D%0A%3C%2Fpre%3E _store=1 _add=AppleScript _usertab=1 _usersearch=0 _format=full = name=AutoIt nameURL=http%3A%2F%2Fwww.autoitscript.com%2F see= logo=http%3A%2F%2Fwww.autoitscript.com%2Fimages%2Fautoit_6_240x100.jpg type=C%20-%20Command%20or%20Scripting desc=AutoIt%20is%20a%20scripting%20language%20for%20automating%0D%0Atasks%20in%20the%20Microsoft%20Windows%20environment.%0D%0AIt%20can%20be%20used%20for%20scripting%20a%20wide%20variety%0D%0Aof%20activities%20that%20would%20normally%20require%20%0D%0Ahuman%20interaction%20with%20Windows%20GUIs%2C%20because%0D%0Ait%20is%20capable%20of%20scripting%20user%20input%20actions.%0D%0A%0D%0AThe%20syntax%20and%20structure%20of%20AutoIt%20is%20%0D%0Afairly%20simple.%20%20Like%20many%20scripting%20languages%0D%0Ait%20is%20weakly%20typed%3A%20all%20variables%20use%20the%20same%0D%0AVariant%20type%2C%20which%20can%20hold%20numbers%2C%20strings%2C%0D%0Aor%20boolean%20values.%20%20The%20language%20supports%0D%0Asimple%20scalar%20variables%20and%20arrays%2C%20but%20no%0D%0Apointers%20or%20other%20advanced%20data%20structures%0D%0A%28not%20uncommon%20for%20macro%20languages%29.%20%20Control%0D%0Astructure%20supported%20in%20AutoIt%20include%0D%0AIf-then-else%2C%20case%20statements%2C%20five%20kinds%20of%0D%0Aloops%2C%20and%20simple%20functions.%20%20It%20does%20not%0D%0Asupport%20closures.%0D%0A%0D%0AAutoIt%20has%20a%20large%20number%20of%20built-in%20%0D%0Afunctions%20for%20interacting%20with%20the%20Windows%0D%0Aenvironment. origin=Jonathan%20Bennett%2C%201999 seealso=Visual%20Basic%2C%20VBScript remark=The%20current%20version%20of%20AutoIt%20is%20version%203.2.2%2C%0D%0Areleased%20in%20Dec%202006. links1=AutoIt%20downloads%3Dhttp%3A%2F%2Fwww.autoitscript.com%2Fautoit3%2Fdownloads.php links2=AutoIt%20forums%3Dhttp%3A%2F%2Fwww.autoitscript.com%2Fforum%2Flofiversion%2F links3= links4= links5= date=Last%20updated%203%2F6%2F07 sample= _store=1 _add=AutoIt _usertab=1 _usersearch=0 _format=full = name=Autolisp nameURL= see=Lisp logo= type=A%20-%20Application%2FMacro desc=Dialect%20of%20Lisp%20used%20as%20the%20extension%0D%0Alanguage%20for%20AutoCAD%28tm%29%20and%20other%0D%0Aproducts%20from%20Autodesk.%20%20Supported%0D%0Aprimarily%20for%20AutoCAD%20versions%2011-13%0D%0A%3Cbr%3E%0D%0AIn%20addition%20to%20normal%20Lisp%20features%2C%0D%0AAutolisp%20offered%20extensive%20facilities%20for%0D%0Amanipulating%20objects%20in%20a%20CAD%20drawing%20in%0D%0ACAD%20files%2C%20and%0D%0Afor%20interacting%20with%20the%20user%20through%0D%0Athe%20AutoCAD%20interface.%20%20Popular%20in%0D%0Athe%20Autodesk%20user%20community. origin=Autodesk%2C%20late%201980s seealso=Elisp%2C%20Xlisp remark=In%201997%2C%20Autolisp%20was%20superseded%20by%0D%0AActiveX%20automation%20%28VB%29%20as%20the%20primary%0D%0Aextension%20mechanism%20for%20AutoCAD. links1=http%3A%2F%2Fwww.autodesk.com%2Fautocad%2F links2=http%3A%2F%2Fwww.cis.ohio-state.edu%2Ftext%2Ffaq%2Fusenet%2FCAD%2Fautolisp-faq%2Ftop.html links3=http%3A%2F%2Fwww.cadshack.com%2Flispfile.htm links4= links5= date=Last%20updated%2012%2F7%2F97 sample=%3Cpre%3E%0D%0A%3B%3B%20Very%20simple%20example%20of%20interactive%20extension%0D%0A%3B%3B%20for%20AutoCAD%0D%0A%28Defun%20c%3ASF2ACRE%20%28%29%0D%0A%20%20%28setq%20SF%20%28getreal%20%22Enter%20area%20in%20square%20feet%3A%20%22%29%29%0D%0A%20%20%28setq%20AGREAGE%20%28%2F%20SF%2043560.0%29%29%0D%0A%20%20%28alert%20%28strcat%20%22%5CnThe%20area%20in%20acres%20is%20%22%20%28rtos%20ARGEAGE%202%202%29%29%29%0D%0A%29%0D%0A%3C%2Fpre%3E _store=1 _add=Autolisp _usertab=1 _usersearch=0 _format=full = name=Awk nameURL= see= logo=http%3A%2F%2Fwww.erols.com%2Fziring%2Flemur1.gif type=D%20-%20Database%20or%20Text-processing desc=Awk%20is%20an%20interpreted%20string-processing%20%0D%0Alanguage%20developed%20at%20Bell%20Labs%20in%20the%0D%0Aearly%201970s.%20%20It%20quickly%20assumed%20its%20%0D%0Aplace%20as%20the%20utility%20language%20of%20choice%0D%0Afor%20small%20UNIX%20data%20transformation%20and%0D%0Aparsing%20programs.%20%20Awk%20offered%20powerful%0D%0Aregular%20expression%20pattern%20matching%2C%20handy%0D%0Aline-oriented%20program%20structure%2C%20and%20enough%0D%0Aconventional%20language%20features%20to%20let%20you%20%0D%0Aget%20your%20work%20done.%20%20Awk%20did%20not%20support%0D%0Aany%20kind%20of%20modularity%20nor%20type%20checking.%0D%0A%3Cbr%3E%0D%0AIn%20a%20typical%20Awk%20program%2C%20sections%20of%20code%0D%0Aare%20applied%20to%20lines%20of%20data%20input%20as%0D%0Amatched%20by%20regular%20expressions.%20%20Later%0D%0Aversions%20of%20Awk%20supported%20multiple%20input%0D%0Afiles%20as%20well%20as%20subroutines%20and%20other%0D%0Aadvanced%20features.%0D%0A%3Cbr%3E%0D%0AA%20version%20of%20%27new%27%20awk%20%28circa%201985%29%20is%0D%0Asupplied%20with%20most%20UNIX%20systems.%20%20The%0D%0Amost%20powerful%20and%20portable%20awk%20implementation%0D%0Ais%20GAWK%20%28Gnu%20Awk%29%2C%20available%20from%20the%20Free%0D%0ASoftware%20Foundation.%20Awk%20is%20a%20part%20of%0D%0Athe%20POSIX%20Command%20Language%20and%20Utilities%0D%0Astandard.%0D%0A origin=Aho%2C%20Kernighan%2C%20%26amp%3B%20%20Weinberger%2C%201976-77 seealso=Perl remark=Awk%20remains%20moderately%20well-known%20in%20the%0D%0AUNIX%20community%2C%20but%20has%20been%20largely%0D%0Asuperseded%20by%20the%20more%20powerful%20Perl%0D%0Aprogramming%20language.%0D%0A%3Cbr%3E%0D%0AAwk%20is%20reputed%20to%20be%20one%20of%20the%20best%0D%0Alanguages%20in%20which%20to%20write%20a%20program%0D%0Athat%20will%20be%20incomprehensible%20to%20any%0D%0Areader%2C%20even%20its%20own%20author. links1=http%3A%2F%2Fwww.delorie.com%2Fgnu%2Fdocs%2Fgawk%2Fgawk_toc.html links2=http%3A%2F%2Fwww.cis.ohio-state.edu%2Fhypertext%2Ffaq%2Fusenet%2Fcomputer-lang%2Fawk%2Ffaq%2Ffaq.html links3=http%3A%2F%2Fwww.leo.org%2Fpub%2Fcomp%2Fplatforms%2Fpc%2Fmsdos%2Fprogramming%2Fawk%2Findex.html links4= links5= date=Last%20updated%2011%2F7%2F99 sample=%3Cpre%3E%0D%0ABEGIN%20%7B%0D%0Aif%20%28%22%27%24%23argv%27%22%3D%3D1%29%20Col%3D%22%27%241%27%22%3B%20else%20Col%3D1%0D%0A%7D%0D%0A%7BTotal%20%20%3D%20%24Col%3B%20%7D%3B%0D%0AEND%20%20%7B%0D%0Aprintf%20%22Total%20for%20column%20%25d%20with%20%25d%20items%3A%20%25d%5Cn%22%2C%0D%0A%20%20%20%20%20%20%20%20Col%2CNR%2CTotal%0D%0A%7D%0D%0A%3C%2Fpre%3E _store=1 _add=Awk _usertab=1 _usersearch=0 _format=full =