19,091 research outputs found
ADLib: An Arduino Communication Framework for Ambient Displays
As computers become more and more a part of our everyday lives, the need to change the way in which people interact with them is also evolving. Ambient displays provide an effective way to move computers away from our main focus and into the periphery.
ADLib is a small communication framework that aims to simplify the construction of ambient displays built using the Arduino prototyping platform. The ADLib framework provides an easy-to-use library for communicating with an Arduino, allowing the user to focus on the construction and development of the display.
The framework consists of three main components: A protocol for encoding information to be sent from a host computer to the Arduino An Arduino library for receiving and parsing incoming data A desktop application for sending data to the Arduin
Free Applicative Functors
Applicative functors are a generalisation of monads. Both allow the
expression of effectful computations into an otherwise pure language, like
Haskell. Applicative functors are to be preferred to monads when the structure
of a computation is fixed a priori. That makes it possible to perform certain
kinds of static analysis on applicative values. We define a notion of free
applicative functor, prove that it satisfies the appropriate laws, and that the
construction is left adjoint to a suitable forgetful functor. We show how free
applicative functors can be used to implement embedded DSLs which can be
statically analysed.Comment: In Proceedings MSFP 2014, arXiv:1406.153
The Grid[Way] Job Template Manager, a tool for parameter sweeping
Parameter sweeping is a widely used algorithmic technique in computational
science. It is specially suited for high-throughput computing since the jobs
evaluating the parameter space are loosely coupled or independent.
A tool that integrates the modeling of a parameter study with the control of
jobs in a distributed architecture is presented. The main task is to facilitate
the creation and deletion of job templates, which are the elements describing
the jobs to be run. Extra functionality relies upon the GridWay Metascheduler,
acting as the middleware layer for job submission and control. It supports
interesting features like multi-dimensional sweeping space, wildcarding of
parameters, functional evaluation of ranges, value-skipping and job template
automatic indexation.
The use of this tool increases the reliability of the parameter sweep study
thanks to the systematic bookkeping of job templates and respective job
statuses. Furthermore, it simplifies the porting of the target application to
the grid reducing the required amount of time and effort.Comment: 26 pages, 1 figure
- …