[livecode] Extempore

From: <andrew_at_moso.com.au>
Date: Mon, 28 Jan 2013 21:27:12 +1000 (EST)

For those who don't know about, or follow Impromptu, I've been beavering away on a new environment called Extempore for the past two years. I haven't talked a whole lot about Extempore as it's been in the building stage, but it's now getting to the usable stage. Here is a short video of an installation built recently using Extempore. https://vimeo.com/58239256 There has been a bit of a trend in recent years for livecoding environments to privilege ease-of-use and accessibility. Extempore bucks this trend - it hates the web, doesn't clean up its own garbage, forces you into type contortions, and generally expects you to know what you're doing. Instead Extempore aims to provide a completely hotswappable runtime environment with a strong temporal semantics, flexible concurrency architecture, builtin support for distributed heterogenous operation (both OS and Architecture), and provides compiler-as-a-service functionality. Extempore includes a new programming language called xtlang, which uses an s-expression syntax common to Lisp, and more particularly to Scheme. xtlang also borrows many Lisp like semantics including first class closures, tail recursion and macros. However, xtlang also borrows heavily from systems languages like 'C' including static typing, low-level type expressivity, direct pointer manipulation and explicit memory managment (i.e. no GC). xtlang then extends these 'C' semantics with type-inferencing, ad-hoc polymorphism, reified generics, and zone/region based memory management. In short it's a systems programming language with on-the-fly hot-swap everything. Extempore's core developed out of Impromptu - the origin of the xtlang compiler actually shipped with Impromptu 2.5 in 2010. However Extempore is a much more ambitious project with a more general focus on real-time systems. Extempore is high-performance and designed for full application-stack runtime compilation and on-the-fly (re)binding. Here is an *old* screencast which gives a feel for this in an audio context: https://vimeo.com/21956071 The main reason for the post is that Ben Swift has started writing a great series of tutorials which cover the Extempore basics and should get anyone interested up and running. You can find his tutorials online at: http://benswift.me/extempore-docs/ Extempore runs on Linux, OSX and Windows 7 (8?), although we still don't have proper delivery systems in place. So if you have trouble with the build and install tutorials then send Ben or I an email and we'll help you out. The audio infrastructure is currently quite minimal so if you're looking to get involved in a new project working on dsp and instrument building then we'd love to hear from you! See you all in Europe in April! Cheers, Andrew. http://extempore.moso.com.au
Received on Mon Jan 28 2013 - 11:27:57 GMT

This archive was generated by hypermail 2.4.0 : Sun Aug 20 2023 - 16:02:23 BST