00:00
<
Drup >
which part are you looking at ? everything ?
00:01
<
Algebr >
just going to through it. its actually nice with tig, tig log --reverse
00:01
<
Drup >
do you understand french well enough ? :p
00:02
<
Algebr >
I took 3 semesters...
00:02
<
Drup >
that should be enough for compsci frenglish.
00:03
<
Algebr >
haha, frenglish
00:03
<
Drup >
(it is the technical term :D)
00:06
<
Algebr >
funny enough I can't find any objects in the compiler code
00:06
<
Algebr >
oh wait nvm, selectgen.ml has it
00:07
Denommus has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
00:11
tianon has quit [Read error: Connection reset by peer]
00:12
tianon has joined #ocaml
00:16
struktured has quit [Ping timeout: 265 seconds]
00:21
AltGr has joined #ocaml
00:21
ghostpl_ has joined #ocaml
00:21
<
Drup >
iirc, objects are troublesome when bootstraping, so they are avoided
00:22
<
Drup >
pprintast is using object (for no good reasons, in fact)
00:27
reem has quit [Remote host closed the connection]
00:29
yomimono has quit [Quit: Leaving]
00:30
<
Algebr >
Drup: Have you seen this Meteor code for JS? reminded of Ocsigen when I looked at it
00:33
reem has joined #ocaml
00:33
tianon has quit [Read error: Connection reset by peer]
00:34
tianon has joined #ocaml
00:34
<
Drup >
meteor is basically trying to do the eliom client/server sections but with js on both side
00:34
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
00:34
<
Drup >
they don't have the client values and injections stuff yet
00:34
<
Drup >
and communication is synchronous, last time I looked
00:35
<
Drup >
but yes, it's interesting
00:35
MrScout__ has quit [Remote host closed the connection]
00:36
madroach has quit [Ping timeout: 264 seconds]
00:36
<
Drup >
(it's still crappy js, though, so no typechecking whatsoever, in particular on the client/server interface)
00:36
<
Algebr >
What do you mean by injections?
00:37
<
Drup >
{client{ let y = %x + 1 }}
00:37
<
Drup >
the technical term for %x is "injection"
00:38
madroach has joined #ocaml
00:38
rand000 has quit [Quit: leaving]
00:38
<
ollehar >
yo, compiler geniuses
00:39
<
ollehar >
I need to make a small boolean parser/lexer for stuff like "(x AND y) OR z"
00:39
<
ollehar >
any tips, links?
00:39
<
ollehar >
this is within another program.
00:39
<
Drup >
menhir's manual
00:39
<
Drup >
maybe ocamlyacc's one before
00:40
mxv has quit [Remote host closed the connection]
00:40
<
Drup >
but use menhir regardless
00:41
MrScout_ has joined #ocaml
00:41
<
ollehar >
will check, thanks
00:41
jwatzman|work has quit [Quit: jwatzman|work]
00:49
<
Algebr >
Why do projects that use oasis still have Makefiles? I thought that oasis was supposed to replace the need for all other build tools
00:50
<
Drup >
because "make" is shorter than "ocaml setup.ml" :D
00:50
ygrek has joined #ocaml
00:52
<
whitequark >
because oasis is awful
00:52
<
whitequark >
if you're doing anything with ppx, or ctypes, or generally anything more advanced than "build a bunch of ml files", oasis can't do it
00:52
<
whitequark >
also it puts loads of crap into your tree
00:53
<
Algebr >
whitequark: do you stick with plain makefiles?
00:53
<
whitequark >
also it tries to replicate some of the newer ocaml features, on new ocaml, badly
00:53
<
whitequark >
like .mldylib generation, or ocamlfind invocation, or...
00:53
<
whitequark >
Algebr: no, I do everything via ocamlbuild
00:54
pgomes has quit [Ping timeout: 264 seconds]
00:54
<
Drup >
which is a badly documented mess and with a rather doubtful semantic. :p
00:55
<
whitequark >
it doesn't put shit into my tree though, or try to outsmart me
00:55
<
whitequark >
oasis can go burn
00:55
<
Drup >
oasis doesn't put shit into your trees if you use the dynamic stuff
00:56
<
whitequark >
then it shits into my VCS, or I have to depend on it, or no one can install my stuff
00:56
<
whitequark >
and if I depend on it, I pull in camlp4
00:56
<
whitequark >
camlp4 can go fucking burn so hard
00:56
<
Drup >
(but I agree, it's much easier to rant and tell beginners to use a badly documented complicated tool like ocamlbuild, duh !)
00:57
<
Algebr >
Okay, makefiles it is.
00:57
tianon has quit [Read error: Connection reset by peer]
00:57
<
Drup >
Algebr: use OCamlMakefile
00:57
<
Drup >
please don't write your own
00:57
tianon has joined #ocaml
00:59
<
whitequark >
Drup: easier than what? trying to improve an ecosystem that consists of basically jane street and people who consider utf-8 optional? right.
00:59
whitequark has left #ocaml [#ocaml]
01:00
ghostpl_ has quit [Remote host closed the connection]
01:02
oriba has quit [Quit: oriba]
01:03
<
Drup >
so bitter :(
01:05
<
ollehar >
---> rant.stackoverflow.com
01:06
jonludlam has quit [Ping timeout: 244 seconds]
01:09
<
Algebr >
at least with plain makefiles you have a skill that isn't just limited to ocamlland
01:09
tnguyen has joined #ocaml
01:12
<
bernardofpc >
a badly documented complicated tool like ocamlbuild -> I have mostly used ocamlbuild, why is it "badly documented" ?
01:12
<
Drup >
did you tried to write a plugin ?
01:12
<
bernardofpc >
should I ?
01:13
<
bernardofpc >
(and why should I if that's a relevant question)
01:13
<
Drup >
probably not, but you will need, if you do complicated things
01:13
<
Drup >
like optional dependencies
01:13
<
bernardofpc >
complicated being like linking to external .so ?
01:14
<
bernardofpc >
does ocaml have #ifdef to make sense of optional deps ?
01:14
<
Drup >
bernardofpc: cppo
01:15
<
Drup >
linking to external .so shouldn't be in the complicated category
01:15
MrScout_ has quit [Read error: Connection reset by peer]
01:15
<
bernardofpc >
right
01:16
cesar_ has joined #ocaml
01:16
MrScout_ has joined #ocaml
01:16
<
bernardofpc >
well, I imagine there's some ./configure - like exponential hell
01:16
<
bernardofpc >
anywhere in opt deps
01:16
cesar_ is now known as Guest89397
01:16
tnguyen has quit [Quit: tnguyen]
01:17
tnguyen has joined #ocaml
01:20
Guest89397 has quit [Ping timeout: 265 seconds]
01:22
tianon has quit [Read error: Connection reset by peer]
01:22
tianon has joined #ocaml
01:25
MrScout_ has quit [Remote host closed the connection]
01:26
ygrek has quit [Ping timeout: 272 seconds]
01:29
ollehar has quit [Quit: ollehar]
01:30
q66[lap] has joined #ocaml
01:36
ygrek has joined #ocaml
01:48
reem has quit [Remote host closed the connection]
01:49
reem has joined #ocaml
01:50
tianon has quit [Read error: Connection reset by peer]
01:51
tianon has joined #ocaml
01:53
tnguyen has quit [Quit: tnguyen]
01:54
tnguyen has joined #ocaml
01:57
darkf has joined #ocaml
02:01
kdef has quit [Quit: Leaving]
02:08
shinnya has quit [Ping timeout: 255 seconds]
02:14
tianon has quit [Read error: Connection reset by peer]
02:15
tianon has joined #ocaml
02:40
tianon has quit [Read error: Connection reset by peer]
02:40
tianon has joined #ocaml
03:03
badkins has quit []
03:04
cesar_ has joined #ocaml
03:05
cesar_ is now known as Guest44627
03:08
reem has quit [Remote host closed the connection]
03:09
Guest44627 has quit [Ping timeout: 265 seconds]
03:12
reem has joined #ocaml
04:00
WraithM has joined #ocaml
04:01
ghostpl_ has joined #ocaml
04:05
Bhavya has quit [Quit: Quit the channel]
04:06
ghostpl_ has quit [Ping timeout: 256 seconds]
04:09
siddharthv_away is now known as siddharthv
04:11
tnguyen has quit [Quit: tnguyen]
04:24
mcc has joined #ocaml
04:28
tianon has quit [Read error: Connection reset by peer]
04:29
tianon has joined #ocaml
04:47
kushal has joined #ocaml
04:53
cesar_ has joined #ocaml
04:54
cesar_ is now known as Guest57337
04:58
Guest57337 has quit [Ping timeout: 256 seconds]
04:58
rwmjones has quit [Read error: Network is unreachable]
04:59
rwmjones has joined #ocaml
05:02
reem has quit [Read error: Connection reset by peer]
05:03
reem has joined #ocaml
05:25
tianon has quit [Read error: Connection reset by peer]
05:26
tianon has joined #ocaml
05:50
tianon has quit [Read error: Connection reset by peer]
05:51
tianon has joined #ocaml
05:55
ygrek has quit [Ping timeout: 246 seconds]
06:24
AlexRussia has joined #ocaml
06:25
reem has quit [Remote host closed the connection]
06:27
keen__________25 has quit [Read error: Connection reset by peer]
06:28
keen__________25 has joined #ocaml
06:39
ggole has joined #ocaml
06:42
tianon has quit [Read error: Connection reset by peer]
06:42
cesar_ has joined #ocaml
06:42
cesar_ is now known as Guest58394
06:43
q66[lap]_ has joined #ocaml
06:43
tianon has joined #ocaml
06:44
q66[lap] has quit [Read error: Connection reset by peer]
06:45
reem has joined #ocaml
06:46
MercurialAlchemi has joined #ocaml
06:47
Guest58394 has quit [Ping timeout: 265 seconds]
06:48
reem has quit [Remote host closed the connection]
06:49
Submarine has joined #ocaml
06:49
reem has joined #ocaml
06:53
reem has quit [Remote host closed the connection]
06:53
reem has joined #ocaml
06:55
ygrek has joined #ocaml
06:59
rgrinberg has quit [Ping timeout: 264 seconds]
07:00
mcc has quit [Quit: This computer has gone to sleep]
07:13
oscar_toro has quit [Ping timeout: 264 seconds]
07:20
AlexRussia has quit [Ping timeout: 250 seconds]
07:35
psy_ has quit [Quit: Leaving]
07:36
oscar_toro has joined #ocaml
07:38
bjorkintosh has joined #ocaml
07:40
tane has joined #ocaml
07:48
dinosaure has quit [Read error: Connection reset by peer]
07:56
rgrinberg has joined #ocaml
07:56
Haudegen has quit [Ping timeout: 264 seconds]
07:59
ollehar has joined #ocaml
07:59
dinosaure has joined #ocaml
08:01
jonludlam has joined #ocaml
08:02
rgrinberg has quit [Ping timeout: 250 seconds]
08:07
Haudegen has joined #ocaml
08:10
pgomes has joined #ocaml
08:17
reem has quit [Remote host closed the connection]
08:20
Simn has joined #ocaml
08:20
reem has joined #ocaml
08:23
pgomes has quit [Ping timeout: 264 seconds]
08:24
AlexRussia has joined #ocaml
08:26
lordkryss has joined #ocaml
08:27
reem has quit [Remote host closed the connection]
08:28
Guest7419 has quit [Quit: leaving]
08:31
kushal has quit [Ping timeout: 264 seconds]
08:31
cesar_ has joined #ocaml
08:31
cesar_ is now known as Guest67248
08:33
reem has joined #ocaml
08:36
Guest67248 has quit [Ping timeout: 265 seconds]
08:39
pgomes has joined #ocaml
08:44
kushal has joined #ocaml
08:44
kushal has quit [Remote host closed the connection]
08:45
kushal has joined #ocaml
08:47
reem has quit [Remote host closed the connection]
08:48
dant3 has joined #ocaml
08:49
reem has joined #ocaml
08:49
ollehar has quit [Quit: ollehar]
08:50
pgomes has quit [Ping timeout: 252 seconds]
08:50
jonludlam has quit [Ping timeout: 244 seconds]
08:52
reem has quit [Remote host closed the connection]
08:56
AlexRussia has quit [Ping timeout: 256 seconds]
08:59
reem has joined #ocaml
09:02
dav has joined #ocaml
09:08
larhat has joined #ocaml
09:09
larhat has quit [Client Quit]
09:10
freling has joined #ocaml
09:13
larhat has joined #ocaml
09:18
kakadu has joined #ocaml
09:26
matason has joined #ocaml
09:31
_5kg has quit [Ping timeout: 244 seconds]
09:32
_5kg has joined #ocaml
09:32
matason has quit [Ping timeout: 272 seconds]
09:32
tianon has quit [Read error: Connection reset by peer]
09:33
dav has quit [Remote host closed the connection]
09:33
tianon has joined #ocaml
09:40
mort___ has joined #ocaml
09:44
matason has joined #ocaml
09:46
rgrinberg has joined #ocaml
09:51
rgrinberg has quit [Ping timeout: 265 seconds]
09:53
Submarine has quit [Quit: Leaving]
09:54
axiles has joined #ocaml
10:01
reem has quit [Remote host closed the connection]
10:01
ghostpl_ has joined #ocaml
10:05
jonludlam has joined #ocaml
10:13
freling has quit [Quit: Leaving.]
10:13
siddharthv is now known as siddharthv_away
10:18
fedjo has quit [Quit: Leaving.]
10:20
cesar_ has joined #ocaml
10:20
cesar_ is now known as Guest81374
10:21
fedjo has joined #ocaml
10:24
Guest81374 has quit [Ping timeout: 248 seconds]
10:26
lordkryss has quit [Quit: Connection closed for inactivity]
10:27
tianon has quit [Read error: Connection reset by peer]
10:27
tianon has joined #ocaml
10:28
AltGr has left #ocaml [#ocaml]
10:37
govg has joined #ocaml
10:41
govg_ has joined #ocaml
10:43
govg has quit [Ping timeout: 256 seconds]
10:55
keen__________26 has joined #ocaml
10:56
sdothum has joined #ocaml
10:57
tianon has quit [Read error: Connection reset by peer]
10:58
tianon has joined #ocaml
10:58
oscar_toro has quit [Ping timeout: 248 seconds]
10:58
keen__________25 has quit [Ping timeout: 256 seconds]
10:58
_andre has joined #ocaml
11:14
kushal has quit [Quit: Leaving]
11:15
kushal has joined #ocaml
11:15
tnguyen has joined #ocaml
11:16
iZsh_ has quit [Ping timeout: 256 seconds]
11:16
iZsh has joined #ocaml
11:17
ousado_ has joined #ocaml
11:17
wagle_ has joined #ocaml
11:18
hcarty_ has joined #ocaml
11:18
badon has quit [Ping timeout: 272 seconds]
11:18
Mercuria1Alchemi has joined #ocaml
11:19
asmanur has joined #ocaml
11:19
mfp_ has joined #ocaml
11:19
nopf_ has joined #ocaml
11:19
johnelse_ has joined #ocaml
11:20
tokenrov1 has joined #ocaml
11:20
tnguyen has quit [Client Quit]
11:20
kerneis__ has joined #ocaml
11:21
Haudegen has quit [Ping timeout: 265 seconds]
11:22
thorsten1 has joined #ocaml
11:22
n_v has joined #ocaml
11:24
ski_ has joined #ocaml
11:25
MercurialAlchemi has quit [*.net *.split]
11:25
mfp has quit [*.net *.split]
11:25
w0rp has quit [*.net *.split]
11:25
haesbaert has quit [*.net *.split]
11:25
ousado has quit [*.net *.split]
11:25
meteo has quit [*.net *.split]
11:25
maurer has quit [*.net *.split]
11:25
ski has quit [*.net *.split]
11:25
johnelse has quit [*.net *.split]
11:25
ghostpl has quit [*.net *.split]
11:25
frawgie has quit [*.net *.split]
11:25
gperetin has quit [*.net *.split]
11:25
abbe has quit [*.net *.split]
11:25
ousado_ is now known as ousado
11:25
ousado has quit [Changing host]
11:25
ousado has joined #ocaml
11:25
maurer has joined #ocaml
11:25
tianon has quit [Read error: Connection reset by peer]
11:26
w0rp has joined #ocaml
11:26
tianon has joined #ocaml
11:26
_5kg has quit [Ping timeout: 245 seconds]
11:27
ygrek has quit [Remote host closed the connection]
11:27
ygrek has joined #ocaml
11:27
johnelse_ is now known as johnelse
11:27
kushal has quit [Ping timeout: 244 seconds]
11:28
_5kg has joined #ocaml
11:29
ghostpl has joined #ocaml
11:29
frawgie has joined #ocaml
11:29
gperetin has joined #ocaml
11:29
abbe has joined #ocaml
11:29
kushal has joined #ocaml
11:29
ghostpl has quit [Max SendQ exceeded]
11:30
ghostpl has joined #ocaml
11:30
pyon has quit [*.net *.split]
11:30
martintrojer has quit [*.net *.split]
11:30
destrius has quit [*.net *.split]
11:30
thorsten` has quit [*.net *.split]
11:30
wagle has quit [*.net *.split]
11:30
micrypt has quit [*.net *.split]
11:30
nopf has quit [*.net *.split]
11:30
n0v has quit [*.net *.split]
11:30
tokenrove has quit [*.net *.split]
11:30
asmanur_ has quit [*.net *.split]
11:30
kerneis_ has quit [*.net *.split]
11:30
hcarty has quit [*.net *.split]
11:30
fedjo has quit [*.net *.split]
11:30
tane has quit [*.net *.split]
11:30
bjorkintosh has quit [*.net *.split]
11:30
testcocoon has quit [*.net *.split]
11:30
ohama has quit [*.net *.split]
11:30
manizzle has quit [*.net *.split]
11:30
Asmadeus has quit [*.net *.split]
11:30
flxx has quit [*.net *.split]
11:30
pdewacht has quit [*.net *.split]
11:30
nicoo has quit [*.net *.split]
11:30
xiaolin has quit [*.net *.split]
11:30
patronus has quit [*.net *.split]
11:30
ivan\ has quit [*.net *.split]
11:30
Khady has quit [*.net *.split]
11:30
fyolnish has quit [*.net *.split]
11:30
dbrumley has quit [*.net *.split]
11:30
companion_cube has quit [*.net *.split]
11:30
stomp has quit [*.net *.split]
11:30
relrod has quit [*.net *.split]
11:30
gargawel has quit [*.net *.split]
11:30
gustav___ has quit [*.net *.split]
11:30
CissWit has quit [*.net *.split]
11:30
deavid has quit [*.net *.split]
11:30
n_v is now known as n0v
11:30
micrypt has joined #ocaml
11:30
haesbaert has joined #ocaml
11:31
martintrojer has joined #ocaml
11:31
meteo has joined #ocaml
11:33
srcerer has quit [Ping timeout: 265 seconds]
11:33
nicoo has joined #ocaml
11:33
fedjo has joined #ocaml
11:33
fyolnish has joined #ocaml
11:33
pdewacht has joined #ocaml
11:33
patronus has joined #ocaml
11:33
destrius_ has joined #ocaml
11:33
companion_cube has joined #ocaml
11:33
gustav___ has joined #ocaml
11:33
gargawel has joined #ocaml
11:33
relrod has joined #ocaml
11:33
Asmadeus has joined #ocaml
11:33
CissWit has joined #ocaml
11:33
deavid has joined #ocaml
11:33
ohama has joined #ocaml
11:33
xiaolin has joined #ocaml
11:33
Khady has joined #ocaml
11:33
flxx has joined #ocaml
11:33
stomp has joined #ocaml
11:33
ivan\ has joined #ocaml
11:33
dbrumley has joined #ocaml
11:33
bjorkintosh has joined #ocaml
11:33
manizzle has joined #ocaml
11:33
testcocoon has joined #ocaml
11:33
tane has joined #ocaml
11:34
ygrek has quit [Ping timeout: 265 seconds]
11:35
rgrinberg has joined #ocaml
11:35
Haudegen has joined #ocaml
11:40
rgrinberg has quit [Ping timeout: 264 seconds]
11:50
tianon has quit [Read error: Connection reset by peer]
11:50
tianon has joined #ocaml
11:52
Algebr has quit [Ping timeout: 255 seconds]
12:04
oscar_toro has joined #ocaml
12:06
pyon has joined #ocaml
12:08
govg_ has quit [Ping timeout: 246 seconds]
12:09
cesar_ has joined #ocaml
12:09
cesar_ is now known as Guest90628
12:10
govg has joined #ocaml
12:13
Guest90628 has quit [Ping timeout: 256 seconds]
12:15
TheLemonMan has joined #ocaml
12:15
tianon has quit [Read error: Connection reset by peer]
12:15
tianon has joined #ocaml
12:22
struktured has joined #ocaml
12:30
madroach has quit [Ping timeout: 264 seconds]
12:32
madroach has joined #ocaml
12:35
olibjerd has joined #ocaml
12:35
olibjerd has left #ocaml [#ocaml]
12:44
tianon has quit [Read error: Connection reset by peer]
12:45
tianon has joined #ocaml
12:49
Algebr has joined #ocaml
12:56
struktured has quit [Ping timeout: 244 seconds]
12:59
yegortimoschenko has joined #ocaml
13:02
reem has joined #ocaml
13:05
tnguyen has joined #ocaml
13:07
reem has quit [Ping timeout: 248 seconds]
13:10
tianon has quit [Read error: Connection reset by peer]
13:10
tianon has joined #ocaml
13:11
yegortimoschenko has quit [Ping timeout: 244 seconds]
13:11
yegortimoschenko has joined #ocaml
13:14
<
_andre >
does anyone know what is needed in myocamlbuild.ml/_tags to pass --external-tokens and --only-tokens to menhir?
13:20
_pakchoi_ops has joined #ocaml
13:23
idegen has joined #ocaml
13:24
rgrinberg has joined #ocaml
13:29
rgrinberg has quit [Ping timeout: 272 seconds]
13:31
ollehar has joined #ocaml
13:32
zoetus has joined #ocaml
13:33
<
zoetus >
is there any particular reason the compiler complains to me about "implicit elimination of optional argument"s?
13:33
<
zoetus >
i thought the point of optional arguments was that they are optional
13:34
<
tane >
could you show a minimal example?
13:35
<
adrien_znc >
zoetus: it's not possible to make the difference between an optional argument in the last position and partial application
13:35
<
adrien_znc >
you need at least one non-optional argument
13:35
<
adrien_znc >
typically if you have nothing required, that'd be unit/()
13:36
tianon has quit [Read error: Connection reset by peer]
13:36
tianon has joined #ocaml
13:40
<
ollehar >
neep help compiling small menhir demo together with my own code
13:40
<
ollehar >
I have file main.ml in /
13:40
<
ollehar >
and /boolean-lang dir for menhir demo
13:40
<
ollehar >
in boolean-lang, I want to use variable from main.ml
13:41
<
ollehar >
the makefile for the menhir demo have line
13:41
<
ollehar >
MODULES := parser lexer calc
13:41
<
ollehar >
I change it to
13:41
<
ollehar >
MODULES := ../main parser lexer calc
13:41
<
ollehar >
but still get error "Unknown module Main" in calc code.
13:42
<
ollehar >
I want to use Main module in lexer.mll
13:42
dant3 has left #ocaml [#ocaml]
13:42
Algebr has quit [Remote host closed the connection]
13:43
Algebr has joined #ocaml
13:43
yegortimoschenko has quit [Read error: Connection reset by peer]
13:44
<
ollehar >
OK, needed to move main.* to boolean-lang/
13:47
yegortimoschenko has joined #ocaml
13:47
<
_andre >
got it: flag ["ocaml"; "menhir"; "only_tokens"] & S[A"--only-tokens"];; flag ["ocaml"; "menhir_ocamldep"; "only_tokens"] & S[A"--only-tokens"];;
13:49
<
ollehar >
talking to me?
13:49
<
_andre >
no, answering my own question :P
13:50
oscar_toro has quit [Ping timeout: 255 seconds]
13:51
<
ollehar >
Other problem: How to tell menhir makefiles to use libs? like xml-light?
13:52
yegortimoschenko has quit [Quit: (null)]
13:53
<
ollehar >
Solved with INCLUDE := -package xml-light etc
13:54
<
zoetus >
why does List.map have a labeled argument for `f`?
13:55
<
ollehar >
zoetus: does it? You mean ListLabels? so you can order arguments the way you want.
13:55
yegortimoschenko has joined #ocaml
13:56
<
zoetus >
oh, that makes sense!
13:56
kakadu has quit [Quit: Page closed]
13:57
<
ggole >
That's probably Core's List.map
13:58
cesar_ has joined #ocaml
13:58
cesar_ is now known as Guest7381
13:59
tianon has quit [Read error: Connection reset by peer]
14:00
tianon has joined #ocaml
14:00
paradoja has joined #ocaml
14:02
Guest7381 has quit [Ping timeout: 265 seconds]
14:10
yegortimoschenko has quit [Quit: (null)]
14:11
yegortimoschenko has joined #ocaml
14:13
shinnya has joined #ocaml
14:15
ollehar has quit [Ping timeout: 256 seconds]
14:17
_pakchoi_ops has quit [Read error: Connection reset by peer]
14:19
kushal has quit [Ping timeout: 252 seconds]
14:24
kushal has joined #ocaml
14:25
ollehar has joined #ocaml
14:32
ollehar has quit [Quit: ollehar]
14:36
ski_ is now known as ski
14:40
zoetus has quit [Quit: Page closed]
14:43
contempt has quit [Read error: Connection reset by peer]
14:45
xificurC has joined #ocaml
14:54
contempt has joined #ocaml
14:56
tianon has quit [Read error: Connection reset by peer]
14:56
tianon has joined #ocaml
14:57
yegortimoschenko has quit [Quit: (null)]
14:59
sepp2k has joined #ocaml
15:02
yegortimoschenko has joined #ocaml
15:09
rgrinberg has joined #ocaml
15:11
yegortimoschenko has quit [Ping timeout: 250 seconds]
15:13
yegortimoschenko has joined #ocaml
15:14
q66[lap] has joined #ocaml
15:14
rgrinberg has quit [Ping timeout: 245 seconds]
15:17
AlexRussia has joined #ocaml
15:20
paradoja has quit [Read error: Connection reset by peer]
15:25
oscar_toro has joined #ocaml
15:27
rgrinberg has joined #ocaml
15:28
freling has joined #ocaml
15:43
darkf has quit [Quit: Leaving]
15:45
yegortimoschenko has quit [Quit: (null)]
15:48
kakadu has joined #ocaml
15:49
AlexRussia has quit [Ping timeout: 256 seconds]
15:58
AlexRussia has joined #ocaml
16:00
cesar_ has joined #ocaml
16:01
cesar_ is now known as Guest5344
16:03
TheLemonMan has quit [Quit: leaving]
16:03
shinnya has quit [Ping timeout: 244 seconds]
16:04
matason has quit [Ping timeout: 265 seconds]
16:06
tane has quit [Quit: Verlassend]
16:10
Guest5344 has quit [Remote host closed the connection]
16:17
matason has joined #ocaml
16:26
slash^ has joined #ocaml
16:27
BitPuffin has joined #ocaml
16:32
matason has quit [Ping timeout: 252 seconds]
16:32
<
companion_cube >
the new opam is nice on the eyes
16:39
jwatzman|work has joined #ocaml
16:40
thomasga has joined #ocaml
16:42
mort___ has quit [Ping timeout: 265 seconds]
16:45
matason has joined #ocaml
16:48
tane has joined #ocaml
16:53
akegalj has joined #ocaml
16:55
mort___ has joined #ocaml
17:00
<
cmtptr >
"Netgear R6300v2 Smart WiFi Router supports windows 8."
17:00
<
cmtptr >
whoops, wrong channel
17:00
<
cmtptr >
but since I'm here I'll make my joke anyway: So, the router runs windows 8 or what?
17:00
<
adrien_znc >
it has a touch interface :)
17:01
ghostpl_ has quit [Remote host closed the connection]
17:02
<
Algebr >
What's the ocaml way to do logging?
17:03
<
companion_cube >
if you use Lwt, Lwt_log, otherwise you can try one of the libraries (e.g. dolog)
17:04
boogie has joined #ocaml
17:08
BitPuffin has quit [Ping timeout: 265 seconds]
17:13
kdef has joined #ocaml
17:14
WraithM has quit [Quit: leaving]
17:17
boogie has quit [Quit: Leaving...]
17:17
akegalj_ has joined #ocaml
17:21
akegalj has quit [Ping timeout: 272 seconds]
17:28
badkins has joined #ocaml
17:30
Pepe_ has quit [Ping timeout: 264 seconds]
17:32
ghostpl_ has joined #ocaml
17:35
MrScout has joined #ocaml
17:43
manizzle has quit [Ping timeout: 246 seconds]
17:49
Denommus has joined #ocaml
17:56
mcclurmc has quit [Ping timeout: 244 seconds]
17:59
jonludlam has quit [Ping timeout: 264 seconds]
18:03
t4nk795 has joined #ocaml
18:05
<
t4nk795 >
let split : 'a list -> 'a list * 'a list = let rec aux = fun acc1 acc2 -> function | [] -> [], [] | hd :: tl -> let l1, l2 = aux ...
18:06
<
t4nk795 >
can anyone suggest to me how I should use l1 and l2 to store both sections ofthe list?
18:06
<
t4nk795 >
I'm unsure at this point how to use them
18:07
<
companion_cube >
well, you need to split the tail "tl"
18:07
wagle_ is now known as wagle
18:07
<
companion_cube >
it returns a pair, taht you destruct: let l1, l2 = split tl in .....
18:07
<
mrvn >
what is split supposed to do?
18:07
<
companion_cube >
then, you destruct hd: let x, y = hd in x :: l1, y :: l2
18:07
<
t4nk795 >
I would like to seperate a list into two complete seperate lists of equal size. [1;2;3;4;5;6;] - [1;3;5] [2;4;6]
18:08
<
companion_cube >
mrvn: List.split I guess
18:08
<
companion_cube >
oh, my bad
18:08
<
mrvn >
t4nk795: then you need to consume two items at a time
18:08
<
companion_cube >
you need to take two elements
18:08
akegalj_ is now known as akegalj
18:08
<
companion_cube >
also, the length of the resulting lists might differ by 1
18:08
<
mrvn >
| x::y::tl -> let (xs, ys) = split tl in (x::xs, y::ys)
18:09
<
mrvn >
nah, if it doesn't fit you raise an exceptions
18:09
thorsten1 has quit [Quit: WeeChat 1.1-dev]
18:09
<
companion_cube >
I guess this might be in the context of merge sort
18:09
<
companion_cube >
so you'd rather not fail on the split operation
18:09
thorsten` has joined #ocaml
18:10
<
mrvn >
For merge sort I wouldn't split.
18:10
<
t4nk795 >
ah I didn't think to pattern match in that way
18:10
<
companion_cube >
mrvn: what do you mean? on list you kind of need to
18:11
<
companion_cube >
on arrays that's probably different
18:11
<
mrvn >
For merge sort List.map (fun x -> [x]) and then merge the list repeadetly till there is only one
18:12
<
companion_cube >
I'm not sure it's better
18:12
<
companion_cube >
you're suppose to divide the size of the problem by 2 at every recursive step
18:12
<
companion_cube >
(or 3, or...)
18:12
<
companion_cube >
supposed*
18:14
matason has quit [Ping timeout: 246 seconds]
18:14
<
t4nk795 >
| x :: y :: tl -> let xs, ys = split tl in ( (x :: xs), (y :: ys))
18:15
<
t4nk795 >
I feel I'm not far off here
18:15
kakadu has quit [Ping timeout: 246 seconds]
18:15
<
t4nk795 >
I'm right in thinking it shouldn't be (xs, ys) ?
18:15
<
t4nk795 >
since what I want to return are two separate things
18:16
<
t4nk795 >
thought I'm most likely wrong about that ;)
18:21
<
mrvn >
the () are just for readability
18:22
<
t4nk795 >
ah my knowledge on that is limited. I figured it was doing something
18:23
<
mrvn >
my bottom up solution
18:24
<
t4nk795 >
That's interesting, thank you
18:25
oscar_toro has quit [Ping timeout: 264 seconds]
18:26
kushal has quit [Quit: Leaving]
18:33
manizzle has joined #ocaml
18:33
oscar_toro has joined #ocaml
18:36
eatonphil has joined #ocaml
18:38
AlexRussia has quit [Ping timeout: 250 seconds]
18:39
mcclurmc has joined #ocaml
18:39
<
eatonphil >
I have a micro lisp I'm working on. It didn't end up going well so I just ended up releasing it as it is (a lispy calculator). I listed what I think needs to change in the README. Are my thoughts correct? I'd appreciate any verification. Mainly, I need to hold off on descent until the application stage and also I need to have a good ADT to minimize stupid match ... with.
18:40
eatonphil has quit [Client Quit]
18:40
Haudegen has quit [Ping timeout: 245 seconds]
18:40
mcclurmc has quit [Remote host closed the connection]
18:40
eatonphil has joined #ocaml
18:40
mcclurmc has joined #ocaml
18:42
psy_ has joined #ocaml
18:43
pgomes has joined #ocaml
18:45
tokenrov1 is now known as tokenrove
18:45
<
tokenrove >
hi eatonphil. nice work on the calculator; thanks for trying my Num suggestion. i will try to dig up a tiny lisp interpreter i wrote ages ago that might be some help.
18:50
<
eatonphil >
@tokenrove, yeah Num was a good idea. I'd be happy for any examples too!
18:51
swgillespie has joined #ocaml
18:53
Haudegen has joined #ocaml
18:56
manizzle has quit [Remote host closed the connection]
18:57
manizzle has joined #ocaml
18:58
mfp_ is now known as mfp
18:58
Submarine has joined #ocaml
18:59
<
mrvn >
optimized it some more. bottom up is still a bit shorter
19:00
mcclurmc has quit [Remote host closed the connection]
19:00
<
mrvn >
bottom up needs O(1) stack while top down needs O(log n)
19:03
mcclurmc has joined #ocaml
19:03
mcclurmc has quit [Remote host closed the connection]
19:05
mort___ has quit [Quit: Leaving.]
19:14
WraithM has joined #ocaml
19:14
ericwa has joined #ocaml
19:15
kakadu has joined #ocaml
19:16
Hannibal_Smith has joined #ocaml
19:21
ghostpl_ has quit [Remote host closed the connection]
19:27
TheLemonMan has joined #ocaml
19:32
mort___ has joined #ocaml
19:32
Algebr has quit [Remote host closed the connection]
19:35
matason has joined #ocaml
19:36
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
19:39
slash^ has quit [Read error: Connection reset by peer]
19:41
struk|work has quit [Quit: Page closed]
19:46
eatonphil has quit [Quit: Page closed]
19:48
larhat has quit [Quit: Leaving.]
19:54
Algebr has joined #ocaml
19:54
<
Algebr >
Can I compile an arbitrary number of .cmo into one .cmo?
19:55
<
Algebr >
And what is the difference between ocamlopt and ocamlopt.opt?
19:57
<
mrvn >
Algebr: ocamlopt.opt is the ocamopt compiled to native code. plain ocamlopt is bytecode
19:57
<
cmtptr >
what's the point of distributing both?
19:59
<
mrvn >
not every arch has native code
20:02
<
Algebr >
um, isn't the ocamlc the byte code compiler?
20:04
<
cmtptr >
ocamlopt is the native machine language compiler, but the executable itself is ocaml bytecode
20:05
freling has quit [Quit: Leaving.]
20:07
<
nicoo >
cmtptr: It can be a symlink to ocamlopt.opt, technically
20:07
<
cmtptr >
on arch it isn't
20:12
claudiuc has joined #ocaml
20:16
_andre has quit [Quit: leaving]
20:18
badkins has quit [Read error: Connection reset by peer]
20:21
ghostpl_ has joined #ocaml
20:24
swgillespie has joined #ocaml
20:25
matason has quit [Ping timeout: 264 seconds]
20:28
ghostpl_ has quit [Ping timeout: 245 seconds]
20:29
Anarchos has joined #ocaml
20:30
<
Algebr >
compiling ocaml is truly an arcane.
20:31
<
Drup >
Algebr: you tried to define your own makefile ?
20:31
<
Drup >
I told you to use OCamlMakefile, didn't I ? :D
20:31
<
Algebr >
That makefile is a beast
20:32
<
Drup >
why do you care ? It does the job ?
20:32
<
kakadu >
plain Makefile then
20:32
<
Drup >
If you think "but I'm sure I can do it simpler!"
20:32
<
Drup >
let me tell you one thing
20:32
<
Algebr >
here it comes
20:32
<
Drup >
your version is going to be broken.
20:33
<
Algebr >
lol, okay, now I'm going to try the ocamlmakefile
20:33
<
Drup >
(this affirmation is based on a long list of real world example :D)
20:37
matason has joined #ocaml
20:39
ericwa has quit [Read error: Connection reset by peer]
20:39
ollehar has joined #ocaml
20:39
<
ollehar >
Parser.main exists without error message
20:40
<
Drup >
it exists, so it parses! :D
20:40
<
companion_cube >
I, too, exist without error message
20:40
<
companion_cube >
should I worry?
20:40
<
Drup >
(or is it the other way around ? :D)
20:41
<
t4nk795 >
Hi if I have a type like so "type cint = MinusInfinity | PlusInfinity | Finite of int " and I want to create a function as : let add : cint -> cint -> cint = function n1 n2 -> match n1 n2 with .. how do I pattern match to access the respective values of cint?
20:42
<
ollehar >
Cogito...
20:42
<
Drup >
ollehar: show your parser :)
20:42
<
companion_cube >
t4nk795: match n1, n2 with MinusInfinity, MinusInfinity -> MinusInfinity | Finite i, Finite j ->....
20:42
<
mrvn >
match (n1, n2) with
20:42
<
ollehar >
drup: all of it?
20:42
<
ollehar >
using menhir
20:42
<
Drup >
ollehar: yes, pastebin.
20:43
<
ollehar >
I got it to work interactively
20:43
<
t4nk795 >
thank you both.
20:44
<
tokenrove >
would it be possible to build a better opam solver on top of z3, especially now that it's open source?
20:45
<
companion_cube >
do you have problems with apud ?
20:45
<
companion_cube >
aspcud*
20:45
<
Drup >
tokenrove: 1) Z3 is rather badly packaged in distrib, not better than aspcud
20:45
<
Drup >
2) aspcud is more suited to the task, it's designed on purpose for package constraints
20:46
<
tokenrove >
companion_cube: not at all; i was just curious, and i figured people here would know much more about it than I do.
20:47
<
Drup >
ollehar: line 45, on eof, you should emit EFO
20:47
Algebr has quit [Remote host closed the connection]
20:47
<
Drup >
same for line 65
20:48
<
companion_cube >
tokenrove: that was a legit question; the issue, I think, is z3 is not built for optimization but "only" for solving constraints
20:48
badkins has joined #ocaml
20:49
<
t4nk795 >
If a part of my type is 'Finite of int'
20:49
<
t4nk795 >
how may I add two of those types together?
20:50
larhat has joined #ocaml
20:50
<
t4nk795 >
| Finite i, Finite j ->
20:50
<
Drup >
also, as companion_cube, I didn't pay attention, but last release of Z3 can't do optimisation
20:51
<
Drup >
and checking is easy (the solver bundle in opam does it fine). The hard part is providing an optimal set of packages.
20:51
<
tokenrove >
Drup: cool, thanks
20:52
<
Drup >
ollehar: also, I'm not sure you need the "%prec NOT"
20:52
<
Drup >
(actually, quite convinced you don't)
20:53
<
ollehar >
Just don't make me learn it.
20:54
<
Drup >
learn what ? :p
20:54
<
tokenrove >
i know that Z3 has some functions to maximize objective functions, so i had assumed that could be used for optimization.
20:55
<
ollehar >
or whatever grammer menhir uses
20:55
<
companion_cube >
I'm not sure it's in the release
20:56
<
tokenrove >
companion_cube: yeah, it isn't. it's only on the opt branch.
20:56
<
Drup >
tokenrove: in dev
20:56
<
Drup >
and unstable
20:56
<
Drup >
also, has issues with local maximas :p
20:57
<
Drup >
and if you are thinking of the stuff I used, it's a huge hack.
20:57
<
companion_cube >
well, now you can merge it and propose a patch :p
20:58
<
t4nk795 >
Hi folks, how many I add two types together that have SomeName of int ?
20:58
<
t4nk795 >
if I declare two variables n1 and n2 which both have that type
20:58
<
Drup >
companion_cube: they are developing their own better version.
20:58
<
companion_cube >
so I think the idea is z3 authors are going to focus more on lean now
20:58
<
Drup >
not so sure about that
20:58
<
t4nk795 >
I'm pattern matching n1 and n2 with | SomeName i, SomeName j ->
20:59
<
Drup >
the original author, yes
21:03
<
ollehar >
drup: now I get "empty token" at end of string :P
21:05
<
Drup >
ollehar: considering you don't have any parsing rule to handle the empty string, is that really surprising ? :)
21:06
mcclurmc has joined #ocaml
21:06
<
Drup >
hum, except if I misunderstood the issue
21:06
<
ollehar >
but what's the solution?
21:06
<
Drup >
add a rule to handle the empty string
21:07
<
Drup >
like "| EOF { ... }" in main
21:07
<
Drup >
and return a bool option.
21:11
ollehar has quit [Remote host closed the connection]
21:11
ollehar has joined #ocaml
21:12
freling has joined #ocaml
21:13
<
ollehar >
| eof { EOL |
21:13
<
ollehar >
| eof { EOL }
21:13
<
ollehar >
ah whatever
21:13
<
ollehar >
the error is gone
21:16
<
ollehar >
Cool, I've got a mini-language in my XML parser :)
21:16
<
ollehar >
"Jesus wept, as there were no more worlds to conquer!"
21:21
s1n4 has joined #ocaml
21:26
ghostpl_ has joined #ocaml
21:33
ghostpl_ has quit [Ping timeout: 256 seconds]
21:45
t4nk795 has quit [Ping timeout: 246 seconds]
21:45
Anarchos has quit [Quit: returned to code]
21:45
struktured has joined #ocaml
22:01
xificurC has quit [Ping timeout: 256 seconds]
22:02
larhat has quit [Quit: Leaving.]
22:18
ollehar has quit [Ping timeout: 244 seconds]
22:21
reem has joined #ocaml
22:22
matason has quit [Ping timeout: 265 seconds]
22:22
mort___ has quit [Read error: Connection reset by peer]
22:22
mort___1 has joined #ocaml
22:29
ghostpl_ has joined #ocaml
22:30
rgrinberg has quit [Ping timeout: 256 seconds]
22:30
badon has joined #ocaml
22:33
Anarchos has joined #ocaml
22:34
ghostpl_ has quit [Ping timeout: 272 seconds]
22:41
avsm has joined #ocaml
22:43
reem has quit [Remote host closed the connection]
22:44
reem has joined #ocaml
22:47
avsm has quit [Quit: Leaving.]
22:49
reem has quit [Remote host closed the connection]
22:49
ollehar has joined #ocaml
22:50
kakadu has quit [Remote host closed the connection]
22:50
Hannibal_Smith has quit [Quit: Leaving]
22:53
freling has quit [Quit: Leaving.]
22:53
TheLemonMan has quit [Quit: leaving]
22:54
reem has joined #ocaml
22:57
avsm has joined #ocaml
23:00
WraithM has quit [Ping timeout: 244 seconds]
23:00
badon has quit [Quit: Leaving]
23:01
Mercuria1Alchemi has quit [Ping timeout: 245 seconds]
23:10
cdidd has quit [Ping timeout: 255 seconds]
23:12
Pepe_ has joined #ocaml
23:18
sepp2k has quit [Quit: Konversation terminated!]
23:21
tane has quit [Quit: Verlassend]
23:25
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
23:26
rgrinberg has joined #ocaml
23:27
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
23:28
swgillespie has joined #ocaml
23:29
ollehar has quit [Quit: ollehar]
23:30
WraithM has joined #ocaml
23:30
ghostpl_ has joined #ocaml
23:31
rgrinberg has quit [Ping timeout: 264 seconds]
23:34
AltGr has joined #ocaml
23:39
akegalj has quit [Quit: Lost terminal]
23:40
ghostpl_ has quit [Ping timeout: 248 seconds]
23:40
pgomes has quit [Ping timeout: 252 seconds]
23:43
Denommus has quit [Quit: going home]
23:48
jwatzman|work has quit [Quit: jwatzman|work]
23:53
Algebr has joined #ocaml
23:57
idegen has quit [Quit: Leaving.]
23:57
idegen has joined #ocaml
23:57
idegen has quit [Read error: Connection reset by peer]