[racket] Internet of Things/ Marketplace

From: Jukka Tuominen (jukka.tuominen at finndesign.fi)
Date: Sun Nov 17 10:40:07 EST 2013

Thanks Jay for the prompt response, I'll check those things

Br, jukka

Sent from my iPhone

> On 17.11.2013, at 17.12, Jay McCarthy <jay.mccarthy at gmail.com> wrote:
> 
> Now that the new package system, most people are not maintaining their
> old Planet packages. The zeromq package has had a lot of change in
> particular and perhaps this has gone away for you:
> 
> http://pkgs.racket-lang.org/#[zeromq]
> 
> But also make sure that your library loading environment variables are
> set up right
> 
> Jay
> 
> On Sun, Nov 17, 2013 at 8:07 AM, Jukka Tuominen
> <jukka.tuominen at finndesign.fi> wrote:
>> 
>> There's also Jay's port to zeromq, which is looking very promising.
>> However, when I try to run it (racket 5.3.5/ Ubuntu 10.04) by...
>> 
>> #lang racket
>> 
>> (require (planet "main.rkt" ("jaymccarthy" "zeromq.plt" 2 1)))
>> 
>> ... it displays the following error:
>> 
>> ffi-lib: couldn't open "libzmq.so" (libzmq.so: cannot open shared object
>> file: No such file or directory)
>> 
>> ...eventhough there is one in /usr/local/lib/libzmq.so
>> 
>> Any idea of how to get it working?
>> 
>> br, jukka
>> 
>> 
>>> 
>>> Hi all,
>>> 
>>> some time ago I built a simple client/server proof-of-concept for the
>>> Liitin project ( www.liitin.org )
>>> http://lists.racket-lang.org/users/archive/2011-June/046372.html
>>> 
>>> Although this is still valid for a direct, one-way device/service
>>> communication, I now have a more generic and UX-oriented p-o-c in mind to
>>> follow the Liitin philosophy. Here’s my Internet of Things vision in
>>> brief:
>>> 
>>> 
>>> - A publish/ subscribe server that both users and devices can access
>>> through firewalls. Only the server requires a static, public IP. This will
>>> be available for Liitin users by default.
>>> 
>>> - Once a device is turned on, it automatically connects to the pub/sub
>>> server as a publisher to provide a two-way communication channel: pushing
>>> event notifications to subscribers and acting on subscribers’ commands. SW
>>> services may use the same method.
>>> 
>>> - Once the user has signed onto his/her (Liitin) account, a daemon is
>>> automatically launched to connect to the pub/sub server as a subscriber to
>>> both receive push notifications and allowing to send commands to the
>>> device.
>>> 
>>> - There’s a Device Manager GUI to add and manage devices. The devices only
>>> contain primitive functions in Racket syntax and all the higher-level
>>> programming is handled by Racket on the client side and stored as Liitin
>>> Objects. In effect, you can freely combine functionality from different
>>> devices and between users when shared. E.g.
>>> (when (below-zero? thermometer-x)(turn-on! heater-y))
>>> The event stream can be parsed e.g. for notifications and direct
>>> reactions, or be integrated into various GUI applications.
>>> 
>>> 
>>> I was happy to hear about the package Marketplace for Racket (
>>> http://blog.racket-lang.org/2013/05/marketplace-language-for-network-aware.html
>>> ), and I wonder if it could be used as a starting point? It would be
>>> native Racket all the way through. Another option is to choose some
>>> generic open-source pub-sub server, and make the user and device ends
>>> speak racket.
>>> 
>>> I’m still speaking of a p-o-c, so it’s more important at this phase to be
>>> able to have the ends communicate with each other and to manage multi-user
>>> and multi-device traffic than to make the implementation robust and
>>> secure. Those come later.
>>> 
>>> I will use virtual machines for the pub/sub server and device clients to
>>> begin with. The user clients will be integrated into Liitin accounts. It
>>> would be great to add Arduino support at some point.
>>> 
>>> What do you think, would the Marketplace be a good starting point or do
>>> you recommend some other approach? Any pointers and comments regarding
>>> either the concept or the implementation are greatly appreciated.
>>> 
>>> 
>>> br, jukka
>>> 
>>> 
>>> 
>>> ____________________
>>>  Racket Users list:
>>>  http://lists.racket-lang.org/users
>> 
>> 
>> ____________________
>>  Racket Users list:
>>  http://lists.racket-lang.org/users
> 
> 
> 
> -- 
> Jay McCarthy <jay at cs.byu.edu>
> Assistant Professor / Brigham Young University
> http://faculty.cs.byu.edu/~jay
> 
> "The glory of God is Intelligence" - D&C 93


Posted on the users mailing list.