5 Programming Languages
*Alice (programming language)
-Alice ML is a functional programming language designed by the Programming Systems Lab at Saarland University. It is a dialect of Standard ML, augmented with support for lazy evaluation, concurrencymultithreading and distributed computing via remote procedure calls) and constraint programming. The Alice implementation from Saarland University uses the SEAM (Simple Extensible Abstract Machine) virtual machine. It is free software, and features just-in-time compilation to bytecode as well as native code for the x86 architecture. Early versions of Alice ran on the Mozart/Oz VM, allowing interfacing between Alice and Oz code.
*Draco (programming language)
-Draco was a shareware programming language for CP/M and the Amiga, created by Chris Gray in the early 1980s, and discontinued sometime around 1990. Draco, a blend of Pascal, C and ALGOL 68, was a strongly typed language most notable for its ability to produce small, optimized executables, and for the compiler's ability to work in very limited memory spaces. Gray himself used Draco for the Amiga to create a port of Peter Langston's Empire game, called Amiga Empire. There is a freeware Draco-to-C converter available at Aminet. Also, the source code of Draco (which is itself written in Draco) is now also available at Aminet.
*Einstein (programming language)
-Einstein is an open source fourth generation programming language (4GL) written on top of the Deesel 3GL programming language. It is a flow based programming language supporting message based constructs such as: read/write/route/join/split.All data in Einstein takes the form of a message. A message contains a payload and associated metadata which relates to such concerns as routing, security and so on. The payload takes the form of a DataObject, DataObject’s are a means to interact with payloads without knowing the nature of the data in the payload. So one may query, join, split, etc a payload without knowing whether it is XML or an object graph.
*Ivy Programming Language
-The Ivy programming language has been announced. It is an extensible, late-binding, bytecode-interpreted scripting language. Ivy includes support for closures, lambda functions, named argument passing, default arguments, garbage collection, C-like operators, built-in string slicing, plus other features.
*Mythryl
-Mythryl is a general-purpose, modular, functional programming language with compile-time type checking and type inference supporting both scripting and application development. Mythryl is self-hosting, that is to say the Mythryl compiler is written in Mythryl.
Mythryl is derived from SML/NJ, a compiler and programming environment for Standard ML. It differs in that SML/NJ is a platform-neutral research testbed with an idiosyncratic syntax derived from Robin Milner's work with the logic framework LF, whereas Mythryl is a Linux-centric production-oriented software development platform with a C-like syntax.
Compare two Programming Languages
*Alice VS Draco*
Alice is a freeware object-oriented educational programming language with an integrated development environment (IDE). Later versions are implemented in Java. Alice uses a drag and drop environment to create computer animations using 3D models. The software was developed first at University of Virginia, then Carnegie Mellon (from 1997), by a research group led by the late Randy Pausch. Alice was developed to address three core problems in educational programming while Draco, a blend of Pascal, C and ALGOL 68, was a strongly typed language most notable for its ability to produce small, optimized executables, and for the compiler's ability to work in very limited memory spaces. Gray himself used Draco for the Amiga to create a port of Peter Langston's Empire game, called Amiga Empire.
Examples:
*Einstein
resource "time(schedule=cron):0/10 * * * * ?" everyTenSeconds;
resource "time(schedule=cron):0/1 * * * * ?" everySecond;
resource "stack:TimeStack" stack; (<< "time:yyyy-MM-dd'T'HH:mm:ss.SSSZ" ) >> "std:The time according to Einstein is ";
listen everyTenSeconds "bool:true" (read all stack >> "std:");listen everySecond "bool:true" (write stack); *Mythryl
#!/usr/bin/mythryl
for (i = 0; i < 10; ++i) {
printf "%d\n" i;
}; #!/usr/bin/mythryl
foreach (dir_tree::files ".") .{ if (#file =~ ./\\.[ch]$/) printf "%s\n" #file; fi; }; fun factorial( n ) = {
if (n == 0) 1;
else n*factorial( n-1 );
fi;
};
No comments:
Post a Comment