<natrium1970>
How do I get opam to build the docs for a package I installed (zarith)?
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
rgrinberg1 has quit [Ping timeout: 255 seconds]
<natrium1970>
Ugh. And the documentation on ocamlcore requires registration to access. Why?
pilne has left #ocaml [#ocaml]
aubergines has quit [Quit: leaving]
shinnya has quit [Ping timeout: 252 seconds]
tnguyen has joined #ocaml
lobo has quit [Quit: leaving]
__uu__ has joined #ocaml
toomuchtvrotsurb has quit [Remote host closed the connection]
tnguyen has quit [Ping timeout: 252 seconds]
rgrinberg1 has joined #ocaml
nullcatxxx_ has joined #ocaml
swgillespie has joined #ocaml
natrium1970 has quit [Quit: natrium1970]
keen___________8 has joined #ocaml
keen___________7 has quit [Ping timeout: 240 seconds]
__uu___ has joined #ocaml
__uu____ has joined #ocaml
__uu__ has quit [Ping timeout: 264 seconds]
__uu___ has quit [Ping timeout: 246 seconds]
<yminsky>
Anyone have experience getting ppx_deriving packages working with merlin? I've got the standard one working (by merlin-use'ing ppx_deriving.std), but can't get ppx_sexp_conv to hook in properly. This, despite having no trouble using them through utop.
fluter has quit [Ping timeout: 256 seconds]
<Drup>
yminsky: could it be an issue with the whole ppx_driver thing ?
<yminsky>
Perhaps. I'm not terrible familiar with the mechanisms here.
<Drup>
well, I guess it's best to ask diml, really
<yminsky>
Funny that. OK, I'll ask him.
tennix has joined #ocaml
kushal has joined #ocaml
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
sz0 has joined #ocaml
fluter has joined #ocaml
kushal has quit [Excess Flood]
kushal has joined #ocaml
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
nullcatxxx_ has joined #ocaml
luzie has quit [Quit: WeeChat 1.4-dev]
kushal has quit [Ping timeout: 264 seconds]
<Algebr>
Why does input_char drag along a \n
kushal has joined #ocaml
darkf has joined #ocaml
kushal has quit [Ping timeout: 255 seconds]
kushal has joined #ocaml
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
luzie has joined #ocaml
luzie has quit [Client Quit]
luzie has joined #ocaml
kushal has quit [Ping timeout: 264 seconds]
f[x] has quit [Ping timeout: 240 seconds]
Algebr has quit [Ping timeout: 264 seconds]
c74d3a has quit [Remote host closed the connection]
c74d3a has joined #ocaml
nullcatxxx_ has joined #ocaml
mac10688 has quit [Ping timeout: 265 seconds]
c74d3a has quit [Read error: Connection reset by peer]
c74d3a has joined #ocaml
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
nullcatxxx_ has joined #ocaml
kushal has joined #ocaml
ggole has joined #ocaml
c74d3a has quit [Remote host closed the connection]
keen___________9 has joined #ocaml
keen___________8 has quit [Ping timeout: 265 seconds]
kushal has quit [Excess Flood]
kushal has joined #ocaml
tmtwd has joined #ocaml
c74d3a has joined #ocaml
mea-culpa has joined #ocaml
f[x] has joined #ocaml
obadz has quit [Ping timeout: 272 seconds]
swgillespie has joined #ocaml
obadz has joined #ocaml
MercurialAlchemi has joined #ocaml
govg has joined #ocaml
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
nullcatxxx_ has joined #ocaml
slash^ has joined #ocaml
nullcatxxx_ has quit [Ping timeout: 264 seconds]
nullcatxxx_ has joined #ocaml
tmtwd has quit [Ping timeout: 240 seconds]
psy_ has joined #ocaml
nullcatxxx_ has quit [Read error: Connection reset by peer]
nullcatxxx_ has joined #ocaml
nullcatxxx_ has quit [Ping timeout: 272 seconds]
nullcatxxx_ has joined #ocaml
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
nullcatxxx_ has quit [Read error: Connection reset by peer]
Mercuria1Alchemi has joined #ocaml
nullcatxxx_ has joined #ocaml
nullcatxxx_ has quit [Read error: Connection reset by peer]
nullcatxxx_ has joined #ocaml
nullcatxxx_ has quit [Read error: Connection reset by peer]
nullcatxxx_ has joined #ocaml
nullcatxxx_ has quit [Read error: Connection reset by peer]
nullcatxxx_ has joined #ocaml
antkong has joined #ocaml
__uu____ has quit []
nullcatxxx_ has quit [Client Quit]
antkong has quit [Ping timeout: 240 seconds]
antkong has joined #ocaml
kushal has quit [Ping timeout: 272 seconds]
kushal has joined #ocaml
yaewa has quit [Quit: Leaving...]
moei has joined #ocaml
antkong has quit [Quit: antkong]
darkf_ has joined #ocaml
tibor_ has quit [Ping timeout: 246 seconds]
darkf has quit [Ping timeout: 240 seconds]
gargawel_ has quit [Ping timeout: 268 seconds]
rks` has quit [Ping timeout: 268 seconds]
rks` has joined #ocaml
gargawel has joined #ocaml
mort___ has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 265 seconds]
darkf_ is now known as darkf
zpe has joined #ocaml
AlexRussia has joined #ocaml
Haudegen has quit [Ping timeout: 260 seconds]
Mercuria1Alchemi has quit [Ping timeout: 244 seconds]
MercurialAlchemi has joined #ocaml
mort___ has quit [Quit: Leaving.]
Haudegen has joined #ocaml
zpe has quit [Remote host closed the connection]
MercurialAlchemi has quit [Ping timeout: 244 seconds]
sh0t has joined #ocaml
f[x] has quit [Ping timeout: 265 seconds]
Kakadu has joined #ocaml
kushal has quit [Excess Flood]
rgrinberg1 has quit [Ping timeout: 264 seconds]
xet7 has joined #ocaml
kushal has joined #ocaml
kushal has quit [Excess Flood]
kushal has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
kushal has quit [Excess Flood]
kushal has joined #ocaml
kushal has quit [Excess Flood]
kushal has joined #ocaml
orbifx has joined #ocaml
kushal has quit [Max SendQ exceeded]
obadz- has joined #ocaml
kushal has joined #ocaml
orbifx has quit [Ping timeout: 244 seconds]
kushal has quit [Excess Flood]
antkong_ has joined #ocaml
jgjl has joined #ocaml
jgjl has quit [Remote host closed the connection]
jgjl has joined #ocaml
rgrinberg1 has joined #ocaml
^elyse^ has joined #ocaml
kdas_ has joined #ocaml
rgrinberg1 has quit [Ping timeout: 264 seconds]
kdas_ has quit [Ping timeout: 246 seconds]
<jgjl>
Morning, I have some strange trouble using ocaml-dns.
kdas_ has joined #ocaml
<jgjl>
I open dns, then Dns_resolver_unix comes up in the autocompletion, but when I actually execute "Dns_resolver_unix.create;;" I get "Error: Reference to undefined global `Dns_resolver_unix' ". Did miss something?
<jgjl>
I, I missed I, but maybe something more..? :)
^elyse^ has quit [Quit: Leaving]
octachron has joined #ocaml
kdas__ has joined #ocaml
kdas_ has quit [Ping timeout: 246 seconds]
<adrien>
jgjl: are you using the toplevel or compiling? and how did you install?
obadz has quit [Ping timeout: 264 seconds]
<jgjl>
Sorry, forgot to mention it, I use toplevel, as in utop.
<jgjl>
I installed it using opam
obadz has joined #ocaml
obadz_ has joined #ocaml
MercurialAlchemi has joined #ocaml
mac10688 has joined #ocaml
larhat1 has quit [Quit: Leaving.]
rgrinberg1 has joined #ocaml
rgrinberg1 has quit [Ping timeout: 260 seconds]
bjorkintosh has quit [Ping timeout: 244 seconds]
^elyse^ has joined #ocaml
slash^ has joined #ocaml
bjorkintosh has joined #ocaml
<def`>
jgjl: you just didn't link the dns_resolver library
<def`>
autocompletion only needs cmi files, execution needs object files
<jgjl>
Sounds like a good explanation, thank you.
<def`>
(if you are familiar with C language, this would be similar to .h vs .o, although the analogy doesn't go very far :))
<def`>
in toplevel, that's probably one #require away
<jgjl>
Ah, that's it, I tried "open" in various ways, but it was # #require "dns.lwt-core";; and "dns.lwt"
<jgjl>
Thanks! :)
<jgjl>
That's the thing I still don't get when working with ocaml...
obadz- has quit [Ping timeout: 264 seconds]
<apache2>
what's dns_resolver? is it a pure ocaml dns lib?
<jgjl>
Honestly, I did not find dns_resolver
obadz- has joined #ocaml
<jgjl>
but dns.lwt & dns.lwt-core odes the trick
tennix has quit [Ping timeout: 256 seconds]
sh0t has quit [Ping timeout: 250 seconds]
sh0t has joined #ocaml
^elyse^ has quit [Quit: Leaving]
jgjl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
mea-culpa has quit []
obadz has quit [Ping timeout: 246 seconds]
obadz_ is now known as obadz
obadz-_ has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 240 seconds]
^elyse^ has joined #ocaml
rgrinberg1 has joined #ocaml
jgjl has joined #ocaml
sh0t has quit [Ping timeout: 272 seconds]
rgrinberg1 has quit [Ping timeout: 250 seconds]
govg has quit [Ping timeout: 252 seconds]
MercurialAlchemi has joined #ocaml
obadz- has quit [Quit: leaving]
mort___ has joined #ocaml
antkong_ has quit [Ping timeout: 240 seconds]
^elyse^ has quit [Quit: Leaving]
slash^ has quit [Read error: Connection reset by peer]
igoroliveira has joined #ocaml
rgrinberg1 has joined #ocaml
rgrinberg1 has quit [Ping timeout: 255 seconds]
shinnya has joined #ocaml
tennix has joined #ocaml
^elyse^ has joined #ocaml
psy_ has quit [Ping timeout: 250 seconds]
psy_ has joined #ocaml
mort___ has quit [Quit: Leaving.]
TheLemonMan has joined #ocaml
larhat1 has joined #ocaml
larhat1 has quit [Read error: Connection reset by peer]
larhat1 has joined #ocaml
rgrinberg1 has joined #ocaml
^elyse^ has quit [Quit: Leaving]
grumpi has joined #ocaml
rgrinberg1 has quit [Ping timeout: 268 seconds]
psy_ has quit [Ping timeout: 264 seconds]
mort___ has joined #ocaml
shinnya has quit [Ping timeout: 252 seconds]
octachron has quit [Quit: Leaving]
tane has joined #ocaml
_whitelogger has quit [Remote host closed the connection]
_whitelogger_ has joined #ocaml
orbitz_ has quit [Quit: Reconnecting]
orbitz has joined #ocaml
malc_ has joined #ocaml
larhat1 has quit [Quit: Leaving.]
^elyse^ has quit [Quit: Leaving]
obadz- has joined #ocaml
rgrinberg1 has joined #ocaml
obadz- has quit [Client Quit]
obadz- has joined #ocaml
rgrinberg1 has quit [Ping timeout: 246 seconds]
<apache2>
hm, I'm struggling a bit with lwt, does anyone have an example of how to start multiple lwt threads?
obadz- has quit [Remote host closed the connection]
obadz- has joined #ocaml
<def`>
Just use >>= multiple times :p
obadz- has quit [Remote host closed the connection]
obadz- has joined #ocaml
<apache2>
won't that cause the first thing to run and then the second after?
<enjolras_>
using the ppx extension is handy
<apache2>
I'm trying to write a basic server implementation that has an accept() handler that spawns threads, and then I'd like connections to be able to talk to each other
pilne has joined #ocaml
<enjolras_>
there are multiple ways of doing this
<enjolras_>
for instance, if you want to spawn a thread and don't care about the result, you can do Lwt.async
<enjolras_>
if you do let thread = lwt code in it will in effect swpacn a thread
<enjolras_>
and you can wait for it's completion later
<enjolras_>
for instance, using functions like Lwt.pick or Lwt.join
<apache2>
ah, perfect, thanks @ async
<enjolras_>
bit for a server, async should be fine
rgrinberg1 has joined #ocaml
Kakadu has quit [Quit: Page closed]
<enjolras_>
but the general answer is that, if you bind a Lwt.t value to some name with let, it spawns a thread in effect
<enjolras_>
or if you store a lwt value in a list, or anything like this
<apache2>
yes, but if I use the value after " ... in .." then it "blocks" to get the result of that thread
<apache2>
right? so Lwt.async is what I need
<enjolras_>
yes
<enjolras_>
and indeed, async is probably what you need for this uscase
Algebr has joined #ocaml
obadz- has quit [Quit: WeeChat 1.3]
<apache2>
thank you!
obadz- has joined #ocaml
psy_ has joined #ocaml
c74d3a has quit [Read error: Connection reset by peer]
obadz- has quit [Ping timeout: 252 seconds]
^elyse^ has joined #ocaml
rgrinberg1 has quit [Ping timeout: 272 seconds]
grumpi has quit [Ping timeout: 256 seconds]
grumpi1 has joined #ocaml
c74d3a has joined #ocaml
igoroliveira has quit [Quit: Connection closed for inactivity]
Algebr has quit [Ping timeout: 244 seconds]
jonludlam has joined #ocaml
rgrinberg1 has joined #ocaml
mort___ has joined #ocaml
<apache2>
Enjolras_: if I want to have some state across all the sessions, what is the recommended way to do that? would Hashtbl and a guard mutex work?
<enjolras_>
sure
<enjolras_>
you don't even need a mutex if you don't want to protect something across sleeping point
<enjolras_>
the code between two binds/wakeup is atomic
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
nullcatxxx_ has joined #ocaml
<apache2>
and that's not going to change if ocaml gets multicore support?
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<enjolras_>
who knows
<def`>
that would break too much code
<enjolras_>
apache2: this is a common assumption in lwt
<enjolras_>
that's the semantic
<apache2>
OK, thanks
<enjolras_>
i guess supporting muticore means rewritting a new lib
<def`>
I think a different interface will be defined to express parallelism
<def`>
(Lwt is just about concurrency, ... with a sequential semantic sofar)
shinnya has joined #ocaml
jgjl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
mort___ has quit [Quit: Leaving.]
tnguyen has joined #ocaml
tnguyen has quit [Read error: Connection reset by peer]
tnguyen has joined #ocaml
tnguyen1 has joined #ocaml
obadz-_ has quit [Ping timeout: 246 seconds]
tnguyen has quit [Ping timeout: 260 seconds]
obadz- has joined #ocaml
tnguyen has joined #ocaml
tnguyen1 has quit [Ping timeout: 246 seconds]
tnguyen has quit [Read error: Connection reset by peer]
tnguyen has joined #ocaml
tnguyen1 has joined #ocaml
tnguyen1 has quit [Read error: Connection reset by peer]
tnguyen has quit [Ping timeout: 250 seconds]
tnguyen has joined #ocaml
tnguyen1 has joined #ocaml
tnguyen has quit [Ping timeout: 264 seconds]
<apache2>
alright
<apache2>
thank you for your time :)
tnguyen has joined #ocaml
tnguyen1 has quit [Ping timeout: 240 seconds]
tnguyen has quit [Read error: Connection reset by peer]
darkf has quit [Quit: Leaving]
tnguyen has joined #ocaml
nullcatxxx_ has joined #ocaml
tnguyen1 has joined #ocaml
tnguyen1 has quit [Read error: Connection reset by peer]
tnguyen has quit [Ping timeout: 256 seconds]
xiaolin has quit [Ping timeout: 264 seconds]
xiaolin has joined #ocaml
tnguyen has joined #ocaml
tnguyen has quit [Read error: Connection reset by peer]
pilne has left #ocaml [#ocaml]
tnguyen has joined #ocaml
tnguyen has quit [Read error: Connection reset by peer]
jeffmo has joined #ocaml
grumpi1 has quit [Quit: Leaving.]
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
mort___ has joined #ocaml
jonludlam has quit [Ping timeout: 256 seconds]
tnguyen has joined #ocaml
tnguyen1 has joined #ocaml
jeffmo has quit [Client Quit]
jgjl has joined #ocaml
tnguyen has quit [Ping timeout: 250 seconds]
tnguyen has joined #ocaml
tnguyen1 has quit [Ping timeout: 265 seconds]
xet7 has quit [Ping timeout: 244 seconds]
tnguyen1 has joined #ocaml
xet7 has joined #ocaml
tnguyen has quit [Ping timeout: 260 seconds]
tnguyen has joined #ocaml
tnguyen1 has quit [Ping timeout: 272 seconds]
tnguyen has quit [Read error: Connection reset by peer]
sepp2k1 has joined #ocaml
tnguyen has joined #ocaml
tnguyen has quit [Ping timeout: 268 seconds]
sepp2k1 has quit [Quit: Leaving.]
malc_ has quit [Ping timeout: 246 seconds]
tnguyen has joined #ocaml
tnguyen has quit [Read error: Connection reset by peer]
<Algebr`>
Probably something in Unix as usual methinks
rgrinberg1 has quit [Ping timeout: 256 seconds]
larhat1 has quit [Read error: No route to host]
larhat2 has joined #ocaml
<reynir>
I'm looking at ocaml-x509. Anyone know what the point of the bools in the type X509.CA.request_extensions? It's [`Extensions of (bool * X509.Extension.t) list] that puzzles me
<Boerkaas>
Algebr`, yeah, I found it, it seems to determine its yes/no with some interesting Result.t
shinnya has joined #ocaml
segmond has quit [Ping timeout: 240 seconds]
<flux>
reynir, maybe the source code has hints?
NingaLeaf123 has joined #ocaml
<reynir>
Hm. I don't really see them being used
<reynir>
maybe I don't understand how CSR's really look like
Algebr` has quit [Ping timeout: 240 seconds]
j0sh__ has joined #ocaml
rks`_ has joined #ocaml
ski_ has joined #ocaml
mac10688_ has joined #ocaml
OnkV has joined #ocaml
jgjl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
xet7_ has joined #ocaml
sh0t has joined #ocaml
CissWit has joined #ocaml
segmond has joined #ocaml
raazdaan has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<flux>
/45
<flux>
oops
rks` has quit [Ping timeout: 246 seconds]
ski has quit [Ping timeout: 246 seconds]
Haudegen has quit [*.net *.split]
xet7 has quit [*.net *.split]
psy_ has quit [*.net *.split]
mac10688 has quit [*.net *.split]
NingaLeaf has quit [*.net *.split]
tizoc has quit [*.net *.split]
Johann has quit [*.net *.split]
Khady has quit [*.net *.split]
j0sh has quit [*.net *.split]
<reynir>
Ah, it's probably critical/non-critical
tizoc has joined #ocaml
swgillespie has joined #ocaml
swgillespie has left #ocaml [#ocaml]
psy_ has joined #ocaml
Khady has joined #ocaml
psy_ has quit [Max SendQ exceeded]
psy_ has joined #ocaml
rgrinberg1 has joined #ocaml
ril has joined #ocaml
tane has quit [Quit: Verlassend]
rgrinberg1 has quit [Ping timeout: 240 seconds]
ril has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
orbifx has quit [Ping timeout: 240 seconds]
ril has joined #ocaml
ril is now known as ril[away]
ril[away] is now known as ril
sh0t has quit [Ping timeout: 256 seconds]
Mercuria1Alchemi has quit [Remote host closed the connection]
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
MercurialAlchemi has quit [Ping timeout: 250 seconds]
rgrinberg1 has joined #ocaml
Soni has joined #ocaml
<Soni>
"Real World Ocaml" is a pain to do on archlinux btw, is there anything better?
nullcatxxx_ has joined #ocaml
<Drup>
what's so special about RWO that is a pain on arch especially ?
<Soni>
opam
tianon has quit [Ping timeout: 240 seconds]
<Drup>
that is really not specific to RWO
<Drup>
(and it works fine on arch)
<Soni>
but it's a pain to install
<Drup>
yaourt -S opam-git
<Soni>
no
<Drup>
(well, maybe not git, that's for me :p)
<Soni>
no "aur helpers" or "aur managers" (unless they're a *simple* shell script)
<Drup>
well, just do it yourself then
<Drup>
but that's your problem if you don't want to use the tools available
<Drup>
(and there are plenty of simple aur helpers that would do the "resolve dependencies and grab them dance, if that's what you find hard)
_whitelogger has joined #ocaml
<Soni>
because an FFI is all I need
<Drup>
Oh ? what do you want to do ?
<Drup>
(yes it does)
<rgrinberg1>
Drup: how are you?
rgrinberg1 is now known as rgrinberg
<Drup>
rgrinberg: paper writing, unfortunatly
<Drup>
rgrinberg: You ? :)
jonludlam has quit [Ping timeout: 264 seconds]
<rgrinberg>
Drup: writing ocaml luckily
<Drup>
oh, good :p
<Drup>
still cohttp or something else ?
taigi100 has joined #ocaml
<rgrinberg>
somewhat good. ppx_*_conv doesn't work with merlin somehow :(
<taigi100>
hey guys, what's a way to specify that an argument is a function? like making an implicit arg
<rgrinberg>
and i'm ready to toss ocamlbuild far far away b/c it's so damn slow
<Drup>
taigi100: there is nothing to specify when an argument is a function
<Drup>
(because it's nothing special, it works like any other argument)
<Drup>
rgrinberg: what's the project ? :p
<Soni>
Drup, if it has an FFI and I can actually use the FFI then it's all I need to do anything
<Soni>
because with an FFI I can do sockets and sqlite3
<taigi100>
I'm trying to make a function f that takes in a function and a int and computes the function(function(function ... ))) <- int times
<taigi100>
basically something like f fx n which returns fx(fx(fx(fx(...)))) <- all that n times
<mrvn>
not typeable
<Drup>
Soni: You do know people already implemented that many times in OCaml ?
<mrvn>
you have to encode the n as a tpye
<Drup>
mrvn: wtf are you saying ? of course it's typable ...
<mrvn>
well, for special cases. not in general
OCamlFNATIC has quit []
<Drup>
taigi100: and what's your issue ?
<taigi100>
I tried something like : let rec f fx n = if ( n > 0 ) then f fx(fx) n-1 else fx;;
<taigi100>
Not exactly sure how should I go about implementing it :-?
<mrvn>
taigi100: If that would work it would apply fx 2^n times
<mrvn>
let rec f fx x n = if ( n > 0 ) then x else f fx (fx x) (n-1)
<Drup>
mrvn: ಠ_ಠ
<Soni>
Drup, you do know the package manager is a pain to get working on arch?
<Drup>
Soni: I told you "yaourt -S opam"
<taigi100>
yeah, I see the 2^n problem, my bad
<taigi100>
actually not
<taigi100>
why would it apply it 2^n times?
<Drup>
there is no 2^n problem
<Soni>
Drup, we're going in circles
tianon has joined #ocaml
<mrvn>
Drup: yes there is. in his solution
<taigi100>
@mrvn mind explaining?
<Drup>
mrvn: please see your PMs
<mrvn>
taigi100: which part? why yours doesn't work or mine?
<taigi100>
why mine "does" it 2^n times
<Drup>
taigi100: it doesn't, the issue is that "fn (fn)" doesn't do what you think it does
<mrvn>
taigi100: because in each recursion you doubling the number of times fx is "called"
<taigi100>
I see what you mean
<Drup>
Soni: *We* aren't
<Drup>
Soni: you don't want to install things from AUR, for some reasons, because you refuse to use the usual Arch helpers
<Soni>
Drup, I don't mind a single level of AUR dependencies
<Drup>
opam works perfectly fine on archlinux, there are numerous archlinux users in this chan. You are the first one to complain about difficulty of installation (there is another issue with libc version that is unrelated).
<Soni>
but when the AUR dependencies have more AUR dependencies, /that/'s when I have an issue with it
tianon has quit [Ping timeout: 255 seconds]
<taigi100>
mrvn ur function gives me a stack overflow
<Drup>
Soni: I see that as a limitation you are imposing on yourself. The tools are there, you are free not to use them, but do not complain if the pedagogy material do. :)
<mrvn>
taigi100: yeah, you get to fix it.
<mrvn>
taigi100: drup has forbidden me to give you the full solution
<Drup>
:>
<taigi100>
totally agree with that :)
<taigi100>
I still wonder, why do you guys like OCaml ?
<Drup>
It's the sweet spot, I guess
<mrvn>
taigi100: because everything else is worse
<taigi100>
really ? how come?
<Drup>
In one direction, you have less guarantees, in the other you have less convenience
Kakadu has quit [Remote host closed the connection]
<taigi100>
A lot less convenience, the syntax and documentation are horrible
<Drup>
syntax is, as everything, an acquired taste
<Drup>
(I personally hate indentation based language with a passion, for example)
<Drup>
(as for documentation, it varies a lot, yeah)
<rgrinberg>
taigi100: syntax is average, but anything with braces is far worse
<rgrinberg>
and screw docs. read the source
<Drup>
rgrinberg: Eh, that's not really a great answer
<taigi100>
I like braces :P
<Drup>
I mean, I get enraged by javascript library all the time because they try to document their function with english sentence describing the type, and they get it wrong all the time.
<Drup>
I don't want to read their sources ...
Algebr` has joined #ocaml
<rgrinberg>
i find that reading the source of a lib/tool you're working with ends up being far more productive in the long run
<taigi100>
yeah, try learning API's that are hundred of thousands of lines that way
<rgrinberg>
for example, with android. There's so much fucking docs, but they're all so verbose, unfocused, and just plain bad
<rgrinberg>
i've gotten way more mileage out of just reading the damn sdk source myself
tianon has joined #ocaml
tianon has quit [Changing host]
tianon has joined #ocaml
<rgrinberg>
of course great tooling made that possible
<taigi100>
Still why does let rec b fx x n = if ( n > 0 ) then b fx(fx x) n-1 else x keep calling itself?
<taigi100>
shouldn't the n go down?
<Algebr`>
rgrinberg: seems to defeat the purpose of having a library, you know abstracting problem of knowing implemenation and such.
<Drup>
taigi100: (n-1)
<Drup>
put parens.
<taigi100>
thnx <3
<mrvn>
taigi100: precedence :)
<taigi100>
and is ocaml actually used ? like for bigger projects or such?
<Drup>
yes
<taigi100>
any great projects made in OCaml out there?