name=C nameURL=http%3A%2F%2Fwww.lysator.liu.se%2Fc%2F see= logo= type=S%20-%20block-structured desc=C%20is%20a%20fairly%20low-level%20block%20structured%0D%0Alanguage%20with%20good%20support%20for%20system%0D%0Aprogramming.%20%20C%20is%20renowned%20as%20the%20language%0D%0Aof%20the%20UNIX%20operating%20system%2C%20but%20in%20fact%0D%0Ais%20widely%20used%20in%20PC%2C%20Mac%2C%20mainframe%2C%20and%0D%0Aother%20computing%20environments.%20%20%0D%0A%3Cbr%3E%0D%0AThe%20original%20C%20programming%20language%2C%20as%0D%0Adescribed%20by%20Kernighan%20and%20Ritchie%2C%20had%0D%0Afair%20arithmetic%20support%2C%20simple%20data%0D%0Astructures%2C%20subroutines%2C%20conventional%0D%0Aflow%20control%20constructs%2C%20naked%20%0D%0Amemory%20pointers%2C%20simple%20but%20useful%0D%0AI%2FO%20facilities%2C%20and%20a%20powerful%0D%0Amacro%20preprocessor.%20%20C%20was%0D%0Astandardized%2C%20finally%2C%20in%201990%3B%20%0D%0Acurrently%20the%20ANSI%20ISO%2FIEC%209899%20%28as%0D%0Aamended%29%20defines%20the%20C%20language.%20%20The%0D%0AANSI%20standard%20defines%20better%20data%20type%0D%0Ahandling%20and%20subroutine%20declarations%0D%0Afor%20C%2C%20as%20well%20as%20standardizing%20on%0D%0Aminimum%20I%2FO%20and%20other%20library%20facilities.%0D%0APrimitive%20data%20types%20supported%20in%20modern%0D%0Astandard%20C%20are%3A%20several%20sizes%20of%20integers%2C%0D%0Areals%2C%20characters%2C%20pointers%2C%20and%20arrays.%0D%0AC%20does%20not%20have%20strings%20%3Ci%3Eper%20se%3C%2FI%3E%2C%20but%0D%0Athe%20language%20does%20have%20the%20convention%20that%0D%0Aan%20array%20of%20characters%20ending%20with%20a%20nul%20%280%29%0D%0Acharacter%20can%20be%20treated%20as%0D%0Aa%20string.%20%20Data%20aggregation%20types%20in%20C%20are%0D%0Astructures%20%28records%29%20and%20unions.%0D%0A%3Cbr%3E%0D%0AThe%20C%20language%20has%20no%20I%2FO%20facilities%20defined%0D%0Aas%20part%20of%20the%20syntax.%0D%0AThe%20ANSI%20C%20standard%20defines%20an%20extensive%20%0D%0Abut%20low-level%0D%0Astandard%20library%2C%20including%20I%2FO%20mechanisms.%0D%0AThe%20standard%20library%20was%20not%20really%20designed%2C%0D%0Ait%20evolved%20out%20of%20the%20standard%20library%0D%0Afunctions%20supplied%20with%20C%20implementations%20on%0D%0AUnix%20systems.%0D%0A%3Cbr%3E%0D%0AC%20is%20a%20powerful%20language%20for%20writing%0D%0Atight%2C%20fast%2C%20highly%20tuned%20code%20in%20a%0D%0Alanguage%20far%20more%20portable%20than%20assembly.%20%20%0D%0AC%20is%20low-level%20enough%20to%20write%0D%0Adevice%20drivers%2C%20and%20high-level%20enough%0D%0Ato%20write%20GUI%20libraries.%0D%0A%3Cbr%3E%0D%0AModularity%20in%20C%20is%20limited%20to%20one%20level%0D%0Aof%20subroutines%3A%20all%20C%20names%20exist%20either%0D%0Aat%20the%20global%20scope%2C%20file%20scope%2C%20or%0D%0Asubroutine%20local%20scope.%0D%0AC%20has%20no%20built-in%20support%20for%20separation%0D%0Aof%20module%20interfaces%20from%20module%0D%0Aimplementation%2C%20but%20a%20flexible%20set%20%0D%0Aof%20conventions%20for%20employing%20the%0D%0Amacro%20preprocessor%20to%20separate%20%22header%22%0D%0Afiles%20and%20%22body%22%20files%20has%20evolved%20to%0D%0Asupport%20this%20paradigm.%0D%0A%3Cbr%3E%0D%0AC%20was%20extremely%20popular%20in%20academic%0D%0Aand%20industrial%20computing%20thoughout%20the%0D%0Alate%201970s%20through%20the%20early%0D%0A1990s%2C%20and%20still%20enjoys%0D%0Aa%20huge%20user%20community.%20%20The%20influence%0D%0Aof%20C%20and%20UNIX%20on%20each%20other%2C%20and%20the%20%0D%0Apair%20of%20them%20on%20the%20rest%20of%20computing%2C%0D%0Acannot%20be%20underestimated.%20%20C%20also%20had%0D%0Aa%20profound%20impact%20on%20the%20WWW%3A%20the%20first%0D%0Aweb%20servers%20and%20web%20clients%20were%20all%0D%0Awritten%20in%20C.%20%20%0D%0A%3Cbr%3E%0D%0AFree%20and%20commercial%20C%20implementations%20are%0D%0Awidely%20available%3B%20one%20of%20the%20most%20popular%0D%0Afree%20implementations%20is%20the%20GNU%20C%20Compiler%0D%0A%28gcc%29.%20%20Information%20about%20the%20language%0D%0Ais%20widely%20available%20on%20the%20web%20and%20in%0D%0Abooks. origin=Ritchie%20and%20Thompson%2C%201972-73%3B%20Kernighan%20and%20Ritchie%2C%201978 seealso=C%20%20%2C%20Objective-C%2C%20Algol%2C%20BCPL remark=Dozens%20of%20fine%20books%20on%20C%20exist%2C%20the%0D%0Alanguage%20is%20very%20well%20documented%2C%20and%0D%0Aliterally%20thousands%20of%20support%20libraries%2C%0D%0Atoolkits%2C%20and%20code%20generators%20exist%20to%0D%0Aaid%20the%20C%20programmer.%20%20Even%20though%0D%0AC%20has%20been%20somewhat%20displaced%2C%20perhaps%0D%0Ajustly%20so%2C%20by%20more%20advanced%20cousins%20like%0D%0AC%20%20%20it%20is%20still%20one%20of%20the%20most%20popular%0D%0Aprogramming%20languages.%0D%0A%3Cbr%3E%0D%0AA%20large%20number%20of%20free%20and%20commercial%20C%0D%0Acompilers%20exist.%20%20Many%20UNIX%20systems%20%0D%0Aare%20bundled%20with%20a%20C%20compiler%20%28some%20people%0D%0Awould%20say%20that%2C%20to%20be%20a%20true%20UNIX%20system%2C%0D%0Athe%20box%20MUST%20include%20a%20C%20compiler%29.%0D%0A%3Cbr%3E%0D%0AThe%20great%20power%20and%20flexibility%20that%20C%0D%0Aaffords%20the%20programmer%20is%20its%20greatest%0D%0Astrength%20and%20its%20greatest%20threat.%20%20Many%0D%0Aprogrammers%2C%20from%20beginner%20to%20expert%2C%20%0D%0Afind%20themselves%20%22bitten%22%20by%20C%27s%20implicit%0D%0Asemantics%2C%20terse%20syntax%2C%20weak%20data%0D%0Atype%20enforcement%2C%20and%20cavalier%20attitudes%0D%0Aabout%20memory%20references.%20%20%0D%0A%3Cbr%3E%0D%0AActually%2C%20C%20can%20be%20so%20terse%2C%20and%20its%0D%0Apreprocessor%20is%20so%20easy%20to%20abuse%2C%20that%20a%0D%0Afolklore%20has%20grown%20up%20around%20unreadable%0D%0Aand%20incomprehensible%20C%20code.%0D%0A%3Cbr%3E%0D%0AWhile%20many%20programmers%20disparage%20C%20for%0D%0Aits%20lack%20of%20type%20safety%20and%20other%20advanced%0D%0Afeatures%2C%20it%20is%20noteworthy%20that%20many%20if%0D%0Anot%20most%20of%20the%20advanced%20functional%2C%20OO%2C%0D%0Aand%20declarative%20languages%20created%20in%20the%0D%0A1990s%20were%20first%20compiled%20or%20interpreted%0D%0Aby%20C. links1=Association%20of%20C%20and%20C%20%20%20Users%3Dhttp%3A%2F%2Fwww.accu.org%2F links2=Int%27l%20Obfuscated%20C%20Code%20Contest%3Dhttp%3A%2F%2Freality.sgi.com%2Fcsp%2Fioccc%2Findex.html links3=C%20Users%20Journal%3Dhttp%3A%2F%2Fwww.cuj.com%2F links4=C%2FC%20%20%20area%20at%20Yahoo%21%3Dhttp%3A%2F%2Fwww.yahoo.com%2FComputers_and_Internet%2FProgramming_Languages%2FC_and_C__%2F links5= date=Last%20updated%205%2F27%2F98 sample=%3Cpre%3E%0D%0A%23include%20%26lt%3Bstdio.h%26gt%3B%0D%0A%2F%2A%20count%20lines%20of%20standard%20input%20%2A%2F%0D%0Amain%28int%20argc%2C%20char%20%2Aargv%5B%5D%29%20%7B%0D%0A%20%20%20%20char%20lbuf%5B256%5D%3B%0D%0A%20%20%20%20int%20lcnt%3B%0D%0A%20%20%20%20for%28lcnt%20%3D%200%3B%20fgets%28lbuf%2Csizeof%28lbuf%29%20-%201%2C%20stdin%29%3B%20cnt%20%20%29%3B%0D%0A%20%20%20%20printf%28%22%25d%20lines%5Cn%22%2C%20lcnt%29%3B%0D%0A%20%20%20%20exit%280%29%3B%0D%0A%7D%0D%0A%3C%2Fpre%3E%0D%0A _store=1 _add=C _usertab=1 _usersearch=0 _format=full = name=C%23 nameURL=http%3A%2F%2Fmsdn.microsoft.com%2Fvstudio%2Fnextgen%2Ftechnology%2Fcsharpintro.asp see= logo= type=O%20-%20Object-oriented desc=C%23%20is%20an%20object-oriented%20language%20derived%0D%0Afrom%20C%2C%20with%20some%20features%20from%20C%2B%2B%2C%20Java%2C%0D%0Aand%20Visual%20Basic.%20%20C%23%20was%20designed%20by%0D%0AMicrosoft%2C%20initially%20as%20part%20of%20their%20%0D%0A.net%20initiative.%20%20Microsoft%20claims%20that%0D%0AC%23%20offers%20the%20power%20and%20richness%20of%20C%2B%2B%0D%0Awith%20the%20productivity%20of%20Visual%20Basic.%0D%0A%3Cbr%3E%0D%0AAs%20a%20language%20in%20the%20C%20family%2C%20C%23%20offers%0D%0Athe%20usual%20complement%20of%20primitive%20types%3A%0D%0Aintegers%2C%20reals%2C%20booleans%2C%20and%20characters.%0D%0AIt%20also%20supports%20objects%20and%20arrays.%20%20%0D%0AUnlike%20Java%20and%20C%2B%2B%2C%20C%23%20hides%20some%20of%20the%0D%0Adistinction%20between%20primitive%20types%20and%0D%0Aobject%20types%20by%20automatically%20%27boxing%27%0D%0Aand%20and%20%27unboxing%27%20primitive%20as%20objects.%0D%0AC%23%20is%20strongly%20types%20and%20provides%20extensive%0D%0Acompile-time%20and%20run-time%20checking%3B%20unlike%0D%0AJava%2C%20C%23%20supports%20C-style%20unsafe%20pointers%2C%20%0D%0Abut%20only%20within%20specially%20designate%20code%0D%0Asections.%20%20C%23%20supports%20a%20string%20type%20that%0D%0Ais%20an%20object%2C%20but%20otherwise%20tightly%20integrated%0D%0Awith%20the%20rest%20of%20the%20language%20%28just%20like%20Java%29.%0D%0A%3Cbr%3E%0D%0AC%23%20supports%20single%20inheritance%2C%20overloading%2C%0D%0Aoverriding%2C%20reflection%2C%20and%20polymorphism.%20%20Overriding%0D%0Amust%20be%20done%20explicitly.%20%20Because%20C%23%20was%0D%0Aintended%20mainly%20to%20support%20development%20on%0D%0AWindows%20operating%20systems%2C%20the%20C%23%20object%0D%0Amodel%20is%20designed%20to%20correspond%20directly%20with%0D%0AMicrosoft%27s%20COM%2FDCOM%20object%20mode.%0D%0AC%23%20also%20supports%20an%20interesting%20mechanism%2C%0D%0Acalled%20properties%2C%20that%20allow%20a%20coder%20to%0D%0Aexpose%20object%20methods%20but%20permits%20the%20user%0D%0Aof%20those%20objects%20to%20treat%20them%20as%20object%0D%0Adata%20attributes%2C%20reminiscent%20of%20CORBA%20IDL%0D%0Aand%20the%20Self%20language.%20%20Other%20features%20%0D%0Asupported%20by%20C%23%20include%20structs%2C%20indexers%2C%0D%0Aoperator%20overloading%2C%20and%20control%20over%0D%0Aparameter%20passing.%0D%0A%3Cbr%3E%0D%0AC%23%20is%20also%20designed%20to%20run%20on%20Microsoft%27s%0D%0ACommon%20Language%20Runtime%20%28CLR%29%2C%20a%20Windows-oriented%0D%0Aset%20of%20standard%20packages%20and%20object%20libraries.%0D%0AThese%20standard%20packages%20available%20to%20C%23%20include%0D%0Aa%20wide%20variety%20of%20data%20structures%2C%20I%2FO%20facilites%2C%0D%0Anetwork%20support%2C%20system%20interaction%20support%2C%0D%0AGUI%20objects%20%28highly%20Windows-specific%29%2C%20web%0D%0Aservices%2C%20COM%2C%20and%20much%20more.%20%20C%23%20fully%20supports%0D%0Aexception%20handling%2C%20although%20exceptions%20are%0D%0Anot%20always%20used%20consistently%20in%20the%20standard%0D%0Apackages.%0D%0A%3Cbr%3E%0D%0AC%23%20provides%20garbage%20collection%20and%20automatic%0D%0Amemory%20management.%0D%0A%3Cbr%3E%0D%0AFor%20creating%20code%20for%20handling%20GUI%20events%20%0D%0Aand%20other%20external%20triggers%2C%20C%23%20offers%20a%0D%0Anovel%20form%20of%20delegation.%20%20This%20is%20probably%0D%0Athe%20most%20complex%20feature%20of%20the%20language%2C%0D%0Aand%20has%20not%20counterpart%20in%20C%2B%2B%20or%20Java%2C%0D%0Aalthough%20Objective-C%20has%20something%20equivalent.%0D%0A%3Cbr%3E%0D%0AAnother%20novel%20features%20of%20C%23%2C%20which%20is%20actually%0D%0Apart%20of%20the%20Common%20Language%20Runtime%2C%20is%20the%0D%0Anotion%20of%20Attributes.%20%20Attributes%20are%20meta-data%0D%0Aabout%20code%2C%20communications%20from%20the%20programmer%0D%0Ato%20the%20compiler%20and%20run-time%20system.%20%20In%20C%2C%0D%0Asuch%20things%20are%20often%20done%20with%20pragmas%20and%0D%0Anon-standard%20keywords%3B%20in%20Java%2C%20marker%20interfaces%0D%0Aare%20used.%20%20Attributes%20are%20much%20richer%20than%20any%0D%0Asimilar%20capability%20in%20comparable%20languages.%20%20They%0D%0Aalso%20add%20a%20very%20complex%20facet%20to%20the%20language%2C%0D%0Aone%20which%20many%20developers%20will%20not%20need.%20%20Fortunately%2C%0D%0Ait%20is%20possible%20to%20write%20many%20%0D%0AC%23%20programs%20without%20uses%0D%0Aattributes%20at%20all.%0D%0A%3Cbr%3E%0D%0ACurrently%2C%20the%20only%20full%20implementation%20of%20C%23%0D%0Ais%20provided%20by%20the%20Microsoft%20.net%20compilers.%0D%0AMicrosoft%20makes%20a%20command-line%20compiler%20available%0D%0Afree%2C%20under%20the%20unintuitive%20name%20of%20the%0D%0A%22.Net%20Framework%20SDK%22.%20%20Other%20%0D%0Aimplementations%20are%20under%20%0D%0Adevelopment.%0D%0A origin=Microsoft%2C%201999 seealso=C%2C%20C%2B%2B%2C%20Java remark=C%23%20uses%20a%20single-rooted%20object%20hierarchy%2C%0D%0Ajust%20like%20Java%20does.%20%20This%20helps%20to%0D%0Asimplify%20the%20creation%20of%20collection%20data%0D%0Atypes.%20Oddly%2C%20C%23%20also%20integrates%20support%20for%0D%0Atraversal%20of%20collections%20into%20the%20syntax%0D%0Aof%20the%20language%20itself%2C%20with%20the%20%0D%0A%22foreach%22%20loop%20statement.%0D%0A%3Cbr%3E%0D%0AWhile%20C%23%20is%20a%20solid%20programming%20language%20that%0D%0Acan%20stand%20on%20its%20own%20merits%2C%20most%20of%20the%0D%0Ainformation%20available%20about%20the%20language%0D%0Aties%20it%20closely%20to%20the%20Microsoft%20Common%0D%0ALanguage%20Runtime.%20%20Under%20the%20CLR%2C%20code%20is%0D%0Acompiled%20into%20an%20intermediate%20language%2C%0D%0Aunimaginatively%20named%20IL%2C%20and%20the%20IL%20code%20is%0D%0Astored%20in%20self-describing%20binary%20assemblies.%0D%0AAbstractly%2C%20these%20assemblies%20can%20be%20thought%0D%0Aof%20as%20code%20archives.%20%20Concretely%2C%20they%20are%0D%0Areally%20Microsoft%20PE-format%20executables.%0D%0AExactly%20how%20the%20IL%20code%20executes%20is%20up%20to%0D%0Athe%20implementor%20of%20the%20execution%20environment%3B%0D%0Ain%20Microsoft%27s%20environment%2C%20the%20IL%20is%0D%0Atranslated%20into%20Intel%20machine%20code%20on%20a%0D%0Aper-function%20basis.%20%0D%0A%3Cbr%3E%0D%0AC%23%20supports%20multi-threading%2C%20although%20the%0D%0Aintegration%20of%20threading%20and%20thread%0D%0Asynchronization%20into%20the%20C%23%20language%0D%0Ais%20not%20as%20elegant%20as%20Java%27s%20approach.%0D%0A%3Cbr%3E%0D%0AMany%20books%20and%20web%20sites%20are%20available%0D%0Afor%20those%20that%20want%20to%20learn%20C%23.%0D%0A links1=C%23%20Help%20site%3Dhttp%3A%2F%2Fwww.csharphelp.com%2F links2=C%23%20Language%20Specification%3Dhttp%3A%2F%2Fmsdn.microsoft.com%2Fvstudio%2Fnextgen%2Ftechnology%2Fcsharpdownload.asp links3=C%23%20Resources%3Dhttp%3A%2F%2Fwww.cshrp.net%2F links4=C%23%20Programming%20Index%3Dhttp%3A%2F%2Fwww.hitmill.com%2Fprogramming%2FdotNET%2Fcsharp.html links5= date=Last%20updated%2012%2F8%2F01 sample= _store=1 _add=C%23 _usertab=1 _usersearch=0 _format=full = name=C%2A nameURL= see=C logo= type=P%20-%20Parallel%20or%20Multi-programming desc=C%2A%20is%20a%20dialect%20of%20C%20featuring%20extended%0D%0Asyntax%20and%20semantics%20for%20supporting%0D%0Aparallel%20processing.%20%20It%20was%20designed%20for%0D%0Aapplication%20development%20on%20the%20Connection%0D%0AMachine%20line%20of%20SIMD%20massively%20parallel%0D%0Acomputers.%0D%0A%3Cbr%3E%0D%0ATwo%20fundamental%20added%20features%20distinguish%0D%0AC%2A%20from%20standard%20C%3A%20parallel%20data%20elements%2C%0D%0Aand%20parallel%20computation%20domains.%20%20Each%0D%0Avariable%20in%20a%20C%2A%20routine%20is%20either%20a%20%27mono%27%0D%0A%28scalar%29%20or%20a%20%27poly%27%20%28parallel%29%20variable.%0D%0AThe%20programmer%20can%20define%20any%20number%20of%20%0D%0Anamed%20domains%2C%20with%20domain-local%20parallel%0D%0Aand%20scalar%20variables%2C%20and%20then%20define%0D%0Acomputations%20that%20take%20place%20in%20those%0D%0Adomains.%0D%0A%3Cbr%3E%0D%0AC%2A%20supports%20the%20same%20data%20types%20and%0D%0Acontrol%20structures%20as%20C.%0D%0A%3Cbr%3E%0D%0AC%2A%20is%20a%20commercial%20product%2C%20it%20was%20sold%20%0D%0Aalong%20with%20the%20Connection%20Machine%20CM2%20and%0D%0ACM5%20systems.%20%20No%20documentation%20seems%20to%20be%0D%0Aavailable%20on%20the%20web. origin=Thinking%20Machines%20Corp%2C%201987. seealso=Lucid%2C%20Sisal%2C%20Occam remark=The%20Connection%20Machine%20CM2%20was%20an%0D%0Aidiosyncratic%20parallel%20processing%20machine%2C%0D%0Atypically%20sporting%2016384%20-%2065536%20simple%0D%0Aprocessors%20each%20with%20local%20memory%2C%20%0D%0Aand%20a%20simple%0D%0Ainterconnection%20scheme.%20%20Typically%2C%20it%0D%0Awas%20used%20as%20a%20co-processor%20to%20a%20more%0D%0Aconventional%20computer%2C%20like%20a%20VAX%2C%20which%0D%0Aloaded%20programs%20into%20the%20CM%20and%20provided%0D%0AI%2FO%20services.%0D%0AThe%20facilities%20of%20C%2A%20allowed%20the%20programmer%0D%0Ato%20approach%20the%20machine%20at%20a%20high%20level%2C%0D%0Aat%20the%20cost%20of%20not%20supporting%20some%20of%20the%0D%0Amachine%27s%20more%20specialized%20capabilities.%0D%0A%3Cbr%3E%0D%0AC%2A%20was%20supported%20by%20a%20library%20of%20commonly%0D%0Aused%20parallel%20algorithms%20written%20at%20a%20lower%0D%0Alevel%2C%20like%20sort%20and%20search%20routines.%0D%0A%3Cbr%3E%0D%0AConnection%20machines%20are%20no%20longer%20widely%20%0D%0Aused%2C%20and%20C%2A%20is%20not%20well%20known.%20%20It%20was%0D%0Asomewhat%20influential%20in%20the%20parallel%0D%0Acomputing%20community. links1=Connection%20Machine%20Services%3Dhttp%3A%2F%2Fwww.connmach.com%2F links2= links3= links4= links5= date=Last%20updated%203%2F25%2F98 sample=%3Cpre%3E%0D%0A%2F%2F%20Adapted%20from%20the%20paper%20%22The%20C%2A%20Parallel%0D%0A%2F%2F%20Programming%20Language%22%20by%20Andrews%20and%20Barszcz%2C%201992.%0D%0A%0D%0A%2F%2F%20Skyline%20Matrix%20Problem%20solution%0D%0A%23define%20N%204%0D%0A%23define%20BIG%201024%0D%0Adomain%20Matrix%20%7B%20float%20a%3B%20int%20i%3B%20int%20j%3B%20%7D%20A%5BN%5D%5BN%5D%3B%0D%0Adomain%20RHS%20%7B%20float%20b%3B%20int%20i%3B%20%7D%20B%5BN%5D%3B%0D%0Adomain%20Skyline%20%7B%20float%20s%3B%20int%20i%3B%20int%20j%3B%20%7D%20SKY%5BBIG%5D%3B%0D%0Adomain%20Vector%20%7B%20float%20element%3B%20int%20start%3B%20%7D%20I%5BN%5D%2C%20J%5BN%5D%3B%0D%0A%0D%0Avoid%20main%28%29%20%7B%0D%0A%20%20%20int%20k%2Cl%2Cm%3B%0D%0A%20%20%20float%20x%5BN%5D%2C%20element%3B%0D%0A%20%20%20float%20rowsum%2C%20pivot%3B%0D%0A%20%20%20int%20NonZeros%3B%0D%0A%0D%0A%20%20%20readMatrix%28%29%3B%0D%0A%0D%0A%20%20%20%5Bdomain%20RHS%5D.%7B%20i%20%3D%20%28int%29%28this%20-%20%26amp%3BB%5B0%5D%29%3B%20%7D%0D%0A%0D%0A%20%20%20%5Bdomain%20Matrix%5D.%7B%20%0D%0A%20%20%20%20%20int%20offset%20%3D%20%28int%29%20%28this%20-%20%26amp%3BA%5B0%5D%5B0%5D%29%3B%20%0D%0A%20%20%20%20%20i%20%3D%20offset%20%2F%20N%3B%20%20j%20%3D%20offset%20%25%20N%3B%0D%0A%20%20%20%7D%0D%0A%0D%0A%20%20%20for%28k%20%3D%200%3B%20k%26lt%3BN%3B%20k%20%20%29%20%7B%20%0D%0A%20%20%20%20%20rowsum%20%3D%200%3B%0D%0A%20%20%20%20%20%5Bdomain%20Matrix%5D.%7B%20if%20%28i%20%3D%3D%20k%29%20rowsum%20%20%3D%20a%3B%20%7D%0D%0A%20%20%20%20%20B%5Bk%5D.b%20%3D%20rowsum%3B%0D%0A%20%20%20%7D%0D%0A%0D%0A%20%20%20NonZeros%20%3D%20map%28%29%3B%20%20%2F%2A%20put%20matrix%20in%20skyline%20form%3F%20%2A%2F%0D%0A%0D%0A%20%20%20for%28k%3D0%3B%20k%26lt%3B%28N-1%29%3B%20k%20%20%29%20%7B%0D%0A%20%20%20%20%20%5Bdomain%20Skyline%5D.%7B%0D%0A%20%20%20%20%20%20%20if%20%28%28i%20%3D%3Dk%29%20%26amp%3B%26amp%3B%20%28j%3D%3Dk%29%29%20Pivot%20%2C%3D%20s%3B%0D%0A%20%20%20%20%20%20%20if%20%28%28%28i%26gt%3Bk%29%20%26amp%3B%26amp%3B%20%28j%3D%3Dk%29%29%20%26amp%3B%26amp%3B%20%28I%5Bi%5D.start%20%26lt%3B%3D%20k%29%29%20%7B%0D%0A%09%20s%20%3D%20s%20%2F%20Pivot%3B%0D%0A%09%20I%5Bi%5D.element%20%3D%20s%3B%0D%0A%20%20%20%20%20%20%20%7D%0D%0A%0D%0A%20%20%20%20%20%20%20if%20%28%28%28i%3D%3Dk%29%20%26amp%3B%26amp%3B%20%28j%20%26gt%3B%20k%29%29%20%26amp%3B%26amp%3B%20%28J%5Bj%5D.start%20%26lt%3B%3D%20k%29%29%20J%5Bj%5D.element%20%3D%20s%3B%0D%0A%0D%0A%20%20%20%20%20%20%20if%20%28%28%28i%20%26gt%3B%20k%29%20%26amp%3B%26amp%3B%20%28j%20%26gt%3B%20k%29%29%20%26amp%3B%26amp%3B%0D%0A%09%20%20%20%28%28I%5Bi%5D.start%20%26lt%3B%3D%20k%29%20%26amp%3B%26amp%3B%20J%5Bj%5D.start%20%26lt%3B%3D%20k%29%29%0D%0A%09%20s%20%3D%20s%20-%20%28I%5Bi%5D.element%20%2A%20J%5Bj%5D.element%29%3B%0D%0A%20%20%20%20%20%7D%0D%0A%20%20%20%7D%0D%0A%20%20%20%0D%0A%20%20%20for%28k%20%3D%20%28N-1%29%3B%20k%20%26gt%3B%200%3B%20k--%29%20%7B%0D%0A%20%20%20%20%20%5Bdomain%20Skyline%5D.%7B%0D%0A%20%20%20%20%20%20%20if%20%28%28%28i%20%26lt%3B%3D%20k%29%20%26amp%3B%26amp%3B%20%28j%20%3D%3Dk%29%29%20%26amp%3B%26amp%3B%20%28J%5Bk%5D.start%20%26lt%3B%3D%20k%29%29%0D%0A%09%20J%5Bj%5D.element%20%3D%20s%3B%0D%0A%20%20%20%20%20%7D%0D%0A%20%20%20%20%20x%5Bk%5D%20%2C%3D%20B%5Bk%5D.b%20%2F%20J%5Bj%5D.element%3B%0D%0A%20%20%20%20%20%5Bdomain%20Skyline%5D.%7B%0D%0A%20%20%20%20%20%20%20if%20%28%28i%20%26lt%3B%20k%29%20%26amp%3B%26amp%3B%20%28J%5Bk%5D.start%20%26lt%3B%20k%29%29%0D%0A%09%20b%20%3D%20b%20-%20%28J%5Bj%5D.element%20%2A%20x%5Bk%5D%29%3B%0D%0A%20%20%20%20%20%7D%0D%0A%20%20%20%7D%0D%0A%0D%0A%20%20%20%5Bdomain%20Skyline%5D.%7B%20if%20%28i%20%3D%3D%200%20%26amp%3B%26amp%3B%20j%20%3D%3D%200%29%20Pivot%20%2C%3D%20s%3B%20%7D%0D%0A%09%09%09%20%20%0D%0A%20%20%20x%5B0%5D%20%3D%20B%5B0%5D.b%20%2F%20Pivot%3B%0D%0A%20%20%20printf%28%22x%5Cn%22%29%3B%0D%0A%20%20%20for%28k%20%3D%200%3B%20k%26lt%3BN%3B%20k%20%20%29%20printf%28%22%25f%5Cn%22%2Cx%5Bk%5D%29%3B%0D%0A%7D%0D%0A%3C%2Fpre%3E _store=1 _add=Coq _usertab=1 _usersearch=0 _format=full = name=C%2B%2B nameURL=http%3A%2F%2Fwww.accu.org%2F see= logo= type=O%20-%20Object-oriented desc=C%2B%2B%20is%20a%20fairly%20complicated%20object-oriented%0D%0Alanguage%20derived%20from%20C.%20%20The%20syntax%0D%0Aof%20C%2B%2B%20is%20a%20lot%20like%20C%2C%20with%20various%0D%0Aextensions%20and%20extra%20keywords%20needed%20to%0D%0Asupport%20classes%2C%20interitance%20and%20other%20OO%20%0D%0Afeatures.%20%20C%2B%2B%20was%20originally%20developed%0D%0Aas%20an%20extension%20to%20C%2C%20but%20quickly%0D%0Aevolved%20into%20its%20language.%20%20Despite%20some%0D%0Aof%20the%20flaws%20it%20has%20inherited%20from%20C%2C%0D%0AC%2B%2B%20is%20a%20very%20popular%20language%20for%20%0D%0Aapplication%20development%20on%20Unix%20systems%0D%0Aand%20PCs.%0D%0A%3Cbr%3E%0D%0AThe%20C%2B%2B%20programming%20language%0D%0Aoffers%20a%20very%20broad%20range%20of%20OOP%20features%3A%0D%0Amultiple%20inheritance%2C%20strong%20typing%2C%20dynamic%20memory%20%0D%0Amanagement%2C%20templates%20%28generics%29%2C%20%0D%0Apolymorphism%2C%20exception%0D%0Ahandling%2C%20and%20overloading.%0D%0ASome%20newer%20C%2B%2B%20systems%20also%20offer%20%0D%0Arun-time%20type%20identification%20and%0D%0Aseparate%20namespaces.%0D%0A%3Cbr%3E%20%20%0D%0AC%2B%2B%20also%20supports%20the%20usual%20features%20expected%0D%0Aof%20an%20application%20language%3A%20a%20variety%20of%20data%20types%20including%0D%0Astrings%2C%20arrays%20and%20structures%2C%20full%20I%2FO%20facilities%2C%20%0D%0Adata%20pointers%20and%20type%20conversion.%0D%0AThe%20C%2B%2B%20Standard%20Template%20Library%20%28STL%29%20%0D%0Aoffers%20a%20set%20of%20collection%20and%20abstract%0D%0Adata%20type%20facilities.%0D%0A%3Cbr%3E%0D%0ABecause%20it%20is%20derived%20from%20C%2C%20C%2B%2B%20has%20a%0D%0Anumber%20of%20features%20that%20support%20unsafe%0D%0Aand%20defective%20software.%20%20The%20more%0D%0Arecent%20C%2B%2B%20standards%20do%20support%20safe%0D%0Acasts%2C%20but%20this%20feature%20is%20not%20yet%20%0D%0Auniversally%20available%20or%20employed.%0D%0AAlso%2C%20%0D%0AC%2B%2B%20has%20dynamic%20memory%20allocation%2C%20but%0D%0Adoes%20not%20have%20garbage%20collection%3B%20this%0D%0Aallows%20programs%20to%20mis-use%20and%20leak%0D%0Amemory.%20%20C%2B%2B%20also%20supports%20%0D%0Adangerous%20raw%20memory%0D%0Apointers%20and%20pointer%20arithmetic.%20%20These%20%0D%0Alow-level%20facilities%20are%20useful%20in%20some%0D%0Asituations%2C%20but%20can%20increase%20the%20time%0D%0Aneeded%20for%20software%20development.%0D%0A%3Cbr%3E%0D%0AEfforts%20at%20unifying%20the%20C%2B%2B%20language%20were%0D%0Abegun%20in%201989.%0D%0AC%2B%2B%20was%20finally%20standardized%20by%20the%20ISO%20and%20ANSI%0D%0Ain%20November%2C%201997.%0D%0A%3Cbr%3E%0D%0AInformation%20on%20C%2B%2B%20is%20widely%20available%20on%0D%0Athe%20WWW%2C%20but%20language%20has%20no%20official%20home%0D%0Aon%20the%20Web.%20%20Many%20C%2B%2B%20implementations%0D%0Aexist%2C%20some%20of%20them%20follow%20the%20old%0D%0Atradition%20of%20translating%20C%2B%2B%20into%20C%2C%20while%0D%0Aothers%20are%20native%20compilers.%20%20A%20few%20free%0D%0AC%2B%2B%20compilers%20exist%2C%20the%20most%20notable%20of%0D%0Awhich%20is%20the%20GNU%20C%2FC%2B%2B%20compiler%2C%20GCC.%0D%0A origin=Bjarne%20Stoustrup%2C%20AT%26T%20Bell%20Labs%2C%201982-85. seealso=C%2C%20Objective-C%2C%20Ada%2C%20Eiffel remark=C%2B%2B%20is%20one%20of%20the%20most%20popular%20programming%0D%0Alanguages%20available%20today%3B%20in%201997%20it%20was%0D%0Aestimated%20that%201.5%20million%20people%20knew%20how%0D%0Ato%20write%20C%2B%2B%20code.%20%20The%20language%20is%0D%0Apopular%20for%20several%20reasons%3A%20%0D%0A%3Cul%3E%0D%0A%3Cli%3Eit%20is%20pragmatic%0D%0A%3Cli%3Eit%20is%20powerful%0D%0A%3Cli%3Eit%20resembles%20C%20which%20was%0D%0Aalso%20very%20popular%0D%0A%3Cli%3Eit%20is%20used%20to%20write%20system%0D%0Aand%20application%20programs%20for%20UNIX%20and%20MS-Windows%2C%0D%0A%3Cli%3Egood%20compilers%20for%20it%20are%20available%20both%0D%0Afor%20free%20and%20commercially%0D%0A%3Cli%3Ethere%20are%20plenty%20of%20good%20books%20about%0D%0Ait%20available%0D%0A%3C%2Ful%3E%0D%0A%3Cbr%3E%0D%0AC%2B%2B%20is%20one%20of%20the%20most%20mature%20and%0D%0Acertainly%20the%20most%20widely-implemented%20%0D%0Aobject-oriented%20language.%20%20Even%20so%2C%20it%0D%0Ais%20missing%20some%20features%20that%20are%20%0D%0Aconsidered%20obligatory%20in%20a%20new%20OOP%0D%0Alanguage%20design%3A%20concurrency%2C%20persistence%2C%0D%0Aautomatic%20garbage%20collection%2C%20and%20%0D%0Areflection.%20%20In%20exchange%20for%20these%0D%0Adeficiencies%2C%20C%2B%2B%20gives%20some%20things%20that%0D%0Asystem%20programmers%20especially%20like%3A%0D%0Adeterminism%20and%20control.%20%20Because%20very%0D%0Alittle%20need%20happen%20behind%20the%20scenes%20in%0D%0AC%2B%2B%20programs%2C%20they%20have%20low%20overhead%20and%0D%0Agood%20performance.%0D%0A%3Cbr%3E%0D%0AC%2B%2B%20has%20a%20number%20of%20notable%20features%0D%0Athat%20make%20it%20powerful%2C%20but%20which%20make%0D%0Ait%20easy%20to%20write%20undecipherable%20%0D%0Aunmaintainable%20programs.%20%20First%2C%20it%0D%0Asupports%20operator%20overloading%20for%20almost%0D%0Aevery%20operator%20in%20the%20language%2C%20include%20%5B%5D%0D%0Aand%20%28%29%20and%20%20%20and%20-%26gt%3B.%20%20Second%2C%20it%0D%0Asupport%20raw%20pointers.%20%20Third%2C%20it%20supports%0D%0Aboth%20implicit%20and%20explicit%20type%0D%0Aconversions%2C%20both%20built-in%20and%0D%0Aprogrammer-defined.%20%20Fourth%2C%20it%20supports%0D%0Athe%20C%20macro%20preprocessor.%20%20Fifth%2C%20it%20%0D%0Aallows%20the%20programmer%20to%20control%20the%0D%0Adegree%20of%20data%20hiding%20enforced%20by%20%0D%0Aobject%20classes.%20%20Taken%20together%2C%20these%0D%0Afeatures%20offer%20the%20programmer%20the%20ability%0D%0Ato%20do%20great%20things%2C%20and%20but%20the%20potential%0D%0Afor%20writing%20really%20awful%20code%20%0D%0A%5BNote%3A%20this%20is%0D%0Anot%20theoretical%20--%20I%27ve%20personally%20used%0D%0Aand%20misused%20all%20of%20these%20features.%5D%0D%0A%3Cbr%3E%0D%0AA%20wide%20variety%20of%20add-on%20libraries%20and%0D%0Autilities%20for%20C%2B%2B%20developers%20are%20available.%0D%0AGood%20compilers%20are%20available%20for%20all%0D%0Aplatforms.%0D%0A links1=C%2B%2B%20Report%20magazine%3Dhttp%3A%2F%2Fwww.sigs.com%2Fpublications%2Fcppr%2F links2=The%20ISO%2FANSI%20C%2B%2B%20Standard%3Dhttp%3A%2F%2Fwww.cygnus.com%2Fmisc%2Fwp%2F links3=Ask%20the%20C%2B%2B%20Pro%3Dhttp%3A%2F%2Fwww.inquiry.com%2Ftechtips%2Fcpp_pro%2Findex.html links4=C%2B%2B%20FAQ%20lists%3Dhttp%3A%2F%2Fwww.cis.ohio-state.edu%2Fhypertext%2Ffaq%2Fbngusenet%2Fcomp%2Flang%2FC%2B%2B%2Ftop.html links5=Yahoo%21%20C%2FC%2B%2B%20resources%3Dhttp%3A%2F%2Fwww.yahoo.com%2FComputers_and_Internet%2FProgramming_Languages%2FC_and_C__%2F date=Last%20updated%206%2F30%2F2000 sample=%3Cpre%3E%0D%0A%2F%2F%20This%20is%20just%20a%20placehold%20until%20I%20write%20a%20%0D%0A%2F%2F%20better%20example.%0D%0A%0D%0A%23include%20%26lt%3Biostream.h%26gt%3B%0D%0A%23include%20%26lt%3BString.h%26gt%3B%0D%0A%20%0D%0Amain%28int%20argc%2C%20char%20%2Aargv%5B%5D%29%20%0D%0A%7B%0D%0A%20%20%20%20%20%20%20%20String%20%2As1%3B%0D%0A%20%20%20%20%20%20%20%20s1%20%3D%20new%20String%28%22Hello%20World%21%22%29%3B%0D%0A%20%20%20%20%20%20%20%20cout%20%26lt%3B%26lt%3B%20%2As1%20%26lt%3B%26lt%3B%20endl%20%26lt%3B%26lt%3B%20%22Length%20is%3A%22%20%26lt%3B%26lt%3B%20s1-%3Elength%28%29%20%26lt%3B%26lt%3B%20endl%3B%0D%0A%7D%0D%0A%0D%0A%3C%2Fpre%3E%0D%0A _store=1 _add=C%2B%2B _usertab=1 _usersearch=0 _format=full = name=Cecil nameURL=http%3A%2F%2Fwww.cs.washington.edu%2Fresearch%2Fprojects%2Fcecil%2F see= logo= type=O%20-%20Object-oriented desc=Cecil%20is%20a%20pure%20object-oriented%20programming%0D%0Alanguage%20developed%20at%20the%20University%20of%0D%0AWashington.%20%20Cecil%20was%20designed%20as%20part%0D%0Aof%20the%20larger%20Vortex%20project%20at%20UW%2C%20and%0D%0Ait%20is%20intended%20to%20provide%20a%20framework%20in%0D%0Awhich%20large%2C%20extensible%20software%20systems%0D%0Acan%20be%20developed%20more%20easily.%20%20Some%20%0D%0Aother%20goals%20of%20the%20project%20are%0D%0Aorthagonality%2C%20efficiency%2C%20and%20ease-of-use.%0D%0A%3Cbr%3E%0D%0AThe%20Cecil%20language%20is%20based%20on%20a%20simple%0D%0Aobject%20model%20that%20supports%20multiple%20%0D%0Ainheritance%20and%20multi-methods%2C%0D%0Adynamic%20inheritance%2C%20and%20optional%20static%0D%0Atype%20checking.%20%20Unlike%20most%20OOP%20systems%2C%0D%0ACecil%20allows%20subtyping%20and%20code%20inheritance%0D%0Ato%20be%20used%20separately%2C%20thus%20allowing%20%0D%0Arun-time%20or%20external%20extension%20of%20object%0D%0Aclasses%20or%20instances.%20%20%20Like%0D%0AObjective-C%2C%20all%20object%20services%20in%20Cecil%0D%0Aare%20invoked%20by%20message%20passing%2C%20and%0D%0Athe%20language%20supports%20run-time%20class%0D%0Aidentification.%20%20These%20features%20allow%20%0D%0ACecil%20to%20support%20dynamic%2C%20exploratory%0D%0Aprogramming%20styles.%20%20Parameterized%20types%0D%0Aand%20methods%20%28generics%2C%20polymorphism%29%2C%0D%0Agarbage%20collection%2C%20and%20delegation%20are%0D%0Aalso%20supported.%0D%0A%3Cbr%3E%0D%0ACecil%20also%20supports%20a%20module%20mechanism%0D%0Afor%20isolation%20of%20independent%20libraries%0D%0Aor%20packages.%20%20Cecil%20does%20not%20presently%0D%0Asupport%20threads%20or%20any%20other%20form%20of%0D%0Aconcurrency.%0D%0A%3Cbr%3E%0D%0AA%20standard%20library%20for%0D%0ACecil%20is%20also%20part%20of%20the%20project%2C%20it%0D%0Aincludes%20various%20collection%2C%20utility%2C%0D%0Asystem%2C%20I%2FO%2C%20and%20GUI%20classes.%3C%0D%0A%3Cbr%3E%0D%0AThe%20latest%20version%20of%20the%20Cecil%20language%0D%0Adefinition%20is%202.1%2C%20dated%203%2F97.%20%20Cecil%0D%0Acurrently%20runs%20on%20Unix%20and%20Linux%20systems. origin=Craig%20Chambers%2C%201992. seealso=CLOS%2C%20Java%2C%20BETA%2C%20C%2B%2B%2C%20Eiffel%2C%20Modula-3%2C%20Objective-C%2C%20Dylan remark=Cecil%20has%20served%20as%20a%20research%20vehicle%0D%0Afor%20object-oriented%20programming%20techniques%0D%0Aand%20for%20compilation%20techniques%20for%0D%0Adynamic%20object-oriented%20languages.%20%20The%0D%0AVortex%20compilation%20system%20handles%20Cecil%2C%0D%0Aa%20subset%20of%20Java%2C%20C%2B%2B%2C%20and%20Modula-3.%20%20It%27s%0D%0Ainteresting%20to%20note%20that%20Vortex%20Version%202%0D%0Ais%20bootstrapped%20-%20the%20compiler%20is%0D%0Awritten%20in%20Cecil.%0D%0A%3Cbr%3E%0D%0ACecil%2FVortex%20is%20a%20research%20vehicle%2C%20it%20is%0D%0Anot%20clear%20whether%20the%20Cecil%20language%20will%20ever%20be%0D%0Awell-suited%20for%20production%20application%0D%0Aprogramming.%0D%0A%3Cbr%3E%0D%0AIt%20is%20also%20interesting%20to%20note%20that%20the%0D%0Aofficial%20documentation%20for%20Cecil%0D%0Adoes%20not%20seem%20to%20include%20a%20single%0D%0Aexample%20program. links1= links2= links3= links4= links5= sample=%3Cpre%3E%0D%0A--%20Adapted%20from%20Cecil%20Project%20v2.0%20distribution%20tests%0D%0A%0D%0Amethod%20copy_file_using_streams%28name1%40%3Astring%2C%20name2%40%3Astring%29%3Avoid%20%7B%0D%0A%20%20%20%20let%20f1%3Aunix_file%20%3A%3D%20open_file%28name1%2C%20open_for_reading%29%3B%0D%0A%20%20%20%20let%20f2%3Aunix_file%20%3A%3D%20open_file%28name2%2C%20create_for_writing%29%3B%0D%0A%20%0D%0A%20%20%20%20%28name1%20%7C%7C%20%22%20is%20%22%20%7C%7C%20if%28f1.is_unreadable%2C%20%7B%22not%20%22%7D%2C%20%7B%22%22%7D%29%20%7C%7C%20%22readable%22%29.%0D%0A%20%20%20%20%20%20%20%20print_line%3B%0D%0A%20%20%20%20%28name2%20%7C%7C%20%22%20is%20%22%20%7C%7C%20if%28f2.is_unreadable%2C%20%7B%22not%20%22%7D%2C%20%7B%22%22%7D%29%20%7C%7C%20%22readable%22%29.%0D%0A%20%20%20%20%20%20%20%20print_line%3B%0D%0A%20%0D%0A%20%20%20%20while%28%7B%20f1.before_end%20%7D%2C%20%7B%20f2.next%20%3A%3D%20f1.next%3B%20%7D%29%3B%0D%0A%20%20%20%20close%28f1%29%3B%0D%0A%20%20%20%20close%28f2%29%3B%0D%0A%7D%0D%0A%20%0D%0Alet%20var%20name1%20%3A%3D%20ask%28%22Name%20of%20input%20file%3A%20%22%29%3B%0D%0Alet%20var%20name2%20%3A%3D%20ask%28%22Name%20of%20output%20file%3A%20%22%29%3B%0D%0A%0D%0Aprint%28%22Copying%20using%20streams...%22%29%3B%0D%0Acopy_file_using_streams%28name1%2C%20name2%29%3B%0D%0Aprint_line%28%22%20done.%22%29%3B%0D%0A _store=1 _add=Cecil _usertab=1 _usersearch=0 _format=full = name=CFML nameURL=http%3A%2F%2Fwww.allaire.com%2Fdeveloper%2FreferenceDesk%2Findex.cfm see= logo=88x36%3Dhttp%3A%2F%2Fwww.allaire.com%2Fimage2%2Fobjects%2Fnews%2FCFPower1.gif type=C%20-%20Command%20or%20Scripting desc=Cold%20Fusion%20Markup%20Language%20is%20a%20web%0D%0Ascripting%20language%20designed%20to%20support%0D%0Adynamic%20page%20creation%20and%20database%20access%0D%0Ain%20a%20web%20server%20environment.%20%20It%20is%0D%0Apart%20of%20the%20commercial%20product%20Cold%20Fusion%0D%0AWeb%20Application%20Server.%0D%0A%3Cbr%3E%0D%0AThe%20syntax%20of%20CFML%20is%20exceptional%20among%20%0D%0Aexecutable%20scripting%20languages%3A%20it%20consists%0D%0Amostly%20of%20HTML-style%20tags%20for%20all%0D%0Astatements%20and%20control%20structures.%0D%0A%3Cbr%3E%0D%0ACFML%20is%20a%20weakly-typed%20language%20that%20supports%0D%0Aonly%20a%20few%20primitive%20types%3A%20integers%2C%0D%0Areal%20numbers%2C%20strings%2C%0D%0Aand%20dates.%20%20Several%20aggregate%20types%20are%0D%0Asupported%3A%20arrays%2C%20lists%2C%20and%0D%0Aassociative%20arrays%20%28also%20called%20structures%29.%0D%0A%3Cbr%3E%0D%0AControl%20structures%20supported%20in%20CFML%0D%0Ainclude%20conditionals%2C%20several%20kinds%20of%0D%0Aloops%2C%20and%20simple%20exception%20handling.%0D%0ALike%20many%20scripting%20languages%2C%20CFML%0D%0Asupports%20dynamic%20interpretation%20of%20string%0D%0Adata%20as%20code.%0D%0ACFML%20does%20not%20offer%20the%20ability%20to%20define%0D%0Asubroutines%2C%20but%20it%20does%20support%20defining%0D%0Acustom%20tags%20which%20can%20serve%20in%20a%20similar%0D%0Acapacity.%0D%0A%3Cbr%3E%0D%0ADocumentation%20about%20CFML%20is%20easy%20to%20obtain%0D%0Aon%20the%20WWW.%0D%0A%3Cbr%3E%0D%0AThe%20only%20implementation%20of%20CFML%20is%20in%0D%0Acommercial%20products%20from%20Allaire. origin=J.J.%20Allaire%2C%201995. seealso=PHP%2C%20VBScript%2C%20MAWL remark=In%20addition%20to%20execution%20state%2C%20the%20CFML%0D%0Aenvironment%20offers%20persistent%20state%0D%0Athrough%20its%20%27application%27%20abstraction.%0D%0A%3Cbr%3E%0D%0AThe%20HTML-style%20tag%20syntax%20of%20CFML%20is%0D%0Asometimes%20inconveniently%20verbose.%20%20To%0D%0Aalleviate%20this%2C%20the%20designers%20of%20CFML%204.0%0D%0Aadded%20a%20mini-language%20named%20%3Ci%3ECFScript%3C%2Fi%3E%0D%0Athat%20offers%20assignment%2C%20simple%20controls%0D%0Astructures%2C%20and%20CFML%20expression%20syntax%0D%0Awithin%20a%20single%20enclosing%20pair%20of%20tags.%0D%0ACFScript%20is%20roughly%20comparable%20to%20some%0D%0Aother%20server-side%20scripting%20languages%20like%0D%0AASP%20and%20server-side%20Javascript.%0D%0A%3Cbr%3E%0D%0AThe%20current%20version%20of%20CFML%2C%20as%20of%20the%0D%0Alate%201999%2C%20is%204.01.%20%20%20In%20addition%20to%0D%0Athe%20basic%20language%2C%20it%20comes%20with%20wide%0D%0Asupport%20for%20database%20systems%20and%20SQL%2C%20common%0D%0Aapplication%20protocols%2C%20regular%20expressions%2C%0D%0Aand%20host%20system%20facilities. links1=Cold%20Fusion%20docs%20download%3Dhttp%3A%2F%2Fwww.allaire.com%2Fhandlers%2Findex.cfm%3FID%3D5989%26Method%3DFull%26Title%3DDownload%2520Allaire%2520Documentation%26Cache%3DFalse links2=Cold%20Fusion%20Adviser%3Dhttp%3A%2F%2Fwww.cfadvisor.com%2Fapi-shl%2Fengine.cfm links3=House%20of%20Fusion%3Dhttp%3A%2F%2Fwww.houseoffusion.com%2F links4= links5= date=Last%20updated%2011%2F20%2F99 sample=A%20simple%20example%20of%20defining%20the%20body%20of%0D%0Aa%20custom%20tag%20%28from%20the%20CFML%204.0%0D%0Adocumentation%29.%0D%0A%3Cp%3E%0D%0A%3Cpre%3E%3Cfont%20size%3D%22-1%22%3E%0D%0A%26lt%3BCFSWITCH%20EXPRESSION%3D%22%23ThisTag.ExecutionMode%23%22%26gt%3B%0D%0A%20%20%20%20%26lt%3BCFCASE%20VALUE%3D%22start%22%26gt%3B%0D%0A%20%20%20%20%20%20%20%26lt%3BCFIF%20StructIsEmpty%28attributes.EMPINFO%29%26gt%3B%0D%0A%20%20%20%20%20%20%20%26lt%3BCFOUTPUT%26gt%3BError.%20No%20employee%20data%20was%20passed.%26lt%3B%2FCFOUTPUT%26gt%3B%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%26lt%3BCFEXIT%20METHOD%3D%22ExitTag%22%26gt%3B%0D%0A%20%20%20%20%20%20%20%26lt%3BCFELSE%26gt%3B%0D%0A%20%20%20%20%20%20%20%26lt%3B%21---%20Add%20the%20employee%20---%26gt%3B%0D%0A%20%20%20%20%20%20%20%26lt%3BCFQUERY%20NAME%3D%22AddEmployee%22%20DATASOURCE%3D%22cfsnippets%22%26gt%3B%0D%0A%20%20%20%20%20%20%20%20%20%20%20INSERT%20INTO%20Employees%0D%0A%20%20%20%20%20%20%20%20%20%20%20%28FirstName%2C%20LastName%2C%20Email%2C%20Phone%2C%20Department%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20VALUES%0D%0A%20%20%20%20%20%20%20%26lt%3BCFOUTPUT%26gt%3B%0D%0A%20%20%20%20%20%20%20%20%28%0D%0A%20%20%20%20%20%20%20%20%20%91%23StructFind%28attributes.EMPINFO%2C%20%22firstname%22%29%23%92%20%2C%0D%0A%20%20%20%20%20%20%20%20%20%91%23StructFind%28attributes.EMPINFO%2C%20%22lastname%22%29%23%92%20%2C%0D%0A%20%20%20%20%20%20%20%20%20%91%23StructFind%28attributes.EMPINFO%2C%20%22email%22%29%23%92%20%2C%0D%0A%20%20%20%20%20%20%20%20%20%91%23StructFind%28attributes.EMPINFO%2C%20%22phone%22%29%23%92%20%2C%0D%0A%20%20%20%20%20%20%20%20%20%91%23StructFind%28attributes.EMPINFO%2C%20%22department%22%29%23%92%0D%0A%20%20%20%20%20%20%20%20%20%29%0D%0A%20%20%20%20%20%20%20%26lt%3B%2FCFOUTPUT%26gt%3B%0D%0A%20%20%20%20%20%20%20%26lt%3B%2FCFQUERY%26gt%3B%0D%0A%20%20%20%20%20%20%20%26lt%3B%2FCFIF%26gt%3B%0D%0A%20%20%20%20%26lt%3BCFOUTPUT%26gt%3B%26lt%3BHR%26gt%3BEmployee%20Add%20Complete%26lt%3B%2FCFOUTPUT%26gt%3B%0D%0A%20%20%20%20%26lt%3B%2FCFCASE%26gt%3B%0D%0A%26lt%3B%2FCFSWITCH%26gt%3B%0D%0A%3C%2Ffont%3E%3C%2Fpre%3E _store=1 _add=CFML _usertab=1 _usersearch=0 _format=full = name=CHILL nameURL=http%3A%2F%2Fwww.itu.ch%2Fitudoc%2Fitu-t%2Frec%2Fz%2Fz200_29906.html see= logo= type=S%20-%20block-structured desc=CHILL%20is%20a%20block-structured%20compiled%20language%2C%0D%0Astandardized%20by%20the%20ITU%2C%20and%20designed%20for%20%0D%0Abuilding%20large%20robust%20software%20systems.%0D%0AIt%20is%20used%20mostly%20in%20the%0D%0Atelecommunication%20area.%0D%0A%3Cbr%3E%0D%0AIntended%20for%20supporting%20large%20software%0D%0Adevelopment%20efforts%2C%20CHILL%20is%20a%20fairly%0D%0Alarge%20and%20complicated%20language.%20%20Its%20data%0D%0Atype%20system%20is%20derived%20from%20that%20of%20Algol68%3B%0D%0ACHILL%20offers%20various%20numeric%20types%2C%20%0D%0Aarray%20and%20other%20composite%20types%2C%20references%2C%0D%0Aand%20various%20function%2C%20I%2FO%2C%20and%20process%0D%0Asynchronization%20data%20types.%20%20The%20language%0D%0Ais%20strongly%20typed%3A%20all%20data%20objects%20and%0D%0Aexpressions%20are%20typed%20and%20type%20checking%20is%0D%0Aenforced.%20%20CHILL%20supports%20a%20full%20set%20of%0D%0Asequential%20control-flow%20operators%3A%0D%0Aconditional%2C%20iteration%2C%20and%20goto.%0D%0AStrangely%2C%20early%20versions%20of%20CHILL%20did%20not%0D%0Asupport%20real%20numbers%2C%20only%20integers.%0D%0AIt%20also%20provides%20full%20multi-programming%20%0D%0Aand%20multi-processing%20support%2C%20as%20well%20as%0D%0AI%2FO%20and%20timing%20features.%0D%0A%3Cbr%3E%0D%0AThe%20syntax%20of%20CHILL%20is%20similar%20to%20related%0D%0Ablock-structured%20languages%20like%20Pascal%20and%0D%0AAlgol.%20%20It%20has%20a%20large%20set%20of%20reserved%0D%0Awords.%0D%0A%3Cbr%3E%0D%0ACHILL%20supports%20features%20for%20building%20complex%2C%0D%0Areliable%20software%0D%0Asystems%3A%20concurrency%2C%20exception%20handling%2C%0D%0Aand%20real-time%20response%20guarantees.%0D%0A%3Cbr%3E%0D%0ASeveral%20commercial%20CHILL%20programming%20%0D%0Asystems%20exist%2C%20but%20the%20only%20free%0D%0Aimplementation%20seems%20to%20be%20GCC.%20%20%0D%0ASome%20information%20about%20CHILL%0D%0Ais%20available%20on%20the%20web%2C%20but%20the%20actual%0D%0Alanguage%20standard%20must%20be%20purchased%20from%0D%0AITU%20or%20ISO. origin=CCITT%2C%201976. seealso=Pascal%2C%20Algol68%2C%20Ada remark=CHILL%20stands%20for%20CCITT%20HIgh%20Level%20Language%3B%0D%0Athe%20language%20was%20defined%20by%20a%20committee%20of%0D%0Atelecommunication%20company%20representatives%0D%0Ain%201972-75.%20%20The%201993%20CHILL%20standard%20is%0D%0AITU-T%20Recommendation%20Z.200.%0D%0A%3Cbr%3E%0D%0AIn%20the%20mid-1990s%2C%20object-oriented%20features%0D%0Awere%20added%20to%20CHILL.%20%20The%20resulting%20extended%0D%0Alanguage%20is%20sometimes%20called%20CHILL%2796. links1=The%20International%20CHILL%20Homepage%3Dhttp%3A%2F%2Fwww1.informatik.uni-jena.de%2Flanguages%2Fchill%2Fchill.htm links2=GCC%202.9x%20supports%20CHILL%3Dhttp%3A%2F%2Fgcc.gnu.org%2F links3= links4= links5= date=Last%20updated%202%2F22%2F01 sample=%3Cpre%3E%0D%0A--%20still%20looking%20for%20a%20good%20code%20example%0D%0A%3C%2Fpre%3E _store=1 _add=Cedar _usertab=1 _usersearch=0 _format=full = name=Cilk nameURL=http%3A%2F%2Fsupertech.lcs.mit.edu%2Fcilk%2F see=C logo=150x103%3Dhttp%3A%2F%2Fsupertech.lcs.mit.edu%2Fcilk%2Fimg%2Fcilklogo.gif type=P%20-%20Parallel%20or%20Dataflow desc=Cilk%20is%20a%20dialect%20of%20C%20extended%20with%0D%0Afine-grain%20parallelism.%20%20It%20was%20developed%0D%0Aat%20M.I.T.%20as%20series%20of%20research%20projects%0D%0Astudying%20parallelism%20and%20parallelizing%0D%0Acompilers.%0D%0A%3Cbr%3E%0D%0AAll%20the%20fundamental%20data%20types%20and%20program%0D%0Astructures%20supported%20by%20C%20are%20also%20available%0D%0Ain%20Cilk.%20%20However%2C%20Cilk%20adds%20several%20new%0D%0Akeywords%20to%20C%20to%20support%20dynamic%2C%0D%0Aasynchronous%20multi-threading.%0D%0AThe%20main%20facilities%20that%20Cilk%20adds%20to%20C%0D%0Aare%20the%20ability%20to%20spawn%20function%20calls%0D%0Ain%20parallel%2C%20and%20the%20ability%20to%20synchronize%0D%0Athe%20parallel%20calls.%20%20%0D%0A%3Cbr%3E%0D%0ACilk%20is%20available%20free%20in%20source%20form%20from%0D%0Athe%20Cilk%20Project%20web%20site.%20%20It%20runs%20on%0D%0Amulti-processor%20Unix%20and%20Linux%20systems%2C%20and%0D%0Ahas%20also%20been%20ported%20to%20Windows%20NT. origin=Joerg%2C%20Leiserson%2C%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%20MIT%2C%201995 seealso=C%2C%20C%2A%2C%20CSP%2C%20Java%2C%20SISAL remark=The%20current%20Cilk%20system%20is%20implemented%0D%0Aas%20a%20Cilk-to-C%20translator%2C%20supported%20by%20a%0D%0Amachine-dependent%20multi-threaded%20runtime%0D%0Aand%20scheduler.%20%20Note%20that%20Cilk%20was%0D%0Adesigned%20for%20shared-memory%20multi-processors%2C%0D%0Anot%20loosely-coupled%20distributed%20systems.%0D%0A%3Cbr%3E%0D%0AWhile%20Cilk%20was%20developed%20in%20academia%2C%0D%0Ait%20is%20robust%20enough%20for%20developing%20sizable%0D%0Asystems.%20%20Cilk%20programs%20have%20won%20or%20placed%0D%0Ain%20several%20programming%20competitions.%0D%0A links1=Papers%20and%20Documents%20on%20Cilk%3Dhttp%3A%2F%2Fsupertech.lcs.mit.edu%2Fcilk%2Fpapers%2F links2=DARPA%20project%20description%3Dhttp%3A%2F%2Fwww.darpa.mil%2Fito%2Fpsum1997%2FF193-0.html links3=Cilk%20for%20Windows%20NT%3Dhttp%3A%2F%2Feecs.yale.edu%2F%7Estrumpen%2Fcilk%2Fcilk-nt.html links4= links5= date=Last%20updated%2011%2F7%2F99 sample=A%20Fibonacci%20%0D%0Aexample%20from%20the%20Cilk%205.2%20reference%20%0D%0Amanual.%0D%0A%3Cp%3E%0D%0A%3Cfont%20size%3D%22-1%22%3E%3Cpre%3E%0D%0A%23include%20%26lt%3Bcilk.h%26gt%3B%0D%0A%23include%20%26lt%3Bstdlib.h%26gt%3B%0D%0A%23include%20%26lt%3Bstdio.h%26gt%3B%0D%0A%0D%0Acilk%20int%20fib%28int%20n%29%0D%0A%7B%0D%0A%20%20if%20%28n%20%3C%202%29%0D%0A%20%20%20%20return%20%28n%29%3B%0D%0A%20%20else%20%7B%0D%0A%20%20%20%20int%20x%2C%20y%3B%0D%0A%20%20%20%20x%20%3D%20spawn%20fib%28n%20-%201%29%3B%0D%0A%20%20%20%20y%20%3D%20spawn%20fib%28n%20-%202%29%3B%0D%0A%20%20%20%20sync%3B%0D%0A%20%20%20%20return%20%28x%20%20%20y%29%3B%0D%0A%20%20%7D%0D%0A%7D%0D%0A%0D%0Acilk%20int%20main%28int%20argc%2C%20char%20%2Aargv%5B%5D%29%0D%0A%7B%0D%0A%20%20int%20n%2C%20result%3B%0D%0A%0D%0A%20%20n%3Datoi%28argv%5B1%5D%29%3B%0D%0A%20%20result%3Dspawn%20fib%28n%29%3B%0D%0A%20%20sync%3B%0D%0A%20%20printf%28%22Result%3A%20%25d%5Cn%22%2C%20result%29%3B%0D%0A%20%20return%200%3B%0D%0A%7D%0D%0A%3C%2Fpre%3E%3C%2Ffont%3E%0D%0A _store=1 _add=Cilk _usertab=1 _usersearch=0 _format=full = name=CLAIRE nameURL=http%3A%2F%2Fwww.claire-language.com%2F see= logo=150x50%3Dhttp%3A%2F%2Fwww.claire-language.com%2Fclforum%2Fimages%2Fheader.jpg type=O%20-%20Object-oriented desc=Claire%20is%20an%20object-oriented%20language%20with%0D%0Apowerful%20functional%20and%0D%0Alogic%20rule%20programming%20features%2C%20intended%0D%0Afor%20language%20research%20and%20specialized%0D%0Aapplication%20programming.%0D%0A%3Cbr%3E%0D%0AAs%20an%20object-oriented%20language%2C%20Claire%0D%0Adoes%20support%20definition%20of%20classes%20and%0D%0Asimple%20%28single%29%20inheritance.%20%20The%20class%0D%0Asystem%20is%20just%20a%20part%20of%20the%20complex%20%0D%0Atype%20system%20that%20Claire%20supports%2C%20and%20%0D%0Awhich%20programmers%20can%20use%20to%20set%20up%20%0D%0Acomplex%20rules%20and%20conditions%20on%20subroutines.%0D%0AThe%20syntax%20of%20Claire%20is%20terse%2C%20it%20makes%0D%0Aheavy%20use%20of%20%0D%0Apunctuation%20and%20grouping%20characters%2C%0D%0Alike%20%7B%7D%20%20and%20%3A%26gt%3B%2C%20as%20well%20as%20a%20set%20of%0D%0Areserved%20words%20similar%20to%20that%20of%20C.%20%0D%0AThe%20syntax%20is%20also%20very%20sensitive%20to%0D%0Acorrect%20use%20of%20white%20space.%0D%0A%3Cbr%3E%0D%0AThe%20primitive%20data%0D%0Atypes%20in%20Claire%20include%20various%20numeric%0D%0Atypes%20and%20strings%2C%20as%20well%20as%20program%20types%0D%0Alike%20classes%20and%20rules.%20%20Aggregate%20data%20%0D%0Atypes%20built%20into%20the%20language%20are%20lists%2C%0D%0Asets%2C%20and%20generalized%20%28associative%29%20arrays.%0D%0A%3Cbr%3E%0D%0AClaire%20supports%20the%20usual%20sequential%0D%0Acontrol%20constructs%20like%20conditionals%20and%0D%0Aloops%2C%20plus%0D%0A%20exception%20handling.%0D%0AThe%20language%20also%20supports%20implicit%20control%0D%0Aflow%20in%20the%20form%20of%20searching%20of%20rules%0D%0A%28like%20Prolog%29.%0D%0APrograms%20are%20composed%20of%20modules%2C%20which%0D%0Adefine%20separate%20name%20spaces.%20%20Modules%20can%0D%0Abe%20defined%20statically%20or%20created%20dynamically.%0D%0A%3Cbr%3E%0D%0AClaire%20has%20simple%20I%2FO%20facilities%20for%0D%0Areading%20and%20writing%20data.%20%20It%20does%20not%0D%0Ahave%20any%20support%20for%20multi-threading%20or%0D%0Aextensive%20operating%20system%20interactions%0D%0A%28which%20probably%20helps%20it%20stay%20portable%29.%0D%0A%3Cbr%3E%0D%0AThe%20current%20version%20of%20Claire%2C%20as%20of%20early%0D%0A2003%2C%20was%203.2%2C%20with%203.3%20just%20released.%20%0D%0AThe%20Claire%20implementation%0D%0Ais%20written%20in%20C%2B%2B%20and%20Claire%2C%20and%20runs%20on%0D%0AUnix%2C%20PCs%2C%20and%20Macintosh.%0D%0A%3Cbr%3E%0D%0AThe%20Claire%20compiler%2C%20interpreter%2C%20and%20tools%0D%0Aare%20available%20for%20free%20download%20in%20source%0D%0Aform.%20%20Documentation%20is%20also%20available%2C%0D%0Aalong%20with%20scholarly%20papers%20about%20applications%0D%0Aof%20the%20language.%20%20 origin=F.%20Laburthe%2C%20Y.%20Caseau%2C%20ENS%20Paris%2C%201995. seealso=Leda%2C%20LIFE%2C%20Prolog%2C%20ML%2C%20Modula-3%2C%20Self remark=The%20CLAIRE%20programming%20language%20was%20%0D%0Adeveloped%20at%20the%20Ecole%20Normale%20Superieure%0D%0Ain%20France%2C%20as%20a%20followup%20to%20a%20more%20complex%0D%0Aprogramming%20system%20named%20LAURE.%20%20The%20name%0D%0Astands%20for%20Combining%20Logic%2C%20Assertions%2C%0D%0AInheritance%2C%20Relations%2C%20and%20Entities.%0D%0A%3Cbr%3E%0D%0ACurrent%20application%20areas%20for%20Claire%0D%0Aseem%20to%20be%20combinatorial%20optimization%20and%0D%0Ascheduling.%0D%0A%3Cbr%3E%0D%0AThe%20language%20itself%20does%20not%20define%20GUI%0D%0Afacilities%2C%20but%20the%20current%20Claire%0D%0Aimplementation%20does%20support%20a%20Tcl%2FTk%0D%0Ainterface%20library.%0D%0A links1=CLAIRE%20papers%20and%20documentation%3Dhttp%3A%2F%2Fwww.ens.fr%2F%7Elaburthe%2Fpapers.html%23clairewhitepapers links2=Download%20area%20for%20CLAIRE%20and%20documentation%3Dftp%3A%2F%2Fftp.ens.fr%2Fpub%2Fdmi%2Fusers%2Flaburthe%2F links3=Commercial%20CLAIRE%3Dhttp%3A%2F%2Fwww.expert-solutions.fr links4= links5= date=Last%20updated%201%2F10%2F03 sample=%3Cpre%3E%0D%0A%2F%2F%20Very%20simple%20Fibonnacci%20example%20adapted%20from%20v2.1%0D%0A%2F%2F%20%22Introduction%20to%20the%20CLAIRE%20Programming%20Language%22%0D%0A%0D%0Abegin%28fib_module%29%0D%0Afib%5Bn%3A%280..10%29%5D%20%3A%20integer%20%3A%3D%20%28if%20%28n%20%26lt%3B%202%29%201%20else%20fib%5Bn%20-%201%5D%20%20%20fib%5Bn%20-%202%5D%29%0D%0A%0D%0Atest%28%29%20-%3E%20%28for%20i%20in%20%280%20..%2010%29%20printf%28%22fib%28%7ES%29%20%3D%20%7ES%5Cn%22%2Ci%2Cfib%5Bi%5D%29%0D%0A%0D%0Aend%28fib_module%29%0D%0A%0D%0A%3C%2Fpre%3E _store=1 _add=Claire _usertab=1 _usersearch=0 _format=full = name=Clean nameURL= see=Concurrent%20Clean logo= type=F%20-%20Functional%20or%20lambda-based desc=Clean%20was%20the%20name%20for%20an%20early%0D%0Aform%20of%0D%0AConcurrent%20Clean%2C%20a%20pure%20functional%0D%0Alanguage%20designed%20at%20the%20University%0D%0Aof%20Nijmegen.%20%20Click%20on%20the%20link%20above%20to%0D%0Aview%20the%20entry%20for%20Concurrent%26nbsp%3BClean. origin= seealso= remark= links1= links2= links3= links4= links5= date=Last%20updated%201%2F2%2F98 sample= _store=1 _add=Clean _usertab=1 _usersearch=0 _format=full = name=CLU nameURL= see=Algol logo= type=S%20-%20block-structured desc=CLU%20is%20a%20compiled%20imperative%20language%0D%0Awith%20extensive%20features%20for%20defining%20and%0D%0Aemploying%20abstract%20data%20types.%20It%20was%0D%0Aintended%20for%20general%20application%20development%2C%0D%0Aand%20also%20as%20a%20research%20vehicle%20in%20computer%0D%0Alanguage%20design.%0D%0A%3Cbr%3E%0D%0AAs%20was%20a%20descendant%20of%20Algol%2C%20CLU%0D%0Aoffered%20syntax%20that%20was%20similar%20to%20Algol60%0D%0Ain%20many%20respects%2C%20but%20it%20added%0D%0Adata%20type%20abstraction%2C%20exception%20handling%2C%0D%0Aand%20other%20advanced%20features.%0D%0AThe%20name%20%22CLU%22%20is%20short%20for%20%22CLUster%22%2C%0D%0Athis%20was%20chosen%20because%20a%20CLU%20program%0D%0Anormally%0D%0Aconsists%20of%20procedures%2C%20clusters%2C%20and%0D%0Ainterators.%20%20%0D%0A%3Cbr%3E%0D%0ACLU%20supported%20a%20number%20of%20advanced%0D%0Afeatures%20for%20structured%20languages%20for%20its%20day%2C%20%0D%0Aincluding%20garbage%20collection%2C%20a%20form%20of%0D%0Ainheritance%2C%20iterators%2C%20%20%0D%0Astrong%20typing%2C%20generics%2C%20and%20exception%0D%0Ahandling.%0D%0A%3Cbr%3E%0D%0AThe%20research%20operating%20system%20SWIFT%0D%0Awas%20written%20in%20CLU%2C%20as%20were%20other%20tools%0D%0Aand%20utilities.%0D%0A%3Cbr%3E%0D%0AA%20free%20CLU%20compiler%20named%20%27PCLU%27%20is%20%0D%0Aavailable%20from%20MIT.%20%20There%20is%20also%20a%0D%0ACLU-%3EC%20translator%20named%20clu2c%20available%0D%0Afrom%20Tokyo%20Tech.%20%20Some%20information%20about%0D%0ACLU%20is%20available%20on%20the%20web%2C%20but%20not%20much. origin=B.%20Liskov%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%201974-77. seealso=Pascal%2C%20Ada%2C%20Modula-2%2C%20Lisp%2C%20Simula%2C%20C%2B%2B remark=CLU%20was%20mostly%20a%20research%20vehicle%20for%0D%0Aexperimenting%20with%20data%20abstraction%0D%0Aand%20other%20language%20design%20issues.%0D%0ASome%20of%20its%20ideas%2C%20especially%20in%20the%0D%0Aarea%20of%20exception%20handling%2C%20%0D%0Ahave%20been%20adopted%20in%0D%0Anewer%20languages%20like%20Ada%20and%20Java.%0D%0A%3Cbr%3E%0D%0AThe%20ideas%20for%20CLU%20were%20derived%20from%20a%0D%0Aprogramming%20methodology%2C%20also%20defined%20by%0D%0ABarbara%20Liskov%20and%20her%20colleagues%2C%20that%0D%0Aemphasized%20abstract%20data%20types%20and%0D%0Amodularity.%20%20%0D%0A%3Cbr%3E%0D%0AWhile%20CLU%20is%20syntactically%20similar%20to%20Algol%2C%0D%0Aits%20data%20storage%20semantics%20are%20more%20like%0D%0Athose%20of%20mainstream%20Lisp%20%28and%2C%20much%20later%2C%0D%0AJava%29.%20%20All%20objects%20in%20a%20CLU%20program%20live%0D%0Ain%20the%20heap%2C%20and%20memory%20management%20is%0D%0Aautomatic.%20%20This%20sort%20of%20a%20approach%20does%0D%0Aeliminate%20much%20of%20the%20semantic%20complexity%0D%0Aassociated%20with%20multiple%20forms%20of%20%0D%0Aprogrammer-managed%20object%20storage%20observed%0D%0Ain%20C%2B%2B. links1=ftp%3A%2F%2Fftp.lcs.mit.edu%2Fpub%2Fpclu%2F links2= links3= links4= links5= date=Last%20updated%202%2F28%2F98 sample=%3Cpre%3E%0D%0A%25%20Driver%20and%20function%20to%20compute%20factorials%0D%0A%25%20from%20the%20PCLU%20distribution.%0D%0A%20start_up%20%3D%20proc%20%28%29%0D%0A%20%20%20%20pi%3A%20stream%20%3A%3D%20stream%24primary_input%28%29%0D%0A%20%20%20%20po%3A%20stream%20%3A%3D%20stream%24primary_output%28%29%0D%0A%20%20%20%20while%20true%20do%0D%0A%20%20%20%20%20%20%20%20stream%24puts%28po%2C%20%22Enter%20an%20integer%20%28or%20RETURN%20to%20exit%29%3A%20%22%29%0D%0A%20%20%20%20%20%20%20%20s%3A%20string%20%3A%3D%20stream%24getl%28pi%29%0D%0A%20%20%20%20%20%20%20%20if%20string%24empty%28s%29%20then%20break%20end%0D%0A%20%20%20%20%20%20%20%20n%3A%20int%20%3A%3D%20int%24parse%28s%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20except%20when%20bad_format%3A%20%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20stream%24putl%28po%2C%20%22Illegal%20integer%22%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20end%0D%0A%20%20%20%20%20%20%20%20stream%24putl%28po%2C%20int%24unparse%28n%29%20%7C%7C%20%22%21%20%3D%20%22%20%7C%7C%20int%24unparse%28factorial%28n%29%29%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20except%20when%20negative%3A%20%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20stream%24putl%28po%2C%20%22Integer%20must%20be%20positive%22%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20when%20overflow%3A%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20stream%24putl%28po%2C%20%22Overflow%22%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20end%0D%0A%20%20%20%20%20%20%20%20end%0D%0A%20%20%20%20end%20start_up%0D%0A%20%0D%0Afactorial%20%3D%20proc%20%28n%3A%20int%29%20returns%20%28int%29%20signals%20%28negative%2C%20overflow%29%0D%0A%20%20%20%20if%20n%20%3C%200%20then%20signal%20negative%20end%0D%0A%20%20%20%20if%20n%20%3D%200%20then%20return%281%29%20end%0D%0A%20%20%20%20return%28n%2Afactorial%28n-1%29%29%0D%0A%20%20%20%20%20%20%20resignal%20overflow%0D%0A%20%20%20%20end%20factorial%0D%0A%3C%2Fpre%3E%0D%0A _store=1 _add=CLU _usertab=1 _usersearch=0 _format=full = name=CMS-2 nameURL= see= logo= type=S%20-%20block-structured desc=CMS-2%20is%20a%20general-purpose%20programming%0D%0Alanguage%20used%20almost%20exclusively%20for%20%0D%0Areal-time%20and%20embedded%20applications%20for%0D%0Athe%20US%20Navy.%0D%0A%3Cbr%3E%0D%0AA%20CMS-2%20module%20consists%20of%20two%20sections%3A%0D%0Aa%20global%0D%0Adeclarations%20%22SYS-DD%22%20block%20and%20a%0D%0Acode%20%22SYS-PROC%22%20block.%0D%0ABoth%20global%20and%20local%20data%2C%20as%20well%20as%0D%0Aprocedures%2C%20can%20appear%20in%20the%20SYS-PROC%20block.%0D%0ADepending%20on%20the%20compiler%2C%20there%20are%0D%0Avarious%20facilities%20for%20source%20code%20inclusion%0D%0Aand%20cross-module%20linking.%0D%0A%3Cbr%3E%0D%0AData%20types%20in%20CMS-2%20include%3A%20integer%2C%0D%0Afixed-point%20and%20floating-point%20numbers%2C%20%0D%0Afixed-length%20strings%2C%20and%20enumerations.%0D%0AIdentifiers%20are%20strongly%20typed%2C%20but%20unlike%0D%0APascal%20and%20Ada%20most%20versions%20of%20CMS-2%0D%0Ahad%20facility%20for%20type%20declaration.%0D%0AThe%20only%20aggregate%20data%20type%20in%20CMS-2%20is%0D%0Athe%20array.%0D%0A%3Cbr%3E%0D%0ACMS-2%20has%20a%20conventional%20complement%20of%0D%0Aimperative%20control-flow%20statements%2C%20but%0D%0Awith%20peculiar%20syntax.%20%20Loop%20statements%0D%0Aoffer%20special%20exit%2Fresume%20facilities%3B%0D%0Ait%20is%20even%20possible%20to%20resume%20a%20loop%0D%0Aafter%20having%20exited%20it%21%20%20CMS-2%20also%20%0D%0Aoffers%20several%20kinds%20of%20index%20jump%20table%0D%0Astatements%20%28like%20Fortran%27s%20computed%20GOTO%0D%0Abut%20more%20complicated%29.%20%20%0D%0A%3Cbr%3E%0D%0AOver%20a%20dozen%20implementations%20of%20CMS-2%0D%0Awere%20created%20in%20the%201970s%20and%201980s%20for%0D%0Avarious%20US%20Navy%20system%20architectures.%0D%0AA%20few%20are%20still%20available%20for%20sale%20today%0D%0Athrough%20the%20Navy%20NUWC.%0D%0AThere%20do%20not%20appear%20to%20be%20a%20free%20compiler. origin=Rand%20Corporation%2C%20US%20Navy%2C%201974%3F seealso=Ada%2C%20Jovial%2C%20Fortran remark=At%20the%20time%20of%20a%20major%20survey%20in%201995%2C%20it%20was%0D%0Afound%20that%20over%2014M%20SLoC%20of%20CMS-2%20had%20been%0D%0Awritten%20for%20US%20military%20systems.%20%20%28This%20is%0D%0Acompared%20to%2032.5M%20SLoC%20for%20C%20and%2043M%20for%20Ada%29.%0D%0A%3Cbr%3E%0D%0AOver%20it%27s%20useful%20life%20from%20about%201976%20to%0D%0A1986%2C%20there%20were%20several%20dialects%20and%0D%0Avariants%20of%20CMS-2.%0D%0AMostly%2C%20they%20were%20divided%20by%20the%20processor%0D%0Aword%20size%20of%20the%20target%20military%20CPU%3A%20%0D%0ACMS-2%2FY%20and%20CMS-2%2FM%20were%20for%2016-bit%20machines%2C%0D%0Aand%20CMS-2%2FL%20for%2032-bit.%0D%0A%3Cbr%3E%0D%0ACMS-2%20was%20notorious%20for%20being%20difficult%20to%0D%0Aparse%20correctly%2C%20and%20for%20offering%20programmers%0D%0Anumerous%20ways%20to%20write%20incorrect%20or%20confusing%0D%0Acode.%20%20For%20example%2C%20aliasing%20of%20data%20values%0D%0Acould%20be%20specified%20at%20the%20word%2C%20array%2C%20or%0D%0Abit%20levels.%0D%0A%3Cbr%3E%0D%0AThe%20MTASS%2FM%20and%20MTASS%2FI%20code%20development%0D%0Aenvironments%20were%20developed%20for%20CMS-2.%0D%0A%3Cbr%3E%0D%0AToday%2C%20documentation%20and%20reverse-engineering%0D%0Atools%20for%20CMS-2%20are%20still%20available%2C%20mostly%0D%0Ain%20support%20of%20the%20US%20Navy%27s%20Y2K%20code%0D%0Aconversion%20efforts.%20%20No%20documentation%20on%0D%0Athe%20language%20seems%20to%20be%20available%20on%20the%0D%0AWWW%2C%20although%20it%20can%20be%20found%20for%20sale.%0D%0A links1=NSS%2FSECR%20Product%20Info%20page%3Dhttp%3A%2F%2Fsun35.npt.nuwc.navy.mil%2Fnss_secr%2Fhomepage%2Findex.html links2=CMS-2%20to%20Ada%20translation%3Dhttp%3A%2F%2Fsparc4.xinotech.com%2Fcms-2-to-ada.html links3= links4= links5= date=Last%20updated%2010%2F19%2F98 sample=%3Cpre%3E%0D%0AInsufficient%20documentation%20for%20producing%0D%0Aa%20reasonable%20example.%0D%0A%3C%2Fpre%3E _store=1 _add=CMS-2 _usertab=1 _usersearch=0 _format=full = name=COBOL nameURL=http%3A%2F%2Fwww.cobol.org%2F see= logo= type=S%20-%20block-structured desc=COBOL%2C%20the%20COmmon%20Business-Oriented%20Language%2C%0D%0Ahas%20been%20in%20continuous%20widespread%20use%20since%0D%0Athe%20early%201960s.%20The%20name%20says%20it%20all%3B%20this%0D%0Alanguage%20was%20designed%20to%20meet%20the%20needs%0D%0Aof%20banks%2C%20manufacturers%2C%20bureaucracies%2C%20and%0D%0Aother%20big%20organizations%20with%20data%20handling%0D%0Aand%20report%20generation%20requirements.%20%20Its%0D%0Averbose%20quasi-english%20syntax%2C%20and%20formidable%0D%0Aoutput%20formatting%20capabilities%20make%0D%0ACOBOL%20unique%2C%20and%20well-suited%20to%20its%0D%0Aniche.%0D%0A%3Cbr%3E%0D%0AA%20COBOL%20program%20normally%20consists%20of%20four%0D%0A%3Ci%3Edivisions%3C%2Fi%3E%3A%20identification%2C%20environment%2C%0D%0Adata%2C%20and%20procedure.%20%20COBOL%27s%20environment%20division%0D%0Ais%20an%20attempt%20to%20make%20programs%20more%20portable%0D%0Aby%20forcing%20the%20programmer%20to%20enumerate%20all%0D%0Ain%20one%20place%20the%0D%0Aresources%20and%20facilities%20that%20the%20program%0D%0Awould%20require.%20%20Traditional%20%0D%0ACOBOL%27s%20feature%20set%0D%0Ais%20idiosyncratic%3A%20only%20static%0D%0Adata%20structures%20are%20supported%2C%20%0D%0Anumeric%20variables%20can%20be%20binary%20or%0D%0Adecimal%2C%20with%20extensive%20support%20for%0D%0Arange%20checking%20and%20output%20formatting%2C%0D%0Aextensive%20string%20manipulation%20support%2C%0D%0Aand%20simple%20flow-control%20constructs.%0D%0ARecord%20structures%20and%20arrays%20are%20the%0D%0Aprimary%20means%20for%20organizing%20data%2C%20%0D%0Abut%20no%20pointers%20or%20references%20are%20%0D%0Aavailable.%20%20The%20language%20is%20very%0D%0Aoften%20employed%20along%20with%20a%20database%2C%0D%0Aand%20most%20implementations%20include%0D%0Aextensive%20database%20support.%20%20COBOL%27s%0D%0Asupport%20for%20complicated%20calculations%0D%0Ais%20modest%2C%20and%20some%20implementation%20don%27t%0D%0Aeven%20support%20recursion.%0D%0A%3Cbr%3E%0D%0ACOBOL%20was%20first%20defined%20in%201960%2C%20really%0D%0Astandardized%20by%20ANSI%20in%201974%2C%20and%0D%0Athe%20standard%20was%20revised%20in%201985.%20%20The%0D%0Acurrent%20standard%20is%20ISO%2FANSI%20%2785%2C%20but%0D%0Aa%20new%20standard%20is%20in%20review%20and%0D%0Ashould%20be%20issued%20in%201998.%20%20The%20new%0D%0Astandard%20will%20have%20various%20OOP%20features%0D%0Aand%20more%20comprehensive%20computational%0D%0Afeatures.%20%20The%20intent%20is%20to%20modernize%0D%0ACOBOL%20while%20preserving%20the%20extensive%0D%0Aworldwide%20investment%20in%20COBOL%20software.%0D%0A%3Cbr%3E%0D%0ASeveral%20high-quality%2C%20mature%20commercial%0D%0ACOBOL%20compilers%20are%20available%2C%20mostly%0D%0Afor%20mainframe%20and%20Unix%20platforms.%20%20DOS%0D%0Aand%20Windows%20COBOL%20compilers%20also%20exist%2C%20but%0D%0Athere%20do%20not%20seem%20to%20be%20any%20free%20or%0D%0Ashareware%20compilers%20%28not%20surprising%0D%0Agiven%20the%20ANSI%20standard%27s%20size%20and%20%0D%0Acomplexity%29. origin=US%20DOD%20GPO%2C%201960%3B%20CODASYL%20Committee%2C%201960. seealso=PL%2F1 remark=To%20a%20computer%20scientist%20trained%20with%0D%0Alanguages%20like%20Pascal%2C%20Scheme%2C%20Fortran%2C%0D%0Aand%20C%2C%20a%20COBOL%20program%20seems%20remarkably%0D%0Abloated%20and%20ineffectual.%20%20%0D%0AIt%20has%20been%20stated%20that%20there%20is%20more%0D%0ACOBOL%20code%20on%20our%20planet%20than%20any%20other%0D%0Asingle%20language%2C%20and%20COBOL%20programming%0D%0Ais%20still%20taught%20in%20business%20schools%0D%0Aworldwide.%0D%0A%3Cbr%3E%0D%0AAdm.%20Grace%20Hopper%20is%20regarded%20as%20the%20primary%20progenitor%0D%0Aof%20COBOL%3B%20her%20pioneering%20work%20on%20business-oriented%0D%0Acomputer%20languages%20in%20the%201950s%20%28including%20FLOW-MATIC%29%20was%0D%0Ainstrumental%20in%20the%20definition%20of%20COBOL%20in%201959-60.%0D%0A%3Cbr%3E%0D%0ABusinesses%27%20huge%20investment%20in%20COBOL%20through%0D%0Athe%201970s%2C%2080s%2C%20and%20early%2090s%20has%20become%20a%0D%0Ahuge%20potential%20problem%20with%20the%20approach%20of%0D%0Athe%20year%202000.%20%20COBOL%27s%20facilities%20for%20numeric%0D%0Adata%20storage%2C%20input%2C%20and%20output%20are%20heavily%0D%0Aoriented%20toward%20%27pictures%27%2C%20templates%20of%20the%0D%0Apresentation%20format%20of%20a%20number.%20%20Much%20of%20the%0D%0ACOBOL%20software%20written%20prior%20to%20about%201990%20used%0D%0Atwo%20decimal%20digits%20to%20represent%20the%20year%20in%20any%0D%0Adate.%20%20This%20creates%20a%20potentially%20catastropic%0D%0Aambiguity%20in%202000.%20%20COBOL%20programming%0D%0Aexpertise%20is%20in%20great%20demand%20as%20companies%0D%0Ascramble%20to%20assess%20and%20correct%20their%20legacy%0D%0Asystems. links1=COBOL%20Home%20Page%3Dhttp%3A%2F%2Fwww.yi.com%2Fhome%2FHegartyJohn%2Fcobol%2Findex.html links2=ILS%27s%20COBOL%20Gold%20Mine%3Dhttp%3A%2F%2Fwww.ils-international.com%2Fgoldmine%2Fcgmhome.htm links3=Flexus%20COBOL%20Page%3Dhttp%3A%2F%2Fwww.enter.net%2F%7Eflexus%2F links4=COBOL%20FAQ%3Dhttp%3A%2F%2Fwww.lib.ox.ac.uk%2Finternet%2Fnews%2Ffaq%2Farchive%2Fcobol-faq.html links5=COBOL%20Standards%20WG%3Dhttp%3A%2F%2Fosiris.dkuug.dk%2Fjtc1%2Fsc22%2Fwg4%2F date=Last%20updated%2012%2F1%2F97 sample=%3Cpre%3E%0D%0AIDENTIFICATION%20DIVISION%0D%0APROGRAM-ID.%20SUM-OF-PRICES.%0D%0AAUTHOR.%20TERENCE-PRATT.%0D%0ASOURCE.%20PROGRAMMING-LANGUAGES-2ND-EDITION-1984%0D%0AENVIRONMENT%20DIVISION.%0D%0AINPUT-OUTPUT%20SECTION.%0D%0AFILE-CONTROL.%0D%0A%20%20%20SELECT%20INP-DATA%20ASSIGN%20TO%20INPUT.%0D%0A%20%20%20SELECT%20RESULT-FILE%20ASSIGN%20TO%20OUTPUT.%0D%0ADATA%20DIVISION.%0D%0AFILE%20SECTION.%0D%0AFD%20INP-DATA%20LABEL%20RECORD%20IS%20OMITTED.%0D%0A01%20ITEM-PRICE%0D%0A%20%20%2002%20ITEM%20PICTURE%20X%2830%29.%0D%0A%20%20%2002%20PRICE%20PICTURE%209999V99.%0D%0A%20%20%2002%20FILLER%20PICTURE%20X%2844%29.%0D%0AFD%20RESULT-FILE%20LABEL%20RECORD%20IS%20OMITTED.%0D%0A01%20RESULT-LINE%20PICTURE%20X%28132%29.%0D%0AWORKING-STORAGE%20SECTION.%0D%0A77%20TOT%20PICTURE%20999999V99%2C%20VALUE%200%2C%20USAGE%20IS%20COMPUTATIONAL.%0D%0A77%20COUNT%20PCITURE%209999%2C%20VALUE%200%2C%20USAGE%20IS%20COMPUTATIONAL.%0D%0A01%20SUM-LINE.%0D%0A%20%20%2002%20FILLER%20VALUE%20%27%20SUM%20%3D%27PICTURE%20X%2812%29.%0D%0A%20%20%2002%20SUM-OUT%20PICTURE%20%24%24%2C%24%24%24%2C%24%249.99.%0D%0A%20%20%2002%20FILLER%20VALUE%20%27%20NO.%20OF%20ITEMS%20%3D%27PICTURE%20X%2821%29.%0D%0A%20%20%2002%20COUNT-OUT%20PICTURE%20ZZZ9.99.%0D%0A01%20ITEM-LINE.%0D%0A%20%20%2002%20ITEM-OUT%20PICTURE%20X%2830%29.%0D%0A%20%20%2002%20PRICE-OUT%20PICTURE%20ZZZ9.99.%0D%0APROCEDURE%20DIVISION.%0D%0ASTART.%0D%0A%20%20%20%20OPEN%20INPUT%20INP-DATA%20AND%20OUTPUT%20RESULT-FILE.%0D%0AREAD-DATA.%0D%0A%20%20%20%20READ%20INP-DATA%20AT%20END%20GO%20TO%20PRINT-LINE.%0D%0A%20%20%20%20ADD%20PRICE%20TO%20TOT.%0D%0A%20%20%20%20ADD%201%20TO%20COUNT.%0D%0A%20%20%20%20MOVE%20PRICE%20TO%20PRICE-OUT.%0D%0A%20%20%20%20MOVE%20ITEM%20TO%20ITEM-OUT.%0D%0A%20%20%20%20WRITE%20RESULT-LINE%20FROM%20ITEM-LINE.%0D%0A%20%20%20%20GO%20TO%20READ-DATA.%0D%0APRINT-LINE.%0D%0A%20%20%20%20MOVE%20TOT%20TO%20SUM-OUT.%0D%0A%20%20%20%20MOVE%20COUNT%20TO%20COUNT-OUT.%0D%0A%20%20%20%20WRITE%20RESULT-LINE%20FROM%20SUM-LINE.%0D%0A%20%20%20%20CLOSE%20INP-DATA%20AND%20RESULT-FILE.%0D%0A%20%20%20%20STOP%20RUN.%0D%0A%3C%2FPRE%3E _store=1 _add=COBOL _usertab=1 _usersearch=0 _format=full = name=Common%20Lisp nameURL= see=Lisp logo= type=F%20-%20Functional%20or%20lambda-based desc=Lisp%20is%20a%20quasi-functional%20language%0D%0Acharacterized%20by%20s-expression%20syntax%0D%0Aand%20lists%20as%20it%20primary%20data%20structure.%0D%0ACommon%20Lisp%20is%20a%20standardized%20dialect%20%0D%0Aof%20Lisp%2C%20intended%20to%20be%20highly%20portable%0D%0Aand%20serve%20the%20needs%20of%20the%20Lisp%20programming%0D%0Acommunity.%20%20Most%20Lisp%20implementations%0D%0Atoday%20are%20compliant%20%28more-or-less%29%20with%20%0D%0Athe%20Common%20Lisp%20standard.%0D%0A%3Cbr%3E%0D%0AAs%20a%20standard%2C%20Common%20Lisp%20defines%20the%20%0D%0Afollowing%20facilities%20for%20the%20language%3A%0D%0A%3Cul%3E%0D%0A%3Cli%3EBasic%20data%20types%3A%20symbols%2C%20numbers%20%28integer%2C%20rational%2C%20float%2C%20complex%29%2C%20characters%0D%0A%3Cli%3ELists%20and%20an%20extensive%20set%20of%20list%20operations%0D%0A%3Cli%3EArrays%20%28vectors%2C%20strings%2C%20bit-vectors%29%20and%20array%20functions%0D%0A%3Cli%3EHash%20tables%20and%20functions%20for%20them%0D%0A%3Cli%3EVarious%20other%20specialized%20data%20types%3A%20property%20lists%2C%20paths%2C%20streams%2C%20readtables%2C%20structures%0D%0A%3Cli%3ELexical%20and%20dynamic%20scoping%0D%0A%3Cli%3EControl%20structure%20and%20function%20definition%20forms%0D%0A%3Cli%3EA%20very%20rich%20Macro%20system%0D%0A%3Cli%3EPackages%20and%20modules%0D%0A%3Cli%3Ebasic%20I%2FO%2C%20file%20handling%20facilities%2C%20file%20system%20interface%0D%0A%3Cli%3ECompiler%20usage%20and%20environment%0D%0A%3Cli%3EOOP%20for%20Lisp%3A%20The%20Common%20Lisp%20Object%20System%20%28CLOS%29%0D%0A%3Cli%3EException%20handling%0D%0A%3C%2Ful%3E%0D%0A%3Cbr%3E%0D%0ACommon%20Lisp%20grew%20out%20of%20an%20effort%2C%0D%0Abegun%20in%201981%2C%20to%20unify%20the%20fragmented%0D%0ALisp%20community.%20%20The%20first%20Common%20Lisp%0D%0Abook%20was%20written%20by%20Steele%20in%201984.%20%20In%201985%2C%20an%0D%0Aeffort%20was%20started%20to%20standardize%20the%0D%0Alanguage%20in%20a%20formal%20setting%2C%20which%20led%20to%0D%0Athe%20development%20of%20an%20ANSI%20standard%20in%201993%0D%0Aand%20an%20ISO%20standard%20in%201994.%0D%0A%3Cbr%3E%0D%0ABoth%20commercial%20and%20free%20implementations%0D%0Aof%20Common%20Lisp%20are%20widely%20available.%0D%0A origin=Guy%20L.%20Steele%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%201984%2C%201990.%3Cbr%3E%20Chapman%2C%20ANSI%20sub-committee%20%20X3J13%2C%201991. seealso=Interlisp%2C%20Scheme remark=Common%20Lisp%20is%20a%20fairly%20big%20and%20complex%0D%0Alanguage.%20%20Almost%20all%20of%20it%20is%20a%20coalesence%0D%0Aof%20other%20Lisp%20dialects%3A%20Interlisp%2C%20Franz%0D%0ALisp%2C%20MacLisp%2C%20Flavors%20Lisp%2C%20and%20others.%20%20One%20of%0D%0Athe%20biggest%20contributions%20of%20the%20Common%0D%0ALisp%20standard%20was%20adding%20a%20comprehensive%0D%0Aobject-oriented%20programming%20facility%20to%0D%0Athe%20language%3B%20prior%20to%20the%20definition%20of%0D%0ACLOS%20each%20kind%20of%20Lisp%20had%20its%20own%20OOP%0D%0Amethod%20%28Flavors%2C%20LOOPS%2C%20etc.%29%0D%0A%3Cbr%3E%0D%0AThe%201990%20book%20%3Ci%3ECommon%20Lisp%20the%20Language%2C%202nd%20Edition%3C%2FI%3E%2C%20by%0D%0AGuy%20Steele%2C%20is%20famous%20for%20its%20clear%20and%0D%0Acomplete%20treatment%20of%20the%20language.%0D%0A links1=Common%20Lisp%20the%20Language%20book%3Dhttp%3A%2F%2Fwww.cs.cmu.edu%2FGroups%2FAI%2Fhtml%2Fcltl%2Fcltl2.html links2=Lisp%20FAQ%20Lists%3Dhttp%3A%2F%2Fwww.cs.cmu.edu%2Fafs%2Fcs.cmu.edu%2Fproject%2Fai-repository%2Fai%2Fhtml%2Ffaqs%2Flang%2Flisp%2Ftop.html links3=ANSI%20Standard%20%28in%20Postscript%29%3Dhttp%3A%2F%2Fbetz.biostr.washington.edu%2Fcl%2Fcl.html links4=CMU%20Lisp%20Repository%3Dhttp%3A%2F%2Fwww.cs.cmu.edu%2Fafs%2Fcs.cmu.edu%2Fproject%2Fai-repository%2Fai%2Flang%2Flisp%2F0.html links5= date=Last%20updated%2012%2F13%2F97 sample=%3Cpre%3E%0D%0A%3B%3B%20An%20example%20of%20array%20search%20from%20the%20common%0D%0A%3B%3B%20lisp%20standard%0D%0A%28defun%20finder%20%28obj%20vec%20start%20end%29%0D%0A%20%20%28let%20%28%28range%20%28-%20end%20start%29%29%29%0D%0A%20%20%20%20%28if%20%28zerop%20range%29%0D%0A%20%20%20%20%20%20%20%20%28if%20%28eql%20obj%20%28aref%20vec%20start%29%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20obj%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20nil%29%0D%0A%20%20%20%20%20%20%20%20%28let%20%28%28mid%20%28%20%20start%20%28round%20%28%2F%20range%202%29%29%29%29%29%0D%0A%20%20%20%20%20%20%20%20%20%20%28let%20%28%28obj2%20%28aref%20vec%20mid%29%29%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%28if%20%28%3C%20obj%20obj2%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%28finder%20obj%20vec%20start%20%28-%20mid%201%29%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%28if%20%28%3E%20obj%20obj2%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%28finder%20obj%20vec%20%28%20%20mid%201%29%20end%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20obj%29%29%29%29%29%29%29%0D%0A%3C%2Fpre%3E _store=1 _add=Common%20Lisp _usertab=1 _usersearch=0 _format=full = name=Concurrent%20Clean nameURL=http%3A%2F%2Fwww.cs.kun.nl%2F%7Eclean%2F see= logo=180x83%3Dhttp%3A%2F%2Fwww.cs.kun.nl%2F%7Eclean%2FClean.Logo.Red.gif type=F%20-%20Functional%20or%20lambda-based desc=Concurrent%20Clean%20is%20a%20purely%20functional%0D%0Astrongly-typed%20language%20meant%20for%20%0D%0Adistributed%20and%20parallel-processing%0D%0Aapplication%20development.%20%20It%20can%20use%0D%0Aa%20lazy%20evaluation%20model%2C%20and%20supports%0D%0Ahigher-order%20functions%3B%20it%20also%20supports%0D%0Ainterfacing%20with%20legacy%20non-functional%0D%0Alanguages%20and%20systems.%0D%0A%3Cbr%3E%0D%0ABasic%20data%20types%20supported%20by%20Clean%20include%0D%0Aintegers%2C%20reals%2C%20strings%2C%20boolans%2C%20lists%2C%20%0D%0Atuples%2C%20arrays%2C%20and%20higher-order%20functions.%0D%0ALike%20Hope%20and%20other%20modern%20functional%20languages%2C%0D%0AClean%20allows%20multiple%20typed%20rules%20to%20be%20%0D%0Adefined%20for%20a%20given%20function%20name%3B%20a%20%0D%0Apattern-matching%20process%20applies%20the%20correct%0D%0Afunction%20rule%20for%20a%20particular%20set%20of%20arguments.%0D%0ATo%20allow%20modification%20of%20state%0D%0Ainformation%20and%20interfacing%20with%20non-functional%0D%0Alanguages%2C%20Clean%20employs%20a%20polymorphic%0D%0Auniqueness%20type%20inferencing%20system.%20%0D%0A%3Cbr%3E%0D%0AClean%20supports%20several%20advanced%20facilities%3A%0D%0Acurrying%20and%20higher-order%20functions%2C%20%0D%0Amodule%20support%20with%20separate%20interface%0D%0Aand%20implementation%2C%20algebraic%20functions%0D%0Awith%20quantified%20variables%2C%20and%20even%0D%0Aa%20simple%20%0D%0Acompile-time%20macro%0D%0Afacility.%0D%0A%3Cbr%3E%0D%0AThe%20U.%20of%20Nijmegen%20implementation%20of%20Clean%20is%0D%0Athe%20only%20one%20%28as%20of%20early%201998%29%3B%20it%20is%20%0D%0Aavailable%20free%20for%20Macintosh%2C%20Windows%2C%20Linux%0D%0Aand%20Sun%20Unix.%20%20The%20portable%20compiler%0D%0Agenerates%20textual%20ABC-bytecodes%20%28roughly%20RTL-level%29%2C%0D%0Awhich%20the%20platform-specific%20Clean%20code%20generator%20then%20translates%0D%0Ato%20a%20native%20executable.%0D%0A%3Cbr%3E%0D%0AFairly%20good%20documentation%0D%0Aabout%20the%20language%20is%20available%20at%20the%0D%0AClean%20home%20site%2C%20but%20most%20of%20it%20is%20in%0D%0Adownloadable%20PDF%20rather%20than%20HTML.%0D%0A%0D%0A origin=N%F6cker%2C%20Plasmeijer%2C%20Smetsers%20%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%20Univ.%20of%20Nijmegen%2C%201984-91. seealso=Haskell%2C%20Miranda%2C%20Hope%2C%20ML remark=Clean%27s%20development%20was%20first%20driven%20by%20research%0D%0Ainto%20graph%20re-writing%20and%20type%20inference%20in%0D%0Aa%20pure%20functional%20language.%20%20Later%2C%20%0D%0Athe%20language%20was%20directed%20toward%20supported%0D%0Adistributed%20processing%20applications.%0D%0A%3Cbr%3E%0D%0AConcurrent%20Clean%20is%20still%20under%0D%0Adevelopment.%20%20For%20example%2C%20an%20%0D%0Aobject-oriented%20I%2FO%20and%20GUI%20library%20with%0D%0Asupport%20for%20object%20transfer%20and%20%0D%0Apersistence%20was%20recently%20added.%0D%0AAlso%2C%20a%20nice%20interactive%20development%0D%0Aenvironment%20is%20available%3B%20it%20is%20written%20in%20%0D%0AClean%20itself.%0D%0A links1=Concurrent%20Clean%20download%20area%3Dhttp%3A%2F%2Fwww.cs.kun.nl%2F%7Eclean%2FClean.Distributions.html links2=Another%20overview%20of%20Clean%2C%20at%20U.%20of%20Berlin%3Dhttp%3A%2F%2Fpdv.cs.tu-berlin.de%2F%7Emfx%2Fclean.html links3= links4= links5= date=Last%20updated%201%2F2%2F98 sample=%3Cpre%3E%0D%0A%2F%2F%20Solution%20to%20Hamming%27s%20problem%20in%20Clean%2C%0D%0A%2F%2F%20generate%20an%20infinite%20sorted%20stream%20of%20numbers%0D%0A%2F%2F%20of%20the%20form%20%282%5En%29%2A%283%5Em%29%2A%285%2Ap%29.%20%20From%20the%20examples%0D%0A%2F%2F%20distributed%20with%20Concurrent%20Clean%20v1.2.%0D%0A%0D%0AHam%3A%3A%5BInt%5D%0D%0AHam%09%3D%09y%0D%0Awhere%0D%0A%09y%09%3D%09%5B1%3Amerge%20%28merge%20%28map%20%28%28%2A%29%202%29%20y%29%20%28map%20%28%28%2A%29%203%29%20y%29%29%20%28map%20%28%28%2A%29%205%29%20y%29%5D%0D%0A%0D%0A%09merge%20%5B%5D%20%5B%5D%09%3D%20%20%5B%5D%0D%0A%09merge%20f%09%20%5B%5D%09%3D%20%20f%0D%0A%09merge%20%5B%5D%20f%09%3D%20%20f%0D%0A%09merge%20f%3D%3A%5Ba%3Ab%5D%09g%3D%3A%5Bc%3Ad%5D%0D%0A%09%09%7C%20a%26lt%3Bc%09%09%3D%20%20%5Ba%3Amerge%20b%20g%5D%0D%0A%09%09%7C%20a%3D%3Dc%09%09%3D%20%20merge%20f%20d%0D%0A%09%09%7C%20otherwise%09%3D%20%20%5Bc%3A%20merge%20f%20d%5D%0D%0A%09%09%09%09%09%09%09%09%09%0D%0AStart%3A%3A%5BInt%5D%0D%0AStart%20%3D%20take%20NrElements%20Ham%0D%0A%0D%0ANrElements%20%3A%3D%3D%20300%20%20%2F%2F%20Size%20of%20finite%20sample%20to%20take.%0D%0A%3C%2Fpre%3E _store=1 _add=Clean _usertab=1 _usersearch=0 _format=full = name=Concurrent%20Pascal nameURL= see=Pascal logo= type=P%20-%20Parallel%20or%20Multi-programming desc=Concurrent%20Pascal%20is%20a%20dialect%20of%20the%0D%0Astructure%20Pascal%20language%2C%20extended%20to%0D%0Asupport%20abstract%20data%20types%2C%20%0D%0Amulti-tasking%2C%20and%20monitors.%20%20It%20was%0D%0Aintended%20for%20operating%20system%20programming%0D%0Aand%20research.%0D%0A%3Cbr%3E%0D%0AThe%20syntax%20of%20Concurrent%20Pascal%20was%20%0D%0Aessentially%20the%20same%20as%20that%20of%20original%20Pascal%2C%0D%0Aexcept%20for%20the%20added%20concurrency%20and%20ADT%0D%0Afeatures%2C%20and%20a%20few%20features%20omitted.%20%0D%0AThe%20language%20is%20strongly%20typed%20and%20%0D%0Asafe%3A%20variant%20records%20and%20pointers%20as%0D%0Adefined%20in%20original%20Pascal%20are%20not%0D%0Asupported.%0D%0AConcurrent%20Pascal%20adds%20the%20following%20%0D%0Afundamentally%20new%20features%0D%0Ato%20Pascal%3A%20process%20types%2C%20monitors%2C%20%0D%0Aclass%20types%20%28no%20inheritance%29%2C%20init%20and%0D%0Acycle%20statements%2C%20and%20queues.%0D%0ASome%20fundamental%20features%20of%20Pascal%20were%0D%0Adropped%3A%20recursion%2C%20goto%20statements%2C%20%0D%0Apacked%20arrays%2C%20pointers%2C%20and%20file%20types.%0D%0A%3Cbr%3E%0D%0AOriginal%20versions%20of%20Concurrent%20Pascal%0D%0Awere%20implemented%20on%20various%20mini-computer%0D%0Aand%20mainframe%20hardware%20in%20the%201970s.%0D%0ANo%20versions%20seem%20to%20be%20available%20on%20the%0D%0Aweb. origin=P.%20Brinch%20Hansen%2C%201974. seealso=CSP%2C%20Algol68%2C%20Simula%2C%20Ada%2C%20Java remark=According%20to%20its%20creator%2C%20Concurrent%20Pascal%0D%0Awas%20created%20to%20satisfy%20the%0D%0Afollowing%20beliefs%3A%20%0D%0A%3Cul%3E%0D%0A%3Cli%3EConcurrent%0D%0Aprogramms%20can%20be%20written%20exclusively%20in%20%0D%0Ahigh-level%20language%20%5BNote%3A%20PL%2FI%20and%20C%0D%0Adon%27t%20count%20as%20high-level%20--%20too%20unsafe%21%5D%0D%0A%3Cli%3ETime-dependent%20programming%20errors%0D%0Amust%20be%20detected%20during%20compilation%0D%0A%3Cli%3EA%20concurrent%20programming%20language%20must%0D%0Asupport%20a%20programming%20discipline%20that%20combines%0D%0Adata%20and%20procedures%20into%20modules.%0D%0A%3Cli%3EA%20programming%20language%20should%20be%0D%0Aabstract%20and%20secure%20%5Bsafe%5D.%0D%0A%3C%2Ful%3E%0D%0A%3Cbr%3E%0D%0AThe%20high-level%20and%20formally%20defined%0D%0Aprocess%20and%20synchronization%0D%0Aconstructs%20of%20Concurrent%20Pascal%20had%20a%0D%0Aprofound%20influence%20on%20the%20programming%0D%0Aworld%2C%20especially%20the%20operating%20system%0D%0Aand%20real-time%20programming.%20%20The%20fundamental%0D%0Aidea%20of%20%3Ci%3Emonitors%3C%2FI%3E%20that%20Hansen%0D%0Aintroduced%20with%20the%20language%20was%0D%0Aadopted%20in%20some%20fashion%20by%20many%20later%2C%0D%0Amajor%20languages%20including%20Modula%2C%0D%0AAda%2C%20and%20Java.%0D%0Aand%20 links1= links2= links3= links4= links5= date=Last%20updated%203%2F7%2F98 sample=%3Cpre%3E%0D%0A%7B%20A%20small%20example%20monitor%20and%20process%20from%20Hansen%27s%201993%20%7D%0D%0A%7B%20paper%20given%20at%20HOPL-II.%20%7D%0D%0Atype%20linebuffer%20%3D%0D%0A%20%20%20monitor%0D%0Avar%20contents%09%20%20%20%20%3A%20line%3B%0D%0A%20%20%20full%09%09%20%20%20%20%3A%20Boolean%3B%0D%0A%20%20%20sender%2C%20receiver%20%3A%20queue%3B%0D%0A%20%20%20%0D%0Aprocedure%20entry%20receive%28var%20text%20%3A%20%20line%29%3B%0D%0Abegin%0D%0A%20%20%20if%20not%20full%20then%20delay%28receiver%29%3B%0D%0A%20%20%20text%20%3A%3D%20contents%3B%20full%20%3A%3D%20false%3B%0D%0A%20%20%20continue%28sender%29%3B%0D%0Aend%3B%0D%0A%0D%0Aprocedure%20entry%20send%28text%20%3A%20%20line%29%3B%0D%0Abegin%0D%0A%20%20%20if%20full%20then%20delay%28sender%29%3B%0D%0A%20%20%20contents%20%3A%3D%20text%3B%20full%20%3A%3D%20true%3B%0D%0A%20%20%20continue%28receiver%29%3B%0D%0Aend%3B%0D%0A%0D%0Abegin%20full%20%3A%3D%20false%3B%0D%0Aend%3B%20%7B%20linebuffer%20%7D%0D%0A%0D%0A%0D%0Atype%20printerprocess%20%3D%0D%0A%20%20%20process%28buffer%3A%20linebuffer%29%0D%0Avar%20param%20%3A%20ioparam%3B%0D%0A%20%20%20text%09%20%20%3A%20%20line%3B%0D%0Abegin%0D%0A%20%20%20param.operation%20%3A%3D%20output%3B%0D%0A%20%20%20cycle%0D%0A%20%20%20%20%20buffer.receive%28text%29%3B%0D%0A%20%20%20%20%20repeat%20io%28text%2Cparam%2Cprintdevice%29%0D%0A%20%20%20%20%20until%20param.status%20%3D%20complete%3B%0D%0A%20%20%20end%0D%0Aend%3B%0D%0A%3C%2Fpre%3E _store=1 _add=Concurrent%20Pascal _usertab=1 _usersearch=0 _format=full = name=CORAL%2066 nameURL= see=Algol logo= type=S%20-%20block-structured desc=Coral66%20was%20a%20compiled%20structured%20programming%0D%0Alanguage%2C%20of%20the%20Algol%20family%2C%20used%20for%0D%0Areal-time%20system%20development.%0D%0A%3Cbr%3E%0D%0ANot%20much%20is%20available%20about%20Coral%2C%20but%20it%0D%0Ais%20described%20as%20a%20small%2C%20simple%20language%0D%0Aderived%20from%20Algol%20and%20Jovial.%0D%0AIt%20supported%20conventional%20control%20structures%2C%0D%0Asubroutines%2C%20and%20machine%20data%20types%20like%0D%0Aintegers%2C%20floats%2C%20and%20pointers.%20%20It%20also%0D%0Aincluded%20a%20facility%20for%20adding%20in-line%0D%0Aassembly%20code%2C%20possibly%20due%20to%20its%20typical%0D%0Ause%20for%20writing%20embedded%20control%20software.%0D%0A%3Cbr%3E%0D%0ACoral%20was%20implemented%20for%20many%20different%0D%0Amini-computers%20in%20the%201970s%2C%20and%20was%0D%0Aalso%20available%20on%20the%20VAX%20under%20VMS.%0D%0ANo%20free%20Coral66%20compilers%20seem%20to%20be%0D%0Aavailable%20today. origin=Royal%20Signals%20%26amp%3B%20Radar%20Establishment%2C%20Malvern%20UK%2C%201964-66.%3Cbr%3EWoodward%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%201970. seealso=Jovial%2C%20Algol68%2C%20Ada%2C%20C remark=Coral%20was%20used%20extensively%20for%20embedded%0D%0Asystem%20and%20application%20development%20in%20the%0D%0AUK%20military%20establishment%2C%20from%20the%20late%0D%0A1960s%20until%20about%20the%20mid-1980s.%0D%0AIt%20was%20superseded%20by%20Ada.%0D%0A%3Cbr%3E%0D%0AOf%20the%20the%20difficulties%20reported%20for%20Coral%0D%0Awas%20that%20the%20language%20as%20standardized%20%281970%29%0D%0Awas%0D%0Ainadequate%20for%20many%20development%20tasks%2C%20so%0D%0Adifferent%20compiler%20vendors%20added%20their%0D%0Aown%20incompatible%20extensions. links1=Description%20of%20Coral66%3Dhttp%3A%2F%2Fwww.seasys.demon.co.uk%2FSSP82h%2FCoral66.html links2= links3= links4= links5= date=Last%20updated%203%2F1%2F98 sample= _store=1 _add=Coral _usertab=1 _usersearch=0 _format=full = name=CorelScript nameURL= see=Basic logo= type=A%20-%20Application%2FMacro desc=CorelSCRIPT%20is%20a%20dialect%20of%20Basic%20that%0D%0Aserves%20as%20the%20macro%20extension%20language%20for%0D%0Amany%20products%20from%20Corel%20Corp%2C%20including%0D%0Atheir%20line%20of%20graphics%20products.%0D%0A%3Cbr%3E%0D%0AWhile%20the%20syntax%20of%20CorelSCRIPT%20is%20%0D%0Anearly%20identical%20to%20that%20of%20Microsoft%27s%0D%0AVisual%20Basic%2C%20it%20is%20distinguished%20by%20the%0D%0Alarge%20number%20of%20built-in%20functions%20that%0D%0Ait%20provides%20for%20the%20end-user.%20%20In%0D%0Aversions%20of%20CorelDraw%206.0%20and%20later%2C%0D%0Afor%20example%2C%20essentially%20every%20function%0D%0Athe%20drawing%20tool%20can%20perform%20is%20available%0D%0Ato%20the%20CorelSCRIPT%20programmer.%20%20%0D%0AAlso%2C%20Corel%20tools%20can%20compile%20scripts%20to%0D%0Aspeed%20execution%3B%20this%20capability%20is%0D%0Asomewhat%20unusual%20for%20an%20application%0D%0Amacro%20language.%20%20%0D%0A%3Cbr%3ELike%0D%0Athe%20Visual%20Basic%20language%20systems%20it%0D%0Aresembles%2C%20%0D%0ACorelSCRIPT%20is%20compatible%20with%20MS-Windows%0D%0AOLE%20automation%20facility%2C%20allowing%20a%0D%0ACorelSCRIPT%20program%20to%20invoke%20and%20control%0D%0Aany%20OLE-capable%20Windows%20application.%0D%0A%3Cbr%3E%0D%0ACorelSCRIPT%20is%20a%20commercial%20product%20%0D%0Aavailable%20only%20with%20Corel%20Corporation%0D%0Aproducts.%20%20Meager%20information%20about%20the%0D%0Alanguage%20is%20available%20on%20the%20WWW. origin=Corel%20Corporation%2C%201994. seealso=Visual%20Basic%2C%20VBScript%2C%20PerfectScript%2C%20VBA remark=As%20application%20extension%20languages%20go%2C%0D%0ACorelSCRIPT%20is%20pretty%20good.%20%20The%20%0D%0Adocumentation%20provided%20by%20Corel%20is%0D%0Aexcellent.%0D%0A%3Cbr%3E%0D%0AWith%20the%20acquistion%20of%20WordPerfect%20by%0D%0ACorel%2C%20the%20application%20extension%20language%0D%0APerfectScript%20is%20expected%20to%20be%20replaced%0D%0Aby%20Corel links1=Tutorial%20on%20CorelSCRIPT%20in%20PhotoPaint%3Dhttp%3A%2F%2Fwww.corelmag.com%2FPAGES%2FVAULT%2FPAINT%2FAnyprog.htm links2=CorelSCRIPT%20Tutorial%3Dhttp%3A%2F%2Fwww.atlant1.com.ua%2FSettlers%2F%7Eoberon%2FTutor%2FScriptTutor.htm links3= links4= links5= date=Last%20updated%2012%2F10%2F97 sample=%3Cpre%3E%0D%0AWITHOBJECT%20%22CorelPhotoPaint.Automation.7%22%0D%0A%09.SetDocumentInfo%2096%2C%2096%0D%0A%09.MaskSelectAll%20%0D%0A%09.EditCopy%20%0D%0A%09.ImagePapersize%20192%2C%2096%2C%200%2C%200%2C%205%2C%20255%2C%20255%2C%20255%2C%200%0D%0A%09.MaskInvert%20%0D%0A%09.EditPasteIntoSelection%0D%0A%09.MaskChannelAdd%20%22Alpha%201%22%0D%0A%09.MaskBorder%204%2C%201%0D%0A%09.ImageBCI%20-20%2C%200%2C%200%0D%0A%09%09.EndColorEffect%20%0D%0A%09.MaskChannelToMask%200%2C%200%0D%0A%20%20%20%20%20%20%20%20offset%25%20%3D%2050%0D%0ABEGIN%20DIALOG%20Dialog4%20182%2C%2079%2C%20%22Corel%20SCRIPT%20Dialog%22%0D%0A%09SPINCONTROL%20%2091%2C%2012%2C%2076%2C%2018%2C%20offset%25%0D%0A%09TEXT%20%2028%2C%2017%2C%2055%2C%2011%2C%20%22Offset%20amount%3A%22%0D%0A%09OKBUTTON%20%2056%2C%2050%2C%2069%2C%2021%0D%0AEND%20DIALOG%0D%0A%0D%0A%09X%20%3D%20Dialog%28Dialog4%29%0D%0A%09.EffectOffset%200%2C%20offset%25%2C%20TRUE%2C%200%0D%0A%09.MaskRemove%20%0D%0AEND%20WITHOBJECT%0D%0A%3C%2Fpre%3E _store=1 _add=CorelScript _usertab=1 _usersearch=0 _format=full = name=csh nameURL= see= logo= type=C%20-%20Command%20or%20Scripting desc=Csh%20is%20an%20interpreted%20command%20and%20scripting%0D%0Alanguage%20designed%20and%20implemented%20as%20part%20of%0D%0Athe%20BSD%20Unix%20development%20effort.%20%0D%0AIt%20was%20primarily%20designed%20as%20an%20interactive%0D%0Acommand%20language%2C%20but%20is%20also%20widely%20used%0D%0Ato%20automate%20system%20administration%20and%0D%0Asoftware%20development%20tasks%20in%20Unix%0D%0Aenvironments.%0D%0A%3Cbr%3E%0D%0ACsh%20supports%20only%20one%20%0D%0Aprimitive%20data%20type%3A%0D%0Astrings.%20%20Csh%20has%20arithmetic%20operators%20%0D%0Athat%20can%0D%0Atreat%20strings%20as%20integers%20in%20some%20constructs.%0D%0ALike%20other%20Unix%20shell%20language%2C%20csh%20%0D%0Ahas%20two%20scopes%20for%20variables%3A%20local%20and%0D%0Aexported%20%28environment%29.%0D%0AAll%20local%20variables%20in%20a%20csh%20program%20have%20the%0D%0Asame%20data%20type%3A%20a%20vector%20of%20strings.%0D%0AAll%20environment%20%28exported%29%20variables%20have%0D%0Athe%20same%20data%20type%2C%20string%2C%20as%20required%0D%0Aby%20Unix.%0D%0AStatements%20in%20csh%20are%20normally%20delimited%0D%0Aby%20line%20boundaries%2C%20but%20semicolons%20may%0D%0Aalso%20be%20used.%0D%0AControl%20flow%20constructs%20supported%20by%20Csh%0D%0Ainclude%20if-then-else%2C%20two%20kinds%20of%20loops%2C%0D%0Agoto%2C%20a%20case%20statement%2C%20and%20a%20very%20%0D%0Asimple%20interrupt%20handling%20statement.%20%20All%0D%0Aof%20the%20flow%20control%20constructs%2C%20as%20well%20as%0D%0Athe%20expression%20syntax%2C%20are%20modeled%0D%0Aroughly%20%0D%0Aafter%20those%20in%20the%20C%20programming%20language.%0D%0AUnlike%20most%20other%20programming%20language%2C%0D%0Acsh%20has%20no%20explicit%20syntax%20for%20subroutines.%0D%0AInstead%2C%20each%20separate%20csh%20source%20file%20can%0D%0Abe%20treated%20as%20a%20kind%20of%20subroutine.%0D%0A%3Cbr%3E%0D%0ACsh%20is%20available%20on%20essentially%20all%20Unix%0D%0Aand%20related%20operating%20systems.%0D%0ADespite%20its%20wide%20use%2C%20good%20tutorials%20on%0D%0AC%20shell%20programming%20are%20not%20widely%20%0D%0Aavailable%20on%20the%20web.%20%20Good%20books%20on%0D%0Ashell%20programming%20are%20available.%0D%0A origin= seealso=sh%2C%20C%2C%20Tcl%2C%20Perl remark=An%20advanced%20variant%20of%20csh%2C%20called%20the%0D%0ATwenex%20csh%20%28tcsh%29%20is%20also%20very%20popular.%0D%0ATcsh%20supports%20the%20same%20programming%0D%0Afeatures%20as%20its%20parent%20csh%2C%20but%20provides%0D%0Aspecial%20interactive%20use%20features.%0D%0A%3Cbr%3E%0D%0ACsh%20is%20one%20of%20the%20most%20contentious%20of%20the%0D%0Adifferences%20between%20the%20two%20main%20camps%20of%0D%0Athe%20Unix%20world.%20%20The%20%22System%20V%22%20camp%0D%0Aespouses%20general%20use%20of%20the%20Bourne%20shell%0D%0A%28sh%29%20and%20its%20derivatives%20such%20as%20the%20%0D%0AKorn%20shell%20%28ksh%29.%20%20The%20%22Berkeley%22%20camp%0D%0Aespouses%20general%20use%20of%20the%20C%20shell%20and%0D%0Aits%20derivatives.%20%20In%20the%201990s%20this%20debate%0D%0Abecame%20largely%20moot%20because%20all%20the%20popular%0D%0Ashells%20became%20available%20on%20all%20Unix%0D%0Aplatforms.%0D%0A%3Cbr%3E%0D%0ACsh%20and%20its%20cousin%20tcsh%20are%20primarily%20%0D%0Ainteractive%20command%20interpreters%3B%20they%0D%0Acan%20and%20have%20been%20used%20for%20programming%2C%0D%0Athough%2C%20even%20when%20much%20faster%20and%20simpler%0D%0Asolutions%20existed%20%28e.g.%20sh%2C%20awk%2C%20perl%29.%0D%0AWhile%20csh%20provides%20a%20fair%20set%20of%20program%0D%0Aflow%20constructs%2C%20it%20does%20not%20provide%20very%0D%0Agood%20I%2FO%20facilities%20or%20controls.%20%20This%0D%0Ais%20perceived%20as%20a%20major%20failing%20by%20many%0D%0AUnix%20cognescenti.%20%20For%20more%20information%20about%0D%0Acsh%27s%20shortcomings%2C%20check%20out%20the%20%0D%0Afamous%20%27csh%20programming%20considered%20harmful%27%0D%0Aarticle%20%28link%20below%29.%0D%0A%3Cbr%3E%0D%0AFor%20serious%20Unix%20scripting%2C%20csh%20has%20been%0D%0Asuperseded%20by%20Perl. links1=Csh%20manual%20as%20a%20web%20page%3Dhttp%3A%2F%2Fwww.doc.ic.ac.uk%2F%7Emac%2Fmanuals%2Fall-manual-pages%2Fhpux%2Fusr%2Fman%2Fman1%2Fcsh.1.html links2=Csh%20Programming%20Considered%20Harmful%3Dhttp%3A%2F%2Flanguage.perl.com%2Fversus%2Fcsh.whynot links3= links4= links5= date=Last%20updated%202%2F15%2F98 sample=%3Cpre%3E%0D%0A%23%21%2Fbin%2Fcsh%0D%0A%23%20A%20simple%20csh%20script%20to%20find%20a%20command%20on%0D%0A%23%20the%20directories%20listed%20in%20the%20environment%0D%0A%23%20variable%20PATH%2C%20and%20print%20out%20information%0D%0A%23%20about%20it.%0D%0Aset%20cmd%3D%241%0D%0Aif%20%28%22%24cmd%22%20%3D%3D%20%22%22%29%20then%0D%0A%20%20%20%20echo%20%22Usage%3A%20findcmd%20commandname%22%0D%0A%20%20%20%20exit%201%0D%0Aendif%0D%0A%0D%0Aset%20cnt%3D0%0D%0Aforeach%20dir%20%28%24path%29%0D%0A%20%20%20%20set%20check%3D%22%24dir%2F%24cmd%22%0D%0A%20%20%20%20if%20%28-x%20%22%24check%22%20%26%26%20%21%20%28-d%20%22%24check%22%29%29%20then%0D%0A%20%20%20%20%20%20%20%20file%20%24check%0D%0A%20%20%20%20%20%20%20%20ls%20-ldg%20%24check%0D%0A%20%20%20%20%20%20%20%20set%20cnt%3D%24cnt%20%20%201%0D%0A%20%20%20%20endif%0D%0Aend%0D%0A%0D%0Aif%20%28%24cnt%20%3D%3D%200%29%20then%0D%0A%20%20%20%20echo%20%22Sorry%2C%20command%20%24cmd%20not%20found.%22%0D%0A%20%20%20%20exit%201%0D%0Aelse%0D%0A%20%20%20%20exit%200%0D%0Aendif%0D%0A%3C%2Fpre%3E _store=1 _add=csh _usertab=1 _usersearch=0 _format=full = name=CSP nameURL= see= logo= type=M%20-%20Mathematical%20or%20Simulation desc=CSP%20is%20a%20simple%20and%20elegant%20language%20for%0D%0Adescribing%20parallel%20computations%20and%20their%0D%0Ainteractions.%20%20It%20evolved%20from%20a%20formal%0D%0Anotation%20used%20to%20discuss%20communicating%0D%0Aindependent%20entities%20into%20a%20formal%0D%0Alanguage%20for%20describing%20parallel%20systems%2C%0D%0Asimulating%20them%2C%20and%20reasoning%20about%20them.%0D%0A%3Cbr%3E%0D%0ACSP%20offers%20a%20modest%20set%20of%20conventional%0D%0Acomputer%20language%20features%3A%20numberic%0D%0Avariables%2C%20symbols%2C%20and%20the%20usual%0D%0Asequential%20control%20structures.%20%20CSP%27s%0D%0Astrength%20is%20in%20its%20support%20for%20defining%0D%0Aparallelism%3A%20definitions%20of%20processes%0D%0Aand%20communcation%20buffers..%20%20The%20%0D%0Afundamental%20notion%0D%0Aof%20a%20guarded%20command%20was%20introduced%20by%0D%0ACSP%2C%20and%20serves%20as%20a%20powerful%20model%20for%0D%0Aregulating%20and%20synchronizing%20concurrent%0D%0Aprocesses.%0D%0AAll%20of%20the%20facilities%20in%20CSP%20were%20%0D%0Acarefully%20chosen%20to%20permit%20formal%20proofs%0D%0Aabout%20deadlock-freedom%20and%20other%20properties%0D%0Aof%20CSP%20models.%0D%0A%3Cbr%3E%0D%0ABecause%20CSP%20was%20invented%20as%20a%20formal%20%0D%0Anotation%2C%20without%20many%20practical%20features%2C%0D%0Aimplementations%20are%20rare.%20%20Information%0D%0Aabout%20CSP%20is%20available%20scattered%20around%20the%0D%0AInternet%2C%20but%20journal%20articles%20and%20books%0D%0Ahave%20much%20more%20detail.%20%20One%20commercial%0D%0Aimplementation%20of%20CSP%20is%20used%20for%20%0D%0Averifying%20digital%20logic%20design. origin=C.A.R.%20Hoare%2C%201978. seealso=occam%2C%20Linda%2C%20Ada remark=The%20principles%20illustrated%20in%20CSP%20helped%0D%0Ainfluence%20later%20parallel%20computation%20%0D%0Aresearch%20and%20parallel%20programming%0D%0Alanguages.%20%20 links1=The%20Virtual%20Library%20CSP%20Archive%3Dhttp%3A%2F%2Fwww.comlab.ox.ac.uk%2Farchive%2Fcsp.html links2=Bibliography%20of%20papers%20about%20CSP%3Dhttp%3A%2F%2Fwww.cl.cam.ac.uk%2Fusers%2Fmgh1001%2FCSP%2Fcsp-bib.html links3=FDR2%20Product%20Page%3Dhttp%3A%2F%2Fwww.formal.demon.co.uk%2FFDR2.html links4= links5= date=Last%20updated%2012%2F12%2F97 sample=CSP%20solution%20to%20the%20Dining%20Philosopher%27s%20problem%2C%20%0D%0Aexample%2C%20code%20by%20Dan%20Richardson%20after%20example%0D%0Adefinition%20in%20Hoare%27s%20CSP%20book.%0D%0A%3Cul%3E%3Cpre%3E%0D%0APHIL%20%3D%20%2A%5B%20...During%20n%27th%20lifetime%0D%0A%20%20THINK%3B%0D%0A%20%20room%21enter%28%20%29%3B%0D%0A%20%20fork%28i%29%21pickup%28%20%29%3B%0D%0A%20%20fork%28%28i%20%20%201%29%20mod%205%29%21pickup%3B%0D%0A%20%20EAT%3B%0D%0A%20%20fork%28i%29%21putdown%28%20%29%3B%0D%0A%20%20fork%28%28i%20%20%201%29%20mod%205%29%21putdown%28%20%29%3B%0D%0A%20%20room%21exit%28%20%29%3B%0D%0A%5D%0D%0A%0D%0AFORK%20%3D%20%2A%5B%20%0D%0A%20%20phil%28i%29%3Fpickup%28%20%29%20-%3E%20phil%28i%29%3Fputdown%28%20%29%3B%0D%0A%20%20%5B%5D%20%0D%0A%20%20phil%28%28i%20-%201%29%20mod%205%29%3Fpickup%28%20%29%20-%3E%0D%0A%20%20%20%20%20phil%28%28i%20-%201%29%20mod%205%29%3Fputdown%28%20%29%3B%0D%0A%0D%0AROOM%20%3D%20occupancy%3Ainteger%3B%20occupancy%20%3D%200%3B%0D%0A%20%20%2A%5B%28i%3A0..4%29phil%28i%29%3Fenter%28%20%29%20-%3E%0D%0A%20%20%20%20%20occupancy%20%3A%3D%20occupancy%20%20%201%3B%0D%0A%20%20%5B%5D%0D%0A%20%20%28i%3A0..4%29phil%28i%29%3Fexit%28%20%29%20-%3E%0D%0A%20%20%20%20%20occupancy%20%3A%3D%20occupancy%20-%201%3B%0D%0A%0D%0AMAIN%20%3D%20%5Broom%3A%3AROOM%20%7C%7C%20fork%28i%3A0..4%29%3A%3AFORK%20%7C%7C%0D%0A%20%20%20%20%20%20%20%20%20%20phil%28i%3A0..4%29%3A%3APHIL%5D.%0D%0A%3C%2Fpre%3E%3C%2Ful%3E _store=1 _add=CSP _usertab=1 _usersearch=0 _format=full = name=cT nameURL=http%3A%2F%2Fwww.aip.org%2Fpas%2Fct.html see= logo= type=S%20-%20block-structured desc=cT%20is%20an%20algorithmic%20scripting%20language%0D%0Aintended%20for%20building%20animations%2C%20user%0D%0Ainterfaces%2C%20and%20multimedia%20presentations.%0D%0A%3Cbr%3E%0D%0AData%20types%20supported%20by%20cT%20include%20integers%2C%0D%0Areals%2C%20strings%2C%20booleans%2C%20%0D%0Aarrays%2C%20and%20a%20variety%20of%0D%0Amultimedia%20types.%0D%0AControl%20structures%20include%20if-then%2C%20simple%0D%0Aloops%2C%20simple%20subroutines%2C%20and%0D%0Aevent-driven%20execution.%0D%0A%3Cbr%3E%0D%0AcT%20is%20supported%20by%20a%20large%20library%20of%0D%0Abuilt-in%20commands%20for%20handling%20images%2C%0D%0Avideos%2C%20sounds%2C%20fonts%2C%20and%20other%20kinds%20of%0D%0Agraphics%20data%2C%20file%20I%2FO%2C%0D%0Anetwork%20communication%2C%20and%20system%0D%0Ainterfacing.%0D%0AFor%20portability%2C%20%0D%0AcT%20programs%20are%20compiled%20into%20a%0D%0Abinary%20intermediate%20form%2C%20to%20be%20run%0D%0Aby%20the%20%22cT%20executor%22.%20%20This%20is%20similar%0D%0Ato%20the%20approach%20used%20by%20Java%2C%20except%20that%0D%0Are-compilation%20on%20each%20platform%20is%0D%0Arecommended.%0D%0A%3Cbr%3E%0D%0AThe%20cT%20language%20is%20supported%20by%20a%20comprehensive%0D%0Aprogramming%20environment%20that%20provides%20%0D%0Aincremental%20compilation%2C%20interactive%0D%0Adebugging%2C%20and%20a%20visual%20editor.%0D%0A%3Cbr%3E%0D%0AcT%20is%20available%20free%20for%20Unix%20systems%20%28X11%29%20from%0D%0ACMU.%20%20It%20is%20available%20commercially%20for%0D%0AWindows%20and%20the%20Macintosh.%0D%0A origin=Andersen%2C%20Sherwood%20%3Ci%3Eet%20al%3C%2Fi%3E%2C%20Carnegie-Mellon%2C%201990-94 seealso=Tcl%2C%20HyperCard%2C%20Visual%20Basic remark=The%20syntax%20of%20cT%20programs%20is%20rather%20linear%0D%0Aand%20a%20little%20cryptic.%20%20The%20code%20structure%0D%0Aseems%20to%20have%20been%20designed%20for%20to%20allow%0D%0Aeasy%0D%0Areading%20and%20writing%20by%20the%20cT%20development%0D%0Aenvironment.%0D%0A%3Cbr%3E%0D%0AcT%20was%20originally%20developed%20at%20Carnegie-Mellon%2C%0D%0Abut%20was%20picked%20up%20by%20Physics%20Academic%20Software.%0D%0AAnother%20company%2C%20WorldWired%2C%20is%20also%20working%20%0D%0Aon%20a%20version. links1=CMU%20cT%20web%20page%3Dhttp%3A%2F%2Fcil.andrew.cmu.edu%2Fct.html links2=WorldWired%20software%20cT%20demo%20page%3Dhttp%3A%2F%2Fwww.worldwired.com%2Fsoftware.html links3=cT%20for%20Unix%20systems%20FTP%20area%20at%20CMU%3Dftp%3A%2F%2Fcolumbus.andrew.cmu.edu%2Fpub%2Fct%2F links4= links5= date=Last%20updated%201%2F25%2F98 sample=%3Cpre%3E%0D%0A%2A%20A%20subroutine%20to%20draw%201-d%20chaos%2C%20from%20a%0D%0A%2A%20sample%20program%20by%20Bruce%20Sherwood.%0D%0A%0D%0Aunit%20%20%20%20chaos%0D%0A%20%20%20%20%20%20%20%20f%3A%20pop%2C%20rate%20%20%24%24%20population%20and%20growth%20rate%0D%0A%20%20%20%20%20%20%20%20i%3A%20n%2C%20TRIES%3D40%2C%20base%3D8%0D%0A%20%20%20%20%20%20%20%20i%3A%20usecolor%0D%0A%20%20%20%20%20%20%20%20f%3A%20h%2C%20s%2C%20v%0D%0Acalc%20%20%20%20usecolor%20%3A%3D%20%28zncolors%20%3E%3D%208%20base%29%0D%0Apalette%20zred%2C100%2C0%2C0%2Czwhite%0D%0Aif%20%20%20%20%20%20usecolor%0D%0A%20%20%20%20%20%20%20%20loop%20%20%20%20n%20%3A%3D%200%2C7%20%20%24%24%20make%20hues%20from%20blue%20to%20red%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20getrgb%20%20240%5B1-%28n%201%29%2F8%5D%2C100%2C100%3B%20h%2C%20s%2C%20v%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20palette%20base%20n%2Ch%2Cs%2Cv%0D%0A%20%20%20%20%20%20%20%20endloop%0D%0Aendif%0D%0Acolor%20%20%20zwhite%0D%0Ado%20%20%20%20%20%20graph%0D%0Acolor%20%20%20zred%0D%0Aloop%20%20%20%20rate%20%3A%3D%202.7%2C%203.99%2C%20.01%0D%0A%20%20%20%20%20%20%20%20calc%20%20%20%20pop%20%3A%3D%20.1%20%20%24%24%20starting%20population%0D%0A%20%20%20%20%20%20%20%20loop%20%20%20%20n%20%3A%3D%201%2C%20TRIES%0D%0A%2A%20New%20population%20is%20rate%20times%20current%20population%0D%0A%2A%20times%20a%20resource-limiting%20factor%20%281-pop%29%3A%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20calc%20%20%20%20pop%20%3A%3D%20rate%2Apop%2A%281-pop%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20%20%20%20%20%20usecolor%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%20color%20%20%20base%20int%288%28n-1%29%2FTRIES%29%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20elseif%20%20TRIES-n%20%3E%208%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%20reloop%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20endif%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20gfill%20%20%20rate%2Cpop%3Brate%20.01%2Cpop%20.005%0D%0A%20%20%20%20%20%20%20%20endloop%0D%0Aendloop%0D%0A%3C%2Fpre%3E%0D%0A _store=1 _add=cT _usertab=1 _usersearch=0 _format=full = name=Curry nameURL=http%3A%2F%2Fwww-i2.informatik.rwth-aachen.de%2F%7Ehanus%2Fcurry%2F see= logo=128x215%3Dhttp%3A%2F%2Fwww-i2.informatik.rwth-aachen.de%2F%7Ehanus%2Fcurry%2Fcurrysymbol.gif type=F%20-%20Functional%20or%20lambda-based desc=Curry%20is%20a%20fairly%20recent%20functional%20logic%0D%0Aprogramming%20language%2C%20developed%20as%20a%0D%0Aresearch%20vehicle%20to%20test%20ideas%20in%20%0D%0Athe%20areas%20of%20narrowing%2C%20unification%2C%20and%20%0D%0Anon-determinism.%20%20It%20has%20also%20been%0D%0Aused%20to%20teach%0D%0Alogic%20and%20functional%20programming%20principles.%0D%0A%3Cp%3E%0D%0AThe%20syntax%20of%20Curry%20is%20complex%2C%20compact%2C%0D%0Aand%20similar%20to%0D%0Athat%20of%20Haskell.%20%20Each%20statement%0D%0Aof%20a%20Curry%20program%20is%20an%20equation%20or%0D%0Apredicate.%20%20Executing%20a%20Curry%20program%0D%0Aconsists%20of%20simplifying%20equations%20and%0D%0Aexpressions%20until%20a%20particular%20specified%0D%0Agoal%20is%20reached%20or%20a%20particular%20solution%0D%0Ais%20obtained.%20%20%0D%0APrimitive%20data%20types%20%0D%0Asupported%20by%20Curry%20include%0D%0Abooleans%2C%20integers%2C%20reals%2C%20chars%2C%0D%0Aand%20strings.%20%20Aggregate%20and%20specialized%0D%0Adata%20types%20include%20tuples%2C%20lists%2C%20functions%2C%0D%0Aand%20constraints.%20%20Oddly%20enough%2C%20Curry%20uses%0D%0Athe%20same%20comment%20syntax%20as%20Ada.%0D%0AThe%20module%20construct%20serves%20to%20encapsulate%0D%0Alibraries%20of%20functions%2C%20data%20types%2C%0D%0Aand%20expressions.%20The%0D%0Amodule%20seems%20to%20be%20the%20only%20program%0D%0Astructuring%20facility%20in%20Curry.%0D%0A%3Cp%3E%20%0D%0ALike%20many%20functional%20languages%2C%20Curry%0D%0Asupports%20a%20declarative%20I%2FO%20model.%20%20This%0D%0Akind%20of%20model%20basically%20represents%20input%0D%0Aand%20output%20operations%20as%20expressions%0D%0Ainvolving%20%27the%20World%27.%20%0D%0A%3Cp%3E%0D%0ASome%20of%20the%20advanced%0D%0Afeatures%20of%20Curry%20are%20listed%20below.%0D%0A%3Cul%3E%0D%0A%3Cli%3EFunctional%20composition%0D%0A%3Cli%3EPredicate%20constraints%0D%0A%3Cli%3ENested%20Expressions%0D%0A%3Cli%3EHigher-order%20functions%0D%0A%3Cli%3EConcurrency%0D%0A%3Cli%3ELazy%20evaluation%0D%0A%3Cli%3Eresiduation%20%0D%0A%3Cli%3ENarrowing%20%0D%0A%3C%2Ful%3E%0D%0A%3Cbr%3E%0D%0ACurry%20can%20also%20call%20external%20functions%2C%0D%0Awhich%20offers%20a%20way%20to%20support%20the%20%0D%0Aadvanced%20logical%20model%20with%20more%20traditional%0D%0Aprogramming.%0D%0A%3Cp%3E%0D%0AAs%20an%20academic%20project%2C%20implementations%0D%0Aof%20Curry%20are%20available%20free.%20%20Documentation%0D%0Ais%20available%20on%20the%20web%2C%20but%20almost%0D%0Aexclusively%20in%20DVI%20format.%0D%0A origin=Michael%20Hanus%2CRWTH%20Aachen%2C%20Germany%2C%201997 seealso=Haskell%2C%20LEDA%2C%20Prolog%2C%20Goedel%2C%20SML remark=The%20current%20version%20of%20the%20Curry%20language%0D%0Aseems%20to%20be%200.5.%20%20The%20language%20is%20still%0D%0Aunder%20development%2C%20but%20the%20most%20recent%0D%0Aversion%20of%20the%20language%20manual%20is%20dated%0D%0A1%2F99%2C%20so%20the%20development%20may%20have%20stalled.%0D%0A%3Cp%3E%0D%0ASeveral%20implementations%20of%20Curry%20exist.%0D%0AThe%20most%20viable%20one%20seems%20to%20be%20PACS%2C%0D%0Athe%20Portland%20Aachen%20Curry%20System.%20%20It%20is%0D%0Aa%20compiler%20that%20translates%20Curry%20programs%0D%0Ainto%20various%20intermediate%20forms%3A%0D%0AProlog%20or%20Java.%20%20Free%20downloads%20of%0D%0APACS%20for%20UNIX%20systems%20are%20available%20from%0D%0ARWTH%20Aachen.%20%20Other%20Curry%20implementations%0D%0Aare%20interpreters%20written%20in%20Prolog.%0D%0A%3Cp%3E%0D%0AThere%20has%20been%20a%20trend%20in%20the%201990s%20to%20try%0D%0Ato%20integrate%20ideas%20from%0D%0Asome%20of%20the%20most%20powerful%20computer%0D%0Aprogramming%20research%20paradigms.%20%20Curry%2C%0D%0Alike%20LEDA%20and%20NIAL%2C%20is%20an%20example%20of%20%0D%0Athis%20trend.%0D%0A links1=Features%20of%20Curry%3Dhttp%3A%2F%2Fwww-i2.informatik.rwth-aachen.de%2F%7Ehanus%2Fcurry%2Ffeatures.html links2=TasteCurry%20WWW%20interpreter%3Dhttp%3A%2F%2Fwww-i2.informatik.rwth-aachen.de%2F%7Ehanus%2Fpacs10%2Fcurryinput.cgi links3= links4= links5= date=Last%20updated%208%2F8%2F99 sample=This%20is%20a%20sorting%20example%20from%20the%20TasteCurry%0D%0AWWW%20Curry%20interface.%0D%0A%3Cp%3E%0D%0A%3Cpre%3E%0D%0A--%20quicksort%20using%20higher-order%20functions%3A%0D%0A%0D%0A--%20filter%20elements%20in%20a%20list%20%28predefined%20as%20%60filter%27%29%3A%0D%0Afilter_%20%3A%3A%20%28a%20-%3E%20Bool%29%20-%3E%20%5Ba%5D%20-%3E%20%5Ba%5D%3B%0D%0Afilter_%20_%20%5B%5D%20%20%20%20%20%3D%20%5B%5D%0D%0Afilter_%20p%20%28x%3Axs%29%20%3D%20if%20p%20x%20then%20x%20%3A%20filter_%20p%20xs%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%20else%20filter_%20p%20xs%0D%0A%0D%0Aqsort%20%3A%3A%20%5BInt%5D%20-%3E%20%5BInt%5D%0D%0Aqsort%20%5B%5D%20%20%20%20%20%3D%20%5B%5D%0D%0Aqsort%20%28x%3Al%29%20%20%3D%20qsort%20%28filter%20%28%3C%20x%29%20l%29%20%20%20%20x%20%3A%20qsort%20%28filter%20%28%3E%3D%20x%29%20l%29%0D%0A%3C%2Fpre%3E _store=1 _add=Curry _usertab=1 _usersearch=0 _format=full =