On 03/03/2010 06:28 PM, Anders Andersson wrote: > What would be the benefits of porting dwm to a new language? From my > point of view, dwm is already functional and mature, porting it over > to Go doesn't sound very constructive.
And porting it is a real pain, at the moment. For example, you don't have bindings to xlib. It is possible via cgo to create bindings, but it's not that straightforward to use them. If the decision is made to take xgb (the xcb port for Go), one will notice that xgb is a rather premature state. Some time ago I tried out small apps with xcb (to get familiar with it) in C, and one of them was to simply port dwm's most basic functionality to xcb. About 4 weeks ago I tried to port this to Go and xgb, which resulted in me changing the xgb part because somehow the xgb developers lost track and sense what xgb is. For example, instead of having an error handler facility, xgb prints out the error and even worse - in some cases you don't have the possibilty to get the error at all or even don't get a status that an error occured, the only thing that happens is that an error message is written to stdout... That said, when thinking about porting dwm to something like go and despite that I don't really like xcb, a stable/working/sane/suckless xgb would be a decent way to go as with Go's easy multithreading, the asynchronity would reach another level. nw