SML is a "toy" machine language intended to teach basic processor concepts. This website contains an explanation and definition of SML, as well as an interpreter and example SML programs. GPLd source code for the interpreter is available, as well as binaries for Windows and Linux. A machine language defines a set of instructions that a CPU can execute to perform operations. In other words, a machine language defines what you can do with your computer. Modern processors have very complex instruction sets; however, the simple language described here can give you an understanding of what is happening "under the hood" with your computer. Machine language is the actual data that is directly run by the processor. Writing a program in machine language can therefore be advantageous if you need to save space or highly optimize your code. However, machine language is also not portable and can be difficult to understand and maintain. Therefore, almost all code is now written in a higher level language, such as C, C++, Java, or scripting languages such as shell or perl. These languages all have their advantages and disadvantages as well, such as varying levels of portability, maintainability, scalability, and execution speed. One level higher than machine language is assembly language. Assembly language is basically readable machine language. Instead of writing out the code bit-by-bit, you write out the code as a sequence of human readable instructions, which are then compiled almost directly into machine language. Assembly language is almost always used instead of machine language when such a direct level of control is needed. For example, some games implement part of their code in assembly in order to maximize execution speed. Assembly can be "inlined" into some higher level languages, like C. This means that the assembly is defined as a callable procedure from within the C code..

Development Editors
-
Legible Assembler 1.0 Beta
The Legible Assembler is an Open Source attempt to build an assembler that can convert Legible Assembly code into a linkable PE object file.
Legible Assembly will use a mixture of AT&T and Intel styles, prepositions and carriage return line...

Programming
-
The Complex Language 0.1
The Complex Language project is an object oriented programming language intended for scripting or rapid prototyping of applications. The design goals were to have very few simple but powerful concepts and to be easy to use and easy to learn. The...

133.12 KB

Code Management Tools
-
X Language 0.7.1
X Language is a new multi-syntax programming including a portable set of APIs to create console or graphical applications runnable on many platforms (UNIX/X11, Win32, ...). X Language comes with an interpreter, a compiler and a debugger. X...

Development Editors
-
newLISP 10.3.10 Dev
newLISP is a LISP-like scripting language that will help you in: programming for the internet, system administration, text processing, gluing other programs together, etc. newLISP is a scripting LISP for people who are fascinated by LISP's beauty...

1024 KB

Development Editors
-
newLISP for Linux 10.3.3
newLISP is a LISP-like scripting language that will help you in: programming for the internet, system administration, text processing, gluing other programs together, etc. newLISP is a scripting LISP for people who are fascinated by LISP's beauty...

1024 KB

Development Editors
-
newLISP for Mac OS X 10.3.3
newLISP is a LISP-like scripting language that will help you in: programming for the internet, system administration, text processing, gluing other programs together, etc. newLISP is a scripting LISP for people who are fascinated by LISP's beauty...

1024 KB

Programming
-
revava 0.3
revava is a single pass disassembler that reads in a file containing a program intended for an Atmel AVR microcontroller and outputs assembly code that can be input to an avr assembler. The output of revava contains assembler mnemonics where...

25.6 KB

Programming
-
C# Java Virtual Machine 1.0.1
C# Java Virtual Machine is a tiny implementation of the Java VM, including simple native classes. This project is written using the C# language. The VM is very easily expandable by writing additional native or Java classes. Whats New in This...

409.6 KB

NEW DOWNLOADS IN LINUX SOFTWARE, PROGRAMMING

Linux Software
-
Polling Autodialer Software 3.4
ICTBroadcast Auto Dialer software has a survey campaign for telephone surveys and polls. This auto dialer software automatically dials a list of numbers and asks them a set of questions that they can respond to, by using their telephone keypad....

488 B

Linux Software
-
Total Video Converter Mac Free 3.5.5
Total Video Converter Mac Free developed by EffectMatrix Ltd is the official legal version of Total Video Converter which was a globally recognized brand since 2006.
Total Video Converter Mac Free is a free but powerful all-in-one video...

Linux Software
-
SLAX 6.0+
Slax is a modern, portable, small and fast Linux operating system with a modular approach and outstanding design. Despite its small size, Slax provides a wide collection of pre-installed software for daily use, including a well organized graphical...

190 KB

Linux Software
-
GTK+ 2.5
GTK+, which stands for the GIMP Toolkit, is a library for creating graphical user interfaces for the X Window System. It is designed to be small, efficient, and flexible. GTK+ is written in C with a very object-oriented approach. Language bindings...

Programming
-
Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....

20.48 KB

Programming
-
dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...

327.68 KB

Programming
-
Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.