Changes

Jump to: navigation, search

Languages

12,402 bytes added, 10:26, 12 May 2018
Created page with "'''Home * Programming * Languages''' Chess programming is dominated by the C and C++ languages. The strongest engine in a non-C language is curr..."
'''[[Main Page|Home]] * [[Programming]] * Languages'''

Chess programming is dominated by the [[C]] and [[Cpp|C++]] languages. The strongest engine in a non-C language is currently [[Booot]] written by [[Alex Morozov]] in [[Delphi]]. [[Critter]] was also originally written in Delphi, but was rewritten in C++ after running into too many 64-bit bugs in the Delphi compiler. The next strongest non-Delphi, non-C program is [[CuckooChess]] written in [[Java]].

=Classical Languages=
[https://en.wikipedia.org/wiki/Compiler Compiled] and [https://en.wikipedia.org/wiki/Interpreted_language interpreted] languages.
* [[Ada]]
* [[Algol]]
* [[Assembly]]
* [[Basic]]
* [[C]]
* [[C sharp|C#]]
* [[Cilk]]
* [[Cpp|C++]]
* [[D-Proglanguage|D]]
* [[Delphi]]
* [[Forth]]
* [[Fortran]]
* [[Go (Programming Language)]]
* [[Haskell]]
* [[Java]]
* [[Lisp]]
* [[Modula-2]]
* [[OCaml]]
* [[OpenCL]]
* [[Pascal]]
* [[PL 1|PL/I]]
* [[Prolog]]
* [[Python]]
* [[Ruby]]
* [[Rust]]
* [[Scheme]]
* [[Simula]]

=Scripting Languages=
* [https://en.wikipedia.org/wiki/Category:Scripting_languages Scripting languages from Wikipedia]
* [http://www.compuphase.com/pawn/pawn.htm The pawn language] from [http://www.compuphase.com/index_en.htm CompuPhase]
* [[JavaScript]]
* [[Perl]]
* [[Tcl-Tk|Tcl/Tk]]

=Chess Languages=
* [[CHE]] <ref>[[Chrilly Donninger]] ('''1996'''). ''CHE: A Graphical Language for Expressing Chess Knowledge''. [[ICGA Journal|ICCA Journal]], [http://people.csail.mit.edu/heinz/iccaj_db/node20.html Vol. 19, No. 4], pp. 234-241</ref>
* [[Chess-Lisp]] for [[Steven Edwards]]' program [[Symbolic]]
* [[Chess Query Language]]
* [[MACH]] <ref>[[Michael George]] ('''1988'''). ''MACH: A Master Advisor for CHess''. M.Sc. thesis, [[University of Alberta]]</ref>

=Game Languages=
* [[Giuseppe Maggiore#Casanova|Casanova]]
* [[General Game Playing#GDL|Game Description Language]]
* [[Zillions of Games#ZRF|Zillions Rules Language]]

=Publications=
==1950 ...==
* [[Mathematician#Chomsky|Noam Chomsky]] ('''1956'''). ''Three models for the Description of Language''. [[IEEE#TIT|IEEE Transactions on Information Theory]], Vol. 2, [http://www.chomsky.info/articles/195609--.pdf pdf]
==1960 ...==
* [[Christopher Strachey]], [[Mathematician#MVWilkes|Maurice Wilkes]] ('''1961'''). ''[http://dl.acm.org/citation.cfm?id=366813.366816 Some Proposals for Improving the Efficiency of ALGOL 60]''. [[ACM#Communications|Communications of the ACM]], Vol. 4, No. 11
* [http://www.mathnet.ru/php/person.phtml?option_lang=eng&personid=63222 V. I. Sobel'man], [[Mikhail R. Shura-Bura]] ('''1962'''). ''[http://www.mathnet.ru/php/archive.phtml?wshow=paper&jrnid=zvmmf&paperid=7886&option_lang=eng Realization of recursive procedures in the language of AlGOL-60]''. (Реализация Рекурсивных Процедур В Языке Алгол-60) [http://www.mathnet.ru/php/archive.phtml?jrnid=zvmmf&option_lang=eng&wshow=statlist Zhurnal Vychislitel'noi Matematiki i Matematicheskoi Fiziki], Vol. 2, No. 2
* [[Mathematician#Chomsky|Noam Chomsky]], [[Mathematician#Schuetzenberger|Marcel P. Schützenberger]] ('''1963'''). ''The Algebraic Theory of Context Free Languages''. in P. Braffort, D. Hirschberg, Computer Programming and Formal Languages. Amsterdam: [https://en.wikipedia.org/wiki/Elsevier North Holland]
* [[Christopher Strachey]] ('''1967, 2000'''). ''[https://en.wikipedia.org/wiki/Fundamental_Concepts_in_Programming_Languages Fundamental Concepts in Programming Languages]''. [https://en.wikipedia.org/wiki/Higher-Order_and_Symbolic_Computation Higher-Order and Symbolic Computation], Vol. 13: 11–49
* [[Mathematician#EWDijkstra|Edsger Dijkstra]] ('''1968'''). ''Go To Statement Considered Harmful''. [[ACM#Communications|Communications of the ACM]], Vol. 11, No. 3, [http://www.cs.utexas.edu/users/EWD/ewd02xx/EWD215.PDF pdf] <ref>[https://en.wikipedia.org/wiki/Considered_harmful Considered harmful from Wikipedia]</ref> <ref>[http://www.codinghorror.com/blog/2007/10/id-consider-that-harmful-too.html Coding Horror: I'd Consider That Harmful, Too] by [https://en.wikipedia.org/wiki/Jeff_Atwood Jeff Atwood], October 25, 2007</ref>
* [https://en.wikipedia.org/wiki/B._V._Bowden,_Baron_Bowden Bertram Vivian Bowden] ('''1969'''). ''[http://www.chilton-computing.org.uk/acl/literature/reports/p014.htm The Language of Computers]''. [http://www.chilton-computing.org.uk/acl/literature/reports/overview.htm Literature: Reports] hosted by [[Atlas Computer Laboratory]]
==1970 ...==
* [[Mathematician#DScott|Dana Scott]], [[Christopher Strachey]] ('''1971'''). ''Toward an Mathematical Semantics for Computer Languages''. [http://ecee.colorado.edu/ecen5533/fall11/reading/PRG06.pdf pdf]
* [[Mathematician#WiWulf|William A. Wulf]] ('''1971'''). ''Programming Without the GOTO''. [[IFIP]], Ljubljana, Yugoslavia, August 1971 » [[C#Goto|goto]]
* [[Mathematician#WiWulf|William A. Wulf]], et al. ('''1971'''). ''Reflections on a Systems Programming Language''. Proceedings of the [[ACM#SIG|SIGPLAN]] Symposium on System Implementation Languages, Purdue University, October 1971
* [[Mathematician#WiWulf|William A. Wulf]] ('''1972'''). ''A Case Against the GOTO''. Proceedings of the [[ACM]] National Conference, Boston, August 1972 » [[C#Goto|goto]]
* [[Mathematician#WiWulf|William A. Wulf]], [[Mathematician#MShaw|Mary Shaw]] ('''1973'''). ''[http://c2.com/cgi/wiki?GlobalVariablesConsideredHarmful Global Variables Considered Harmful]''. [[ACM#SIG|SIGPLAN]] Notices Vol. 8, No. 2, February 1973
* [[Mike Clarke]] ('''1973'''). ''Some Ideas for a Chess Compiler''. Artificial and Human Thinking, reprinted 1988 in [[Computer Chess Compendium]]
* [[Donald Knuth]] ('''1974'''). ''Structured Programming with go to Statements''. [[ACM #Surveys|ACM Computing Surveys]], Vol. 6, No. 4, [http://cs.sjsu.edu/~mak/CS185C/KnuthStructuredProgrammingGoTo.pdf pdf] » [[C#Goto|goto]]
* [[Donald Michie]] ('''1976'''). ''[http://portal.acm.org/citation.cfm?id=1045272 AL1: a package for generating strategies from tables]''. [[ACM#SIG|ACM SIGART Bulletin]], Issue 59
==1980 ...==
* [[Mathematician#WiWulf|William A. Wulf]], [[Mathematician#MShaw|Mary Shaw]], [[Mathematician#PNHilfinger|Paul N. Hilfinger]], [[Mathematician#LFlon|Lawrence Flon]] ('''1980'''). ''Fundamental Structures of Computer Science''. [https://en.wikipedia.org/wiki/Addison-Wesley Addison-Wesley], [http://www.amazon.com/Fundamental-Structures-Computer-Science-William/dp/0201087251 amazon.com]
* [[Michael George]] ('''1988'''). ''MACH: A Master Advisor for CHess''. M.Sc. thesis, [[University of Alberta]]
==1990 ...==
* [[Mathematician#GBracha|Gilad Bracha]], [[Gary Lindstrom]] ('''1992'''). ''Modularity meets inheritance''. [http://dblp.uni-trier.de/db/conf/iccl/iccl1992.html#BrachaL92 ICCL 1992], [http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.34.8782 CiteSeerX]
* [[Henri Bal]], [[Mathematician#DGrune|Dick Grune]] ('''1994'''). ''[http://www.cs.vu.nl/%7Edick/PLE.html Programming Language Essentials]''. Addison-Wesley
* [[Chrilly Donninger]] ('''1996'''). ''CHE: A Graphical Language for Expressing Chess Knowledge''. [[ICGA Journal#19_4|ICCA Journal, Vol. 19, No. 4]]
* [[Matthew Huntbach]] ('''1998'''). ''Aldwych: A General Purpose Concurrent Language''. Department of Computer Science. [[Queen Mary, University of London|Queen Mary and Westfield College]], [http://www.eecs.qmul.ac.uk/~mmh/aldwych/papers/Aldwych_description.pdf pdf]
* [[Andrew Appel]] ('''1998'''). ''[https://www.cs.princeton.edu/~appel/modern/ml/ Modern Compiler Implementation in ML]''. [https://en.wikipedia.org/wiki/Cambridge_University_Press Cambridge University Press] <ref>[https://en.wikipedia.org/wiki/ML_(programming_language) ML (programming language) from Wikipedia]</ref>
* [[Liwu Li]] ('''1999'''). ''[http://ieeexplore.ieee.org/document/809628/ Object-Oriented Essential Modeling]''. [http://dblp.org/db/conf/apsec/apsec1999.html APSEC 1999]
==2000 ...==
* [[John Romein]], [[Henri Bal]], [[Mathematician#DGrune|Dick Grune]] ('''2000'''). ''The Multigame Reference Manual''. [https://en.wikipedia.org/wiki/Vrije_Universiteit Vrije Universiteit], [http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=B2397A260C8166B1B31EC4779585EA5F?doi=10.1.1.32.1664&rep=rep1&type=pdf pdf]
* [[John Romein]] ('''2001'''). ''Multigame - An Environment for Distributed Game-Tree Search''. Ph.D. thesis, [https://en.wikipedia.org/wiki/Vrije_Universiteit Vrije Universiteit], supervisor [[Henri Bal]], [http://dare.ubvu.vu.nl/bitstream/1871/11305/1/5429.pdf pdf]
* [[Jónheiður Ísleifsdóttir]] ('''2007'''). ''GTQL: A Query Language for Game Trees''. M.Sc. thesis, [https://en.wikipedia.org/wiki/Reykjav%C3%ADk_University Reykjavík University], [http://www.ru.is/lisalib/getfile.aspx?itemid=9655 pdf]
* [[Yngvi Björnsson]], [[Jónheiður Ísleifsdóttir]] ('''2007'''). ''GTQL: A Query Language for Game Trees''. [[CGW 2007]]
* [[Jónheiður Ísleifsdóttir]], [[Yngvi Björnsson]]. ('''2008'''). ''[http://link.springer.com/chapter/10.1007/978-3-540-87608-3_20 GTQ: A Language and Tool for Game-Tree Analysis]''. [[CG 2008]], [http://www.ru.is/faculty/yngvi/pdf/IsleifsdottirB08.pdf pdf]
==2010 ...==
* [[Giuseppe Maggiore]], [[Alvise Spanò]], [[Renzo Orsini]], [[Giulia Costantini]], [[Michele Bugliesi]], [[Mohamed Abbadi]] ('''2011'''). ''[http://link.springer.com/chapter/10.1007%2F978-3-642-31866-5_27 Designing Casanova: A Language for Games]''. [[Advances in Computer Games 13]] <ref>[http://casanova.codeplex.com/ Casanova Language - Home]</ref>
* [[Mohamed Abbadi]], [[Francesco Di Giacomo]], [[Giuseppe Maggiore]], [[Aske Plaat]], [[Renzo Orsini]], [[Pieter Spronck]] ('''2013'''). ''Resources, Entities, Actions. A generalized design pattern for RTS games and its language extension in Casanova''. [[CG 2013]], [http://askeplaat.files.wordpress.com/2013/01/main.pdf pdf]
* [[Ward Douglas Maurer]] ('''2013'''). ''[http://www.ccsenet.org/journal/index.php/cis/article/view/23904 A Programming Language without Keywords]''. [http://www.ccsenet.org/journal/index.php/cis Computer and Information Science], Vol. 6, No. 1

=Forum Posts=
* [http://www.open-aurec.com/wbforum/viewtopic.php?f=4&t=50192&p=190067 Engines written in which programming language?] by [[Andreas Herrmann]], [[Computer Chess Forums|Winboard Forum]], June 01, 2009
* [http://talkchess.com/forum/viewtopic.php?start=0&t=37825 Programming language features for computer chess] by [[Fabien Letouzey]], [[CCC]], January 27, 2011
* [http://www.talkchess.com/forum/viewtopic.php?t=46885 How beautiful is your code?] by [[Julien Marcel]], [[CCC]], January 15, 2013
* [http://www.talkchess.com/forum/viewtopic.php?t=56201 [OT] LOC counting tool] by [[Martin Sedlak]], [[CCC]], May 02, 2015 <ref>[https://en.wikipedia.org/wiki/Source_lines_of_code Source lines of code from Wikipedia]</ref>

=External Links=
==General==
* [https://en.wikipedia.org/wiki/Programming_language_theory Programming language theory from Wikipedia]
* [https://en.wikipedia.org/wiki/Formal_language Formal language from Wikipedia]
* [https://en.wikipedia.org/wiki/Chomsky_hierarchy Chomsky hierarchy from Wikipedia]
* [https://en.wikipedia.org/wiki/Chomsky%E2%80%93Sch%C3%BCtzenberger_theorem Chomsky–Schützenberger theorem from Wikipedia]
* [https://en.wikipedia.org/wiki/List_of_programming_languages_by_category Wikipedia: List of programming languages by category]
* [http://en.wikibooks.org/wiki/Computer_Programming Computer Programming from Wikibooks]
: [http://en.wikibooks.org/wiki/Computer_Programming/Hello_world Computer Programming/Hello world]

==Miscellaneous==
* [https://en.wikipedia.org/wiki/Compiler_Description_Language Compiler Description Language]
* [http://www.fluxagent.org/ Flux Home]
* [http://developer.amd.com/documentation/articles/pages/GetExtraordinaryPerformanceByExploitingtheGPU.aspx GPU-Programming] from [http://developer.amd.com/pages/default.aspx AMD Developer Central]
* [https://en.wikipedia.org/wiki/Interface_description_language Interface Description Language]
* [https://en.wikipedia.org/wiki/Unified_Modeling_Language Unified Modeling Language]
* [[Mathematician#Stroustrup|Bjarne Stroustrup]]: The 5 Programming Languages You Need to Know, [https://en.wikipedia.org/wiki/YouTube YouTube] Video
: {{#evu:https://www.youtube.com/watch?v=NvWTnIoQZj4|alignment=left|valignment=top}}

=References=
<references />

'''[[Programming|Up one Level]]'''

Navigation menu