adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.07.1 release notes: https://caml.inria.fr/pub/distrib/ocaml-4.07/notes/Changes | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml | Due to ongoing spam, you must register your nickname to talk on the channel
carlosdagos has joined #ocaml
Haudegen has quit [Remote host closed the connection]
Spetznaz_ has quit [Ping timeout: 240 seconds]
Jeanne-Kamikaze has joined #ocaml
silver has quit [Read error: Connection reset by peer]
govg has joined #ocaml
Jeanne-Kamikaze has quit [Quit: Leaving]
FreeBirdLjj has joined #ocaml
mfp has quit [Ping timeout: 240 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 244 seconds]
FreeBirdLjj has joined #ocaml
IbnFirnas has quit [Remote host closed the connection]
IbnFirnas has joined #ocaml
tormen_ has joined #ocaml
tormen has quit [Ping timeout: 268 seconds]
iovec has joined #ocaml
_whitelogger has joined #ocaml
AnAverageHuman has quit [Ping timeout: 256 seconds]
gravicappa has joined #ocaml
pierpal has quit [Quit: Poof]
pierpal has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 250 seconds]
carlosdagos has quit [Quit: Connection closed for inactivity]
al-damiri has joined #ocaml
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
freyr69 has joined #ocaml
infinity0 has joined #ocaml
mildtaste has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
root has joined #ocaml
root is now known as Guest37220
al-damiri has quit [Quit: Connection closed for inactivity]
crowley95 has quit [Read error: Connection reset by peer]
crowley95 has joined #ocaml
crowley95 has quit [Quit: Bye bye~]
crowley95 has joined #ocaml
asymptotically has joined #ocaml
mfp has joined #ocaml
jaar has joined #ocaml
ygrek has joined #ocaml
<freyr69> Is there an SNMP layer for MirageOS?
<freyr69> Or a library for ocaml?
<freyr69> I can see conf-netsnmp in opam, but no packages relying on it
theblatte has quit [Ping timeout: 246 seconds]
theblatte has joined #ocaml
orbifx has joined #ocaml
recj has quit [Disconnected by services]
jaar_ has joined #ocaml
jaar has quit [Ping timeout: 252 seconds]
<hannes> freyr69: AFAICT, it's still missing. there has been some work on https://github.com/mirage/metrics for covering base metrics (counters), but there's need for a snmp reporter. there may as well be need for traps + setting values, but there's no such interface in mirageos right now
<hannes> I'm still undecided how dynamic mirageos should be -- i.e. should the size of the ipv4 reassembly cache be compile time configurable? boot time? run time via sysctl/snmp?
<freyr69> hannes: so metrics is intended to be an abstraction over snmp/similar staff? And you could embed mirageos with metrics into your snmp network?
<freyr69> I found snmp library by janestreet, have anyone tried it?
<hannes> freyr69: that's the idea, yes. there's atm a gnuplot reporter (which writes unix files), an influx reporter is in a PR for that repository, prometheus and snmp are planned
silver has joined #ocaml
jaar__ has joined #ocaml
jaar_ has quit [Ping timeout: 245 seconds]
mrgrieves has joined #ocaml
<Leonidas> cemerick: I am not sure that passing in a 'a Lazy.t is good in many cases. The thunk guarantees the effect has not happened yet, whereas a lazy could've already evaluated, which would yield surpising behaviour
<Leonidas> so the function you're passing it in might never actually trigger the effect because it was already evaluated earlier in error. This could be difficult to debug
<zozozo> Leonidas: in any case, mixing lazyness and side-effects is really asking for bugs in my opinion, :p
<cemerick> Leonidas: Yeah, ok. Each option cuts a different way I guess; lazy introduces ambiguity as to its effect's timing, thunks make it possible to inadvertently cause multiple effects
mrgrieves has quit [Remote host closed the connection]
<cemerick> zozozo: always, but absent an effects system, anything that is `() -> 'a` has to carry that assumption
spew has joined #ocaml
<zozozo> cemerick: indeed, and in that case, you carefully manage when and how many times you call the function, ^^
<Leonidas> cemerick: I am not sure it is as much of an issue, I can't imagine a case where it was due to calling a function too much.
<Leonidas> I mean, sure, there might be a case where some kind of linear tracking of applications would make sense
drbojingle has joined #ocaml
<cemerick> I agree, and likewise, I don't think worrying about order of forcing lazys in the context I was commenting from (`<|>` over a series of options) is warranted
<cemerick> it'd be very poor form indeed to put effects behind an option 😵
Haudegen has joined #ocaml
AnAverageHuman has joined #ocaml
<companion_cube> "mixing lazyness and side-effects" <--- ah I do that all the time 😁
<companion_cube> (tidying the knot for mutually recursive stuff)
Haudegen has quit [Ping timeout: 240 seconds]
<cemerick> Drup: so I was completely wrong about PCRE1 not supporting restartable partial matches. WIP: https://github.com/mmottl/pcre-ocaml/pull/15
troydm has quit [Ping timeout: 245 seconds]
freyr69 has quit [Remote host closed the connection]
<_y> so if i put faith in the ML, there exists such a thing as a “standard ML toolkit” (where interpretation of “ML” is left to the reader and does not have to be consistent accross occurrences ;-)
sagotch has joined #ocaml
jao has joined #ocaml
<companion_cube> yeah it's probably SML/nj
<companion_cube> :°
AnAverageHuman has quit [Ping timeout: 256 seconds]
AnAverageHuman has joined #ocaml
al-damiri has joined #ocaml
ygrek has quit [Ping timeout: 250 seconds]
Haudegen has joined #ocaml
sagotch has quit [Ping timeout: 250 seconds]
AnAverageHuman has quit [Ping timeout: 256 seconds]
bartholin has joined #ocaml
orbifx has quit [Quit: WeeChat 2.3]
jbrown has quit [Remote host closed the connection]
Spetznaz_ has joined #ocaml
sagotch has joined #ocaml
jaar__ has quit [Ping timeout: 250 seconds]
Orion3k has joined #ocaml
Haudegen has quit [Ping timeout: 245 seconds]
Serpent7776 has joined #ocaml
sagotch has quit [Ping timeout: 250 seconds]
sagotch has joined #ocaml
AnAverageHuman has joined #ocaml
pierpal has quit [Quit: Poof]
pierpal has joined #ocaml
Haudegen has joined #ocaml
jnavila has joined #ocaml
pierpal has quit [Ping timeout: 268 seconds]
Haudegen has quit [Ping timeout: 250 seconds]
sagotch has quit [Ping timeout: 240 seconds]
sagotch has joined #ocaml
jnavila has quit [Ping timeout: 252 seconds]
jbrown has joined #ocaml
gravicappa has quit [Ping timeout: 250 seconds]
pierpal has joined #ocaml
AnAverageHuman has quit [Ping timeout: 256 seconds]
jnavila has joined #ocaml
sagotch has quit [Quit: Leaving.]
Haudegen has joined #ocaml
zmt01 has joined #ocaml
kakadu_ has joined #ocaml
zmt00 has quit [Ping timeout: 240 seconds]
Haudegen has quit [Ping timeout: 240 seconds]
<lorp> noob question #3: is there a way to call a function defined below the calling function? in C, you'd declare it above (usually in the header), but .mli doesn't seem to help, is there something similar?
<Armael> no you can't really do that
<Armael> if you want mutual recursion between two functions you need to use "let rec f .. = ... and g .. = ..."
<lorp> gotcha, thanks Armael
Serpent7776 has quit [Read error: Connection reset by peer]
Serpent7776 has joined #ocaml
jun has quit [Quit: WeeChat 2.3]
<cemerick> companion_cube: is Lazy_list entirely superseded by Sequence?
<companion_cube> it's different, really
<companion_cube> Lazy_list is a lazy list (!)
<companion_cube> a list where each `tail` is a lazy thunk, with memoization and all
<companion_cube> Sequence (soon Iter) is a bunch of combinators around `iter` functions
Haudegen has joined #ocaml
<companion_cube> ('a -> unit) -> unit
<cemerick> companion_cube: I should have said, "entire superseded by persistent sequences"
troydm has joined #ocaml
<companion_cube> even then, the iteration is not the same (push vs pull, in a way)
<cemerick> sure
<cemerick> "not structurally investigable" :-P
<Armael> (with lazy lists, you have more control over the iteration if you're the client)
<companion_cube> ^
<companion_cube> my go-to example is `zip`, which you can write with lazy lists but not with Sequence
<Armael> (using the terminoloy used in the blog post, lazy lists are "generators", Sequence/Iter provides "iterators")
orbifx has joined #ocaml
ocabot has quit [Remote host closed the connection]
ocabot has joined #ocaml
drbojingle has quit [Remote host closed the connection]
<Armael> do we have an irc bot?
<companion_cube> !iterators
<Armael> :thinking:
<companion_cube> oh, it's probably muted :/
<companion_cube> (because not registered)
<companion_cube> /query ocabot
<Armael> ah. can you register it?
<companion_cube> I don't know, we could write a plugin that messages nickserv I suppose
<companion_cube> (btw you're listed as one of the authors :p)
<Armael> :^)
<companion_cube> adrien: any interest in such a plugin btw?
jbrown has quit [Ping timeout: 252 seconds]
jbrown has joined #ocaml
orbifx has quit [Quit: WeeChat 2.3]
Serpent7776 has quit [Quit: leaving]
jbrown has quit [Ping timeout: 252 seconds]
jbrown has joined #ocaml
Haudegen has quit [Ping timeout: 240 seconds]
nullifidian_ has quit [Ping timeout: 246 seconds]
Haudegen has joined #ocaml
jnavila has quit [Remote host closed the connection]
asymptotically has quit [Quit: Leaving]
crowley95 has quit [Read error: Connection reset by peer]
crowley95 has joined #ocaml
Guest37220 has quit [Ping timeout: 240 seconds]
kakadu_ has quit [Remote host closed the connection]
Spetznaz_ has quit []
Orion3k has quit [Ping timeout: 244 seconds]
jun has joined #ocaml
keep_learning has quit [Remote host closed the connection]
AnAverageHuman has joined #ocaml
bartholin has quit [Remote host closed the connection]
AnAverageHuman has quit [Remote host closed the connection]