Difference between revisions of "RogueScript"

From RogueBasin
Jump to navigation Jump to search
m
Line 14: Line 14:
* extensive library of API functions
* extensive library of API functions
* reasonable speed
* 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!");
    }

Revision as of 13:19, 21 December 2011

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!");
   }