adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.06.0 release notes: https://caml.inria.fr/pub/distrib/ocaml-4.06/notes/Changes | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
Haudegen has quit [Remote host closed the connection]
Soni has quit [Excess Flood]
Soni has joined #ocaml
infinity0_ has joined #ocaml
infinity0_ has quit [Changing host]
infinity0 has quit [Killed (orwell.freenode.net (Nickname regained by services))]
infinity0 has joined #ocaml
Pierpa has joined #ocaml
cbot has joined #ocaml
isd has quit [Ping timeout: 256 seconds]
_whitelogger has joined #ocaml
chatchatt has joined #ocaml
chatchat1 has quit [Ping timeout: 240 seconds]
jao has joined #ocaml
zolk3ri has quit [Ping timeout: 260 seconds]
mfp has quit [Ping timeout: 240 seconds]
jao has quit [Ping timeout: 264 seconds]
AltGr has joined #ocaml
AltGr has left #ocaml [#ocaml]
Khady_ has joined #ocaml
Khady has quit [Remote host closed the connection]
Khady_ is now known as Khady
Khady has quit [Changing host]
Khady has joined #ocaml
_whitelogger has joined #ocaml
unyu has quit [Quit: Hopping to another machine, pyooooooooooooooon~.]
unyu has joined #ocaml
mbuf has joined #ocaml
manas has joined #ocaml
<manas> Hi, OCaml newbie here. Coming from JS background. So what I wanted to know was if I wanted to debug and I needed the library's source I would simply open up the source in node_modules. I tried searching for the package's source (in this case Janestreets Async) in .opam but couldn't find the defs. Even on github (https://github.com/janestreet/async/blob/master/src/async.ml) I just found a bunch of includes. How does one dig into the package?
pierpa has quit [Quit: Page closed]
<companion_cube> I don't know anything about the JS side of things, but `include Foo` typically means the actual code is in foo.ml (or Foo.ml)
<onion> manas try BuckleScript
manas_ has joined #ocaml
spew has joined #ocaml
<manas_> @companion_cube I'm referring to packages installed using OPAM
manas has quit [Ping timeout: 240 seconds]
manas_ is now known as prometheansacrif
<companion_cube> the sources are not always installed
<companion_cube> (by opam)
prometheansacrif is now known as psacrifice
<companion_cube> but if they are, it should be a bunch of .ml files, among which the `include`-ded modules
<psacrifice> @companion_cube Where can I find Async's source?
<psacrifice> Wait this one ^ I was able to figure.
<psacrifice> Thank you @companion_cube
<companion_cube> no pb
<psacrifice> Also, if I share my project that has some dependencies, in Node, python etc we have something like npm install or pip install -r requirements.txt. Whats the equivalent here in OCaml?
<psacrifice> The build tool itself?
<psacrifice> jbuild?
<companion_cube> you can use opam
<companion_cube> or something like `jbuilder external-lib-deps --missing @install` if the package uses jbuilder
<companion_cube> (which is increasingly common)
<psacrifice> I have started with OCamlMakefile Is it possible using makefiles>
cbot has quit [Quit: Leaving]
spew has quit [Ping timeout: 256 seconds]
<companion_cube> imho makefiles are a bad idea
<companion_cube> they are simply not up to the (complicated) task of building OCaml programs
<companion_cube> to a beginner I'd really recommend jbuilder (or ocamlbuild if jbuilder is really not an option)
<psacrifice> Right. I presumed jbuilder is for more complicated projects and hence started with simple Makefiles
<companion_cube> no, it's for any project
isd has joined #ocaml
<companion_cube> never looked at ocamlmakefile, but it's really not popular afaik
<companion_cube> (and really, I shiver at the thought of using a makefile for OCaml…)
<psacrifice> Definitely checking out jbuilder.
spew has joined #ocaml
<psacrifice> > (and really, I shiver at the thought of using a makefile for OCaml…)
<psacrifice> haha^
<companion_cube> note that I have a trivial makefile to invoke jbuilder in my projects :)
<companion_cube> because it's still nice to `make`
<psacrifice> I can empathise :)
<psacrifice> Does jbuilder beat oasis and other build tools?
<companion_cube> it's more recent, and in some ways, nicer
<companion_cube> oasis is a fine option, but its age shows a bit, I think
<companion_cube> (also it uses a lot of code generation)
<companion_cube> no idea if that's still up to date
<companion_cube> I never use anything like OPAMROOT, but that might be useful for npm stuff… no idea
psacrifi_ has joined #ocaml
<psacrifi_> What do you think of Anil's suggestion? Can jbuild be the answer to jordwalke's question?
<companion_cube> the opam stuff is still valid
<companion_cube> you can use that (I often do use a local opam file + `opam pin`)
<companion_cube> anyway, going to bed
psacrifice has quit [Ping timeout: 256 seconds]
psacrifi_ has quit [Remote host closed the connection]
spew has quit [Read error: Connection reset by peer]
MercurialAlchemi has joined #ocaml
justaguyga has joined #ocaml
justaguyga has quit [Client Quit]
psacrifice has joined #ocaml
<psacrifice> @companion_cube Thanks for the chat :)
psacrifice has quit [Client Quit]
<_xvilka_> hi! How I can load the Bigarray from file, just one dimensional array of bytes
<_xvilka_> Because Bigarray.Genarray.map_file returns only 3 dimensional array
<_xvilka_> I am working with Pyml library, need to pass a big chunks of data, it only supports this via Bigarray/NumPy arrays
<octachron> Bigarray.Array%d.map_file returns d dimensional array
<_xvilka_> octachron: thank you!
BitPuffin has joined #ocaml
raphinou has joined #ocaml
raphinou has quit [Quit: WeeChat 1.9]
mk9 has joined #ocaml
letoh has quit [Ping timeout: 256 seconds]
<_xvilka_> oh, too bad Pyml only works with floatarrays, uh oh
<_xvilka_> seems nobody really using this library
<_xvilka_> it cannot handle neither raw bytes, nor bufs as a Bigarray
mk9 has quit [Quit: mk9]
isd has quit [Quit: Leaving.]
pierpa has joined #ocaml
pierpa has quit [Client Quit]
pierpa has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 268 seconds]
MercurialAlchemi has joined #ocaml
Haudegen has joined #ocaml
Haudegen has quit [Remote host closed the connection]
evgeniy_ has joined #ocaml
evgeniy_ has quit [Read error: Connection reset by peer]
evgeniy_ has joined #ocaml
milou has joined #ocaml
Haudegen has joined #ocaml
argent_smith has joined #ocaml
tarptaeya has joined #ocaml
AltGr has left #ocaml [#ocaml]
AltGr has joined #ocaml
AltGr has joined #ocaml
Muzer has quit [Ping timeout: 252 seconds]
argent_smith has quit [Ping timeout: 264 seconds]
argent_smith has joined #ocaml
ygrek has joined #ocaml
tarptaeya has quit [Quit: Byeeeeeee!]
_whitelogger has quit [K-Lined]
_whitelogger has joined #ocaml
Muzer has joined #ocaml
hdurer[m] has quit [Read error: Connection timed out]
hdurer[m] has joined #ocaml
mk9 has joined #ocaml
mk9 has quit [Remote host closed the connection]
MercurialAlchemi has quit [Ping timeout: 240 seconds]
Guest11325 has joined #ocaml
mk9 has joined #ocaml
MercurialAlchemi has joined #ocaml
<Guest11325> whats the best book for learning ocaml
mk9 has quit [Remote host closed the connection]
mk9 has joined #ocaml
<Leonidas> Guest11325: RWO
<Guest11325> Leonidas: how does it compare to the tutorials on the website
<Guest11325> the tutorial looks like its for c coders
malc_ has joined #ocaml
<octachron> which tutorial?
ollehar_ has joined #ocaml
<ollehar_> What's this thing type-driven development? Serious?
evgeniy_ has quit [Ping timeout: 245 seconds]
<Guest11325> do you need to learn c before ocaml
<Armael> no.
<Guest11325> ollehar_: type level programming is for masochists
<ollehar_> Guest11325: Not type-level, type-driven. :)
<ollehar_> Like in "test-driven" or "risk-driven".
<octachron> Guest11325, no, this tutorial is merely addressing an audience familiar with C. I would say that RWO is probably a better starting point
<Leonidas> Guest11325: I wouldn't use it, it seems very basic?
<Leonidas> ollehar_: TDD is awesome! The Idris book is even called "Type-driven development in Idris" :-)
<ollehar_> Hm, OK.
<ollehar_> So it's only for dependent type systems?
<Armael> well the more expressive your types are, the more powerful it is
mfp has joined #ocaml
Parckwart has joined #ocaml
Parckwart has quit [Client Quit]
<Leonidas> ollehar_: no, you can do it everywhere, sort of like you can do OOP without using an OOP language
<ollehar_> Leonidas: Well, that would be torture. :)
<Leonidas> ollehar_: You mean glib and gobject in C/GTK+? :p
<ollehar_> Leonidas: Yes!
Haudegen has quit [Remote host closed the connection]
equalunique[m] has quit [Ping timeout: 255 seconds]
equalunique[m] has joined #ocaml
jao has joined #ocaml
evgeniy_ has joined #ocaml
chatchat1 has joined #ocaml
chatchatt has quit [Ping timeout: 256 seconds]
kakadu has joined #ocaml
kakadu has quit [Client Quit]
kakadu has joined #ocaml
shinnya has joined #ocaml
zpe has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 268 seconds]
jao has quit [Ping timeout: 264 seconds]
_andre has joined #ocaml
jimmyrcom has quit [Ping timeout: 256 seconds]
Khady has quit [Remote host closed the connection]
Khady has joined #ocaml
Haudegen has joined #ocaml
ziyourenxiang has joined #ocaml
mbuf has quit [Quit: Leaving]
mk9 has quit [Quit: mk9]
mk9 has joined #ocaml
MercurialAlchemi has joined #ocaml
jao has joined #ocaml
sh0t has joined #ocaml
zolk3ri has joined #ocaml
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
<_xvilka_> hi
zpe has quit [Remote host closed the connection]
<_xvilka_> trying to do "opam-publish submit ../mypkg-0.1" but it gives me error "Fatal error: No SSL or TLS support compiled into Conduit
zpe has joined #ocaml
<_xvilka_> I tried to do "opam install ssl; opam reinstall github-unix; opam reinstall opam-publish" but still no luck
zpe has quit [Remote host closed the connection]
jnavila has joined #ocaml
<octachron> _xvilka_, the optional dependency (aka the package that you need to reinstall) is on conduit-lwt-unix
freyr has joined #ocaml
letoh has joined #ocaml
jnavila has quit [Ping timeout: 240 seconds]
am55 has joined #ocaml
milou has quit [Ping timeout: 240 seconds]
leah2 has quit [Remote host closed the connection]
am55 has quit [Quit: am55]
leah2 has joined #ocaml
tarptaeya has joined #ocaml
zpe has joined #ocaml
zpe has quit [Ping timeout: 245 seconds]
evgeniy_ has quit [Ping timeout: 264 seconds]
gtrak has joined #ocaml
sh0t has quit [Remote host closed the connection]
evgeniy_ has joined #ocaml
<Leonidas> hmm, I am trying to Monitor.try_with (fun () -> In_thread.run (fun () -> raise Not_found))) but the exception is never passed to the monitor. Anyone know what is happening?
am55 has joined #ocaml
barcabuona has quit [Ping timeout: 264 seconds]
iZsh has quit [Quit: ZNC - http://znc.in]
iZsh has joined #ocaml
spew has joined #ocaml
barcabuona has joined #ocaml
shinnya has quit [Ping timeout: 260 seconds]
evgeniy_ has quit [Quit: Konversation terminated!]
evgeniy_ has joined #ocaml
milou has joined #ocaml
Haudegen has quit [Remote host closed the connection]
milou has quit [Ping timeout: 264 seconds]
Guest11325 has quit [Quit: Page closed]
freyr has quit [Remote host closed the connection]
milou has joined #ocaml
Haudegen has joined #ocaml
FreeBirdLjj has joined #ocaml
al-damiri has joined #ocaml
thomasga has joined #ocaml
<thomasga> Hi there, any idea how to transform an `element node` into a `general node` in lamdasoup?
sh0t has joined #ocaml
<octachron> thomasga, this does not seem possible. Spiriting away the phantom type with an existential type may be a workaround
barcabuona has quit [Ping timeout: 240 seconds]
unyu has quit [Quit: The end of the world is nigh. Bring as much popcorn as you can!]
jao has quit [Ping timeout: 268 seconds]
unyu has joined #ocaml
barcabuona has joined #ocaml
tarptaeya has quit [Ping timeout: 240 seconds]
Bronsa has joined #ocaml
thomasga has quit [Quit: Leaving.]
FreeBirdLjj has quit [Remote host closed the connection]
am55 has quit [Quit: am55]
nahra has joined #ocaml
zpe has joined #ocaml
thomasga has joined #ocaml
failproofshark has joined #ocaml
ziyourenxiang has quit [Ping timeout: 240 seconds]
zpe has quit [Remote host closed the connection]
ollehar_ has quit [Ping timeout: 260 seconds]
zpe has joined #ocaml
FreeBirdLjj has joined #ocaml
dedgrant has joined #ocaml
Onemorenickname has joined #ocaml
tarptaeya has joined #ocaml
mk9 has quit [Quit: mk9]
FreeBirdLjj has quit [Remote host closed the connection]
AltGr has left #ocaml [#ocaml]
milou has quit [Ping timeout: 268 seconds]
chatchatt has joined #ocaml
chatchat1 has quit [Ping timeout: 260 seconds]
SGautam has joined #ocaml
<SGautam> Hello everybody
<SGautam> I recently got interested into OCaml after reading that the Rust compiler was first written in OCaml
<SGautam> I read up a few examples over on Wikipedia, and OCaml does seem counter intuitive compared to the more traditional languages like C/C++/Python etc.
<companion_cube> "intuitive" is a matter of habit
<SGautam> I just wanted to ask what kind of things do you think OCaml does better than other languages? I'm really interested to learn but I'm not sure if I'll take the right direction myself
<companion_cube> well, writing compilers
<gikiam> :D
<SGautam> hehe
<gikiam> true
<companion_cube> what OCaml brings: safer language (fewer opportunities for runtime errors)
<gikiam> also, writing proofs of compilers
<gikiam> writing compilers of proofs
<malc_> SGautam: prototyping
<companion_cube> good expressiveness (compaered to C++) and good perf (compared to python)
<companion_cube> and the language is still quite simple at its core, it's all about algebraic types and recursive functions
evgeniy_ has quit [Ping timeout: 240 seconds]
pierpa has quit [Ping timeout: 260 seconds]
pierpa has joined #ocaml
ygrek has quit [Remote host closed the connection]
Haudegen has quit [Read error: Connection reset by peer]
malc_ has quit [Remote host closed the connection]
kakadu has quit [Quit: Konversation terminated!]
sh0t has quit [Remote host closed the connection]
thomasga has quit [Quit: Leaving.]
thomasga has joined #ocaml
andreas_ has joined #ocaml
weird_error has joined #ocaml
weird_error has quit [Client Quit]
thomasga has quit [Quit: Leaving.]
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
isd has joined #ocaml
kakadu has joined #ocaml
thomasga has joined #ocaml
thomasga has left #ocaml [#ocaml]
jimmyrcom has joined #ocaml
jimmyrcom has quit [Ping timeout: 264 seconds]
kakadu has quit [Ping timeout: 240 seconds]
kakadu has joined #ocaml
isd has quit [Ping timeout: 240 seconds]
nahra has quit [Remote host closed the connection]
nahra has joined #ocaml
nahra has quit [Remote host closed the connection]
pk6vx0x2 has joined #ocaml
Miltnoid has joined #ocaml
<Miltnoid> Oh man, I made a huge mistake
<Miltnoid> I opam upgraded and now everything is broken
<Miltnoid> Does anybody know if there's been issues with like "Error: No implementations provided for the following modules: Array referenced from /Users/[username]/.opam/4.06.0/lib/ocaml/unix.cmxa(Unix), ....."
<companion_cube> wut
<Miltnoid> yeah, I can't find the Array implementation...
<companion_cube> well I mean it's in the stdlib
<Miltnoid> Or Stack, or GenLex, or Obj
<companion_cube> there's something super fishy
<companion_cube> all this is always installed
<Miltnoid> that's what I thought too
<Miltnoid> i opam switched because i was so confused
<Miltnoid> to a fresh thing
<Miltnoid> and it still didnt work
<Miltnoid> which jbuilder and which ocaml both go to my opam folder
tarptaeya has quit [Ping timeout: 264 seconds]
kakadu_ has joined #ocaml
kakadu has quit [Ping timeout: 256 seconds]
jnavila has joined #ocaml
<Miltnoid> never mind i think i figured it out...
isd has joined #ocaml
regina has quit [Quit: Lost terminal]
jao has joined #ocaml
Miltnoid has quit [Quit: Page closed]
isd has quit [Ping timeout: 260 seconds]
pk6vx0x2 has quit [Quit: Lost terminal]
jnavila has quit [Quit: Konversation terminated!]
jnavila has joined #ocaml
spew has quit []
BitPuffin has quit [Remote host closed the connection]
orbifx has joined #ocaml
jonh has left #ocaml ["WeeChat 1.4"]
orbifx has quit [Quit: WeeChat 2.0.1]
_andre has quit [Quit: leaving]
gtrak has quit [Ping timeout: 276 seconds]
orbifx has joined #ocaml
cbot has joined #ocaml
jnavila has quit [Remote host closed the connection]
andreas_ has quit [Quit: Connection closed for inactivity]
argent_smith has quit [Quit: Leaving.]
cbot has quit [Ping timeout: 240 seconds]
cbot_ has joined #ocaml
Onemorenickname has quit [Read error: Connection reset by peer]
kakadu_ has quit [Remote host closed the connection]
spew has joined #ocaml
jimmyrcom has joined #ocaml
okeuday_bak has quit [Read error: Connection reset by peer]
spew has quit [Ping timeout: 246 seconds]
rostero has joined #ocaml
jeffmo_ has joined #ocaml
jeffmo_ has quit [Client Quit]
jeffmo_ has joined #ocaml
jeffmo_ is now known as jeffmo
dedgrant has quit [Quit: Leaving]
al-damiri has quit [Quit: Connection closed for inactivity]
spew has joined #ocaml
isd has joined #ocaml