Jump to content

AngelScript

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Billisbrother (talk | contribs) at 10:19, 31 October 2016 (@Ref 1: Linked to Siegfried Selberherr's profile and added missing publication year). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

AngelScript
ParadigmMulti-paradigm: scripting, imperative (procedural, object-oriented)
DeveloperAndreas Jönsson
First appeared2003
Stable release
2.31.0 / February 26, 2016; 8 years ago (2016-02-26)
Typing disciplinestatic, strong
OSCross-platform
Licensezlib License
Websiteangelcode.com/angelscript/ Edit this at Wikidata
Influenced by
C++

AngelScript is a game-oriented interpreted compiled scripting language.

AngelScript features static typing, object handles (similar to C++ pointers but garbage collected via reference counting), object-orientation, single inheritance, multiple inheritance with interfaces. Allows operators to be registered and overloaded. AngelScript can be used with any C++ IDE, such as Netbeans, Geany, Eclipse, and also supported by AngelJuice IDE developed specifically for the language.

C and C++ functions can be called within an AngelScript environment.[1][2] AngelScript's class syntax closely follows C++ classes by design: no proxy functions are required to embed AngelScript in C++ applications easing the two languages integration.[3] There are several differences of AngelScript and C++:

AngelScript is used in video game development,[4] including Amnesia: The Dark Descent,[5] Amy,[5] Dustforce,[5] Gekkeiju Online,[5] King Arthur's Gold,[5] Legend of the Guardians: The Owls of Ga'Hoole,[5] Overgrowth,[6] Penumbra: Overture,[5] Penumbra: Requiem,[5] Puddle,[5] Rigs of Rods,[5] Sine Mora,[5] Star Ruler,[5] SuperTuxKart,[5] Warhammer: Mark of Chaos,[5] Warsow.[5] AngelScript is used at the University of Ulm in interactive 3D-Animation program.[7] AngelScript is also used in robotics, for example, to program behavioral rules of robotic agents.[8]

References

  1. ^ Weinbub, Josef; Rupp, Karl; Selberherr, Siegfried (2010). "ViennaIPD-An Input Control Language for Scientific Computing" (PDF).
  2. ^ Golodetz, Stuart (2010). "Simplifying the C++/Angelscript Binding Process". ACCU.
  3. ^ Michael Dickheiser (2006). Game programming gems six. Charles River Media. ISBN 1584504501.
  4. ^ Nishimori, Taketoshi; Kuno, Yasushi (2012). "Join token: A language mechanism for programming interactive games". ScienceDirect.
  5. ^ a b c d e f g h i j k l m n o "Applications using AngelScript".
  6. ^ Orsvärn, Lukas; Riehl, Anton; Rosen, David (November 30, 2014). A good episode. YouTube. Overgrowth Weekly. Vol. 86. at 17m40s.
  7. ^ "Animal Race". University of Ulm. 2005.
  8. ^ Brandoff, Josh; Sayama, Hiroki (2009). "Cultural transmission in robotic swarms through RFID cards". IEEE Symposium on Artificial Life, 2009. ALife'09. IEEE. pp. 171–178. doi:10.1109/ALIFE.2009.4937709. ISBN 978-1-4244-2763-5. {{cite conference}}: Unknown parameter |booktitle= ignored (|book-title= suggested) (help)