Difference between revisions of "RogueScript"

From RogueBasin
Jump to navigation Jump to search
m
 
Line 23: Line 23:
         lib::notation("Hello World!");
         lib::notation("Hello World!");
     }
     }
[[Category:Developing]]

Latest revision as of 20:19, 1 November 2012

Description

RogueScript is a proposed interpreted language with C style syntax. It should be noted that this language is not intended to be used in development of an engine, but as a means to control roguelike objects within a user-made game world (created with a game creation system).

Features

  • C style syntax
  • table type (but no array type)
  • first class functions
  • closures
  • dynamic typing with javascript style coercion for '==' operator
  • basic types (such as bool, null, float, int, string, thing_ref, closure, function_ref)
  • thing reference for passing around handles on game world objects
  • extensive library of API functions
  • reasonable speed

Hello World program

(Note: there is no main function. Several function names are associated with events. The 'begin' event occurs at the start of the game. It gets called only once.)

   event begin()
   {
       lib::notation("Hello World!");
   }