[Haskell-cafe] Using Haskell to write dbus server

John Millikin jmillikin at gmail.com
Tue Jan 5 13:27:19 EST 2010


There's already three client libraries:

http://hackage.haskell.org/package/dbus-client
http://hackage.haskell.org/package/network-dbus
http://hackage.haskell.org/package/DBus

Perhaps there is some confusion? The D-Bus server, or "bus", is a
service which allows many-to-many communication between clients. You
do not need an implementation of the server in Haskell to use D-Bus in
Haskell applications, and (to my knowledge) there is no API for the
reference server.

On Tue, Jan 5, 2010 at 10:19, Maciej Piechotka <uzytkownik2 at gmail.com> wrote:
> On Tue, 2010-01-05 at 09:37 -0800, John Millikin wrote:
>> Why would you want to?
>>
>> Any conforming D-Bus client can connect to any conforming D-Bus
>> server, so there's no particular advantage to having the same language
>> on both ends of the connection. Additionally, there's a lot of fiddly
>> low-level details (memory management, OS integration) which are
>> difficult to implement in Haskell but relatively easy in C. The
>> reference implementation of D-Bus has had an awful amount of work
>> poured into making it stable and usable even in the face of external
>> errors, such as out of memory -- replicating that work, in any
>> language would be a pain.
>>
>> That isn't a rhetorical question, by the way -- I've written
>> mostly-complete implementation of the client libraries, and intend to
>> write a server at some point. But without a clear reason to write the
>> server, it's just languishing on the TODO list. If you have any use
>> for a Haskell D-Bus server which can't be served by the reference
>> implementation, I'd be glad to hear it.
>
> Ok. I'll look on it. Maybe then I'll post the bindings (with some
> template haskell or similar) to hackage. The client have already
> established API (in terms of DBus) and is not in Haskell.
>
> Regards
>
>


More information about the Haskell-Cafe mailing list