What is B#?


A modern, object-oriented language designed explicitly for small footprint embedded systems.

Highlights

  • • Small, simple, and fast.
  • • Fully object-oriented with classes, interfaces, and handlers.
  • • Unified type system with no pointer manipulation.
  • • Uniform syntax for writing portable interrupt handlers and device addressing registers.
  • • Lean enough for 8-bit MCUs, expressive enough for 32-bit MCUs, and beyond.

B# also has its own virtual machine.


More highlights

  • • Component reuse and deployment across multiple architectures without recompilation.
  • • No reliance on third-party compiler and RTOS vendors.
  • • Compact and position-independent code generation (no linking).
  • • Portable multi-thread kernel.
  • • Deterministic memory defragmentation (no garbage collection).
  • • Small footprint (<24KBytes Flash and <2KBytes RAM).

B# offers what C can only emulate.

Past and Upcoming Events

Sessions at Embedded Systems Conference UK
Farnborough, October 2009

Sessions at Embedded Systems Conference Silicon Valley
San Jose, April 2009

B# Training Courses
Developing Embedded Applications with C and B#
Montreal, 13-14 Nov 2008
Montreal, 12-13 Jan 2009
Montreal, 23-24 Apr 2009

Talk at Trent University
Ontario, 6 Nov 2008

Sessions at Renesas Developer Conference
San Diego, 13-15 Oct 2008
B#: An OO Answer to C for Small Footprint Embedded Systems

Implementing a Reusable Memory Manager in ANSI C for Any Embedded Platform

Sessions at Embedded Systems Conference Silicon Valley
San Jose, April 2008