adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org and http://caml.inria.fr | http://ocaml.org/releases/4.02.0.html | Public channel logs at http://irclog.whitequark.org/ocaml
hausdorff has quit [Remote host closed the connection]
AltGr has joined #ocaml
hausdorff has joined #ocaml
pyx has joined #ocaml
pyx has quit [Client Quit]
hausdorff has quit [Remote host closed the connection]
hausdorff has joined #ocaml
hausdorff has quit [Remote host closed the connection]
lordkryss has quit [Quit: Connection closed for inactivity]
Thooms has quit [Quit: WeeChat 1.0.1]
<sheijk> so i guess i can't pass the current environment to Parse.expression in some way?
<whitequark> environment?
<whitequark> environments don't exist at parsetree level
<whitequark> (and ocaml's parsing, thank ctulhu, is not context-sensitive)
mort___ has joined #ocaml
<sheijk> hm. getting syntax errors when parsing something like "(var_name)"
<sheijk> although, actually i'm parsing "(var_name)random garbage"
<sheijk> so i guess i'll have to find the end by parsing balanced expressions first and say goodbye to comments, string literals, etc.
<whitequark> um.
<whitequark> you'll have to use an OCaml lexer and count balanced tokens, then throw away everything after the end
boogie has quit [Remote host closed the connection]
<sheijk> will that work if the stuff after $(foo) would be rejected by the lexer? or can i lex one token at a time?
mort___ has quit [Ping timeout: 256 seconds]
<whitequark> you lex one token at a time
hausdorff has joined #ocaml
<sheijk> hm, maybe i'll move to sedlex first and then address arbitrary code inside $(..) :)
shinnya has quit [Ping timeout: 240 seconds]
jwatzman|work has quit [Quit: jwatzman|work]
manud has joined #ocaml
WraithM has quit [Ping timeout: 240 seconds]
manud has quit [Quit: manud]
sheijk has quit [Ping timeout: 246 seconds]
manud has joined #ocaml
manud has quit [Quit: manud]
manud has joined #ocaml
taion809_ has joined #ocaml
manud has quit [Quit: manud]
nicoo has quit [Ping timeout: 246 seconds]
manud has joined #ocaml
NoNNaN has joined #ocaml
nicoo has joined #ocaml
struktured has joined #ocaml
WraithM has joined #ocaml
hausdorff has quit [Remote host closed the connection]
manud has quit [Quit: manud]
LexRussia has quit [Ping timeout: 272 seconds]
NoNNaN has quit [Ping timeout: 246 seconds]
struktured has quit [Ping timeout: 255 seconds]
nicoo has quit [Ping timeout: 246 seconds]
sheijk has joined #ocaml
pharpend_ has joined #ocaml
mcclurmc has joined #ocaml
mcclurmc_ has quit [Read error: Connection reset by peer]
hausdorff has joined #ocaml
pharpend_ has quit [Ping timeout: 250 seconds]
hausdorff has quit [Ping timeout: 258 seconds]
badkins has quit []
Simn has joined #ocaml
jcloud has quit [Ping timeout: 265 seconds]
jcloud has joined #ocaml
manud has joined #ocaml
samrat has joined #ocaml
hsuh has quit [Ping timeout: 245 seconds]
hsuh has joined #ocaml
manud has quit [Quit: manud]
ustunozgur has joined #ocaml
manud has joined #ocaml
ontologiae has joined #ocaml
sheijk has quit [Ping timeout: 255 seconds]
hugomg has quit [Quit: Leaving]
mcclurmc has quit [Remote host closed the connection]
Submarine has quit [Quit: Leaving]
rwmjones has quit [Ping timeout: 240 seconds]
taion809_ has quit [Remote host closed the connection]
araujo has quit [Quit: Leaving]
rwmjones has joined #ocaml
axiles has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
manud has quit [Ping timeout: 272 seconds]
Submarine has joined #ocaml
ontologiae has quit [Ping timeout: 256 seconds]
samrat has joined #ocaml
malc_ has joined #ocaml
mcclurmc has joined #ocaml
samrat has quit [Ping timeout: 245 seconds]
samrat has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
mcclurmc has joined #ocaml
Bluddy has quit [Quit: Connection closed for inactivity]
mcclurmc has quit []
rand000 has joined #ocaml
david1 has joined #ocaml
<david1> hola buenas noches solo quiero hablar con una mujer que este soltera
<david1> o buenos dias en los paises que sea de dia
<adrien> besides good morning, you're most likely going to need to speak english on this channel
ggole has joined #ocaml
<david1> adrien no hablo ingles
Simn has quit [Ping timeout: 260 seconds]
david1 has left #ocaml [#ocaml]
zz_anildigital is now known as adgtl
adgtl is now known as anildigital
anildigital is now known as adgtl
WraithM has quit [Ping timeout: 256 seconds]
tane has joined #ocaml
rand000 has quit [Ping timeout: 250 seconds]
SomeDamnBody has joined #ocaml
dotfelix has joined #ocaml
dotfelix has quit [Ping timeout: 244 seconds]
adgtl is now known as zz_adgtl
oscar_toro has quit [Ping timeout: 258 seconds]
WraithM has joined #ocaml
larhat has joined #ocaml
WraithM has quit [Quit: leaving]
WraithM has joined #ocaml
axiles has quit [*.net *.split]
MercurialAlchemi has quit [*.net *.split]
ddosia has quit [*.net *.split]
zapu has quit [*.net *.split]
companion_cube has quit [*.net *.split]
adrien has quit [*.net *.split]
IbnFirnas has quit [*.net *.split]
tov has quit [*.net *.split]
sivoais has quit [*.net *.split]
Asmadeus has quit [*.net *.split]
Snark has quit [*.net *.split]
vincom2 has quit [*.net *.split]
mfp has quit [*.net *.split]
brendan has quit [*.net *.split]
hbar has quit [*.net *.split]
SomeDamnBody has quit [*.net *.split]
teiresias has quit [*.net *.split]
robink has quit [*.net *.split]
PM has quit [*.net *.split]
misv has quit [*.net *.split]
Ptishell has quit [*.net *.split]
uggwar has quit [*.net *.split]
reventlov has quit [*.net *.split]
vbmithr has quit [*.net *.split]
acieroid has quit [*.net *.split]
ggole has quit [*.net *.split]
dsheets has quit [*.net *.split]
Denommus has quit [*.net *.split]
Nahra has quit [*.net *.split]
srax has quit [*.net *.split]
johnelse has quit [*.net *.split]
ebzzry has quit [*.net *.split]
Guest10125 has quit [*.net *.split]
girrig has quit [*.net *.split]
\q has quit [*.net *.split]
sh1ken has quit [*.net *.split]
Cypi has quit [*.net *.split]
relrod has quit [*.net *.split]
Pepe_ has quit [*.net *.split]
engil has quit [*.net *.split]
ivan\ has quit [*.net *.split]
relrod has joined #ocaml
zz_adgtl is now known as adgtl
adgtl is now known as anildigital
anildigital is now known as adgtl
adgtl is now known as zz_adgtl
zz_adgtl is now known as adgtl
adgtl is now known as anildigital
SomeDamnBody has joined #ocaml
ggole has joined #ocaml
dsheets has joined #ocaml
Denommus has joined #ocaml
Nahra has joined #ocaml
srax has joined #ocaml
teiresias has joined #ocaml
PM has joined #ocaml
Ptishell has joined #ocaml
Guest10125 has joined #ocaml
\q has joined #ocaml
robink has joined #ocaml
girrig has joined #ocaml
ebzzry has joined #ocaml
misv has joined #ocaml
johnelse has joined #ocaml
reventlov has joined #ocaml
Cypi has joined #ocaml
uggwar has joined #ocaml
vbmithr has joined #ocaml
sh1ken has joined #ocaml
acieroid has joined #ocaml
ivan\ has joined #ocaml
Pepe_ has joined #ocaml
engil has joined #ocaml
tane has quit [Quit: Verlassend]
axiles has joined #ocaml
MercurialAlchemi has joined #ocaml
ddosia has joined #ocaml
zapu has joined #ocaml
brendan has joined #ocaml
mfp has joined #ocaml
hbar has joined #ocaml
Snark has joined #ocaml
Asmadeus has joined #ocaml
sivoais has joined #ocaml
vincom2 has joined #ocaml
adrien has joined #ocaml
tov has joined #ocaml
IbnFirnas has joined #ocaml
companion_cube has joined #ocaml
jonludlam has quit [Quit: Coyote finally caught me]
arj has joined #ocaml
ivan\ has quit [Max SendQ exceeded]
Nahra has quit [Max SendQ exceeded]
ivan\ has joined #ocaml
Nahra has joined #ocaml
larhat has quit [Quit: Leaving.]
sivoais_ has joined #ocaml
Mercuria1Alchemi has joined #ocaml
axiles has quit [*.net *.split]
MercurialAlchemi has quit [*.net *.split]
ddosia has quit [*.net *.split]
zapu has quit [*.net *.split]
companion_cube has quit [*.net *.split]
adrien has quit [*.net *.split]
IbnFirnas has quit [*.net *.split]
tov has quit [*.net *.split]
sivoais has quit [*.net *.split]
Asmadeus has quit [*.net *.split]
Snark has quit [*.net *.split]
vincom2 has quit [*.net *.split]
mfp has quit [*.net *.split]
brendan has quit [*.net *.split]
hbar has quit [*.net *.split]
SomeDamnBody has quit [*.net *.split]
teiresias has quit [*.net *.split]
robink has quit [*.net *.split]
PM has quit [*.net *.split]
misv has quit [*.net *.split]
Ptishell has quit [*.net *.split]
uggwar has quit [*.net *.split]
reventlov has quit [*.net *.split]
vbmithr has quit [*.net *.split]
acieroid has quit [*.net *.split]
arj has quit [*.net *.split]
ggole has quit [*.net *.split]
dsheets has quit [*.net *.split]
Denommus has quit [*.net *.split]
srax has quit [*.net *.split]
johnelse has quit [*.net *.split]
ebzzry has quit [*.net *.split]
Guest10125 has quit [*.net *.split]
girrig has quit [*.net *.split]
\q has quit [*.net *.split]
sh1ken has quit [*.net *.split]
Cypi has quit [*.net *.split]
Pepe_ has quit [*.net *.split]
engil has quit [*.net *.split]
marvin-hh has quit [Ping timeout: 258 seconds]
arj has joined #ocaml
Pepe_ has joined #ocaml
sh1ken has joined #ocaml
\q has joined #ocaml
Cypi has joined #ocaml
girrig has joined #ocaml
Guest10125 has joined #ocaml
ebzzry has joined #ocaml
engil has joined #ocaml
johnelse has joined #ocaml
srax has joined #ocaml
dsheets has joined #ocaml
Denommus has joined #ocaml
ggole has joined #ocaml
axiles has joined #ocaml
ddosia has joined #ocaml
zapu has joined #ocaml
companion_cube has joined #ocaml
adrien has joined #ocaml
IbnFirnas has joined #ocaml
tov has joined #ocaml
Asmadeus has joined #ocaml
Snark has joined #ocaml
vincom2 has joined #ocaml
mfp has joined #ocaml
brendan has joined #ocaml
hbar has joined #ocaml
marvin-hh has joined #ocaml
darkf_ has joined #ocaml
arj has quit [*.net *.split]
ggole has quit [*.net *.split]
dsheets has quit [*.net *.split]
Denommus has quit [*.net *.split]
srax has quit [*.net *.split]
johnelse has quit [*.net *.split]
ebzzry has quit [*.net *.split]
Guest10125 has quit [*.net *.split]
girrig has quit [*.net *.split]
\q has quit [*.net *.split]
sh1ken has quit [*.net *.split]
Cypi has quit [*.net *.split]
Pepe_ has quit [*.net *.split]
engil has quit [*.net *.split]
LexRussia has joined #ocaml
SomeDamnBody has joined #ocaml
teiresias has joined #ocaml
robink has joined #ocaml
vbmithr has joined #ocaml
uggwar has joined #ocaml
misv has joined #ocaml
PM has joined #ocaml
acieroid has joined #ocaml
reventlov has joined #ocaml
Ptishell has joined #ocaml
darkf has quit [Ping timeout: 244 seconds]
arj has joined #ocaml
dsheets has joined #ocaml
ggole has joined #ocaml
Denommus has joined #ocaml
srax has joined #ocaml
johnelse has joined #ocaml
engil has joined #ocaml
ebzzry has joined #ocaml
Guest10125 has joined #ocaml
girrig has joined #ocaml
\q has joined #ocaml
sh1ken has joined #ocaml
Cypi has joined #ocaml
Pepe_ has joined #ocaml
ollehar has joined #ocaml
cago has joined #ocaml
ollehar has quit [Ping timeout: 250 seconds]
manud has joined #ocaml
oscar_toro has joined #ocaml
zpe has joined #ocaml
oscar_toro has quit [Quit: Leaving.]
lordkryss has joined #ocaml
SomeDamnBody has quit [Ping timeout: 255 seconds]
Kakad has joined #ocaml
Hannibal_Smith has joined #ocaml
dsheets has quit [Ping timeout: 255 seconds]
ustunozgur has quit [Quit: Leaving...]
Simn has joined #ocaml
ustunozgur has joined #ocaml
larhat has joined #ocaml
sheijk has joined #ocaml
q66[lap] has quit [Quit: Textual IRC Client: www.textualapp.com]
dsheets has joined #ocaml
LexRussia has quit [Ping timeout: 255 seconds]
<ggole> Wonder how OCaml compares though
<ggole> Probably not that great
Thooms has joined #ocaml
ollehar has joined #ocaml
manud has quit [Quit: manud]
koderok has joined #ocaml
koderok has quit [Client Quit]
jonludlam has joined #ocaml
rand000 has joined #ocaml
anildigital is now known as adgtl
manud has joined #ocaml
adgtl is now known as zz_adgtl
<ebzzry> how can i 'M-x merlin-use foo' (from foo.ml) inside bar.ml?
<def`> merlin-use is not about module files
<def`> it's for packages
<def`> otherwise, just compile foo.ml (so you have foo.cmi) and adjust the path
<Unhammer> I ended up putting stuff in one file so I wouldn't have to compile all the time =P
jonludlam has quit [Quit: Coyote finally caught me]
sheijk has quit [Ping timeout: 245 seconds]
_andre has joined #ocaml
jonludlam has joined #ocaml
<ebzzry> def`: ok
ustunozgur has quit [Remote host closed the connection]
cago has quit [Read error: Connection reset by peer]
sivoais_ has quit [*.net *.split]
Submarine has quit [*.net *.split]
martintrojer has quit [*.net *.split]
xaimus has quit [*.net *.split]
Khady has quit [*.net *.split]
Intensity has quit [*.net *.split]
sivoais_ has joined #ocaml
Submarine has joined #ocaml
martintrojer has joined #ocaml
xaimus has joined #ocaml
Khady has joined #ocaml
Intensity has joined #ocaml
arj has quit [*.net *.split]
ggole has quit [*.net *.split]
Denommus has quit [*.net *.split]
srax has quit [*.net *.split]
johnelse has quit [*.net *.split]
ebzzry has quit [*.net *.split]
Guest10125 has quit [*.net *.split]
girrig has quit [*.net *.split]
\q has quit [*.net *.split]
sh1ken has quit [*.net *.split]
Cypi has quit [*.net *.split]
Pepe_ has quit [*.net *.split]
engil has quit [*.net *.split]
cago has joined #ocaml
arj has joined #ocaml
ggole has joined #ocaml
Denommus has joined #ocaml
srax has joined #ocaml
johnelse has joined #ocaml
engil has joined #ocaml
ebzzry has joined #ocaml
Guest10125 has joined #ocaml
girrig has joined #ocaml
\q has joined #ocaml
sh1ken has joined #ocaml
Cypi has joined #ocaml
Pepe_ has joined #ocaml
<def`> Unhammer: just having a binding to "make" is enough for me, or Jenga interactive mode for bigger projects
arj has quit [Quit: Leaving.]
Nahra has quit [*.net *.split]
rwmjones has quit [*.net *.split]
r0ok has quit [*.net *.split]
xorpse has quit [*.net *.split]
pharpend has quit [*.net *.split]
zz_adgtl has quit [*.net *.split]
dwoos has quit [*.net *.split]
wormphlegm has quit [*.net *.split]
rfk has quit [*.net *.split]
sirssi_ has quit [*.net *.split]
ohama has quit [*.net *.split]
patronus has quit [*.net *.split]
dbrumley has quit [*.net *.split]
Lasher` has quit [*.net *.split]
seliopou has quit [*.net *.split]
mdenes3 has quit [*.net *.split]
kerneis_ has quit [*.net *.split]
pollux has quit [*.net *.split]
rwmjones has joined #ocaml
r0ok has joined #ocaml
xorpse has joined #ocaml
pharpend has joined #ocaml
zz_adgtl has joined #ocaml
dwoos has joined #ocaml
wormphlegm has joined #ocaml
Lasher` has joined #ocaml
rfk has joined #ocaml
sirssi_ has joined #ocaml
ohama has joined #ocaml
patronus has joined #ocaml
dbrumley has joined #ocaml
seliopou has joined #ocaml
mdenes3 has joined #ocaml
kerneis_ has joined #ocaml
pollux has joined #ocaml
Nahra has joined #ocaml
bezirg has joined #ocaml
cago has quit [Ping timeout: 244 seconds]
samrat has quit [Quit: Computer has gone to sleep.]
ustunozg_ has joined #ocaml
bezirg has quit [Quit: Leaving.]
LexRussia has joined #ocaml
demonimin has quit [Ping timeout: 260 seconds]
AltGr has left #ocaml [#ocaml]
nicoo has joined #ocaml
manud has quit [Quit: manud]
sheijk has joined #ocaml
<Unhammer> def`, yeah, though another annoyance was figuring out how to do it with utop
NoNNaN has joined #ocaml
oscar_toro has joined #ocaml
<Unhammer> … and now I figured it out. I need to #directory "_build";; #load "foo.cmo";;
<Unhammer> since plain #load "_build/foo.cmo";; doesn't actually do anything
<Unhammer> though it doesn't complain either :(
fraggle_ has joined #ocaml
<def`> Unhammer: report that
<Unhammer> ok, I'm not always sure what's a bug and what's pebkac :)
samrat has joined #ocaml
<def`> Unhammer: hmm wait, I think it is a pebkac :p
sheijk has quit [Ping timeout: 244 seconds]
<def`> #load lad the object file, so unless there are effects in foo.cmo it's normal you don't observe anything
<def`> in particular Foo.<something> might fail later
<def`> for this ocaml needs the cmi file
<def`> it's like having a .h and a .o file in a c program
<Unhammer> but why can't I use Foo.foo after #load "_build/foo.cmo"?
<def`> the .o is opaque, but can be linked. hiwever you need the header to interpret the content of the object file
<def`> Unhammer: the cmo contains executable code, but no description of the interface of this executable code
<Unhammer> aha
<def`> for the interface, ocaml searches for a cmi file with the same name in path
<Unhammer> so utop simply expects the cmi to be in the cwd
<Unhammer> instead of looking in the same dir as the cmo
<Unhammer> are they often in different dirs?
<def`> exactlyy
<whitequark> utop doesn't care where you load the cmo at all
<whitequark> it doesn't analyze the path in #load in any way
<def`> in different dirs... i don't know, probably not
<def`> cp _build/foo.cmi ./ should work in the setting
<def`> this*
<Unhammer> it can only have one cwd at a time though, so I guess there's some different mechanism for e.g. #require'd cmi's?
<def`> (utop tries to be friendly, it could take care of such path management)
rand000 has quit [Ping timeout: 245 seconds]
<def`> Unhammer: it's not cwd, it's the include path which isbused
<def`> you can pass -I ...
<Unhammer> oh #directory adds to -I
<Unhammer> ok
samrat has quit [Ping timeout: 260 seconds]
samrat has joined #ocaml
ustunozg_ has quit [Remote host closed the connection]
ysz has joined #ocaml
darkf_ is now known as darkf
Hannibal_Smith has quit [Ping timeout: 272 seconds]
elfring has joined #ocaml
demonimin has joined #ocaml
Hannibal_Smith has joined #ocaml
LexRussia has quit [Quit: WeeChat 1.1-dev]
AlexRussia has joined #ocaml
hhugo has joined #ocaml
rand000 has joined #ocaml
sheijk has joined #ocaml
rand000 has quit [Ping timeout: 245 seconds]
ustunozg_ has joined #ocaml
ustunozg_ has quit [Ping timeout: 246 seconds]
AlexRussia has quit [Quit: WeeChat 1.1-dev]
AlexRussia has joined #ocaml
parcs has quit [Ping timeout: 256 seconds]
oscar_toro has quit [Ping timeout: 256 seconds]
shinnya has joined #ocaml
parcs has joined #ocaml
AlexRussia has quit [Ping timeout: 245 seconds]
AlexRussia has joined #ocaml
BitPuffin has joined #ocaml
sivoais_ has quit [Quit: leaving]
sivoais has joined #ocaml
Thooms has quit [Quit: WeeChat 1.0.1]
Mercuria1Alchemi has quit [Ping timeout: 250 seconds]
MercurialAlchemi has joined #ocaml
Muzer has quit [Excess Flood]
Muzer has joined #ocaml
ustunozgur has joined #ocaml
shinnya has quit [Ping timeout: 258 seconds]
ustunozgur has quit [Remote host closed the connection]
ontologiae has joined #ocaml
maurer has quit [Ping timeout: 265 seconds]
maurer has joined #ocaml
<ebzzry> how can i make test.ml, which has 'open Foo' compile, while the dir structure is src/foo.ml, test/test.ml, compile?
<Drup> ggole: according to http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=pidigits#about, OCaml does about the same as Haskell
<Drup> but the constraints in the blog post are ridiculous
<Drup> "no external libraries, no C bindings" and then start using the standard library, who all implement this stuff in a pluggable way, half of them using C bindings.
<ggole> ebzzry: add the src directory to the searched paths (with -I, or however your build system likes to do that)
darkf has quit [Quit: Leaving]
<ggole> Drup: before looking at it, I'm gonna guess that this version uses Zarith
<ggole> Oh, it just calls GMP
<ggole> I like PHP's solution though. It's uniquely fitting.
<companion_cube> :D
<companion_cube> it's so php
<companion_cube> it would be nice to have something pluggable for Ocaml, though (defaults to num, but uses GMP/Zarith if available)
<ebzzry> ggole: like this? ocamlfind ocamlc -o test -package core,oUnit -linkpkg -thread -I ../src test.ml
<ggole> Um, I think so? I don't really remember how to use ocamlfind directly.
<def`> companion_cube: what would be the benefits? when you realize you need suddenly to switch bigint implem?
<ggole> When you look at a profile of your messy megaline program and see bigint ops at the top
<ebzzry> I tried that but I get 'Reference to undefined global `Foo''
<ggole> ebzzry: oh, you have to link foo.cmo too
<ggole> Best guess: ocamlfind ocamlc -o test -package core,oUnit -linkpkg -thread -I ../src foo.cmo test.ml
<ebzzry> let me try that.
* ggole can't help but think that the error message could be a lot more helpful
tane has joined #ocaml
<companion_cube> def`: to use bigints without worrying about the particular implementation
<companion_cube> better implementation means better performance, but you wouldn't have to rewrite the code
ustunozgur has joined #ocaml
badkins has joined #ocaml
ontologiae has quit [Ping timeout: 245 seconds]
<Unhammer> ebzzry, if you want to try ocamlbuild, I think you can do
<Unhammer> ocamlbuild -r -use-ocamlfind -package core,oUnit -I src test/test.native
<Unhammer> from the parent dir
nicoo has quit [Ping timeout: 246 seconds]
<ebzzry> ggole: it still complains about Error: Unbound module Foo
<ebzzry> Unhammer: let me try that.
<Unhammer> at least that worked for my simple test
<Unhammer> not sure how you turn on thread with ocamlbuild though, maybe "echo true: thread >_tags"?
maurer has quit [Ping timeout: 245 seconds]
<Unhammer> ocamlbuild -r -use-ocamlfind -tag thread -package core,oUnit -I src test/test.native
tristero has quit [Quit: tristero]
<ebzzry> Unhammer: after adding '-tag thread', it did work. I used: ocamlbuild -r -use-ocamlfind -package core,oUnit -tag thread -I src test/test.native
<ebzzry> now, how do I make it work with oasis?
<ebzzry> when i run make, it says: Error: Unbound module Foo
<Drup> companion_cube: start with zarith and be done with it ?
sarah has joined #ocaml
sarah is now known as Guest72212
<Guest72212> hi there , is anyone here ?
<companion_cube> Drup: it requires GMP, which can be annoying
ousado has quit [Read error: Connection reset by peer]
<companion_cube> what if you wanted a JS-compatible implementation?
<Drup> right, that's a fair argument.
ousado has joined #ocaml
<companion_cube> (also, licensing issues, I guess)
Thooms has joined #ocaml
Guest72212 has quit [Client Quit]
nicoo has joined #ocaml
ousado has quit [Read error: Connection reset by peer]
samrat has quit [Ping timeout: 258 seconds]
ousado has joined #ocaml
pharpend_ has joined #ocaml
<bernardo1pc> ggole> http://www.wilfred.me.uk/blog/2014/10/20/the-fastest-bigint-in-the-west/ rofl php -> I still don't get why people don't use log scales for those absurd ranges
<Drup> bernardo1pc: because ~fancy javascript zoom~
eikke has quit [*.net *.split]
testcocoon has quit [*.net *.split]
ygu has quit [*.net *.split]
ygu has joined #ocaml
<ebzzry> the command that works is 'ocamlbuild -r -use-ocamlfind -package core,oUnit -tag thread -I src test/test.native' while the command that make (from oasis) uses is: 'ocamlfind ocamlc -c -g -package oUnit -I test -o test/test.cmo test/test.ml'
<ebzzry> is there a way to modify the build flags/command that oasis executes?
c74d has quit [Remote host closed the connection]
Hannibal_Smith has quit [Quit: Sto andando via]
testcocoon has joined #ocaml
segmond has quit [Ping timeout: 265 seconds]
<companion_cube> ebzzry: in oasis, you need something like BuildDepends: core,oUnit
maurer has joined #ocaml
<bernardo1pc> Drup: yeh, and the graph doesn't even *display* without js
<bernardo1pc> I'm teaching num analysis this semester, and if there's one thing my students will learn is when to use log scales for errors / time / ...
c74d has joined #ocaml
<ebzzry> companion_cube: I do have that:https://transfer.sh/U5QlD/-oasis
<ggole> Handy tricks like "everything looks flat on a log-log graph"?
<bernardo1pc> well, you still get curves for Newton's method ;-)
<bernardo1pc> (which is probably the best display of how fast it goes)
<companion_cube> ebzzry: try adding core,threads to the dependencies of test?
<bernardo1pc> my lastest pride was the spaghetti graph (lastest in http://nbviewer.ipython.org/url/www.im.ufrj.br/bernardofpc/cursos/cientificaI/2014/Aula13.ipynb) compared to the regular series just above
ustunozgur has quit [Remote host closed the connection]
<ebzzry> companion_cube: it still complains 'Error: Unbound module Foo'
<companion_cube> did you do "oasis setup; ocaml setup.ml -clean" or something like this?
<companion_cube> ohhhhhhhhhhhh wait
<companion_cube> Foo is not in the path of the test
<companion_cube> it's in another directory
<ebzzry> companion_cube: yup.
<companion_cube> maybe you can put "<../src>: include" in test/_tags
<companion_cube> or something like this
maurer has quit [Ping timeout: 258 seconds]
<ebzzry> I tried that, but the error message that it gives is still the same.
maurer has joined #ocaml
pharpend_ has quit [Ping timeout: 240 seconds]
paddymahoney has joined #ocaml
samrat has joined #ocaml
pharpend_ has joined #ocaml
elfring has quit [Quit: Konversation terminated!]
eikke has joined #ocaml
George___ has joined #ocaml
rand000 has joined #ocaml
<George___> Hi, when I run "opam install xxx", it requires root permission. What I can do so opam installs packages with current user's permission, so installing a new package in current user's home, or updating log/loc directory doesn't require root privilage?
morphles has joined #ocaml
<George___> I use ubunut
<George___> ubuntu
<Drup> did you run "opam init" yourself ?
<George___> yes. what I did again is, I totally deleted .opam from home, and run opam init again without sudo. still running opam install requires root priv
<Drup> that's weird.
<Drup> which package are you trying to install ?
bytbox has quit [Remote host closed the connection]
<George___> tcpip
jonludlam has quit [Ping timeout: 255 seconds]
rand000 has quit [Ping timeout: 258 seconds]
morphles has quit [Ping timeout: 255 seconds]
AlexRussia has quit [Ping timeout: 246 seconds]
jonludlam has joined #ocaml
avoidthemonoid has joined #ocaml
AlexRussia has joined #ocaml
<avoidthemonoid> does anyone here use Js_of_OCaml? The resultant code seems more or less uneditable. Is there a way to build things in API like fashion so Js_of_OCaml code can interact with hand written javascript?
<mrvn> It's generated code. It's not supposed to be editable.
<avoidthemonoid> sure... but is there something like a generated interface?
<mrvn> Do you want hand written code to use your compiled code or use hand written code from the compiled code?
<avoidthemonoid> The handwritten code will use the compiled code
<mrvn> Or even have callbacks?
jonludlam has quit [Ping timeout: 265 seconds]
isomorphismes has quit [Remote host closed the connection]
<mfp> avoidthemonoid: you can wrap OCaml functions with Js.wrap_callback and then register them somewhere so that other (hand-written) Javascript code can find it
slash^ has joined #ocaml
<avoidthemonoid> Ahh, ok thats very good to hear. Do you find the generated code to be reliable on most browsers? Are they fairly on top of fixes when browser updates break things?
AlexRussia has quit [Ping timeout: 258 seconds]
elfring has joined #ocaml
<mfp> AFAIK the compiled code corresponding to your OCaml sources is solid.
<mfp> there can be a problem depending on the APIs you use (there's minimal/no browser-specific hackery in the js_of_ocaml lib)
<mfp> _but_ you can also use JQuery or whatever shim lib from OCaml
martintrojer has quit [Ping timeout: 246 seconds]
Khady has quit [Quit: No Ping reply in 180 seconds.]
Khady has joined #ocaml
Khady has joined #ocaml
Khady has quit [Changing host]
martintrojer has joined #ocaml
AlexRussia has joined #ocaml
boogie has joined #ocaml
parcs has quit [Remote host closed the connection]
pharpend_ has quit [Ping timeout: 260 seconds]
parcs has joined #ocaml
jbalnit has quit [Ping timeout: 245 seconds]
Simn has quit [Read error: Connection reset by peer]
jbalnit has joined #ocaml
<ebzzry> what should I put in _tags when ocamlfind says: ocamlfind: Error from package `threads': Missing -thread or -vmthread switch
<tane> true: thread
badkins has quit [Remote host closed the connection]
boogie has quit [Remote host closed the connection]
araujo has joined #ocaml
bytbox has joined #ocaml
bytbox has quit [Remote host closed the connection]
<ebzzry> tane: it now complains 'Reference to undefined global `Core'' This is the _tags file: https://transfer.sh/EuDsE/-tags
oscar_toro has joined #ocaml
<tane> ebzzry, you could try package(core), or use corebuild command, which supplies the right commands to ocamlbuild anyway
WraithM has quit [Quit: leaving]
WraithM has joined #ocaml
avoidthemonoid has quit [Ping timeout: 246 seconds]
boogie has joined #ocaml
pharpend_ has joined #ocaml
malc_ has quit [Ping timeout: 245 seconds]
boogie has quit [Remote host closed the connection]
Intensity has quit [Ping timeout: 246 seconds]
mbac_ has quit [Ping timeout: 250 seconds]
badon has quit [Ping timeout: 250 seconds]
badon has joined #ocaml
mcclurmc has joined #ocaml
ontologiae has joined #ocaml
<seliopou> bit of a noob question: is there a way to alias a module in an .mli file?
<adrien> no
<seliopou> meh
<seliopou> thanks
ousado has quit [Changing host]
ousado has joined #ocaml
pharpend_ has quit [Quit: WeeChat 0.4.3]
<ggole> seliopou: what are you trying to do? .mlis are really for signature, not implementation
<seliopou> ggole: yes I'm aware
ysz has quit [Ping timeout: 244 seconds]
<seliopou> I'm a decent ocaml programmer, but I'm dealing with a situation where aliasing modules in mli files would make them more readable
<seliopou> so noob question from an experienced programmer
<seliopou> :)
<Drup> you can alias modules in a mli with 4.02
<seliopou> Sup Drup
<Drup> but not before :)
<ggole> More readable? Are you having to duplicate a huge data type or something?
koderok has joined #ocaml
<seliopou> is that out yet?
bytbox has joined #ocaml
<seliopou> I'm behind on the times
<Drup> sure it's out
<Drup> even 4.02.1
<seliopou> ah ok
<ggole> It's out but still a bit new: latest is 4.02.1
koderok has quit [Client Quit]
AlexRussia has quit [Ping timeout: 244 seconds]
<seliopou> ggole: just trying to shorten a name
<ggole> Oh, I see
mbac has joined #ocaml
Thooms has quit [Quit: WeeChat 1.0.1]
bytbox has quit [Remote host closed the connection]
ollehar1 has joined #ocaml
boogie has joined #ocaml
jwatzman|work has joined #ocaml
ysz has joined #ocaml
ontologiae has quit [Ping timeout: 250 seconds]
<def`> seliopou: module M : (module Aliased);;
<adrien> hmpf
<seliopou> def`: in 4.01?
<adrien> I really need to update myself to more than 3.12
<def`> 4.02
<def`> 4.01 would be
<seliopou> gotta explicitly dump the names in a new sig?
<def`> module M : sig include module type of Aliased end
<def`> humm wait, no
<seliopou> hmmmm
Kakad has quit [Ping timeout: 246 seconds]
ysz has quit [Ping timeout: 245 seconds]
<def`> module M : module type of struct include Aliased end
<def`> in the mli
<def`> module M = Aliased
<def`> in the ml
<def`> but that's not really an alias, behind the scene the compiler will copy the definitions, though this shouldn't matter for small projects
<jpdeplaix> def`: isn't it the same thing as: « module M : module type of Aliased » ?
<def`> jpdeplaix: no
keen____ has joined #ocaml
<ggole> Just to save typing :(
<def`> module M = struct type t end
<def`> module type of M : sig type t end
keen___ has quit [Ping timeout: 265 seconds]
<def`> module type of struct include M end : sig type t = M.t end
<def`> you see? type equalities are introduced
<jpdeplaix> oh right, I see
<jpdeplaix> I didn't know it
AlexRussia has joined #ocaml
Intensity has joined #ocaml
jonludlam has joined #ocaml
hausdorff has joined #ocaml
hausdorf_ has joined #ocaml
hausdorff has quit [Read error: Connection reset by peer]
rand000 has joined #ocaml
hausdorff has joined #ocaml
hausdorf_ has quit [Read error: Connection reset by peer]
hausdorff has quit [Remote host closed the connection]
<Leonidas> let%lwt user_id = (match user with
<Leonidas> | Some u -> let%lwt v = id_of_user token u in Lwt.return (Some v)
<Leonidas> | None -> Lwt.return None) in
<Leonidas> any idea how to make this less ugly?
<Leonidas> I think I am too dumb
badon has quit [Ping timeout: 255 seconds]
<Leonidas> or too tired. So I have an option type that I'd like to Lwt.bind, but of course only if it exists. So this is the best I could come up with, but that is ugly because of layers of wrapping
WraithM has quit [Quit: leaving]
<jpdeplaix> Leonidas: first you can avoid the parenthesis around the match
<ggole> Pull the Lwt.return out of the match, and then factor out the option map bit?
<ggole> Then it'd be something like let%lwt user_id = Lwt.return (option_map_lwt (id_of_user token) user) in
badon has joined #ocaml
<Leonidas> ggole: can't pull the Lwt.return out, since let%lwt returns the rvalue to be of Lwt.t type
<Leonidas> s/returns/requires/
<ggole> Isn't that what Lwt.return does?
<ggole> By pull it out I don't mean remove it entirely, just write it once rather than in each arm of the match.
<Leonidas> ggole: I understand what you mean (I hope), but I can't just do let%lwt v = id_of_user token u in Some v because that would have string option as value, but let%lwt requires 'a Lwt.t, in my case string option Lwt.t.
<Drup> Leonidas: match%lwt ?
<ggole> Oh, I see :/
hausdorff has joined #ocaml
<Leonidas> Drup: thought about it, but I always match on non-Lwt.t values, so match%lwt doesn't help me there, I think.
<Drup> also, "id_of_user token u >|= (fun x -> Some x)"
<Drup> (that's the point were you curse on caml for not having constructor-function
Simn has joined #ocaml
<Leonidas> yeah, in Haskell I could've just used Some
<Leonidas> Drup: >|= ? not >>=?
<Drup> yeah, map, not bind
<Leonidas> oh, you're right
<Leonidas> didn't know this existed
George___ has quit [Quit: Page closed]
badkins has joined #ocaml
claudiuc has quit [Remote host closed the connection]
MasseR_ has quit [Quit: leaving]
badkins_ has joined #ocaml
badkins__ has joined #ocaml
badkins has quit [Ping timeout: 255 seconds]
badkins_ has quit [Ping timeout: 245 seconds]
ontologiae has joined #ocaml
dsheets has quit [Ping timeout: 245 seconds]
Hannibal_Smith has joined #ocaml
kakadu has joined #ocaml
Anarchos has joined #ocaml
larhat has quit [Quit: Leaving.]
claudiuc has joined #ocaml
dlowe has left #ocaml ["Leaving"]
sheijk has quit [Quit: .]
pharpend has quit [Quit: WeeChat 0.4.3]
pharpend has joined #ocaml
bytbox has joined #ocaml
bytbox has quit [Remote host closed the connection]
ontologiae has quit [Ping timeout: 272 seconds]
WraithM has joined #ocaml
jbalnit has quit [Ping timeout: 244 seconds]
pharpend has quit [Quit: WeeChat 0.4.3]
c74d has quit [Remote host closed the connection]
tizoc has quit [Quit: Coyote finally caught me]
tizoc has joined #ocaml
c74d has joined #ocaml
bytbox has joined #ocaml
sheijk has joined #ocaml
boogie has quit [Quit: Leaving...]
hausdorff has quit [Remote host closed the connection]
srcerer has joined #ocaml
ollehar1 has quit [Ping timeout: 240 seconds]
bytbox has quit [Remote host closed the connection]
samrat has quit [Quit: Computer has gone to sleep.]
luzie has joined #ocaml
bytbox has joined #ocaml
hausdorff has joined #ocaml
jabesed has joined #ocaml
shinnya has joined #ocaml
pharpend has joined #ocaml
bytbox has quit [Remote host closed the connection]
dsheets has joined #ocaml
larhat has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
jbalnit has joined #ocaml
r0ok has quit [Quit: leaving]
hausdorff has quit [Remote host closed the connection]
dav has quit [Ping timeout: 240 seconds]
dav has joined #ocaml
hausdorff has joined #ocaml
jonludlam has quit [Quit: Coyote finally caught me]
dav_ has joined #ocaml
hhugo1 has joined #ocaml
dav has quit [Ping timeout: 260 seconds]
AlexRussia has quit [Quit: WeeChat 1.1-dev]
AlexRussia has joined #ocaml
hausdorff has quit [Remote host closed the connection]
ivan\ has quit [Ping timeout: 244 seconds]
hausdorff has joined #ocaml
hhugo1 has quit [Quit: Leaving.]
bytbox has joined #ocaml
sheijk_ has joined #ocaml
sheijk has quit [Ping timeout: 260 seconds]
axiles has quit [Remote host closed the connection]
AlexRussia has quit [Ping timeout: 246 seconds]
rand000 has quit [Ping timeout: 265 seconds]
sheijk has joined #ocaml
lordkryss has quit [Quit: Connection closed for inactivity]
elfring has quit [Quit: Konversation terminated!]
sheijk_ has quit [Ping timeout: 265 seconds]
AlexRussia has joined #ocaml
starless has joined #ocaml
morphles has joined #ocaml
jabesed has quit [Ping timeout: 265 seconds]
Submarine has quit [Remote host closed the connection]
badkins__ has quit []
jabesed has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
<starless> hello. definitely a noob question: how come when I try to load up a file in the OCaml interpreter I get the error "Unbound value use"? Is that deprecated functionality or something?
<starless> to be clear, I'm trying to load the file like this: use "test.sml";;
<companion_cube> #use, not yse
<starless> ah. okay. why is that?
<dsheets> also ocaml usually uses the file extension ".ml" not ".sml"
<dsheets> it's a toplevel directive, not part of the language proper
<starless> is the tutorial I'm looking at total shit? it was linked from the OCaml website, but it had a mistake (or two) in the first few paragraphs: http://www.csc.villanova.edu/~dmatusze/resources/ocaml/ocaml.html
<starless> dsheets: makes sense, thanks
<starless> and about the file type, noted
<dsheets> starless, uhhh... that describes a very old version of the language
<starless> okay. could anyone recommend a crash course in OCaml for someone who understands functional programming? (I know my way around Standard ML)
<dsheets> most things are the same but... eh
hausdorff has quit [Remote host closed the connection]
<Unhammer> starless, I liked https://realworldocaml.org/ a lot
<dsheets> starless, if you know sml, i'd recommend just reading the manual: http://caml.inria.fr/pub/docs/manual-ocaml-4.02-1/coreexamples.html
<starless> thanks much, guys. you're not only helpful but fast. :)
<bitbckt> much like OCaml.
<bitbckt> ;)
BitPuffin has quit [Remote host closed the connection]
morphles has quit [Ping timeout: 250 seconds]
<starless> nice. glad I'm learning it.
ggole has quit []
hausdorff has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
c74d has quit [Remote host closed the connection]
NoNNaN has quit [Remote host closed the connection]
c74d has joined #ocaml
<mfp> heh so it turns out there's some kind of functional programming meeting taking place in Tokyo in a few hours > http://connpass.com/event/8634/
<mfp> Yoriyuki Yamagata is doing a talk on OCaml & Unicode + Camomile
sheijk_ has joined #ocaml
sheijk has quit [Ping timeout: 244 seconds]
sgnb has quit [Ping timeout: 245 seconds]
contempt has quit [Remote host closed the connection]
contempt has joined #ocaml
paddymahoney has quit [Ping timeout: 245 seconds]
tane has quit [Quit: Verlassend]
jwatzman|work has joined #ocaml
sheijk has joined #ocaml
Hannibal_Smith has quit [Quit: Sto andando via]
sheijk_ has quit [Ping timeout: 255 seconds]
ustunozgur has joined #ocaml
Simn has quit [Quit: Leaving]
AlexRussia has quit [Ping timeout: 265 seconds]
Intensity has quit [*.net *.split]
xaimus has quit [*.net *.split]
xaimus has joined #ocaml
<dmbaturin> Are there ZMQ bindings?
AlexRussia has joined #ocaml
srcerer has quit [Ping timeout: 245 seconds]
jwatzman|work has quit [Remote host closed the connection]
jwatzman|work has joined #ocaml
<dmbaturin> Seems there are.
r0ok has joined #ocaml
r0ok has joined #ocaml
larhat has quit [Quit: Leaving.]
rossberg has quit [Ping timeout: 272 seconds]
pkrnj has joined #ocaml
rossberg has joined #ocaml
WraithM has quit [Quit: Lost terminal]
madroach has quit [Ping timeout: 250 seconds]
madroach has joined #ocaml
ontologiae has joined #ocaml
kakadu has quit [Remote host closed the connection]
ustunozgur has quit [Remote host closed the connection]
jwatzman|work has quit [Quit: jwatzman|work]
ontologiae has quit [Ping timeout: 265 seconds]
oscar_toro has quit [Ping timeout: 265 seconds]
dsheets has quit [Ping timeout: 245 seconds]
darkf has joined #ocaml