avsm has quit [Read error: Connection reset by peer]
penryu has joined #ocaml
avsm1 has quit [Quit: Leaving.]
<penryu>
I've found ocamlbob and xavierbot, but was wondering if there's anything like the "roll your own irc bot" tutorial like that lazy language has?
<penryu>
just as more of a step-by-step process
avsm has joined #ocaml
mdelaney has quit [Quit: mdelaney]
ztfw has joined #ocaml
arubin has quit [Quit: arubin]
zorun has quit [Read error: Connection reset by peer]
ygrek has joined #ocaml
<adrien>
penryu: not sure, but I'm a bit surprised: IRC is not terribly hard, it's mostly a connected socket and then human-readable messages
<adrien>
penryu: I don't know any tutorial specifically for IRC but I think that pleac (pleac.sf.net) has all the corresponding steps
emmanuelux has joined #ocaml
<penryu>
adrien: no, IRC isn't hard, but ocaml is still new to me. this is a sort of learning project. that site looks great. thanks!
<adrien>
penryu: :-)
<adrien>
I don't think it mentions mikmatch, but it's worth knowing: it makes matching a string against a set or regular expressions *very* easy and native to ocaml
<penryu>
I'm surprised so much effort was put into converting the Perl Cookbook to $language
<penryu>
not that I don't see the usefulness. more that they used the _Perl_ Cookbook as a starting point.
<penryu>
miCmatch?
<penryu>
oic
<adrien>
the perl cookbook has _many_ examples
<adrien>
micmatch was renamed to mikmatch
<penryu>
true on both.
<penryu>
my PCB is at work, but it looks like I don't need it.
<penryu>
by native, you mean mikmatch integrates elegantly with ocaml syntax?
<adrien>
yes
<adrien>
match "some_string_foo" with
<penryu>
sweet. /me plays
<adrien>
RE "(.* as first)\\_(.* as second)\\_(.* as third) -> Printf.printf "first word was %s, second word was %s, third word was %s\n" first second third
<adrien>
syntax is not exact but you get the point
<Qrntzz>
penryu: I am in the proccess of writing my own simpleton bot, extended by dynlinked modules. I will let you know when it's in a usable/hackable state :)
<Qrntzz>
maybe I'll even write a tutorial for that matter, but the code is pretty clear by itself
<penryu>
Qrntzz: I don't understand the full implication of the dynlinked modules yet, but I'd appreciate the heads-up, thanks
<Qrntzz>
penryu: you're welcome.
<adrien>
penryu: you can load and unload features with dynlinked modules, not just enable/disable them
<penryu>
ah, for run-time loadable plugins and features. excellent.
<penryu>
and unloadable... so you don't have to shut down the process to debug modules?
seafood has joined #ocaml
<adrien>
for instance
<penryu>
yeah, just one possible application in the irc bot context.
<flux>
penryu, while you're doing it, please construct it in a way that the protocol is handled by a library. this way I can steal it and replace my use of ocaml-irc, which isn't that great :)
<flux>
(I guess asking for an Lwt-based irc protocol library at this point would be stretching it a bit too much..)
<adrien>
lwt-based? what do you have in mind?
<flux>
nothing in particular, but I imagine it would open some possibilities, for example the ability to use a message passing library for Lwt I've written earlier (very similar to the Event module)
<adrien>
ok
seafood has quit [Quit: seafood]
lpereira has joined #ocaml
zorun has joined #ocaml
DimitryKakadu has joined #ocaml
avsm has quit [Quit: Leaving.]
ygrek has quit [Remote host closed the connection]
ygrek has joined #ocaml
lopex has joined #ocaml
lopex has quit [Client Quit]
lopex has joined #ocaml
ikaros has joined #ocaml
zorun has quit [Read error: Connection reset by peer]
zorun has joined #ocaml
lopex has quit []
<adrien>
ah, my lablgtk-react stuff is starting to look pretty good =)
avsm has joined #ocaml
emmanuelux has quit [Remote host closed the connection]
emmanuelux has joined #ocaml
struktured has quit [Ping timeout: 252 seconds]
avsm has quit [Ping timeout: 258 seconds]
ulfdoz has joined #ocaml
dcolish has joined #ocaml
Snark has joined #ocaml
struktured has joined #ocaml
struktured has quit [Ping timeout: 252 seconds]
struktured has joined #ocaml
jamii has joined #ocaml
yezariaely has joined #ocaml
struktured has quit [Quit: Konversation terminated!]
struktured has joined #ocaml
ulfdoz has quit [Ping timeout: 252 seconds]
avsm has joined #ocaml
avsm has quit [Client Quit]
avsm has joined #ocaml
dnolen has joined #ocaml
smerz has joined #ocaml
jamii has quit [Ping timeout: 260 seconds]
ankit9 has quit [Ping timeout: 258 seconds]
eb4890 has joined #ocaml
<zorun>
bobry: ping
<bobry>
zorun: yup, can't find that -compiler-libs package; you sure it's already in extra/?
ttamttam has quit [Remote host closed the connection]
<zorun>
bobry: thanks!
dnolen has quit [Ping timeout: 258 seconds]
Associat0r has joined #ocaml
Associat0r has quit [Changing host]
Associat0r has joined #ocaml
arubin has joined #ocaml
dnolen has joined #ocaml
jaar has joined #ocaml
ttamttam has joined #ocaml
yezariaely has left #ocaml []
eb4890 has quit [Ping timeout: 258 seconds]
ttamttam has quit [Remote host closed the connection]
lpereira has quit [Quit: Leaving.]
ftrvxmtrx has quit [Ping timeout: 258 seconds]
ftrvxmtrx has joined #ocaml
<adrien>
I'm curious: are there people using stdlib's Event module?
DimitryKakadu has quit [Quit: Konversation terminated!]
Anarchos has joined #ocaml
<adrien>
also, lablgtk2 is currently missing a way to connect to the ::notify signals of glib: when a glib property named "foo" is modified, the signal "foo::notify" is fired (like the title of a webpage for instance); I made it possible to do it but it involves something like this currently:
<adrien>
the typical use of signals in lablgtk would be webview#connect#title_changed ~callback:self#label#title (assuming that the signal carries the value of "title" and that I managed to make the GtkSignal.connect_property function being able to carry values other than unit)
<adrien>
so the question is: how would you like such an API to be?
Snark has quit [Quit: Quitte]
<adrien>
webview#connect#title_changed, overriding the sometimes exising foo_changed signals (but they are getting deprecated in favor in "foo::notify" pretty much everywhere)
<adrien>
webview#connect_property#title, introducing a #connect_property method everywhere (or "#connectp" for that matter)
<adrien>
something else?
<adrien>
webview#notify#title for instance
Anarchos has quit [Quit: Vision[0.9.7-H-090423]: i've been blurred!]
ygrek has quit [Ping timeout: 248 seconds]
ftrvxmtrx has quit [Ping timeout: 252 seconds]
ftrvxmtrx has joined #ocaml
ftrvxmtrx_ has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 276 seconds]
oriba has joined #ocaml
milosn has joined #ocaml
dnolen has quit [Quit: dnolen]
oriba has left #ocaml []
ikaros has quit [Quit: Ex-Chat]
Amorphous has quit [Ping timeout: 260 seconds]
Amorphous has joined #ocaml
dnolen has joined #ocaml
lopexx has joined #ocaml
lopex has quit [Ping timeout: 260 seconds]
surikator has joined #ocaml
lopexx is now known as lopex
explodus has quit [Ping timeout: 260 seconds]
explodus has joined #ocaml
surikator has quit [Quit: Scientific discovery is just maximal compression of strings. Nothing more, nothing less.]
seafood has joined #ocaml
jaar has quit [Quit: Quitte]
avsm1 has joined #ocaml
avsm has quit [Read error: Connection reset by peer]