C-Slang

In some cases code size must be kept to the absolute minimum regardless of execution speed. Examples include:

  • ROM-based software support of various software and hardware test procedures
  • Reaction to slow events, e.g., human interface

Important special case is downloadable code, such as for:

  • in-depth testing of embedded systems in design, manufacturing or failure analysis
  • "n:1" standby controllers

C-SLang is a language for this class of software components. Its design is optimized for code density and is motivated by an unusual company: 8-bit assemblers, FORTRAN and Java. C-SLang source resembles assembly code but compiles into executable (or, rather, interpreted) bytecode by a regular ANSI C compiler, because instructions are implemented as C macros, albeit unusual. The bytecode can be linked into your project or exported in downloadable (stand-alone) format. Bytecode interpreter, or C-SLang virtual machine (SVIRM), which runs C-SLang, also implements freely configurable hardware abstraction layer. It's worth noting that SVIRM has remarkably small footprint.

Get Demo | Previous Page | Downloads Search

If you found this page useful, bookmark and share it on:

 
Embedded Star Newsletter
Don't have time to visit Embedded Star everyday? Then sign up for our free newsletter. We'll send you an email when we have something to share with you. Your email address will be kept confidential and we will not share, sell, or rent it to anyone. You can unsubscribe at any time by clicking a link in the email.

Enter your email address to sign up for our free newsletter:   

If you are familiar with RSS feeds, you can also sign up for our free blog feed. Our RSS feed is updated in real-time while our newsletter is updated daily.