Fuxi Programming Language
From Wikipedia, the free encyclopedia
Fuxi(pronounced foo-shee), is a general-purpose, concurrent, object-oriented, declarative programming language, designed for use in application and systems programming, and implemented to meet the demands of network computing and mobility, and to provide a vehicle for rapid prototyping of software. It intends to make programming enjoyable, through the well-designed combination of the best ideas found in object-oriented, concurrent, functional, and logical programming paradigms, and the embodiment of a design philosophy: simplicity, efficiency, uniformity and consistency with conventions. So, Fuxi adopts a syntactical system and an object model strongly influenced by major current languages, such as C/C++, C#, JAVA, though the language itself is more declarative.
Fuxi reflects the major aspects of object orientation. But Fuxi differs from C++ and JAVA, in that it differentiates methods into functions, clauses, and triggers, and gives them a uniform syntax through pattern matching. The notable language features include:
Orthogonal stylization of objects; Guarded fields; Pattern extending and overriding in inheritance; Scripted object definition.
These features power the language with great expressiveness
The following is a simple example of Fuxi, which calculates the Fibonacci numbers:
import fuxi.*
public active Fibonacci : Applet { Fib(0) = 1 Fib(1) = 1 Fib( int n ) = Fib(n - 2) + Fib(n - 1)
public Activate() = let { int n = System.Console.Readln().ToInteger() } in { System.Console.Print( "Please Input a Number:" ) System.Console.Println( "Fib(" + n + ")=" + Fib(n) ) } }
Reference:
Fuxi Language Homepage