Top 1,000 Features Creators Events Podcasts Extensions Interviews Blog Explorer CSV

Imba

< >

Imba is a programming language created in 2014.

#221on PLDB 10Years Old
Download source code:
git clone https://github.com/imba/imba
Homepage · Source Code

Imba is a Web programming language that's fast in two ways: Imba's time-saving syntax with built-in tags and styles results in less typing and switching files so you can build things fast. Imba's groundbreaking memoized DOM is an order of magnitude faster than virtual DOM libraries, so you can build fast things.


Example from the web:
tag app-canvas prop dpr = window.devicePixelRatio prop state = {} def draw e let path = e.#path ||= new Path2D let ctx = $canvas.getContext('2d') path.lineTo(e.x * dpr,e.y * dpr) ctx.lineWidth = state.stroke * dpr ctx.strokeStyle = state.color ctx.stroke(path) def resized e $canvas.width = offsetWidth * dpr $canvas.height = offsetHeight * dpr <self @resize=resized @touch.prevent.moved.fit(self)=draw> <canvas$canvas[pos:abs w:100% h:100%]>

Language features

Feature Supported Example Token
Semantic Indentation

View source

- Build the next great programming language · About · Resources · Acknowledgements · Part of the World Wide Scroll