<ehiggs>no wingo talks at fosdem Guile devroom this year; or llvm devroom. wingo are you going to fosdem this year? <paroneayea>ehiggs: I believe wingo isn't from previous conversation <paroneayea>I think they have other conference or work trip things happening iirc <ehiggs>ok i think ludo is making up for it with his talks in guile + hpc room <paroneayea>I'll be giving a talk on 8sync and moderating a panel <paroneayea>the talk on 8sync will use a multiplayer text adventure instead of slides ;) <davexunit>ACTION has game controllers accessible to guile now :) <davexunit>paroneayea: yeah it definitely makes game dev more fun when you can use a real controller. <davexunit>ps3 controllers "just work" with linux-libre, and SDL will even map all the buttons and analog sticks for you. <davexunit>they have a low-level joystick interface that let's you use any USB HID joystick, but then there's a high-level "game controller" interface that automagically recognizes certain common controllers. very nice. <paroneayea>I am now at the part in the 8sync tutorial where I want to show users how to write their own actors and learn how to do timed/delayed things <paroneayea>so I was thinking of this, and I wonder if you think it's a good idea or too complicated <paroneayea>I've already introduced how to do an IRC bot, but I wonder if doing a little "game" over IRC might be fun... maybe one where two people register over IRC to do a "battle", and they have their proxy warriors do some timed battles, but they switch "stances" which have kind of a rock paper scissors mechanic <paroneayea>maybe I should keep that as an "extended example" section or something, I dunno <davexunit>if you keep the battle mechanics very simple I think it would work <paroneayea>yeah I think it could be kept simple, probably :) <paroneayea>maybe I should write it out and see how simple I can get it. <davexunit>to see if it overwhelms someone who doesn't know your api <Partmedia>Hi there. I'm kind of new to Guile and I'm wondering if there's a good resource on return conventions. For instance, what should a function do when it could return a string or nothing (like Maybe's in Haskell)? <davexunit>Partmedia: you just return a string in the case that you want to return a string <Partmedia>Also, when writing code that checks for errors I find myself doing (let ((result (blah)) (if (null? result))... there seems there should be a better way to do this? <davexunit>the guile manual has a section on exceptions and error handling <Partmedia>well, as an example in point the string-match returns a match object or #f <Partmedia>and for i/o I'd check eof-object? but it all involves a let/if check and I was wondering if there was a better way to do it <davexunit>there's things like and=> that apply in certain cases <Partmedia>But I take it most people check errors by doing let/if? <davexunit>error handling is done with 'catch' and co. usually <davexunit>scheme is quite different from haskell, but you'll get the hang of it. <OrangeShark>Partmedia: you could use lists to be similar to Maybe in haskell. Where '() represents nothing and (x) be something. <OrangeShark>you can also use the fact any non #f value is considered true <Partmedia>thanks davexunit, OrangeShark. It takes a while to figure out what the canonical way to do things is. But with guile I imagine there's less of a "canonical" way :p ***random-nickname is now known as random-nick