LambdaNative
{{Short description|Development environment}}
{{Infobox software
| name = LambdaNative
| logo = LambdaNative logo.png
| developer = Pediatric Anesthesia Research Team, Digital Health Innovation Lab
| latest release version = 1.0.10
| latest release date = {{Start date and age|2018|5|15}}
| programming language = Scheme
| operating system = iOS, Android, BlackBerry 10, Windows, Mac OS X, Linux, OpenBSD, OpenWrt
| genre = Software development kit
| license = BSD
| website = {{URL|http://www.lambdanative.org/}}
}}
LambdaNative is an open-source cross-platform development environment written on top of the Gambit-C Scheme implementation of the Scheme programming language, supporting the creation of native applications on a range of mobile, desktop and embedded platforms.{{cite web |date=2016-03-08 |title=LambdaNative brings functional programming to IoT |url=https://www.proquest.com/docview/1771426573 |access-date=2025-03-27 |website=InfoWorld |via=ProQuest}} The underlying Scheme programming language has a long tradition of use in theoretical computer science, artificial intelligence and rapid program development.
History
The Scheme programming language was designed as a simplified and more abstract variant of the early Lisp programming language. The first Lisp implementation was available in 1958, Scheme was introduced in 1975.
{{details|Lisp (programming language)}}
{{details|History of the Scheme programming language}}
Development of LambdaNative toolkit started in 2009 at the Pediatric Anesthesia Research Team (PART) {{cite web|title=Pediatric Anesthesia Research Team :: Home|publisher=Pediatric Anesthesia Research Team|author=PART|date=November 19, 2013|url=http://part.cfri.ca/|accessdate=19 November 2013}} in Vancouver, Canada. It was initially used as an in-house platform for a closed-loop intravenous anesthesia system. Support for mobile platforms was added as PART became engaged in global health projects in 2010. The core LambdaNative framework was open-sourced in 2013.{{cite web|title=Powerful platform for mobile health apps now available as open source software|publisher=Child & Family Research Institute|author=Jennifer Kohm|date=Oct 9, 2013|url=http://cfri.ca/news/news/2013/10/09/powerful-platform-for-mobile-health-apps-now-available-as-open-source-software|accessdate=19 Nov 2013|archive-date=18 November 2013|archive-url=https://web.archive.org/web/20131118214544/http://www.cfri.ca/news/news/2013/10/09/powerful-platform-for-mobile-health-apps-now-available-as-open-source-software|url-status=dead}}
Features
LambdaNative combines the possibilities of a rapid prototyping environment using Scheme and C programming languages (feature of the underlying Gambit-C implementation) with easy cross-platform software generation and a set of modules including GUI programming, fast Fourier transform and modules to access typical phone hardware components such as camera, GPS and audio.
= Licensing =
LambdaNative is released under the BSD License.
= Platforms =
= Scheme based development =
LambdaNative applications are written in the Scheme language which can be easily mixed with C code. Scheme is a high level functional language with a very simple and expressive syntax. LambdaNative uses Gambit-C Scheme,{{cite web|title=Main Page - Gambit wiki|publisher=Marc Feeley|author=Marc Feeley|date=September 22, 2013|url=http://gambitscheme.org/wiki/index.php/Main_Page|accessdate=19 November 2013|display-authors=etal}} a portable standards-compliant Scheme to C compiler.
Applications written in the framework can be either event-loop driven graphical applications or console applications, and code can be abstracted in the form of modules and plugins. LambdaNative does not require the use of an Integrated Development Environment (IDE). The build system follows the conventional configure, make, make install command format.
= Graphics and user interface=
LambdaNative utilizes the OpenGL and OpenGL ES hardware accelerated graphics layer on the target platforms, and provides a full widget-based 2D graphics engine. It is also possible to render 3D scenes, and overlay a 2D user interface.
The cross-platform GUI is based on the highly portable glGUI widget toolkit.
= Audio =
= Sensors =
LambdaNative supports access to accelerometers, gyroscopes, GPS locators and other sensors where available on mobile devices.
Applications built with LambdaNative
LambdaNative has been used for a diverse range of medical applications, for example the Phone Oximeter,{{cite web|title=ecem: PhoneOximeter.org|publisher=The University of British Columbia|author=Joanne Lim|date=December 12, 2012|url=http://phoneoximeter.org/|accessdate=19 November 2013}} a smartphone based low-cost pulse oximeter. The Phone Oximeter was selected as one of the ten innovations for 2015 to achieve the United Nations Millennium Development Goals to decrease maternal and child mortality.{{cite web|title=Breakthrough Innovations That Can Save Women and Children Now - PATH|publisher=PATH|author=PATH/Evelyn Hockstein|date=September 23, 2013|url=https://path.azureedge.net/media/documents/APP_unga_innovations_rpt.pdf|accessdate=30 November 2018}}
LambdaNative-based applications have been used in clinical trials on >50,000 subjects in Canada, France, India, Uganda, Bangladesh, and South Africa, in >10 separate clinical studies.{{cite book|last1 = Petersen|first1 = Christian L|last2 = Görges|first2 = Matthias|last3 = Dunsmuir| first3 = Dustin|last4 = Ansermino|first4 = J Mark| last5 = Dumont|first5 = Guy A| title=Proceedings of the 18th ACM SIGPLAN international conference on Functional programming | chapter=Experience report: Functional programming of mHealth applications | pages = 357–362|publisher = ACM|location = Boston, MA|date = 19 November 2013| chapter-url = http://ecem.ece.ubc.ca/~cpetersen/lambdanative_icfp13.pdf|doi = 10.1145/2500365.2500615| isbn=9781450323260 | s2cid=14055790 }}{{cite web|title=COMMUNITY-LEVEL INTERVENTIONS FOR PRE-ECLAMPSIA|publisher=PRE-EMPT CO-ORDINATING CENTRE|date=29 September 2015 |url=http://pre-empt.cfri.ca/treatment/clip}}
See also
References
{{reflist}}
External links
- [http://www.lambdanative.org/ Official SDK Site]
- [https://github.com/part-cw/lambdanative Github Source repository]
Category:Android (operating system) development software
Category:BlackBerry development software