Skip to content

JavaScript Language Support

Maxime Chevalier-Boisvert edited this page Feb 13, 2014 · 20 revisions

JavaScript Support

JavaScript features supported by Higgs include:

  • Objects and methods
  • Dynamic addition and deletion of object properties
  • Prototype-based inheritance
  • Garbage-collection
  • Dynamically resizeable arrays
  • Closures
  • Constructor functions
  • Variadic functions and the arguments object
  • If/switch statements
  • For/while/do loops
  • For-in loop
  • Exceptions and try/catch/finally
  • Dynamic code loading with the load() function
  • Evaluation of code strings in the global scope with eval
  • JSON.parse and JSON.stringify
  • Regular expressions
  • UTF-16 strings and string operations
  • Integer and floating-point arithmetic
  • Automatic insertion of missing semicolons

Some features currently missing from Higgs are:

  • Getters and setters
  • The with statement, which is not yet implemented
  • Property attributes (e.g.: non-enumerable, read-only)

Language Extensions

Higgs also supports some custom extensions to JavaScript:

  • Low-level primitives for arithmetic and pointer manipulation
  • A Foreign Function Interface (FFI) library for interfacing with C code
  • A simple module system based on CommonJS Modules v1.0
Clone this wiki locally