Go! (programming language): Difference between revisions

Content deleted Content added
Further reading: request article on journal
Citation bot (talk | contribs)
m Alter: template type. Add: citeseerx, isbn. Removed parameters. | You can use this bot yourself. Report bugs here. | User-activated.
Line 26:
== Design ==
 
The authors of Go! describe it as "a [[multi-paradigm programming language]] that is oriented to the needs of programming secure, production quality, agent based applications. It is [[multi-threaded]], strongly typed and [[higher order function|higher order]] (in the functional programming sense). It has relation, function and action procedure definitions. Threads execute action procedures, calling functions and querying relations as needed. Threads in different agents communicate and coordinate using asynchronous messages. Threads within the same agent can also use shared dynamic relations acting as [[Linda (coordination language)|Linda]]-style [[tuple space|tuple stores]]."<ref name="aamas">{{cite journalbook |last1=Clark |first1=K.L. |last2=McCabe |first2=F.G. |year=2003 |title= Go! for multi-threaded deliberative agents |journal=International Conference on Autonomous Agents (AAMAS'03) |pages=964–965 |url doi=http://portal10.acm.org1145/citation.cfm?doid=860575.860747 |isbn=978-1581136838 doi|citeseerx=10.1145/8605751.8607471.117.184 }}</ref>
 
The authors also propose that the language is suitable for representing [[Ontology (information science)|ontologies]] due to its integration of [[logic programming|logic]], [[functional programming|functional]] and [[imperative programming|imperative]] styles of programming.<ref name="applied">{{cite journal |last1=Clark |first1=K.L. |last2=McCabe |first2=F.G. |year=2006 |title=Ontology oriented programming in go! |journal=Applied Intelligence |volume=24 |issue=3 |pages=189–204 |doi=10.1145/860575.860747 |citeseerx=10.1.1.117.184 }}</ref>
 
== Example ==
Line 68:
 
==Conflict with Google==
In November 2009, [[Google]] released a similarly named [[Go (programming language)|Go programming language]] (with no [[exclamation point]]). McCabe asked Google to change the name of their language as he was concerned they were "steam-rolling over us".<ref name="infowk"/><ref>{{cite web|url=http://code.google.com/p/go/issues/detail?id=9 |title=Issue 9 - go - I have already used the name for *MY* programming language |publisher=code.google.com |date=2009-11-10 |accessdate=2009-11-14}}</ref> The issue received attention among technology news websites, with some of them characterizing Go! as "obscure".<ref>{{cite news|url=http://www.geek.com/articles/news/google-didnt-google-go-before-naming-their-programming-language-20091113/|title=Google didn’t google "Go" before naming their programming language |last=Brownlee |first=John |date=2009-11-13 |publisher=Geek.com |accessdate=2010-01-18}}</ref> The issue thread opened on the subject was closed by a Google developer on 12 October 2010 with the custom status "Unfortunate" and with the following comment: "there are many computing products and services named Go. In the 11 months since our release, there has been minimal confusion of the two languages."
 
== References ==
Line 76:
{{Refbegin}}
* {{cite paper |last1=Clark |first1=K. L. |last2=McCabe |first2=F. G. |year=2003 |title=Ontology Oriented Programming in Go! |url=http://www.doc.ic.ac.uk/~klc/DistKR.pdf }}
* {{cite journal |last1=Clark |first1=K. L. |last2=McCabe |first2=F. G. |year=2004 |title=Go!—A Multi-Paradigm Programming Language for Implementing Multi-Threaded Agents |journal=[[Annals of Mathematics and Artificial Intelligence]] |volume=41 |issue=2–4 |pages=171–206 |url=http://portal.acm.org/citation.cfm?id=998367 |doi=10.1023/B:AMAI.0000031195.87297.d9 |citeseerx=10.1.1.133.1069 }}
* {{cite journal |author=R. Bordini |year=2006 |title=A Survey of Programming Languages and Platforms for Multi-Agent Systems |journal=Informatica |volume=30 |pages=33–44 |url=http://www.informatica.si/vol30.htm |display-authors=etal |deadurl=yes |archiveurl=https://web.archive.org/web/20091115151833/http://www.informatica.si/vol30.htm |archivedate=2009-11-15 |df= }}
* {{cite journal |author=M. Fisher|year=2007 |title=Computational Logics and Agents - A Roadmap of Current Technologies and Future Trends |journal=Computational Intelligence|volume=23 |issue=1 |pages=61–91 |url=http://www3.interscience.wiley.com/journal/118495224/issue |doi=10.1111/j.1467-8640.2007.00295.x |display-authors=etal|citeseerx=10.1.1.114.6149 }}
*{{cite book|last=McCabe|first=Francis G.|title=Lets Go!|url=https://books.google.com/books?isbn=0975444913|date=February 7, 2007|publisher=Network Agent Press|isbn=978-0-9754449-1-7}}
* {{cite conference |author=C. Varela|year=2004 |title=On Modelling Agent Systems with Erlang | conference=ACM SIGPLAN Erlang Workshop '04|conferenceurl=http://ftp.sunet.se/pub/lang/erlang/workshop/2004/ |display-authors=etal}}