adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | Current MOOC: https://huit.re/ocamlmooc | OCaml 4.04.0 release notes: http://ocaml.org/releases/4.04.html | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
ygrek has quit [Ping timeout: 240 seconds]
mfp has quit [Ping timeout: 240 seconds]
ryanartecona has quit [Quit: ryanartecona]
trapz has quit [Quit: trapz]
strykerkkd has quit [Remote host closed the connection]
silver has quit [Read error: Connection reset by peer]
pyx has joined #ocaml
ryanartecona has joined #ocaml
pyx has quit [Client Quit]
trapz has joined #ocaml
spew has quit [Ping timeout: 240 seconds]
ryanartecona has quit [Quit: ryanartecona]
spew has joined #ocaml
infinity0_ has joined #ocaml
infinity0_ has quit [Changing host]
infinity0 is now known as Guest72190
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0_ has joined #ocaml
infinity0_ has quit [Changing host]
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
yaewa has joined #ocaml
yaewa has quit [Client Quit]
yaewa has joined #ocaml
yaewa has quit [Remote host closed the connection]
infinity0 has joined #ocaml
yaewa has joined #ocaml
yaewa has quit [Remote host closed the connection]
moei has quit [Ping timeout: 240 seconds]
moei has joined #ocaml
wu_ng has joined #ocaml
trapz has quit [Quit: trapz]
yegods has joined #ocaml
yegods has quit [Client Quit]
jack5638 has quit [Ping timeout: 240 seconds]
jack5638 has joined #ocaml
nomicflux has joined #ocaml
spew has quit [Quit: foobar]
copy` has quit [Quit: Connection closed for inactivity]
nomicflux has quit [Quit: nomicflux]
govg has quit [Quit: leaving]
fraggle_ has quit [Ping timeout: 240 seconds]
kamog has joined #ocaml
fraggle_ has joined #ocaml
al-damiri has joined #ocaml
dlat has quit [Ping timeout: 246 seconds]
peddie has quit [Ping timeout: 240 seconds]
peddie has joined #ocaml
dlat has joined #ocaml
MercurialAlchemi has joined #ocaml
AlexDeni_ has joined #ocaml
AlexDenisov has quit [Ping timeout: 240 seconds]
AlexDenisov has joined #ocaml
AlexDeni_ has quit [Ping timeout: 240 seconds]
hermaeus has joined #ocaml
yaewa has joined #ocaml
moei has quit [Ping timeout: 240 seconds]
Simn has joined #ocaml
orbifx has joined #ocaml
jnavila has joined #ocaml
bungoman has quit [Ping timeout: 240 seconds]
bungoman has joined #ocaml
orbifx has quit [Ping timeout: 240 seconds]
fantasticsid has joined #ocaml
fantasticsid has quit [Client Quit]
yaewa has quit [Quit: Leaving...]
moei has joined #ocaml
bungoman has quit [Ping timeout: 255 seconds]
al-damiri has quit [Quit: Connection closed for inactivity]
argent_smith has joined #ocaml
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
richi235 has joined #ocaml
govg has joined #ocaml
AlexDenisov has joined #ocaml
Xadnem has joined #ocaml
hermaeus has quit [Ping timeout: 255 seconds]
dhil has joined #ocaml
zpe has joined #ocaml
dhil has quit [Quit: Quit]
dhil has joined #ocaml
AlexDeni_ has joined #ocaml
AlexDenisov has quit [Ping timeout: 240 seconds]
AlexDeni_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
mfp has joined #ocaml
ygrek has joined #ocaml
AlexDenisov has joined #ocaml
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
argent_smith has quit [Quit: Leaving.]
mengu has joined #ocaml
AlexDenisov has joined #ocaml
mengu_ has joined #ocaml
mengu has quit [Ping timeout: 259 seconds]
malc_ has joined #ocaml
silver has joined #ocaml
kakadu has joined #ocaml
kakadu has quit [Client Quit]
kakadu has joined #ocaml
moei has quit [Read error: Connection reset by peer]
moei has joined #ocaml
demonimin has quit [Ping timeout: 240 seconds]
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
demonimin has joined #ocaml
demonimin has quit [Ping timeout: 252 seconds]
mengu has joined #ocaml
demonimin has joined #ocaml
demonimin has joined #ocaml
mengu_ has quit [Ping timeout: 255 seconds]
wu_ng has quit [Ping timeout: 245 seconds]
slash^ has joined #ocaml
jack5638 has quit [Ping timeout: 255 seconds]
jack5638 has joined #ocaml
malc_ has quit [Quit: ERC (IRC client for Emacs 25.0.50.2)]
trapz has joined #ocaml
argent_smith has joined #ocaml
argent_smith has quit [Quit: Leaving.]
AlexDenisov has joined #ocaml
richi235 has quit [Ping timeout: 252 seconds]
mengu has quit [Quit: Leaving...]
govg has quit [Ping timeout: 252 seconds]
_andre has joined #ocaml
trapz has quit [Quit: trapz]
trapz has joined #ocaml
argent_smith has joined #ocaml
sz0 has joined #ocaml
argent_smith has quit [Client Quit]
argent_smith has joined #ocaml
bungoman has joined #ocaml
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
dhil has quit [Ping timeout: 255 seconds]
AlexDenisov has joined #ocaml
argent_smith has quit [Read error: Connection reset by peer]
argent_smith has joined #ocaml
gtrak has joined #ocaml
dhil has joined #ocaml
trapz has quit [Quit: trapz]
argent_smith1 has joined #ocaml
trapz has joined #ocaml
argent_smith has quit [Ping timeout: 255 seconds]
argent_smith1 has quit [Ping timeout: 252 seconds]
argent_smith has joined #ocaml
sh0t has joined #ocaml
ousado has quit [Quit: Konversation terminated!]
ousado has joined #ocaml
argent_smith has quit [Quit: Leaving.]
argent_smith has joined #ocaml
<orbitz_> companion_cube: Is there a zip function in containers somewhere?
orbitz_ has quit [Quit: Reconnecting]
orbitz has joined #ocaml
<flux> I don't know, but the standard library comes with List.combine for lists
<companion_cube> orbitz: it's in the stdlib
<orbitz> does containers only contain thigns not in stdlib?
<orbitz> And thanks, I was foolishly looking for the function name found everywhere else :)
<companion_cube> mostly, yeah
<companion_cube> I try to complement the stdlib, not replace it
<orbitz> ok
<Leonidas> orbitz: you mit List.inject and List.reject? ;)
<Leonidas> *mean
zpe has quit [Remote host closed the connection]
<orbitz> Leonidas: ithink List.combine is what I'm after
<Leonidas> (sorry, I was just poking fun at ruby calling fold inject and filter reject)
<companion_cube> List.kneejerk
<Leonidas> oh, of course List.combine is not tail recursive
<Leonidas> why would it be, it's in the stdlib
<Leonidas> hilarious, something like List.split is in there as well
<orbitz> Leonidas: ah, I feel happy I didn't know ruby well enouhg to get the joke ;)
<orbitz> companion_cube: Aren't the operands in CCFun.compose in the opposite order one would expect?
shinnya has joined #ocaml
<Leonidas> oh, that's surprising. though considering currying it might be the more useful order
struk|desk has joined #ocaml
govg has joined #ocaml
<orbitz> Isn't compose in most other languages let compose f g x = f (g x)?
<Drup> companion_cube: still think CCList should include List, you do it in Containers.List after all, and it's not like you don't have the dependency anyway :p
<Drup> the current situation is that I have to remember if something is in List or not to know which module to use, which is a bit akward
<orbitz> I can see the argument both ways.
<Leonidas> on the positive side, CCFun contains all the Fun that the stdlib is not even shipping.
govg has quit [Ping timeout: 260 seconds]
<orbitz> companion_cube: is there a trim/strip function somewhere?
<orbitz> Leonidas: yeah, CCFun is definitely better than not having one!
ryanartecona has joined #ocaml
<rgrinberg> orbitz: String.trim already exists
<orbitz> d'oh
rossberg has quit [Ping timeout: 264 seconds]
<companion_cube> orbitz: for strings?
<companion_cube> Drup: hmmmm
<companion_cube> orbitz: CCFun.compose is the order which is natural to me (i.e. not the mathematical one) :D
<companion_cube> ah, if you want a tail-rec List.combine please open an issue in containers!
<orbitz> companion_cube: I suppose a List.combine that is a gen is also something that might be missing?
<orbitz> Whcih sort of exacerbates Drup's issue. I have two moduels to remember where to find function depending on the usecase
<companion_cube> 1/ open an issue for the regular combine ;)
<companion_cube> 2/ maybe we can discuss that on the mailing list?
<companion_cube> I'm not totally closed to this idea (at least for CC{List,Array,String}, say)
NaCl has joined #ocaml
NaCl has joined #ocaml
NaCl has quit [Changing host]
NaCl has left #ocaml [#ocaml]
spew has joined #ocaml
<orbitz> companion_cube: like CCList.combine_gen ?
<companion_cube> sure, sure
<companion_cube> you can add it to your issue if you want
<orbitz> Ah sorry, I thought you wer elinking to the other issue I added
<companion_cube> note that the behavior on lists of different size will be… different
<orbitz> companion_cube: yep, in Haskell it just truncates
rossberg has joined #ocaml
<orbitz> Does merlin support showing documentation?
<Drup> yes, but it doesn't have a shortcut by default
<orbitz> d'oh
slash^ has quit [Read error: Connection reset by peer]
<Drup> M-x merlin-document
* companion_cube bound it to \i
jao has joined #ocaml
<Drup> companion_cube: i like documentation ? :D
<orbitz> Any suggestions for an emacs key/
<Drup> (for me it's C-c C-f)
<Drup> (because it's the easiest one available with only my left hand)
<orbitz> Whoa what does C-c C-d do?? I get a match out of nowhere
<orbitz> Case split?
<Drup> merlin-destruct
<Drup> yes, case split :p
al-damiri has joined #ocaml
<Drup> (you can ask emacs himself for these questions: C-h k <series of keys>)
<orbitz> Thanks. I'm a poor emacs user. all I can do is navigate files ;)
AlexDenisov has quit [Ping timeout: 240 seconds]
AlexDeni_ has joined #ocaml
govg has joined #ocaml
dhil has quit [Ping timeout: 252 seconds]
argent_smith has quit [Quit: Leaving.]
ryanartecona has quit [Quit: ryanartecona]
Xadnem has quit [Ping timeout: 240 seconds]
sz0 has quit [Quit: Connection closed for inactivity]
Xadnem has joined #ocaml
dhil has joined #ocaml
Xadnem has quit [Remote host closed the connection]
jabroney has joined #ocaml
mengu has joined #ocaml
jnavila has quit [Quit: It was time]
technomancy has joined #ocaml
<technomancy> if I compile a native binary on Debian Jessie, what factors will determine which other Linux systems it will run on? does it have to do with the glibc version?
dhil has quit [Ping timeout: 240 seconds]
ryanartecona has joined #ocaml
<orbitz> technomancy: It depends also on what C libraries you may be linking against. I think you should be able to use ldd to see what your deps are ,but I don't have a good answer for you otherwise.
<technomancy> orbitz: yeah, in this case I am using ctypes to link against readline, so I understand that libffi and libreadline will need to be present
<technomancy> I'm just wondering if those are installed, will it work on Ubuntu systems? how far back? what about red hat, etc?
<def`> the ABI and lib versions are important too
<technomancy> def`: of readline specifically?
<def`> technomancy: on my system I have libreadline.so.7, it is likely older redhat have .so.6 or .so.5, etc
<technomancy> gotcha
<technomancy> thanks!
<mengu> hey technomancy, nice to see you here :)
<technomancy> def`: if I weren't using readline, would glibc be the only system-level lib that I'd have to worry about to determine compatibility?
<technomancy> mengu: hi hi =)
<def`> technomancy: as orbitz said, ldd can help you determine dependencis. As described in the thread, objdump is useful too
<technomancy> great; thanks
<def`> if you have no other external dependencies than glibc, yes, it should be fine for large coverage
<technomancy> ldd lists a lot of other things, but I expect most of them are just extremely stable and very unlikely to change
govg has quit [Ping timeout: 245 seconds]
AlexDeni_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
govg has joined #ocaml
copy` has joined #ocaml
<shon_> Please pardon the interjection of some idle chatter....
<shon_> I think that objectively speaking, Haskell's syntax is more elegant, and I feel like I *should* prefer it...
<shon_> But the more time I spend with (S/OC)ML, more I prefer it over Haskellish syntax... Only I'm not quite why.
<shon_> *quite sure why
<Drup> indentation based languages sucks, that's why :p
<shon_> Oh yeah, there is definitely the problem of semantically meaningful white space. that's the one part I *do* understand ;)
jabroney has quit [Quit: Leaving.]
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
<mengu> shon_: what you like about haskell syntax?
<technomancy> https://github.com/technomancy/grenchman/blob/fe129f2dd110f33d26f8ae518d2466f60767f037/repl.ml#L25 <- is there a better way to check whether a string contains a complete sexp?
infinity0 has quit [Remote host closed the connection]
<technomancy> currently doing try let _ = Sexp.of_string input in true with | _ -> false
infinity0 has joined #ocaml
<technomancy> relying on exceptions here makes me feel uncomfortable
<shon_> mengu: I think it tends to be "cleaner" looking than equivalent ocaml code and often allows for very elegant formulation of problem solutions.
<technomancy> my only problem with ocaml syntax is that the part of my brain that stores precedence rules has been on vacation for so long that I often can't get things to compile without just spamming parens everywhere
<technomancy> but I have paredit, so that's not really much of a problem =)
dhil has joined #ocaml
<Leonidas> technomancy: i have figured out a number of ways to write code to avoid parens wherever possible
<Leonidas> reshuffling match cases, using @@ heavily
<technomancy> Leonidas: ain't got room in my brain for that
jabroney has joined #ocaml
<Drup> Leonidas: reshuffling match cases to avoid putting parens around inner matches is a terrible habit
<Leonidas> Drup: no, it's not, really.
<Leonidas> Within bounds it makes sense
<Drup> until someone elses add one more branch, 2 month latter :p
<Leonidas> often times there are some early-exit cases, they go to the top and then the heavy-lifting case can happily use nested matching without parens
<shon_> technomancy: I haven't been able to come upon a better way after a bit of searching...
<technomancy> the part of my brain responsible for memorizing precedence rules has been permanently reassigned to make room for more emacs key bindings; very unfortunate but at least this way it will be contributing something of value =)
<Leonidas> of course, sometimes it can't be avoided
<shon_> I would at least explicitly catch the relevant exception, tho. Rather then having the wildcard there.
<technomancy> shon_: ok, thanks
<Leonidas> which can by the way also be done with match!
<Leonidas> such a great feature of recent ocaml versions <3
<Leonidas> is bucklescript still only on 4.02?
moei has quit [Quit: Leaving...]
nightmared has quit [Ping timeout: 245 seconds]
<shon_> ?
nightmared has joined #ocaml
<Leonidas> shon_: yes, that one in the Postscript
<shon_> That's a really lovely feature! I wasn't aware of it.
<shon_> Thanks :)
<Leonidas> my pleasure
Anarchos has joined #ocaml
moei has joined #ocaml
Anarchos has quit [Remote host closed the connection]
kamog has quit [Remote host closed the connection]
Simn has quit [Ping timeout: 240 seconds]
Orion3k has joined #ocaml
nightmared has quit [Read error: Connection reset by peer]
AlexDenisov has joined #ocaml
bungoman has quit [Ping timeout: 240 seconds]
nightmared has joined #ocaml
argent_smith has joined #ocaml
rand__ has joined #ocaml
pirbo has joined #ocaml
<pirbo> Hi all, Today `opam init` stack overflow on my travis-ci builds ( https://travis-ci.org/Kappa-Dev/KaSim/jobs/220640720 ). Do you know where I can look to try to understand why?
<Drup> pirbo: knee-jerk reaction: "[WARNING] Recommended external solver aspcud not found."
richi235 has joined #ocaml
<pirbo> It's an idea, let's try...
orbifx has joined #ocaml
average has joined #ocaml
apache2 has quit [Quit: leaving]
apache2 has joined #ocaml
AlexDenisov has quit [Ping timeout: 252 seconds]
AlexDenisov has joined #ocaml
ryanartecona has quit [Quit: ryanartecona]
<pirbo> Indeed, it fixes the issue
kakadu has quit [Quit: Konversation terminated!]
Simn has joined #ocaml
orbifx has quit [Ping timeout: 255 seconds]
ygrek has quit [Ping timeout: 240 seconds]
SpiceGuid has joined #ocaml
SpiceGuid has quit [Client Quit]
rand__ has quit [Ping timeout: 255 seconds]
tane has joined #ocaml
ryanartecona has joined #ocaml
ygrek has joined #ocaml
rand__ has joined #ocaml
dhil has quit [Ping timeout: 240 seconds]
dtornabene has joined #ocaml
ygrek has quit [Ping timeout: 252 seconds]
cranmax has joined #ocaml
<cranmax> Hi, how can I Download a CSV file (or any file) from an URL to a Path in my computer?
kakadu has joined #ocaml
bungoman has joined #ocaml
spew has quit [Read error: Connection reset by peer]
spew has joined #ocaml
<dtornabene> do yo mean with ocaml?
<dtornabene> cranmax: ?
<cranmax> dtornabene: yes with OCaml
<dtornabene> what base are you using? the standard library? the jane street Core?
<tane> (assuming download refers to a HTTP transfer?)
<dtornabene> it describes some light web scripting using ocaml, and could easily be adapted to other uses, including grabbing a file
<cranmax> okey, I'm going to try it, thanks
trapz has quit [Quit: trapz]
demonimin has quit [Remote host closed the connection]
demonimin has joined #ocaml
ygrek has joined #ocaml
orbifx has joined #ocaml
<cranmax> dtornabene: it prompts me an error the function let print_org (the one you passed me), the error is : unbound module Core_extended
<dtornabene> do you have core_extended installed?
<cranmax> Yes version 113.33.00+4.03
<dtornabene> post a traceback
<cranmax> How I do a traceback?
rand__ has quit [Ping timeout: 255 seconds]
<dtornabene> a traceback is the error message that gets spit out
<dtornabene> you copy and paste it to a paste site and post a link to that specific paste
<cranmax> Unbound module Core_extended
<dtornabene> right, did you import it into your file/module?
<cranmax> No, I just opened Emacs open a new file.ml and copy and paste the function, then with utop in emacs I evaluate : open Core.Std and then the function that gives me the unbound error
<cranmax> I have never programmed before just 2 scripts, this is my first attempt so may be the error is so easy
<dtornabene> this is a rough language to jump into that way friend. good luck though
ryanartecona has quit [Quit: ryanartecona]
<cranmax> dtornabene: thanks for your insights, can you continue helping on this?
<dtornabene> i can't at the moment, sorry
<dtornabene> if you're learning to program and want to start with OCaml, I'd suggest the hickey book
Simn has quit [Quit: Leaving]
<dtornabene> take your time with it
<dtornabene> or even better, OCaml from the very beginning
<dtornabene> actually, yeah, OCaml from the very beginning is where you should start
maattdd has quit [Ping timeout: 240 seconds]
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
AlexDenisov has joined #ocaml
AlexDenisov has quit [Client Quit]
<cranmax> dtornabene: thanks for your recommendation, I will buy OCaml from the very beginning. Also I think that a web request is easy in ocaml
<cranmax> I mean with easy: not much lines of code
<technomancy> it's not so much the lines of code as the environment/library setup IMO
<technomancy> it's much improved over when I first learned OCaml but still has a lot of subtle easy-to-overlook mistakes for newcomers
<cranmax> technomancy: yes I think the same
<cranmax> I have solved the Unbound module core_extended
<cranmax> I have typed in utop: #require "core_extended";;
tane has quit [Quit: Leaving]
<cranmax> Now I'm attempting to download an http/https file and saving to disk in OCaml, the file could be: "http://www.ocamlpro.com/files/ocaml-lang.pdf"
<cranmax> Any thought helps me, thanks.
gtrak has quit [Quit: This computer has gone to sleep]
dtornabene has quit [Quit: Leaving]
MercurialAlchemi has quit [Ping timeout: 255 seconds]
cheater2 has quit [Ping timeout: 268 seconds]
cheater2 has joined #ocaml
rand__ has joined #ocaml
kakadu has quit [Remote host closed the connection]
richi235 has quit [Ping timeout: 255 seconds]
ryanartecona has joined #ocaml
orbifx has quit [Ping timeout: 245 seconds]
rand__ has quit [Quit: leaving]
argent_smith has quit [Quit: Leaving.]
infinity0 has quit [Remote host closed the connection]
sh0t has quit [Remote host closed the connection]
infinity0 has joined #ocaml