[Skip Navigation] [CSUSB] / [CNS] / [CSE] / [R J Botting] / [Samples] / languages
[Index] [Contents] [Source Text] [About] [Notation] [Copyright] [Comment/Contact] [Search ]
Fri Oct 26 13:59:20 PDT 2012

Opening the PDF files on this page may require you to download Adobe Reader or an equivalent viewer (GhostScript).

Opening Microsoft files (winzip, word, excel, powerpoint) on this page may require you to download a special viewer. Or you can download and save the files and use your preferred office applications to view and edit them.


    My Computer Languages Page

      General Resources on Languages

      (search for languages): Some useful places to start a search for information on computer languages.
      1. Places to try out code -- BASIC Pascal Perl C++: [ http://www.codeide.com/ ] -- C, C++, D, Python,... [ http://codepad.org/ ]
      2. Google groups often discuss languages... [ http://groups.google.com/groups/ ] Usenet Newsgroups (Hint: find the right group and search for "FAQ")

        (GoStats programming Language resources): links to documentation on Awk..Tcl [ computer-programming.html ] (Thanks to Sarah Wahlberg).

        (Resources for Programming Languages): [ programming-languages-basics ] (with thanks to Cate Newton, Content Manager, SR Education Group).

        (comp.lang): group [ groups?hl=en&lr=&ie=UTF-8&group=comp.lang ] (Programming language),
        (comp.software-eng): group [ groups?hl=en&lr=&ie=UTF-8&group=comp.software-eng ] (Software development),
        (comp.text): group [ groups?hl=en&lr=&ie=UTF-8&group=comp.text ] (Markup languages),
        (comp.infosystems.www.authoring): group [ groups?hl=en&lr=&ie=UTF-8&group=comp.infosystems.www.authoring ] (WWW Languages),
        (comp.specification): group [ groups?hl=en&lr=&ie=UTF-8&group=comp.specification ] (Larch, Z, miscellaneous specification languages)
        (comp.object): group [ groups?hl=en&lr=&ie=UTF-8&group=comp.object ] (CORBA and other Object-oriented stuff)

        (Languages -- TIOBE Index): popularity of languages [ index.html ]

      3. FAST Search "Programming Language" [ search?cat=web&cs=utf-8&q=%22Programming+Language%22&_sb_lang=en ] (add your language to the search box at the top of the page).

      A Glossary of terms
      (glossary): [ languages.glossary.html ]

      General Resources: [ http://dmoz.org/Computers/Programming/Languages/ ] [ http://cuiwww.unige.ch/langlist/ ] [ http://www.utu.fi:80/~sisasa/oasis/ ] [ alternate.html ]
      (Esoteric Programming Languages Ring): languages [ index.html ]

      (Gary Leavens's Home Page ): home [ homepage.html ] ...and his literature recommendations [ literature-recommendations.html ]

      (The Incredible Wiki Wiki Web): wiki [ wiki?CategoryLanguage ]

      (source code samples): Claimed to be the largest public source code database on the Internet: [ http://www.Planet-Source-Code.com/PlanetSourceCode/ ]

      (99 bottles of beer in many programming languages): [ http://www.99-bottles-of-beer.net/ ]

      (History of computer languages): languages [ http://www.levenez.com/lang/ ] [ prog_lang_poster.pdf ] (Big colored PDF) [ paradigmsDIAGRAMeng101.pdf ] (Diagram by paradigm)

      (Museum): languages [ default.htm ]

      (Scripting languages ): [ scripting4.html ]

      Research On Languages

      (Weird Programming Languages): [ weird.html ]
      (Esoteric Programming Languages): [ esoteric.shtml ]

      (Bibliography): [ http://www.cs.monash.edu.au/~lloyd/tildeBIB/ ]

      (CS620 Programming Language Theory Postgraduate Comp Sci CSUSB): [ intro.html ] [ http://www.csci.csusb.edu/dick/cs620/ ]

      (Imperial, college, university, IC, London, England, UK, Europe, Search): google [ docImperial?q=programming+languages&sa=Search&domains=doc.ic.ac.uk&sitesearch=doc.ic.ac.uk ]
      (SunSITE N. Europe language Archive): [ http://src.doc.ic.ac.uk/ ]

      (Chalmers University of Technology Goteborg Sweden): [ Home-E.html ] [ query.html?rq=0&col=chalmers&ht=0&qp=&qs=&qc=&pw=600&ws=0&la=&qm=0&st=1&nh=10&lk=1&rf=0&oq=&rq2=0&si=1&qt=Programming+Languages ]

      (Arizona university USA): [ http://www.arizona.edu/ ] [ http://www.cs.arizona.edu/ ]

      (Brigham Young university BYU Utah USA): language research [ http://www.cs.byu.edu/ ]

      (Computer Science Carnegie Mellon University CMU USA): (slow FTP access) //ftp.cs.cmu.edu/user/

      (Evolution Genetics FTP): //evolution.genetics.washington.edu/ at
      (University of Washington Seattle): [ http://www.cs.washington.edu/ ]

      Programming Technologies that use Programming Languages

      (Ajax): Asynchronous JavaScript and XML. AJAX is a popular new (2006-2007) technology that connects Javascript in the client to the server with the eXtendable Markup Language (XML). When possible computation is done on the client in parallel with downloading new data from the server. Most importantly the whole page doesn't have to be reloaded: just parts of it. For more details, see [ AJAX ] on the Wikipedia and [SerranoAroztegi07] from the IEEE Software Magazine. Some argue that JSON is a better than XML.

      Programming Languages

      (An Introduction to esoteric languages): [ random-programming-languages.html ]
      (Ada): Languages [ ada.html ]
      (Adasoft): languages [ http://home.adasoft.com/ ]
      (Ada for C/C++ people): languages [ cpp2ada.html ]

      (Algol60): The Original ancestor of all tidy languages: [ algol60.syntax.html ] (And an imptovement over some of its successors...HHOS).

      (Algol68): Least said soonest mended.

      (AlgolN): A good proposal from Nippon for a successor to Algol60.

      (B): The child of BCPL and direct parent of C. [ kbman.html ] [ bintro.html ] and Dennis Ritchie's page [ http://cm.bell-labs.com/cm/cs/who/dmr/ ] (Thank you Mark Huthcinson for this link).

      (C): Developed from B... and went thru to incarnations: K&R C and ANSI C, then grew up to become [ C++ ] [ c.html ] [ comp.c.syntax.html ] [ c.syntax.html ] [ c.semantics.html ] [ top.html ] [ c.php ] And HHOS: [ C_Prog_Debug.html ] [ 00001.html ] (Filk)
      (C++): Child of C. [ c++.html ] [ c++.glossary.html ] [ c++.semantics.html ] [ c++.standard.syntax.html ] [ c++.syntax.html ] [ http://www.csci.csusb.edu/dick/c++std/ ]
      (STL): The Standard <Template> Library(STL) for C++ [ stl.html ] [ http://www.Planet-Source-Code.com/PlanetSourceCode/ ]
      (D): the D programming language from Digital Mars:

      1. D was conceived in December 1999 by Walter Bright as a reengineering of C and C++, and has grown and evolved with helpful suggestions and critiques by friends and colleagues.

      [ http://www.digitalmars.com ]

      (DITA): Darwin Information Typing Architecture (DITA XML) [ dita.html ]

      (ici): Quote: "ICI is a C-like, high level language originally developed by Tim Long and placed into the public domain. ICI marries C's expression syntax, control structures and overall feel , with a dynamic, garbage collected, object-based, data model." [ http://www.zeta.org.au/~atrn/ici/ ] Note. Funny isn't that what [ C# ] does?

      (C#): Csharp or C-Hash? A Microsoft controled version of C++ designed to compete and beat Java as part of the .NET final solution. See news stories: [ 2100-1001-242414.html?legacy=cnet&tag=st ] [ 0-1003-200-2154069.html?tag=st ] and a useful source of information: [ index.htm ] (FunctionX).

      (Hungarian): A way of coding C programs with explicit type information: [ comp.prog.5_Hungarian.html ]

      (Clojure): a dialect of LISP that runs on top of Java [ http://clojure.org ]

      (COBOL): "I DON'T GET NO RESPECT." [ cobol.syntax.html ] The only language to really help programmers handle money and traditional record based data files cleanly and simply.

      (COBOL User Groups COBUG): COBUG provides the COBOL community with a comprehensive web site that contains current references to COBOL user groups, compilers, code samples, COBOL jobs, and many other COBOL programming resources. We are committed to developing COBOL user groups and providing an information resource for the COBOL community. We currently have more than 700 members and 12 user groups worldwide. The COBOL community benefits from our local COBOL user groups, web site, forums, and peer support. [ http://www.cobug.com/ ]

      Other links: [ cbdhome.html ] [ http://www.cobolportal.com/ ] [ ooc.html ] [ http://www.cobolostandards.com/ ] [ index.html ] [ http://cobolforgcc.sourceforge.net/ ] [ http://www.csis.ul.ie/COBOL/ ] [ ring.htm ]

      (COBOLScript): languages [ http://www.deskware.com/ ]

      (ASP Active Server Pages): MS rival for server programming: see PHP and JSP [ wiki?ActiveServerPages ]
      (PHP): dynamic web pages, rival to JSP and ASP [ http://www.php.net/ ] and Paul Conrad's [ http://www.csci.csusb.edu/public/csci/pconrad/ ] Graduate Independent study [ php_intro.html ] of the syntax and semantics of PHP
      (JSP): Java based scripting/markup language.

      (Javascript): scripting on pages and servers [ javascript.html ]

      (Java): Compiled OO running on pages(clientside) and in servers [ java.html ] [ http://cse.csusb.edu/dick/cs320/java/ ] [ ../cs320/java/ ] [ java.www.sites.html ] [ index.html ] [ index.html ]
      (P'Nuts Scripting language for the Java Environment): languages [ http://javacenter.sun.co.jp/pnuts/ ]
      (Java Certification Program): languages [ solutions.html ]
      (How to Write Bad Java Code): languages [ unmain.html ]
      (JavaPP: CSP primitives for Java Threads:Cooperating Sequential Processes): languages [ javapp.html ]

      (Julia Language): Matlab and R but faster... [ http://julialang.org ]

        Julia is a high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to users of other technical computing environments. It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library. The library, mostly written in Julia itself, also integrates mature, best-of-breed C and Fortran libraries for linear algebra, random number generation, FFTs, and string processing. More libraries continue to be added over time. Julia programs are organized around defining functions, and overloading them for different combinations of argument types (which can also be user-defined).

      (Pascal): Simple but powerful parent of Ada and Modular [ pascal.syntax.html ]

      (Scala): A Combination of f=unctional, oo, .... that compiles into JVM or .NET [ scala.syntax.html ] (local) [ Scala_(programming_language) ] (Wikipedia) [ ScalaReference.pdf ] [PDF] The Scala Language Specification

      (Smalltalk): First language hyped as object-oriented [ smalltalk.html ]

      (UNIX): The other operating system
      (sh): UNIX Bourne Shell [ unix.syntax.html ]

      (Eiffel): OO Engineer? [ http://www.eiffel.com/ ]

      (FORTH): Designed to control telescopes but uniquely flexible and efficient. [ http://www.forth.org/ ] [ http://forth.com/starting-forth/ ]

      (FORTRAN): the October Horse of Languages. [ http://www.j3-fortran.org/ ]

      (GROOVY): worst name prize but looks like Java with fewer rules [ http://groovy.codehaus.org/ ]

      (LISP): List Processing -- (functional (simple (powerful (fun)))) [ lisp.html ] [ cltl2.html ] [ http://www.cs.cmu.edu/Groups/AI/html/cltl/clm/ ] [ lisp.html ] [ faq.html(A flowering bed of parentheses in the Spring)] .

      And see Clojure.

      (little b): A biological? language (2008) [ http://www.littleb.org/ ] sharing mathematical models of complex systems... for example ODEs Ordinary Differential Equations. Quote

        Aneil Mallavarapu is the author and inventor of little b, and runs the project. Little b is based in Common Lisp and contains mechanisms for rule-based reasoning, symbolic mathematics and object-oriented definitions. The syntax is designed to be terse and human-readable to facilitate communication. The environment is both interactive and compilable.

      (ML): Meta-Language [ index.html ] [ ml.syntax.html ]

      (Mozart): See Oz below.

      (Occam): Eliminating all but the necessary entities we get a very simple but powerful language. Dr. Gomez has sent me a link to a free and linux-based Occam: [ ?branch_id=34824&release_id=104099Can be compiled to run on a network of communicating computers] .

      (Oz): Multiparadigm Language [ features.html ]

      (Scribble): Multiplayer graphic "One laptop per child" [click here [socket symbol] scribble if you can fill this hole]

      (Scheme): Modernized LISP secure lisp: [ secure.html ]
      (scheme-48): Sample of Scheme [ http://s48.org/ ]

      (Prolog): Programming Logic [ prolog.html ] [ http://www.csci.csusb.edu/dick/cs320/prolog/ ]
      (Kernel Prolog - Open Source Project): logic programming languages [ kernelprolog.html ]
      (logtalk Object Oriented Prolog): logic programming languages [ logtalk.html ]

      (Perl): Pathologically Eclectic Report Language and the engine that drives a lot of the WWW [ perl.html ] [ http://www.perl.com/ ] //www.csci.csusb.edu/dick/doc/perl.FAQ.txt

      (Python): structured Object-Oriented...
      (Notes on Python): [ python.html ]

      (Ruby): structured, object-oriented, tidy rival to Perl. [ http://www.ruby-lang.org/en/ ]

      Here are some Ruby systems:

        [ http://www.ruby-lang.org/en/downloads/ ] - interpretor (his best bet in my opinion, but to each their own)

        [ http://www.erikveen.dds.nl/rubyscript2exe/ ] - 'compiler' with limited library (if it works for what he needs, I suggest this)

        [ http://www.erikveen.dds.nl/allinoneruby/ ] - 'compiler' with complete ruby library

        From: Andrew Murphy (CSCI 320) Comp Sci, CSUSB.

      (Modula-3): Grandchild of Pascal: exporting and importing for programmers. [ home.html ] //ftp.gte.com/pub/m3/linux-journal.html

      (charity): "Charity is a categorical programming language" [ home.html ]

      (ECLiPSe): (ECRC Constraint Logic Parallel System) is a logic programming system open for extensions, especially in the CLP area. [ reports.html ]

      (LOGO): a tool for learning [ programming.html ]

       		to logo
       		repeat manytimes [ typecommand ]

      (LOTOS): [ LOTOS.html ]

      (PEPA): Performance Evaluation Process Algebra [ PEPA.html ]

      (Linda): A distributed n-tuple based language by David Gerlernter, the Yale professor, was later the target of a Unabomb attack [ trivia.63c.html ] [click here [socket symbol] if you can fill this hole]

      (Obliq): "Obliq is a lexically-scoped untyped interpreted language that supports distributed object-oriented computation." Luca Cardelli 1994 [ src-rr-122.html ]
      (Visual Obliq): Visual Obliq [ VOHome.html ]

      (Legion): parallel processing, high performance, object-oriented, distributed systems, metasystems, wide area, gigabit networks [ index.html ]

      (O-plan): Open Planning Architecture [ http://www.aiai.ed.ac.uk/~oplan/ ]

      (Mathematica): Pretty pictures of equations! But wait! There is more! [ http://www.wri.com/ ] Wolfram Research.

      (APL): A Programming Language. Hundreds of mathematical/vector/array/etc operations and primitive control structures. Book: K. E. Iverson, A Programming Language, Wiley, 1962

      ACM Special Interest Group: SIGAPL [ http://www.sigmod.org/sigapl/ ] See also J.

      (J): Child of APL. [ wiki?JayLanguage ]

      (Erlang): parallel, concurrent, asynchronous message passing, functional, applicative, FP, programming language definition, PLD, [ http://erlang.org/ ] (Website -- books and open source) [ http://www.cbel.com/erlang_programming_language/ ] (general) [ Erlang_(programming_language) ] (Wikipedia) [ videoplay?docid=-5830318882717959520 ] (video) Website [Larson09]

      (Icon): goal oriented, coroutine coexpression generator, SL5, [ http://www.cs.arizona.edu/icon/ ] [ index.html ] Also see ancestor Snobol(Griswold).

      (Oberon): N. Wirth //neptune.inf.ethz.ch/

      (Snobol): Based on Markov algorithms and string processing, and named as a result of the paper snowballs thrown at people when the language was being developed, I hear See child Icon.

      (BCPL): Basic CPL, parent of B, and so grandparent of C etc. A language where all data is 16 bits and that used a dot where C/C++ uses an asterisk. There is a rich set of control structures inherited from CPL. Also multiple assignments! [ clive-on-bcpl.html ] [ bcpl.html ]

      (CPL): This ancestor of C used the typographical doubled S section marker to start blocks! The meaning of the acronym was disputed. Powerful control structures and other statements. BCPL was a practical system language developed from it.... see above.

      (Gwydion Dylan): languages [ http://www.gwydiondylan.org/ ]
      (Malbolge the Programming language from Hell): languages [ index.html ]
      (Universal Networking Language, Hiroshi Uchida): languages [ http://www.unl.ias.unu.edu/ ]

      (Tcl): [ -z_programming_languages_tcl ]

      Functional Languages

      (Functional languages in Software Engineering): languages [ hudak-paul.html ]
      (Mercury is a new logic/functional programming language): languages [ http://www.cs.mu.oz.au/research/mercury/ ]
      (LINQ Language INtegrate Query): MS .NET anti-SQL [ LINQ ] [Meijer11] [Beckman12]

      More? [click here [socket symbol] if you can fill this hole]

      Graphical Programming

      (Piet): You code should look this pretty... [ piet.html ]
      (Prograph): 2Diconic programming [ PrographFAQ.html ]
      (CUBE): 3 dimensional logic programming by Marc Najork at SRC of DEC, published in Dr. Dobb's Journal of Computer Calisthenics and Orthodonture (Running light with no overbyte:-)
      (TEMPO): My work in progress on Temporal Mapping [ rjb9Xx.TEMPO.html ]

      Analysis, Specification, Modeling and Design

      (DITA): Documentation Darwin Information Typing Architecture (DITA XML) [ dita.html ]

      (LarchC++: Object-oriented specification techniques.): languages [ larchc++.html ]
      (ACL2): languages [ acl2-doc.html ]
      (Model Integration): languages [ http://www.modelint.com/ ]
      (MATHS): My own notation used for these pages [ http://www.csci.csusb.edu/dick/maths/ ] targets understanding and modelling the problem before trying to solve it.
      (SDL site): language [ http://www.sdl-forum.org/ ]
      (Spec#): Microsoft's Specification language for design by contract [ http://research.microsoft.com/en-us/projects/specsharp/ ] with compilers (Boogie) and other tools that fit

      (UML): Unified Modeling Language. [ UML in methods ] [ uml.html ]
      (2 Years after UML Standard Sinan Si Alhir): languages [ #theumltwoyearsafteradoptionofthestand ]
      (Rational): languages [ index.jtmpl ]
      (UML Dictionary): languages [ UML.htm ]
      (OCL Object constraint language): IBM Application Development [ ocl.html ]
      (Z): Mathematical specification language. Elegant but needs TeX. [ z.syntax.html ] [ Z in methods ]

      Markup Languages

      (Markdown): simplified mark up for documents [ the-future-of-markdown.html ]
      (HTML): Hypertext Markup Language [ comp.html.glossary.html ] [ comp.html.syntax.html ]
      (SGML): Standardized Generalized Markup Language [ comp.text.SGML.html ]

      (XML): eXtendable Markup Language, [ xml.html ] Note compare XML with YAML and JSON for encoding data.

      (DocBook): XML languages [ http://www.oasis-open.org/docbook/ ] [ docbook-intro.html ]
      (Doing It With XML, Part 1 by Ken Sall): languages [ index.html ]
      (OpenMath): XML languages [ http://www.openmath.org/ ]
      (SVG XML based W3C Scalable Vector Graphics ): languages [ http://www.w3.org/Graphics/SVG/ ]
      (a XML): languages [ axml.html ]

      (TeX): (Tau epsilon Chi) -- For mathematical typography by Donald Knuth: [ comp.text.TeX.html ] [ comp.text.TeX.Mathematical.html ] [ people.html#Donald Knuth ] [ tex.html ]
      (LaTeX): A library and set of tools developed by Leslie Lamport for Donald Knuth's TeX markup language. The following links are from Ken Han at CSUSB:

      (LaTex Tutorial): [ tutorials.html ] [ http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/ ] [ LaTeX-Home.html ] [ http://it.metr.ou.edu/latex/ ] [ index.html ]

      (LaTeX Software tools): [ Setup.aspx ] (for Windows) and [ tex-index.html ] (for Mac OS X).

      (rtf): RichText Format [ rtf15_spec.htm ] (Version 1.5)

      (PostScript): Actually a page description language developed by Adobe. [ http://www.tjhsst.edu/~edanaher/pslife/ ] (Conway's game of life in PostScript).


      Languages designed to be used for writing and talking about other languages

      (International Standard EBNF Syntax Notation): language [ iso-ebnf.html ]

      Documentation -- Ways for recording data about software and systems

      Darwin Information Typing Architecture (DITA XML) [ dita.html ]

      My MATHS language: [ http://www.csci.csusb.edu/dick/maths/ ]

      For more see [ Analysis, Modeling and Design ] above.

      Unclassified Languages

      (VRML): Virtual Reality Modeling Language [ vrml.html ]
      (Checks Pattern Language of Information Integrity): languages [ checks.html ]
      (YAML): Wikipedia's excellent examples: [ YAML ]
      (YAML Ain't a Markup Language): YAML.org [ refcard.html ] [ http://yaml.org/spec/ ]
      (JSON): JavaScript Object Notation [ JSON.html ]

      Artificial Universal Languages

      (Basic English): [ Basic_English ] ( < 1,000 words! )
      (Blissymbol Semantography): [ Blissymbol ]


      1. Charles K Bliss
      2. Semantography ( Blissymbolics) 2nd Edn
      3. Semantography ( Blissymbolics), Sydney Australia 1942 [ http://www.semantography.com/ ]
      5. Dictionary of symbols [ http://www.semantography.com/4/ ]
      Other resources: [ http://www.blissymbolics.org/ ] (introduction to symbols) [ http://www.blissymbolics.us/animations/ ] (Animations of the derivations of some symbols) [ bliss-rules.pdf ] (Rules) [ http://www.blissymbolics.us/ ] (USA) [ http://www.crockford.com/blissym/ ] (introduction and fonts) [ lesson1.pdf ] (first lesson in Bliss) [ blissymbolics.htm ] (Intro -- one page of simplest symbols)

      (Dutton Speed Words): [ Dutton_Speedwords ]
      (Espranto): [ Esperanto ]
      (Loglan): [ Loglan ]
      (Lojban): Loglan's bastard [ Lojban ]
      (Shavian): Phonetic script for English [ Shavian ]

      Pointers to Other Languages

      If it isn't in this index try searching my whole site [ lookup.php ] my programming language courses [ lookup.php ] [ lookup.php ] or my bibliography [ bib.php ] or the following search engines
      (FAST Search): All the web all the time [ ?_oldhost=alltheweb.com ] and
      (Google search): of Usenet Newsgroups [ http://groups.google.com/ ]

      A Note on comments in Computer languages

      Nearly all computer languages have a notation for embedding natural language statements in the formal/meaningful code. At the suggestion of itansan_oorun@yahoo.com here is a quick list of some of the forms these take in different languages:
      LanguageSample CommentsNote
      FORTRANC THIS IS A COMMENTin column one, to end of card
      COBOL* COMMENTin collumn 8??, to end of card
      XLISP; this is a commentto end of line
      Algol 60comment this is a comment;+ another format
      Algol 68I forget!
      Pascal{ this is a comment }
      BASIC'this is a commentto end of line
      C /* this is a comment */
      Prolog% this is a commentto end of line
      C++// this is a commentto end of line
      Java/** this is a doc-comment */Includes C++ comments
      UNIX shells# this is a commentto end of line
      PHPall of the above?

      (Close Table)


    1. HHOS::="Ho Ho Only Serious", serious thoughts expressed using joke.

    . . . . . . . . . ( end of section My Computer Languages Page) <<Contents | End>>