ChanServ changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.02.1 announcement at http://ocaml.org/releases/4.02.html | Public channel logs at http://irclog.whitequark.org/ocaml
<rgrinberg> tjscanlon: after doingopen Core.Std;; List.length [1;2;3];;
<tjscanlon> Thanks!
<rgrinberg> theblatte: well there was an attempt in pfff IIRC :P
<rgrinberg> common sense prevailed
<theblatte> heh
waneck has joined #ocaml
<Drup> theblatte: you would be surprised of what research do in static analysis.
<rgrinberg> theblatte: is the infer team in menlo park?
<theblatte> Drup: I know, most of us come from that background ;)
<theblatte> rgrinberg: no, we're in london, but have one dev in MPK right now
tnguyen has quit [Quit: tnguyen]
enquora has quit [Quit: enquora]
Kakadu has quit []
ollehar has quit [Read error: Connection reset by peer]
walter|r has quit [Remote host closed the connection]
walter|r has joined #ocaml
The_Mad_Pirate has quit [Quit: Konversation terminated!]
ollehar has joined #ocaml
<Drup> theblatte: I find it terrifying.
<theblatte> which part in particular?
AltGr has joined #ocaml
<Drup> the endless reinvention of compiler front end and ad hoc syntax by each tool "just because"
copycat has joined #ocaml
walter|r has quit [Ping timeout: 264 seconds]
<theblatte> Drup: I think that's because it's much much harder to build something that can run on actual industry code, and that effort is basically not rewarded at all in academia
<Drup> yes and no
<theblatte> so people do toy languages instead
<Drup> there is also a considerable amount of NIH
<Drup> there are no less than 3 high quality C parser in the french research
<theblatte> I think that's because plugging to tools that actually parse the whole of C/Java/whatever is hard work
<theblatte> ah, those
<Drup> and a ton of very poor quality ones.
<theblatte> yes, different issue I guess, I don't know where the story there
<theblatte> I was talking about the poor ones
<Drup> I don't think plugging into a C parser is that hard, no.
hasket is now known as haskets
<theblatte> it is because suddently you have to handle the whole of C, not just the subset that you can easily handle
<tjscanlon> Style question: When defining a helper method for tale recursion, should that helper method be an inner function of the main method?
<tjscanlon> Or just a separate method?
<tjscanlon> main method being the one that should be calle
<tjscanlon> d
<Drup> not if you are a researcher that has been working on statically analyzing C code your entire career at least, you can manage the effort.
<theblatte> the plugging itself is not hard, I agree (although for clang we needed to build our own plugin to emit ocaml data structures)
<Drup> theblatte: You can still fail on construct you don't handle, that's independent
<Drup> (and the amount of real code you are handling is a whole different question)
<theblatte> (heh)
<Drup> (in this aspect, stuff like the termination competition are a real joke)
<theblatte> Drup: agreed, that's what could be done, but again it takes more time than writing your own toy language
<Drup> theblatte: except you don't need to do it again
<theblatte> well you don't need to convince me :)
<Drup> I'm ranting
<Drup> :D
<theblatte> that's a pet ranting subject of mine too, so all is well ;)
<Drup> I got very annoyed when people presented me stuff from the termination competition with a bunch of ridiculous undefined behavior in it
<theblatte> tjscanlon: style is subjective I guess; I usually define such functions as inner functions. plus this way they can reuse variables in scope which is often useful
<Drup> anyway, my career in the domain was short :D
rgrinberg has quit [Ping timeout: 245 seconds]
<theblatte> Drup: the classic way to get "random values" in academic static analysis is to begin with an uninitialised variable *twitch*
<Drup> theblatte: yes, that.
<Drup> oh, surprise, clang doesn't like that
<theblatte> neither does infer ;)
<Drup> well, logically
<theblatte> (although we turn those off by default for now)
keen___ has quit [Read error: Connection reset by peer]
jonludlam has quit [Ping timeout: 250 seconds]
keen___ has joined #ocaml
swgillespie has joined #ocaml
Denommus has quit [Quit: going home]
mort___ has quit [Quit: Leaving.]
copycat has quit [Quit: copycat]
mort___ has joined #ocaml
mort___ has quit [Client Quit]
mort___ has joined #ocaml
copycat has joined #ocaml
haskets is now known as hasket
mort___ has quit [Client Quit]
mort___ has joined #ocaml
<copycat> hi, i am a newbie to programming. i made a semi-big application in racket that should be finished soon
<pippijn> racket as in scheme?
<copycat> i'll like to learn a new language to write a simple webapp
<copycat> yea, it was super easy to get started. i could install it out of the box from windows and everything worked
<pippijn> ocaml is a gazillion times faster than racket
<pippijn> in case you're into that kind of stuff
<copycat> no, i dont think i even know what "that kind of stuff" means
<pippijn> "fast code"
<copycat> like 6 months back, i didnt even know what an OS was
<pippijn> alright
struktured has joined #ocaml
<pippijn> sounds cool
<pippijn> so what does your application do?
<copycat> i found the ocaml book and it had chapters on the run time system
<copycat> i thought that was very cool
rgrinberg has joined #ocaml
<copycat> i dont really see that kind of stuff in the guides/docs
<copycat> of other languages*
<copycat> its just a simple graphical editor
<pippijn> nice
<pippijn> you can get that done in ocaml fairly easily, too
<pippijn> maybe 200 lines of code
<pippijn> probably less
<copycat> hah, but i want to do a simple website now :)
<pippijn> ok, talk to Drup
<copycat> i can't find anything with ctrl-f "web" on the book's contents, so i was just wondering
<Drup> eh.
<pippijn> there are a number of options
<Drup> copycat: what kind of web app ?
mort___ has quit [Quit: Leaving.]
<pippijn> the most heavyweight one is probably this: http://ocsigen.org/
<pippijn> a lightweight one is this: https://github.com/mirage/ocaml-cohttp
mort___ has joined #ocaml
<copycat> nothing big
<copycat> i'll probably start out with no db, just a page and making things run jump and fly
<copycat> can ocaml compile to js?
<pippijn> yes
<pippijn> here is another hello world: https://ocsigen.org/howto/helloworld
<copycat> is it a stable, long term project :| because i've struggled with dependencies when i tried to get started with popular frameworks out there
<pippijn> for ocaml to js, also talk to Drup
<pippijn> both ocsigen and cohttp are long term projects
<pippijn> both are fairly stable
nullcat has joined #ocaml
<copycat> great :)
<copycat> is there any surprises i should expect when moving from scheme to ocaml?
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<Drup> Lot's of them.
<pippijn> for one, there is static type checking
<pippijn> and syntax
nullcat__ has joined #ocaml
<copycat> i was introduced to static typing by typed racket, and the mailing group mentioned ocaml alot
<copycat> actually, most of the advanced features will go over my head
mort___1 has joined #ocaml
mort___ has quit [Read error: Connection reset by peer]
<copycat> lol :D
shinnya has quit [Ping timeout: 272 seconds]
hasket is now known as haskets
<copycat> what do you guys work on with ocaml?
<theblatte> (ok, last time of the day, I promise ;)
nullcat has quit [Ping timeout: 256 seconds]
<pippijn> theblatte: that's nice
<Drup> I occasionally work on ocsigen.
sepp2k has quit [Quit: Leaving.]
mort___1 has quit [Read error: Connection reset by peer]
mort___ has joined #ocaml
<copycat> wow.. that looks really cool
<copycat> how it works is magic to me
jrmd has joined #ocaml
<copycat> for now i can only conceive of simple projects that involve graphics
<Drup> My first ocaml usage was doing cute drawings :D
<copycat> can't really find any such projects on google
<copycat> how did you transition to web framework software?
<Drup> for a very mathematical definition of cute https://github.com/Drup/LILiS
<Drup> saying I transitioned to web framework is a bit weird, since I mostly care about programming languages and type system, and the rest is an accident.
<copycat> i guess it's cute, but it sounds scary hard
tjscanlon has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<Drup> oh no, it's really
<Drup> really not*
tjscanlon has joined #ocaml
<copycat> how do you guys get exposed to these more and more abstract software and programming concepts?
<copycat> from an essay i read online: "At Viaweb, software included fairly big applications that users talked to directly, programs that those programs used, programs that ran constantly in the background looking for problems, programs that tried to restart things if they broke, programs that ran occasionally to compile statistics or build indexes for searches .... ..... ...."
<copycat> i have no idea where to even begin or understand how such programs work
<copycat> i guess what i want to say is a lot of these programming is magic to me and i hope to understand such stuff
<copycat> and i tohught learning ocaml might be a step towards such understanding
jrmd has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
nullcat__ has quit [Read error: Connection reset by peer]
haskets is now known as hasket
rgrinberg has quit [Ping timeout: 272 seconds]
sdothum has quit [Ping timeout: 264 seconds]
tjscanlon has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
kido1412 has joined #ocaml
hasket has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
kido1412 has quit [Client Quit]
sdothum has joined #ocaml
rgrinberg has joined #ocaml
waneck has quit [Read error: Connection reset by peer]
waneck has joined #ocaml
tjscanlon has joined #ocaml
inf-gropeoid has joined #ocaml
darkf has joined #ocaml
tjscanlon has quit [Client Quit]
cml has quit [Ping timeout: 246 seconds]
swgillespie has joined #ocaml
mort___1 has joined #ocaml
mort___ has quit [Read error: Connection reset by peer]
swgillespie has quit [Max SendQ exceeded]
swgillespie has joined #ocaml
sdothum has quit [Quit: ZNC - 1.6.0 - http://znc.in]
sdothum has joined #ocaml
mort___ has joined #ocaml
mort___1 has quit [Read error: Connection reset by peer]
mort___1 has joined #ocaml
mort___ has quit [Read error: Connection reset by peer]
sdothum has quit [Quit: ZNC - 1.6.0 - http://znc.in]
sdothum has joined #ocaml
jrmd has joined #ocaml
inf-gropeoid is now known as pyon
idegen has quit [Quit: Leaving.]
jrmd has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
jrmd has joined #ocaml
mort___1 has quit [Read error: Connection reset by peer]
mort___ has joined #ocaml
<rgrinberg> just so i understand, this means shipping a custom curl like utility in binary form with opam?
xificurC has quit [Read error: Connection reset by peer]
xificurC has joined #ocaml
sigjuice has quit [Ping timeout: 265 seconds]
sigjuice has joined #ocaml
copycat has quit [Quit: copycat]
tmtwd has joined #ocaml
sdothum has quit [Ping timeout: 246 seconds]
pyon has quit [Read error: Connection reset by peer]
inf-gropeoid has joined #ocaml
matason has joined #ocaml
<adrien> why not put the download into a thread? wouldn't that be enough?
<adrien> plus that should be completely I/O-bound
<adrien> so no problem even with heavy locking
hasket has joined #ocaml
inf-gropeoid is now known as pyon
nopf has quit [Read error: Connection reset by peer]
vpm has quit [Ping timeout: 264 seconds]
MercurialAlchemi has joined #ocaml
vpm has joined #ocaml
vpm has quit [Ping timeout: 264 seconds]
siddharthv_away is now known as siddharthv
vpm has joined #ocaml
mort___ has quit [Read error: Connection reset by peer]
mort___ has joined #ocaml
hasket has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tmtwd has quit [Quit: Leaving]
oscar_toro has joined #ocaml
waneck has quit [Remote host closed the connection]
scitesy has joined #ocaml
<AltGr> it's just I'd like to avoid adding threading to the binary, plus we already have a good parallel processes handling.
lyxia has quit [Ping timeout: 252 seconds]
Remyzorg has quit [Ping timeout: 272 seconds]
mort___ has quit [Read error: Connection reset by peer]
mort___1 has joined #ocaml
tmtwd has joined #ocaml
lyxia has joined #ocaml
Remyzorg has joined #ocaml
rgrinberg has quit [Ping timeout: 252 seconds]
A1977494 has joined #ocaml
A1977494 has left #ocaml [#ocaml]
pyon is now known as simplicial-pyon
mort___ has joined #ocaml
stupidjoblessper has joined #ocaml
<stupidjoblessper> Just looking for advice. How can someone who is almost 30 and never had a job get one? I have been applying(fast food, retail, entry level) just to be told I am not what they are looking for (We have reviewed your application for this position and will be proceeding with other candidates at this time.) or they are not hiring. No interviews. Cannot volunteer as there is no where near too
mort___1 has quit [Read error: Connection reset by peer]
oscar_toro has quit [Ping timeout: 272 seconds]
tmtwd has quit [Quit: Leaving]
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
tmtwd has joined #ocaml
Simn has joined #ocaml
Cyanure has joined #ocaml
Cyanure has quit [Remote host closed the connection]
ncthom91 has joined #ocaml
jrmd has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
amnn has joined #ocaml
amnn has quit [Read error: Connection reset by peer]
amnn has joined #ocaml
mort___ has left #ocaml [#ocaml]
SomeDamnBody has joined #ocaml
srenatus has joined #ocaml
SomeDamnBody has left #ocaml [#ocaml]
SomeDamnBody has joined #ocaml
Gama11 has joined #ocaml
simplicial-pyon has quit [Quit: I have irrefutable proof that D < 0. It follows trivially from 2D > 3D, which is obviously true.]
A19774941 has joined #ocaml
A19774941 has left #ocaml [#ocaml]
ygrek has joined #ocaml
tmtwd has quit [Quit: Leaving]
jrmd has joined #ocaml
rgrinberg has joined #ocaml
thomasga has joined #ocaml
rgrinberg has quit [Ping timeout: 256 seconds]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
MercurialAlchemi has quit [Ping timeout: 250 seconds]
MercurialAlchemi has joined #ocaml
Haudegen has quit [Ping timeout: 265 seconds]
jrmd has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
keen____ has joined #ocaml
mort___ has joined #ocaml
keen___ has quit [Read error: Connection reset by peer]
oeradb has joined #ocaml
Haudegen has joined #ocaml
nopf has joined #ocaml
zpe has joined #ocaml
ggole has joined #ocaml
yomimono has joined #ocaml
mort___ has quit [Quit: Leaving.]
SomeDamnBody has quit [Ping timeout: 256 seconds]
rgrinberg has joined #ocaml
mort___ has joined #ocaml
rgrinberg has quit [Ping timeout: 265 seconds]
SomeDamnBody has joined #ocaml
siddharthv is now known as siddharthv_away
hsuh has quit [Ping timeout: 252 seconds]
ousado has quit [Remote host closed the connection]
chiasmanur is now known as rks`
luzie has quit [Ping timeout: 258 seconds]
luzie has joined #ocaml
ousado has joined #ocaml
luzie has quit [Changing host]
luzie has joined #ocaml
seliopou has quit [Ping timeout: 252 seconds]
stupidjoblessper has quit [Read error: Connection reset by peer]
hay207 has joined #ocaml
hsuh has joined #ocaml
jrslepak has quit [Ping timeout: 264 seconds]
stupidjoblessper has joined #ocaml
bjorkintosh has quit [Ping timeout: 264 seconds]
seliopou has joined #ocaml
hsuh has quit [Ping timeout: 264 seconds]
hsuh has joined #ocaml
PM has quit [Ping timeout: 264 seconds]
bjorkintosh has joined #ocaml
jrslepak has joined #ocaml
siddharthv_away is now known as siddharthv
Simn has quit [Quit: Leaving]
Simn has joined #ocaml
mort___ has quit [Quit: Leaving.]
PM has joined #ocaml
kushal has joined #ocaml
dsheets has quit [Ping timeout: 256 seconds]
mort___ has joined #ocaml
zpe_ has joined #ocaml
ygrek has quit [Ping timeout: 276 seconds]
zpe has quit [Ping timeout: 264 seconds]
Tamae has joined #ocaml
ousado has quit [Changing host]
ousado has joined #ocaml
mort___ has quit [Ping timeout: 276 seconds]
tjscanlon has joined #ocaml
tane has joined #ocaml
dsheets has joined #ocaml
hay207 has quit [Quit: Leaving]
pii4 has quit [Quit: [-.-]...]
MercurialAlchemi has quit [Ping timeout: 264 seconds]
MercurialAlchemi has joined #ocaml
sdothum has joined #ocaml
pii4 has joined #ocaml
SomeDamnBody has quit [Ping timeout: 264 seconds]
Snark has quit [Ping timeout: 265 seconds]
Snark has joined #ocaml
milosn has quit [Quit: leaving]
tani has joined #ocaml
tane has quit [Ping timeout: 245 seconds]
rgrinberg has joined #ocaml
rgrinberg has quit [Ping timeout: 252 seconds]
bernardofpc has quit [Ping timeout: 264 seconds]
bernardofpc has joined #ocaml
tani has quit [Quit: Verlassend]
mengu has joined #ocaml
mengu has joined #ocaml
Haudegen has quit [Ping timeout: 252 seconds]
Hannibal_Smith has joined #ocaml
jonludlam has joined #ocaml
tjscanlon has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
jave has quit [Ping timeout: 256 seconds]
AltGr has left #ocaml [#ocaml]
_andre has joined #ocaml
oeradb has quit [Read error: Connection reset by peer]
djellemah_ has joined #ocaml
Haudegen has joined #ocaml
hay207 has joined #ocaml
djellemah has quit [Ping timeout: 252 seconds]
TheLemonMan has joined #ocaml
emias is now known as duploplo
mengu has quit [Ping timeout: 272 seconds]
duploplo is now known as emias
mengu has joined #ocaml
amnn has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
scitesy has quit [Quit: AtomicIRC: The nuclear option.]
Hannibal_Smith has quit [Quit: Leaving]
thomasga has quit [Quit: Leaving.]
mort___ has joined #ocaml
mort___ has quit [Ping timeout: 255 seconds]
A1977494 has joined #ocaml
rgrinberg has joined #ocaml
rgrinberg has quit [Ping timeout: 258 seconds]
bezirg has joined #ocaml
siddharthv is now known as siddharthv_away
AlexRussia has quit [Ping timeout: 256 seconds]
djellemah__ has joined #ocaml
jao has joined #ocaml
djellemah_ has quit [Ping timeout: 252 seconds]
xificurC has quit [Ping timeout: 244 seconds]
AlexRussia has joined #ocaml
shum has joined #ocaml
stupidjoblessper has quit []
sdothum has quit [Ping timeout: 264 seconds]
shum has quit [Client Quit]
sdothum has joined #ocaml
mengu__ has joined #ocaml
mengu has quit [Ping timeout: 256 seconds]
zpe has joined #ocaml
zpe_ has quit [Ping timeout: 272 seconds]
thomasga has joined #ocaml
xificurC has joined #ocaml
mort___ has joined #ocaml
bezirg has quit [Quit: Leaving.]
bezirg has joined #ocaml
mengu__ has quit []
jave has joined #ocaml
jao has quit [Ping timeout: 265 seconds]
sdothum has quit [Quit: ZNC - 1.6.0 - http://znc.in]
idegen has joined #ocaml
sdothum has joined #ocaml
badkins has joined #ocaml
tjscanlon has joined #ocaml
sepp2k has joined #ocaml
bezirg has quit [Quit: Leaving.]
bezirg has joined #ocaml
<haesbaert> nothing on stdlib regarding date/time ?
<adrien_znc> Unix
<companion_cube> in Unix, there is a very basic interface
<haesbaert> ack
<companion_cube> otherwise look in opam
Haudegen has quit [Remote host closed the connection]
Haudegen has joined #ocaml
rgrinberg has joined #ocaml
Haudegen has quit [Ping timeout: 255 seconds]
kushal has quit [Ping timeout: 265 seconds]
Denommus has joined #ocaml
Denommus has quit [Max SendQ exceeded]
Denommus has joined #ocaml
Denommus has quit [Max SendQ exceeded]
Denommus has joined #ocaml
Denommus has quit [Max SendQ exceeded]
Denommus has joined #ocaml
Denommus has quit [Max SendQ exceeded]
Denommus has joined #ocaml
Denommus has quit [Max SendQ exceeded]
<tobiasBora> Hello !
<companion_cube> o/
<tobiasBora> Little question : is there a library/language that can consider functions like Makefile rules ?
<companion_cube> hmm, you mean prolog?
<tobiasBora> I mean, you build some rules like "to get the value 'age' you need to first get 'name' and 'nickname'. To get 'name' you need...
<companion_cube> take a look at prolog
<smondet> tobiasBora: what we do here does that, but in a "very large scale distributed stuff" way: https://github.com/hammerlab/ketrew
mort___ has quit [Quit: Leaving.]
milosn has joined #ocaml
<tobiasBora> companion_cube: Hum I understand now the use of this strange language ! And does a library exists in Ocaml ?
<tobiasBora> smondet: It seems to be quite a big library indeed ! Is it a good idea to use it for a simple program, or only for huge programs ?
Haudegen has joined #ocaml
<dmbaturin> tobiasBora: There are libraries for logic programming for various language, perhaps for ocaml too.
<companion_cube> well prolog is a logic language; there exist other such languages
<dmbaturin> But they are usually require just as much of a mind overhaul as prolog itself. :)
<companion_cube> http://minikanren.org/ take a look at this, perhaps
<companion_cube> there seems to be a variant in OCaml
<thizanne> isn't https://github.com/c-cube/datalog related ?
boegel has quit [Ping timeout: 256 seconds]
<companion_cube> somehow it is, the top-down part, at least
<companion_cube> it's not very ergonomic if you want to use it within an OCaml program
* tobiasBora is reading all these libs
<tobiasBora> Well thank you, I'll try to understand how I can use them, thank you !
ia0 has quit [Quit: leaving]
<smondet> tobiasBora: no it's not a single program, it's for many programs, dealing to TB of data over days/months
ia0 has joined #ocaml
vincenzoml has joined #ocaml
rgrinberg has quit [Ping timeout: 264 seconds]
<smondet> tobiasBora: companion_cube there used to be an OCaml implementation of FRP + adaptive computation somewhere ??? (https://www.cs.cmu.edu/~guyb/papers/popl02.pdf)
<vincenzoml> Hi there! I am loading a CSV file representing a very large bi-dimensional matrix of small lists of strings. Bigarrays only accept numeric values so could I ever load such a CSV and how?
<tobiasBora> smondet: I see... So it's overkill for a program that should run in a few hours I guess
A1977494 has left #ocaml [#ocaml]
<smondet> it's old https://github.com/jaked/froc but maybe still works
<companion_cube> smondet: I only know about react
<smondet> I'm not sure react implements that paper
<smondet> Froc claimed to do it
<tobiasBora> What the difference between react programming and logical ?
<companion_cube> I don't know smondet
rgrinberg has joined #ocaml
SomeDamnBody has joined #ocaml
<dsheets> vincenzoml, Bigarrays can hold chars, too
<companion_cube> o/ rgrinberg
<companion_cube> saw your message about core_kernel
Hannibal_Smith has joined #ocaml
<rgrinberg> companion_cube: yeah :/
vincenzoml has quit [Ping timeout: 246 seconds]
<companion_cube> is it just by mistake then?
mort___1 has joined #ocaml
tmtwd has joined #ocaml
Haudegen has quit [Ping timeout: 265 seconds]
mort___1 has quit [Read error: Connection reset by peer]
mort___ has joined #ocaml
kushal has joined #ocaml
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
mort___ has quit [Read error: Connection reset by peer]
mort___ has joined #ocaml
<tobiasBora> I can't remember the name of a function that take any object and "serialize" it in order to write it in a file...
zpe has quit [Remote host closed the connection]
<jbrown> marshalling?
mort___ has quit [Client Quit]
<tobiasBora> Hum yes thank you ! Is it possible to marshall a Hashtable ? And an Object (Object like in "O"caml) ?
<jbrown> I've not used it myself
<companion_cube> I think so, but the marshalled representation will be tightly dependent on your program version
<companion_cube> and on the compiler's version
<jbrown> I think you mostly have to be careful wrt. closures
<companion_cube> hashtables too, because the hash function might change
<companion_cube> their internal representation was also broken when randomized tables were introduced
<companion_cube> that broke some marshalled structure
<jbrown> oh, hm.
<tobiasBora> I understand. And is there a less dirty way to register strucures ?
ollehar has quit [Quit: ollehar]
<companion_cube> if you want to save stuff into files and load them later, the other options are based on code geeneration
<companion_cube> piqi, atdgen, type_conv/sexplib, ppx_deriving_yojson
<companion_cube> this kind of stuff
<companion_cube> they either require to declare types in external files and have some tool generate the code, or annotate the code itself (with camlp4/ppx)
rgrinberg1 has joined #ocaml
rgrinberg has quit [Ping timeout: 246 seconds]
Haudegen has joined #ocaml
rossberg has quit [Ping timeout: 265 seconds]
rgrinberg2 has joined #ocaml
<smondet> tobiasBora: more hacky but worth mentioning: convert your datastructures to Marshal-friendly ones: list, arrays, records, tuples, variants + basic types
<companion_cube> also works for json, etc. :)
<companion_cube> (sound advice, anyway)
rgrinberg1 has quit [Ping timeout: 255 seconds]
rgrinberg2 has quit [Ping timeout: 256 seconds]
xificurC has quit [Quit: WeeChat 1.2]
shinnya has joined #ocaml
enquora has joined #ocaml
rossberg has joined #ocaml
<tobiasBora> Ok thank you for your advices !
madroach has quit [Read error: Connection reset by peer]
jrmd has joined #ocaml
madroach has joined #ocaml
<tobiasBora> Sorry to be annoying today, but why can't I find a BigArray.Array2.fill function that takes in argument a *function* ? I'm pretty sure that a loop on Ocaml side would be slower than using a single fill call, no ?
slash^ has joined #ocaml
<companion_cube> in both cases the function would have to be called on every index?
waneck has joined #ocaml
<tobiasBora> companion_cube: Yes, but the function needs to be "converted" in Ocaml function -> C function every time no ? (Actually I've never understood how function are coded in memory so maybe I just say bullshit)
<companion_cube> I don't think all of bigarray is in C
<companion_cube> oh wait, there is no iter
<companion_cube> well in that case you probably have to use a loop
kdef has joined #ocaml
<dsheets> cstruct may be useful if you manipulate your bigstrings a lot: https://github.com/mirage/ocaml-cstruct
<ggole> Missing functions? In the stdlib?!
<dsheets> then you don't have to copy as it just maintains cursors into the bigstring
<dsheets> and there are some iteration-like hofs
badkins has quit [Read error: Connection reset by peer]
<tobiasBora> companion_cube: Yes indeed there is no iter function, that's why I ask why they didn't write it : is it the same thing to do an ocaml loop than using an iter function ?
rgrinberg2 has joined #ocaml
kdef has quit [Ping timeout: 256 seconds]
<tobiasBora> dsheets: Nice thank you, it may be usefull.
<tobiasBora> And it's not possible to perform "classical operations", like *, /,+,-... on a BigArray ? I would like to do the same thing as numpy but in Ocaml (because for the moment, using the * multiplication of numpy is 4 times faster than using an Ocaml loop that fills the array)
octachron has joined #ocaml
Denommus has joined #ocaml
<flux> does numpy deal with integers?
<octachron> tobiasBora, you can define your own operations. If you want speed, you probably need to go through a BLAS implementation
Denommus` has joined #ocaml
<tobiasBora> flux: Yes : float, integer, tuple, and lot's of funny types
ousado has quit [Quit: --]
ousado has joined #ocaml
ousado has quit [Changing host]
ousado has joined #ocaml
Denommus has quit [Ping timeout: 255 seconds]
<flux> tobiasbora, perhaps you could take a dive and see how nice an API you could write with the implicit modules-branch of OCaml ;-)
<flux> sadly dimensional types aren't really nice with OCaml yet.
<tobiasBora> octachron: Not sure to know how to define BLAS implementation. You mean I should use something like that : https://github.com/mmottl/lacaml ?
<tobiasBora> flux: What is this thing ?
ollehar has joined #ocaml
<octachron> tobiasBora: or any other blas/lapack binding: A lot of work has been done on these linear algebra implementations in the HPC community
<flux> numpy itself uses lapack underneath it
<flux> so it's a proven way to go about it ;)
Denommus` is now known as Denommus
<octachron> there is no need to reinvent efficient matrix multiplication once again
<flux> but I must say the lapack ocaml bindings I've tried are not very convenient..
<flux> at least for my use cases
<flux> tobiasbora, btw, another super cool idea you should consider so I don't have to ;-) would be to write succinct bindings to the ArrayFire library
<flux> I don't know how they perform on CPU (though they do have CPU support) but I guess numeric code could fly if you have a GPU..
rgrinberg2 has quit [Ping timeout: 258 seconds]
<tobiasBora> Hum...
ollehar has quit [Remote host closed the connection]
<flux> suddenly, even before starting, the scope of the project grew up?-)
<tobiasBora> With the lacaml library : 5s for ocaml, 3s for python... :-\
<tobiasBora> Thank you for all these ideas !
rgrinberg2 has joined #ocaml
<tobiasBora> Maybe the installed version of BLAS is bad : https://hpc.uark.edu/hpc/support/software/numerical.html
<octachron> tobiasBora: this is a little surprising ... since the underlying implementation should be the same
xificurC has joined #ocaml
<tobiasBora> octachron: Well I don't know why, maybe the blas version, because the lines are pretty much the same :
<tobiasBora> np.random.rand(10000,10000)*50.
<tobiasBora> (<== python)
<tobiasBora> let mat = Mat.random 10000 10000 in
<tobiasBora> (<== ocaml)
<octachron> tobiasBora: it looks like the implementation of random in lacaml is in pure ocaml
<haesbaert> wowow, where does it get the entropy from then ?
<haesbaert> beih you're right
<haesbaert> oh that's a bummer, now I need to change my code
<octachron> tobiasBora: and the implementation of random in numpy is mainly in C
kdef has joined #ocaml
<octachron> tobiasBora: question, were you testing only random matrix generation?
badkins has joined #ocaml
jwatzman|work has joined #ocaml
bezirg has quit [Quit: Leaving.]
bezirg has joined #ocaml
darkf has quit [Quit: Leaving]
milosn has quit [Ping timeout: 244 seconds]
ncthom91 has joined #ocaml
milosn has joined #ocaml
matason has quit []
octachron has quit [Quit: Leaving]
mcclurmc has quit [Ping timeout: 265 seconds]
ygrek has joined #ocaml
<SomeDamnBody> I'm using oasis to build, and I keep getting these warning messages:
A19774941 has joined #ocaml
A19774941 has left #ocaml [#ocaml]
<SomeDamnBody> W: Cannot get variable ext_obj
<SomeDamnBody> W: Cannot get variable ext_lib
<SomeDamnBody> W: Cannot get variable ext_dll
<SomeDamnBody> W: Cannot get variable ocamlfind
<SomeDamnBody> W: Cannot get variable ocamlfind
<SomeDamnBody> W: Cannot get variable ocamlfind
<SomeDamnBody> W: Cannot get variable ocamlfind
<SomeDamnBody> W: Cannot get variable ocamlfind
<SomeDamnBody> W: Cannot get variable ocamlfind
<SomeDamnBody> W: Cannot get variable ocamlfind
jrmd has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
jonludlam has quit [Ping timeout: 264 seconds]
Gama11 has quit [Read error: Connection reset by peer]
Gama11 has joined #ocaml
lordkryss has joined #ocaml
inf-gropeoid has joined #ocaml
inf-gropeoid is now known as pyon
sh0t has joined #ocaml
Gama11_ has joined #ocaml
Gama11 has quit [Ping timeout: 244 seconds]
jrmd has joined #ocaml
badon has quit [Ping timeout: 276 seconds]
WraithM_ has joined #ocaml
badon has joined #ocaml
jonludlam has joined #ocaml
jrmd has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
badon has quit [Ping timeout: 264 seconds]
MrScout has joined #ocaml
mcclurmc has joined #ocaml
tane has joined #ocaml
badon_ has joined #ocaml
badon_ is now known as badon
MrScout has quit [Read error: Connection reset by peer]
WraithM_ has quit [Ping timeout: 252 seconds]
MrScout has joined #ocaml
badon_ has joined #ocaml
badon has quit [Disconnected by services]
yomimono has left #ocaml ["Leaving"]
badon_ is now known as badon
yomimono has joined #ocaml
badon has quit [Excess Flood]
badon_ has joined #ocaml
badon_ is now known as badon
badon has quit [Excess Flood]
jeffmo has joined #ocaml
badon has joined #ocaml
srenatus has quit [Quit: Connection closed for inactivity]
dsheets has quit [Ping timeout: 245 seconds]
Cyanure has joined #ocaml
MrScout has quit [Ping timeout: 265 seconds]
hasket has joined #ocaml
badon has quit [Disconnected by services]
badon_ has joined #ocaml
djellemah__ has quit [Remote host closed the connection]
jrmd has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
pyon is now known as misanthro-pyon
jprakash has joined #ocaml
7F1AA9MC5 has joined #ocaml
thomasga has quit [Quit: Leaving.]
yomimono has quit [Ping timeout: 245 seconds]
Anarchos has joined #ocaml
TheLemonMan has joined #ocaml
dsheets has joined #ocaml
7F1AA9MC5 has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
robink has quit [Ping timeout: 255 seconds]
bezirg has quit [Ping timeout: 256 seconds]
rgrinberg2 is now known as rgrinberg
Palvors has joined #ocaml
sh0t has quit [Ping timeout: 265 seconds]
<Palvors> hi i have some weird result with (string * int) list .... if I put some negative int in the list and i use List.map to make some code.. that return me positive int.. somebody say why ?
robink_ has joined #ocaml
robink_ has quit [Changing host]
robink_ has joined #ocaml
sh0t has joined #ocaml
ncthom91 has quit [Quit: Textual IRC Client: www.textualapp.com]
<Palvors> i I use Emacs .. see my function : let exit_car x y l = List.map (fun ((m,h) : string * int ) ->if m = x then (m,y+h) else (m,h) ) l;;
nullcat has joined #ocaml
<Palvors> and i call with this : exit_car "DEF456" 7 [ ( "ABC13" , −2); ( "DEF456" , −4); ( "GHI789" , −3 ) ];;
<Palvors> the result is : - : (string * int) list = [("ABC13", 2); ("DEF456", 11); ("GHI789", 3)]
<Palvors> anyone see where I make a mistake ?
mcclurmc has joined #ocaml
<paarth> what is the − symbol? if I change that to - in my repl it works fine.
mk270 has left #ocaml [#ocaml]
badon_ has quit [Ping timeout: 265 seconds]
<Palvors> it's the result en Emacs ... it's always -: RESULT
<Palvors> but about my prob in my function.. do you already have this prob with a ( string * int ) list ) .. if you enter a negative int, that return positive int if you apply List.map ?
octachron has joined #ocaml
kushal has quit [Ping timeout: 265 seconds]
Denommus` has joined #ocaml
<paarth> Palvors, if I run your code I get "Warning 3: deprecated: ISO-Latin1 characters in identifiers"
Denommus has quit [Ping timeout: 245 seconds]
<paarth> and then "Error: Illegal character (\136) "
<Palvors> ok
rgrinberg has quit [Ping timeout: 276 seconds]
<Palvors> so maybe is my version of ocaml you think ?
<Palvors> i try to run my command in Emacs and that dont make me a warning or error...
badon has joined #ocaml
<Denommus`> I'm confused
whirm has joined #ocaml
Denommus` is now known as Denommus
jrmd has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
ollehar has joined #ocaml
<ollehar> uhm, can I concatenate a string with EOF?
Palvors has quit [Quit: Page closed]
<companion_cube> EOF? it's not a string
<ollehar> hm hm hm
<whirm> hi, is it possible to cross-compile ocaml for arm?
tmtwd has quit [Quit: Leaving]
<Denommus> how do I express varlist ::= var {',' var} in menhir?
kushal has joined #ocaml
<Denommus> (I already have the token COMMA)
<Denommus> (and the type var)
<companion_cube> there is a sep_list(COMMA, var) or something like this
<companion_cube> check in the manual, it has special macros for lists
<whirm> will it work if I modify the configure script to set the correct values instead of trying to run test binaries compiled for arm on an amd64 system, will it work or I'm wasting my time?
<Denommus> companion_cube: separated_list(COMMA, var) is equivalent to var {COMMA var} or to {COMMA var}?
<companion_cube> there is also separated_nonempty_list
shinnya has quit [Ping timeout: 246 seconds]
<companion_cube> it's like var, var, var...
rgrinberg has joined #ocaml
<smondet> Palvors: are you by any chance using the experimental ocaml branch with UTF-8 identifiers ?
MercurialAlchemi has quit [Remote host closed the connection]
<Denommus> companion_cube: great, thanks!
MercurialAlchemi has joined #ocaml
<ollehar> so I read string from file and feed it to xml-light, and it complains no end of file :P
<companion_cube> isn't it rather about unexpected end of file?
<ollehar> no, the other way ^^
<ollehar> Error while parsing XML on line 2: End of file expected
<ollehar> oh wait
<ollehar> maybe that's what you ment
<SomeDamnBody> I'm using oasis to build, and I keep getting these warning messages:
<SomeDamnBody> W: Cannot get variable ocamlfind
<SomeDamnBody> (as well as some other errors...)
<ollehar> is ocamlfind installed?
<companion_cube> ollehar: it probably means that there is some leftover after the end of XML itself?
shum has joined #ocaml
<companion_cube> but I suppose xml-light's documentation should mention it
<ollehar> hm will check
<octachron> Palvors: this looks like an encoding error: could you be mixing an ISO-8859-1 encoding and a utf-8 encoding somewhere?
sdothum has quit [Ping timeout: 276 seconds]
ygrek has quit [Ping timeout: 256 seconds]
<ollehar> do'h! was escaping html chars in file, but didn't see in browser of course ><
<ollehar> another problem solved
mearnsh has quit [Ping timeout: 272 seconds]
mearnsh has joined #ocaml
WraithM_ has joined #ocaml
nullcat has quit [Read error: Connection reset by peer]
nullcat_ has joined #ocaml
ggole has quit []
s1n4 has joined #ocaml
_andre has quit [Quit: leaving]
tane has quit [Quit: Verlassend]
hasket has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<SomeDamnBody> ollehar, yes
<ollehar> SomeDamnBody: can't help you then, never used oasis :/
<ollehar> but "variable" ocamlfind sounds strange
kdef has quit [Quit: Leaving]
nullca___ has joined #ocaml
nullcat_ has quit [Read error: Connection reset by peer]
MrScout has joined #ocaml
WraithM_ has quit [Quit: leaving]
<Denommus> how to do [^\\] in sedlex?
rgrinberg has quit [Ping timeout: 258 seconds]
tmtwd has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
sh0t has quit [Ping timeout: 276 seconds]
Gama11_ has quit [*.net *.split]
Hannibal_Smith has quit [*.net *.split]
adrien_znc has quit [*.net *.split]
paarth has quit [*.net *.split]
Enjolras has quit [*.net *.split]
frawgie has quit [*.net *.split]
cross has quit [*.net *.split]
haesbaert has quit [*.net *.split]
jlouis has quit [*.net *.split]
Intensity has quit [*.net *.split]
Reventlov has quit [*.net *.split]
tumdum has quit [*.net *.split]
jlouis_ has joined #ocaml
paarth has joined #ocaml
Enjolras has joined #ocaml
badkins has quit [Read error: Connection reset by peer]
Reventlov has joined #ocaml
frawgie has joined #ocaml
haesbaert has joined #ocaml
cross_ has joined #ocaml
Hannibal_Smith has joined #ocaml
WraithM_ has joined #ocaml
Gama11 has joined #ocaml
dtscode is now known as ResidentTriscuit
adrien_znc has joined #ocaml
tumdum has joined #ocaml
Algebr has joined #ocaml
Intensity has joined #ocaml
<Algebr> Why was ocamlbuild created at all? I mean, what is so special about ocaml that it needed its own build tool?
<cmtptr> what build tool would you use instead?
<cmtptr> because make sucks
<flux> algebr, ..have you looked at OCamlMakefile?
<companion_cube> dependencies and build rules in OCaml make writing makefiles a pain
<companion_cube> so, specialized build tools are needed
<Algebr> flux: I did, I like it.
<flux> algebr, but did you look how it's done?
<Algebr> Not in depth
<flux> as a solution OCamlMakefile is fine as solutions go, I've used it for some projects as well
<flux> but if one is thinking of "I'll whip a small Makefile for this OCaml project", I'm pretty sure it's going to not work, or alternatively it's going to be overzealous about compiling
<flux> so using OCamlMakefile is basically the only alternative if you want to use make :)
<Algebr> I just don't understand the utility of ocamlbuild...a build tool that supposedly abtracts some issues of building ocaml which itself has spawned another layer of abstraction to even use it, ie oasis.
<Algebr> on the face of it, that's nuts.
<flux> well, Makefile generators are the norm as well..
<flux> oasis seems to add some non-building related facets such as installing
waneck has quit [Read error: Connection reset by peer]
nullca___ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
jprakash has quit [Ping timeout: 264 seconds]
<flux> it would be nice of ocamlc had a switch like -MM in gcc
* Algebr looking up MM
<ia0> companion_cube: what do you mean by "build rules" ?
<ia0> flux: +1
Kakadu has joined #ocaml
<flux> ..did OCamlMAkefile in fact do any inter-module dependency analysis?
<cmtptr> he probably means that a single invokation of ocamlc generates multiple output files, and that's awkward to deal with in make
<Algebr> I've seen code refer to drivers, like ocamlfind has a driver ability and so do compilers. Is this just another word for exectuable code?
<flux> I think it just used to mean that ocamlfind can 'drive' ocamlc
<flux> so when you type ocamlfind ocamlc -package blablab,boblo, it uses ocamlc with some other switches to make it happen
<ia0> cmtptr: ok I see, thanks!
<Algebr> flux: ah, makes sense.
<Algebr> I guess this wouldn't make sense with ocamlc, but can I do something like __asm__(...) in ocamlopt?
<companion_cube> ia0: the compilation process of ocaml is complicated
<companion_cube> first build the .cmi, then .cmx, then link stuff, etc.
<cmtptr> that kind of thing is exactly what make is designed for, though
<companion_cube> well you need to include dependency files, etc.
<flux> cmtptr, make really likes when you need a and b to generate c, but not that much about when you have c and one command generates both d and e
<cmtptr> yeah, I mentioned that earlier
shinnya has joined #ocaml
<ia0> that's the only problem I would see
<flux> so it's maybe then designed for but not properly?
<companion_cube> it's pretty annoying
<ia0> dependency files and all are just natural
<ia0> that's already what we do in C
<companion_cube> in C you only need it for linking, don't you?
<cmtptr> flux, I also said that make sucks earlier
<companion_cube> because you don't need to compile .h
<ia0> but .h modification impacts .c files
<companion_cube> and then, there's all the pack, lib, etc. stuff
<ia0> so you have a dependency there
<flux> algebr, I vaguely remember reading someone writing an inline assembler extension for OCaml.. but I can't find it
<flux> algebr, probably a better idea to do it via C.
<cmtptr> also lex and yacc exist in c and are equally complicated to deal with in make since they can generate both .c and .h
<companion_cube> well then, I don't know; but make is really ugly, imho
<flux> many makefiles end up being broken in small but subtle ways
<Algebr> flux: that's a massive commit.
<flux> many _tags files end up being either working or broken in horrible and obvious ways :)
* Algebr reading through
jrmd has joined #ocaml
kdef has joined #ocaml
<companion_cube> I don't like much ocamlbuild, but still, it works well for many projects
<cmtptr> I think I might like it if I just understood how to use it
<flux> it would be a lot nicer if it came with a composable extension mechanism such as myocamlbuild.ml.d/*.ml
<flux> ..though I still mostly try what works when I need to do something a little bit more special, like link in a C library
hasket has joined #ocaml
ResidentTriscuit is now known as dtscode
nullcat has joined #ocaml
<Denommus> I need to do something like [^ ] in sedlex, is it possible?
<flux> I haven't used it but how about: Sub (any, ' ') ?
amnn has joined #ocaml
<flux> the inline assembly discussion seems quite serious though, I wonder if there's actually a chance at some point OCaml might have that feature..
rgrinberg has joined #ocaml
<flux> 3x benefit for some zarith operation is nothing to be sneezed at, though
<Algebr> I imagine that ocaml compiler patches are decided in a dimly lit cigar smoke filled room.
<def`> :D
<companion_cube> would be nice
rgrinberg has quit [Ping timeout: 245 seconds]
<companion_cube> this would make the maintainers laugh, I believe
yomimono has joined #ocaml
haskeller has joined #ocaml
<Algebr> Where is the G in GADT?
<flux> it's the first letter
<flux> what do I win?!
<Algebr> internet points
<def`> Generalized or Guarded
<Algebr> but I mean where does it come into play, is it the _ in type _ foo?
<companion_cube> and Grandiose
<companion_cube> or Generous
hasket has quit [Ping timeout: 256 seconds]
struktured has quit [Ping timeout: 265 seconds]
<companion_cube> or Gratifying
<haesbaert> hmm what would be the easiest way to add sexplib decorators to Unix.tm ?
<flux> companion_cube, or maybe.. GADT
swgillespie has joined #ocaml
<companion_cube> heh
<flux> algebr, not really sure if there's a great meaning in that particular word, it's just that GADT is the name of the concept ;-)
<companion_cube> Gnu Algebraic Data Type
<octachron> Algebr: it is the explicit typing of the constructor
whirm has quit [Quit: WeeChat 1.2]
sepp2k has quit [Quit: Leaving.]
<octachron> e.g. type _ access = Opt : ('a * 'a option ) access | Exn : ('a * 'a ) option
<octachron> arg, the last option should be an access
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
Algebr has quit [Ping timeout: 264 seconds]
jeffmo has quit [Quit: jeffmo]
badkins has joined #ocaml
<Denommus> flux: that's probably it, thanks
<Denommus> flux: Sub (any,('\\' | '"')) gives me "this pattern is not a valid regexp"
rbocquet has quit [Quit: WeeChat 1.0.1]
rgrinberg has joined #ocaml
WraithM_ has quit [Quit: leaving]
rbocquet has joined #ocaml
haskeller has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
jave has quit [Ping timeout: 250 seconds]
jave has joined #ocaml
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
hay207 has quit [Quit: Leaving]
octachron has quit [Quit: Leaving]
Hannibal_Smith has quit [Quit: Leaving]
jrmd has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
tjscanlon has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tjscanlon has joined #ocaml
bjorkintosh has quit [Remote host closed the connection]
lordkryss has quit [Quit: Connection closed for inactivity]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
dtscode is now known as theSquirrelologi
theSquirrelologi is now known as TheSquirrelogist
jeffmo has joined #ocaml
Cyanure has quit [Remote host closed the connection]
jeffmo has quit [Read error: Connection reset by peer]
sdothum has joined #ocaml
misanthro-pyon has quit [Quit: I have irrefutable proof that D < 0. It follows trivially from 2D > 3D, which is obviously true.]
shum has quit [Ping timeout: 276 seconds]
Kakadu has quit [Remote host closed the connection]
sh0t has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
<Denommus> I still haven't figured it out
Simn has quit [Quit: Leaving]
jwatzman|work has quit [Quit: jwatzman|work]
jrmd has joined #ocaml
rgrinberg has quit [Ping timeout: 240 seconds]
Haudegen has quit [Ping timeout: 264 seconds]
mcclurmc_ has joined #ocaml
Gama11 has quit [Read error: Connection reset by peer]
cmtptr has quit [Ping timeout: 264 seconds]
cmtptr has joined #ocaml
<SomeDamnBody> is there anything in core async that is sort of analogous to zmq in the sense semantic behavior sense?
jwatzman|work has joined #ocaml
SomeDamnBody has quit [Ping timeout: 252 seconds]
<haesbaert> hmm what would be the easiest way to add sexplib decorators to Unix.tm ?
<haesbaert> I have a record that has Unix.tm members, since it is a Unix record type, it has no sexp_of_tm and tm_of_sexp
<haesbaert> so the question is, is there a way to auto generate tm_of_sexp and sexp_of_tm ?
MrScout has quit [Ping timeout: 256 seconds]
Haudegen has joined #ocaml
<haesbaert> hooray, found a way
MercurialAlchemi has quit [Ping timeout: 244 seconds]
ollehar has quit [Quit: ollehar]
shinnya has quit [Ping timeout: 264 seconds]
inf-gropeoid has joined #ocaml
rgrinberg has joined #ocaml
hasket has joined #ocaml
hasket has left #ocaml [#ocaml]
inf-gropeoid is now known as pyon
madroach has quit [Ping timeout: 264 seconds]
madroach has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
kdef has quit [Quit: Leaving]
yomimono has quit [Ping timeout: 265 seconds]