jamii has quit [Read error: Connection reset by peer]
leoncamel has quit [Ping timeout: 252 seconds]
<pippijn>
how can I get rid of this warning:
<pippijn>
<W> Grammar extension: in [expr] some rule has been masked
leoncamel has joined #ocaml
ulfdoz_ has joined #ocaml
ulfdoz has quit [Ping timeout: 260 seconds]
ulfdoz_ is now known as ulfdoz
emmanuel__ has quit [Quit: emmanuel__]
emmanuelux has joined #ocaml
as has quit [Quit: as]
Neros_ has quit [Read error: Operation timed out]
tane has quit [Quit: Verlassend]
madroach has quit [Ping timeout: 244 seconds]
madroach has joined #ocaml
eikke has quit [Ping timeout: 252 seconds]
as has joined #ocaml
Yoric has joined #ocaml
gustav__ has quit [Remote host closed the connection]
vulck has quit [Quit: Leaving]
mjonsson has quit [Ping timeout: 260 seconds]
Yoric has quit [Remote host closed the connection]
Yoric has joined #ocaml
thelema has quit [Remote host closed the connection]
thelema_ has joined #ocaml
emmanuelux has quit [Remote host closed the connection]
leoncamel has quit [Ping timeout: 252 seconds]
leoncamel has joined #ocaml
sepp2k has joined #ocaml
answer_42 has joined #ocaml
answer_42 has left #ocaml []
gnuvince has quit [Ping timeout: 264 seconds]
cross has joined #ocaml
as has quit [Quit: as]
Kakadu has joined #ocaml
ocp has joined #ocaml
cdidd has quit [Remote host closed the connection]
cdidd has joined #ocaml
srcerer has quit [Ping timeout: 245 seconds]
covi has joined #ocaml
thelema_ has quit [Read error: Operation timed out]
thelema has joined #ocaml
Yoric has quit [Ping timeout: 246 seconds]
thelema has quit [Ping timeout: 246 seconds]
srcerer has joined #ocaml
Snark has joined #ocaml
thelema has joined #ocaml
thelema has quit [Read error: Connection reset by peer]
Yoric has joined #ocaml
thelema has joined #ocaml
srcerer_ has joined #ocaml
srcerer has quit [Ping timeout: 246 seconds]
ocp has quit [Ping timeout: 246 seconds]
leoncamel has quit [Ping timeout: 260 seconds]
Oejet has joined #ocaml
larhat has joined #ocaml
xavierm02 has joined #ocaml
mindbender1 has joined #ocaml
leoncamel has joined #ocaml
Anarchos has joined #ocaml
Snark has quit [Ping timeout: 246 seconds]
Snark has joined #ocaml
ontologiae has joined #ocaml
Oejet has quit [Quit: Leaving.]
thelema has quit [Ping timeout: 260 seconds]
Neros_ has joined #ocaml
thelema has joined #ocaml
thelema has quit [Read error: Connection reset by peer]
thelema has joined #ocaml
eikke has joined #ocaml
<pippijn>
I don't know how else to ask, so I'll just ask again: does anybody know how to get rid of this warning: "<W> Grammar extension: in [expr] some rule has been masked" from this grammar extension: http://paste.xinu.at/wvsYGE/
bru has joined #ocaml
__lrk__ has joined #ocaml
<Anarchos>
pippijn no idea
bru has quit [Remote host closed the connection]
fusillia has joined #ocaml
tane has joined #ocaml
andreypopp has joined #ocaml
mfill has joined #ocaml
ocp has joined #ocaml
mindbender1 has quit [Quit: Leaving.]
ocp has quit [Ping timeout: 245 seconds]
deu5 has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-090423]: i've been blurred!]
<wieczyk>
pippijn: maybe it is due to level?
<pippijn>
hmm
<pippijn>
what levels are there? where can I find that information?
<wieczyk>
w8
<wieczyk>
I dont know how to get list of levels and some explanasions, but I see some other levels in source of some syntax extensions.
<pippijn>
the "local/in" block looks separate from global_decl
<wieczyk>
Hard to say, yes it is before global declartion, but seeing ,,local'' keyword and with proper indentation you can easily localize the global declaration.
<wieczyk>
But in my point of view
<wieczyk>
it would be better to have locals after the global declaration, like 'where' in haskell
<pippijn>
and put "module A/B/C = struct" around each
<wieczyk>
So A.ml will be not compiled as seperate compilation unit and puted into pack?
<pippijn>
it will
<wieczyk>
So it is not
<wieczyk>
14:35 < pippijn> then it will be as if you had done cat A.ml B.ml C.ml > MyLib.ml
<pippijn>
"as if"
<wieczyk>
But is not true.
<pippijn>
the effect is the same
<wieczyk>
Because if I would do
<pippijn>
the resulting .cmx/.cmo/.cmi files are as if you had done that
<pippijn>
but you don't lose separate compilation
<pippijn>
because you pass -for-pack MyLib to the compiler
<adrien>
wieczyk: how it works <- for native code, you need to add a -for-pack Foo option to the command-line: it works with no magic :-)
<pippijn>
and then -pack when linking
<wieczyk>
Sorry internet.
<adrien>
you should try it on a simple example, it'll take you five minutes or so and you'll understand pretty well
<wieczyk>
Moment, we need to distinguish ,,how it is compiled'' between ,,how to use tools to create a pack'
<wieczyk>
I have
<wieczyk>
Lib/A.ml
<wieczyk>
Lib/B.ml
<wieczyk>
Lib/C.ml
<wieczyk>
or
<wieczyk>
Lib/A.ml
<wieczyk>
B and C are not important in our discussion :D
<wieczyk>
I can do something like this:
<wieczyk>
Lib.ml with 'module A = A'
<wieczyk>
It allow me to address the A module as 'Lib.A'
<pippijn>
wieczyk: yes, and pack does the same, except the A module will be gone
<wieczyk>
but still.. Lib/A.ml is compiled as Lib/A.cmo and conflict can occur.
<wieczyk>
Hm.
<wieczyk>
How it is done that it is done?
<wieczyk>
gone*
<pippijn>
you don't install A.cmo
<pippijn>
only Lib.cmo is installed
<wieczyk>
Lib.cmo or Lib.cma?
<pippijn>
whatever
<pippijn>
Lib.cma is just an archive with Lib.cmo in it
<pippijn>
(and not A.cmo)
<wieczyk>
I understand.
<wieczyk>
I thought that Lib.cma will contain artifical Lib.cmo and A.cmo
<wieczyk>
Interesting.
<wieczyk>
So, finally
<wieczyk>
I can use normal module names in library
<wieczyk>
?
<Kakadu>
http://paste.in.ua/7730/raw/ So, any ideas about my ocamlyacc problem? Why `type t` is not in generated file?
<pippijn>
Kakadu: yes
<pippijn>
Kakadu: %{%} code is never it the .mli
<pippijn>
only in the .ml
<wieczyk>
Yeah.
<wieczyk>
I have one another question about libraries :-)
<pippijn>
Kakadu: what happens if you write %{ let foo = 3 %}
<pippijn>
and it would output that into the .mli?
<pippijn>
that would not compile
andreypopp has quit [Quit: sleep]
<pippijn>
Kakadu: you need to make a separate "ast.ml" or something
<wieczyk>
In Java languaes we have 'package' and the ,,protected'' access modifier in class definitions
<Kakadu>
okay
<wieczyk>
allows to use those member from package, but denies it from outside package.
<pippijn>
wieczyk: not in ocaml
<wieczyk>
Can I achieve something similar with packs?
<pippijn>
I don't think so
<wieczyk>
;/
<wieczyk>
It would be nice in my opintion.
<pippijn>
yes, it would
<wieczyk>
Thanks for your time.
<wieczyk>
This packing mechanism
<wieczyk>
It is possible to put own Lib.mli file?
<wieczyk>
Because it would allow us to do the ,,protected'' trick.
<pippijn>
hmm
<pippijn>
I'm not sure, maybe you can
<wieczyk>
Ok I will check it later.
<pippijn>
because the pack is just a .cmx/.cmo
<pippijn>
so you could make a .mli and make a .cmi out of it
<pippijn>
but I don't know :) you can try it and let us know
BiDOrD has joined #ocaml
BiDOrD_ has quit [Ping timeout: 268 seconds]
<deu5>
Have any of you use ocaml for write web app ?
andreypopp has joined #ocaml
<wieczyk>
I dont like webapps, but I heard about Ocsigen framework for Ocaml.
<wieczyk>
It has nice tool - 'js_of_ocaml' which allow you to write client-side application in ocaml (it is compiled to javascript), I believe it is good thing.
<wieczyk>
OK, one more question about packs :-)
<wieczyk>
Can I add some global definitions in my library, for example
<wieczyk>
instead of forcing use to
<wieczyk>
open Lib.SomeModule
__lrk__ has joined #ocaml
<wieczyk>
allow type
<wieczyk>
open Lib
<wieczyk>
to get some basic definitions?
__lrk__ has quit [Client Quit]
andreypopp has quit [Quit: sleep]
andreypopp has joined #ocaml
__lrk__ has joined #ocaml
andreypopp has quit [Client Quit]
leoncamel has quit [Ping timeout: 252 seconds]
emmanuelux has joined #ocaml
leoncamel has joined #ocaml
__lrk__ has quit [Quit: __lrk__]
<pippijn>
wieczyk: I don't think so
lambdas has joined #ocaml
gustav__ has joined #ocaml
mfill has quit [Quit: leaving]
ocp has joined #ocaml
ontologiae has quit [Ping timeout: 245 seconds]
gnuvince has joined #ocaml
The_third_man has joined #ocaml
__lrk__ has joined #ocaml
__lrk__ has quit [Quit: __lrk__]
fraggle_laptop has joined #ocaml
fraggle_laptop has quit [Remote host closed the connection]
Yoric has quit [Ping timeout: 256 seconds]
Kakadu has quit []
ocp has quit [Ping timeout: 268 seconds]
fraggle_laptop has joined #ocaml
cdidd has quit [Remote host closed the connection]
fraggle_ has quit [Remote host closed the connection]
fraggle_laptop is now known as fraggle_
deu5 has quit [Remote host closed the connection]
fraggle_ is now known as fraggle_laptop
__lrk__ has joined #ocaml
fraggle_laptop is now known as fraggle__
fraggle__ is now known as fraggle_droid
gnuvince has quit [Ping timeout: 246 seconds]
__lrk__ has quit [Read error: Connection reset by peer]
__lrk__ has joined #ocaml
fraggle_droid is now known as fraggle_
fraggle_ is now known as fraggle_droid
__lrk__ has quit [Client Quit]
fraggle_droid has quit [Quit: Quitte]
fraggle_laptop has joined #ocaml
__lrk__ has joined #ocaml
__lrk__ has quit [Quit: __lrk__]
mye has joined #ocaml
andreypopp has joined #ocaml
gnuvince has joined #ocaml
xavierm02 has quit [Ping timeout: 244 seconds]
Xizor has joined #ocaml
xavierm02 has joined #ocaml
__lrk__ has joined #ocaml
__lrk__ has quit [Client Quit]
gnuvince has quit [Ping timeout: 246 seconds]
__lrk__ has joined #ocaml
tani has joined #ocaml
tani has quit [Read error: Connection reset by peer]
sepp2k1 has joined #ocaml
caligula_ has quit [Ping timeout: 245 seconds]
sepp2k has quit [Ping timeout: 246 seconds]
fraggle_laptop has quit [Remote host closed the connection]
mye has quit [Ping timeout: 246 seconds]
travisbrady has joined #ocaml
travisbrady_ has joined #ocaml
mye has joined #ocaml
mye_ has joined #ocaml
travisbrady has quit [Ping timeout: 252 seconds]
travisbrady_ is now known as travisbrady
travisbrady has quit [Quit: travisbrady]
mye has quit [Read error: Operation timed out]
mye_ is now known as mye
__lrk__ has quit [Quit: __lrk__]
walter has quit [Remote host closed the connection]
__lrk__ has joined #ocaml
jamii has joined #ocaml
jamii has quit [Client Quit]
jamii has joined #ocaml
mindbender1 has joined #ocaml
Anarchos has joined #ocaml
<wieczyk>
How to deploy a library?
<wieczyk>
I see that already installed libraries have both version, native and byte.
<wieczyk>
How to prepare a package with ocamlbuild which will compile and install both versions.
<wieczyk>
I see that when I type "ocamlbuild .... src/Lib.cma" and then "ocamlbuild ... src/Lib.cmxa" then files from first build are removed.
<wieczyk>
Is there some convience how to do this in proper way?
<lambdas>
On the few projects I've got, I put archive(byte) and archive(native) fields in my META file.
<wieczyk>
META file is recognized by ocamlbuild?
<lambdas>
Yes.
<wieczyk>
Nice.
<adrien>
wieczyk: when you build cma then cmxa with ocamlbuild, it doesn't remove data but only symlinks
<adrien>
but you can simply "ocamlbuild foo.cma foo.cmxa"
<pippijn>
and I still don't know the solution to my problem with it
<wieczyk>
;]
<wieczyk>
Well, It is frustrating when I do not know what I did wrong, and there is no good example.
<adrien>
pippijn: that a build system understand the standard way to query packages is too much?
<pippijn>
adrien: if it's built-in in a way that can't be done in user extensions, it's bad
<pippijn>
oasis has similar "built-in knowledge" issues
<pippijn>
it has a hard-coded list of file extensions that may produce .cmi files
<pippijn>
which is: .ml .mli .mly .mll .mlp (I'm not sure about the last one)
<pippijn>
let me check
<pippijn>
without .mlp
<pippijn>
[".ml"; ".mli"; ".mll"; ".mly"]
<pippijn>
so if you have anything else, such as .mlp (preprocessed with cpp), .ml.nw (noweb), .atd (for atdgen) or anything else that generates ml files, you lose
<pippijn>
you get warnings you can't turn off and you need to manually provide for the things oasis does automatically for .ml files (such as -for-pack)
<adrien>
pippijn: user extension for what _everything_ should use?
<adrien>
that's utterly useless
<pippijn>
adrien: no
<pippijn>
adrien: it should be implemented as built-in user extension
sgnb` has quit [Read error: Connection reset by peer]
<pippijn>
not as deeply buried knowledge in ocamlbuild
<adrien>
wieczyk: what does ocaml output when you "#require "stringpainter""
sgnb` has joined #ocaml
<pippijn>
so that users can override or re-implement it
<adrien>
pippijn: what makes you believe it's buried deeply?
<pippijn>
I don't know about ocamlfind support
<adrien>
are you aware that the ocamlfind support has been added quite late
<adrien>
?
<pippijn>
no
<pippijn>
now I am
<wieczyk>
20:39 < adrien> wieczyk: what does ocaml output when you "#require "stringpainter""
<pippijn>
maybe it's good
<wieczyk>
see my second pastebin
<adrien>
it can't be _that_ deep when it was added years in
<adrien>
and iirc it isn't deep
<adrien>
wieczyk: ok, saw it now
<adrien>
wieczyk: tip
<adrien>
module X = StringPainter;;
<pippijn>
one very simple thing that you can apparently not do yourself is output custom messages when generating code
<wieczyk>
adrien: ?
<pippijn>
instead of writing the entire command line, only writing the generated file name
<adrien>
wieczyk: run that after requiring the module
<adrien>
wieczyk: you can also run "ocamlobjinfo your.cma"
<wieczyk>
# open StringPainter.Basic;;
<wieczyk>
Error: Unbound module StringPainter
<wieczyk>
at my second pastebin
<wieczyk>
Why 'module X = StringPainter' is a tip when the StringPainter is unbound?
<pippijn>
a build system shouldn't be much more than a graph and functions to operate on it
<pippijn>
it can have any number of built-ins that provide standard functionality, but it should be possible for a user to recreate the exact same thing
<adrien>
wieczyk: ah, sorry, hadn't seen it was StringPainter that was unbound (packing my stuff for a flight tomorrow)
<pippijn>
adrien: where are you going?
<adrien>
wieczyk: run ocamlobjinfo your.cma
<adrien>
pippijn: AMS
<pippijn>
nice
<adrien>
as in Amsterdam's airport
<pippijn>
my birth town
<adrien>
not really
<adrien>
I'm going to the airport
<pippijn>
what are you doing at the airport?
<adrien>
then hotel, then airport, then hotel, then airport
<gustav__>
Why can I do this?: let a x n = if n > 0 then x x n-1;;
<Qrntz>
gustav__, can you? that doesn't compile.
<gustav__>
I haven't tried compiling it.
<pippijn>
it won't compile, because (x x n) - 1 is int
<Qrntz>
then I don't see how you «can»
<pippijn>
so you need to provide an else branch
<gustav__>
Code in the interpreter is ok when the same code is ok in the compiler, correct?
<gustav__>
And vice versa.
ontologiae has joined #ocaml
<gustav__>
pippijn: Nope.
<pippijn>
yep.
<gustav__>
Same error.
andreypopp has quit [Quit: sleep]
<gustav__>
Before any else.
<pippijn>
in addition to that, x x n doesn't work
rhodesd has joined #ocaml
<gustav__>
That's #1 problem. But why?
<pippijn>
well
<pippijn>
f x
<pippijn>
what type is f?
<gustav__>
"Compile" is really the wrong verb. I'm not trying to compile it. It's in the interpreter.
<gustav__>
fun?
<pippijn>
fun is not a type, it's a keyword
<pippijn>
try again
<gustav__>
('a -> 'a) ?
<pippijn>
almost
<Qrntz>
gustav__, it does not interpret either
<gustav__>
'a -> unit ?
<gustav__>
Qrntz: True.
<pippijn>
let a f x = f x
<pippijn>
what is the type of f?
<gustav__>
'a -> 'b.
<pippijn>
yes
<pippijn>
so what is the type of x?
<gustav__>
'a.
<gustav__>
Hmm.
<pippijn>
right
<pippijn>
so what happens if you write
<pippijn>
let a f = f f
<pippijn>
what is the type of f?
<gustav__>
'a. Oh.
<pippijn>
it needs to be both 'a and 'a -> 'b
<gustav__>
But I want f to be type 'a -> 'b.
eikke has joined #ocaml
<gustav__>
Eh. This can't be done...
<gustav__>
Type system is fucked.
<Qrntz>
lol
<pippijn>
how would you do that in another type system?
<gustav__>
So that it works.
<gustav__>
Fight the power. Duuude.
<pippijn>
well how do you imagine that works?
<pippijn>
so let's consider you can do that
<pippijn>
what would f do with f?
<gustav__>
It would apply f.
<Qrntz>
not sure if trolling…
<gustav__>
Well thanks.
<pippijn>
gustav__: so what would the result of that application be?
<gustav__>
pippijn: f code with f as first argument, whatever that argument is called.
<pippijn>
okay, you know what
<pippijn>
show me what you want to do
<pippijn>
this abstract talking isn't leading anywhere
<gustav__>
Can't. There's a constraint for ya.
<gustav__>
Can't look inside the box.
<pippijn>
why can't?
<gustav__>
Haven't thought of a problem yet.
<gustav__>
I made QA program for my desktop. It's quite nice. Don't know what do or make of the data though.
<pippijn>
so you call the type system fucked because it can't do something that structurally makes no sense and that has no actual application in real code
<gustav__>
I'm always dissatisfied with everything so I thought it would be best if I record it.
<pippijn>
then I think Qrntz can now be sure
<Qrntz>
yeah, it's pretty clear now
<gustav__>
A server, then.
<gustav__>
It's a loop construct.
<gustav__>
Event loop.
<pippijn>
okay, how about you write some pseudo code
<pippijn>
for that event loop
<gustav__>
let waitloop d = if not d then waitloop (process) else printf "We're done!";;
<pippijn>
yes
<pippijn>
that makes sense
<gustav__>
Well. That's not the same problem but anyway.
<pippijn>
somewhat
<pippijn>
at least from a type system's point of view, that code is fine
<gustav__>
Same problem not same construct.
<gustav__>
Sure. But the body or what you call it, isn't defined. So it doesn't like it.
<gustav__>
Can't reference itself.
<pippijn>
ah
<pippijn>
that problem is solved by adding "rec" after "let"
<pippijn>
so it can be recursive
<gustav__>
Hmm.
<gustav__>
Why do I have to be explicit?
<adrien>
to avoid mistakes
<pippijn>
that, and so you can do this:
<pippijn>
let f x = x + 1
<pippijn>
let f x = f x * 2
<pippijn>
in the second f, f refers to the first f
ulfdoz has quit [Ping timeout: 260 seconds]
<gustav__>
True. I can't refer out of my let then? That could be added?
<gustav__>
I know you don't want to, but anyway.
<pippijn>
you can refer to anything that is in your lexical scope
<gustav__>
Recursions are so nice. If not optimized a disaster of course.
<pippijn>
tail recursion in ocaml is optimised very well
<gustav__>
let f = 1 in let f = 2 in echo f'1;; <-- Would print first f defined.
<gustav__>
f'1 or f/1 or something or whatever.
<gustav__>
prev f1;;
<gustav__>
Something.
<gustav__>
Can I work with the scope?
<gustav__>
Like in an assoc list?
<pippijn>
no
<pippijn>
that would be extremely fragile
<gustav__>
Maybe.
ng__ has quit [Quit: Leaving]
<gustav__>
I really, really wonder how OCaml can help me solve problems. Real, problems.
<gustav__>
There aren't really any great tools for dealing with lots of strange data... like some from Facebook, some from PGSQL, and so on...
<gustav__>
I should try the other PGSQL lib for OCaml. The one I'm using now isn't that great.
<gustav__>
The other, I think, promises to integrate types from PGSQL in OCaml and vice versa. I think.
<gustav__>
Would be nice if standard OCaml could be parallellized, instead of inventing special syntax. I think the syntax of match ... has some promise. Internally you could have multiple listeners for the ("match x") x parameter.
<gustav__>
So that I can read many arguments at the same time and run the |Some |None whatever in different threads.
<gustav__>
Like how i7 processors read instructions from memory.
<gustav__>
Preempt.
<gustav__>
Haven't coded enough OCaml to say if that happens a lot though.
<gustav__>
Probably needs a bigger context.
<gustav__>
That's not really a real problem but it could speed up real code, today, if it could be implemented.
<gustav__>
I'm not happy with "adapting" code for multiproc env for instance. Would you rewrite Shakespeare for 2012? Some do that, sure. But the original is still there.
<gustav__>
Just not the same thing.
<gustav__>
Everything that works a list could probably be mangled enough to be parallellized.
<gustav__>
Theoretically.
Snark has quit [Quit: Quitte]
mindbender2 has joined #ocaml
<gustav__>
Comment if you want.
<gustav__>
Is the OCaml source easy to understand/well written? (For a reference I don't think GLIBC is well written.)
sgnb`` has joined #ocaml
sgnb` has quit [Read error: Connection reset by peer]
mindbender1 has quit [Ping timeout: 252 seconds]
<adrien>
yes
<adrien>
but
<adrien>
ocaml = compiler + standard library + tools
<adrien>
expect variations
<gustav__>
Sure.
<gustav__>
Gonna have a look... is it big? o_O
<gustav__>
My head already hurts.
<adrien>
ocaml = compiler + standard library + tools
<adrien>
many architectures
<adrien>
so it has to be not that small
<adrien>
but I doubt you'll want to read everything at once
<gustav__>
What's the chain from ocaml my.ml to "Hello world" on the terminal?
Yoric has quit [Ping timeout: 252 seconds]
andreypopp has joined #ocaml
<wieczyk>
Why ocamlbuild documentation is so not complete?
<wieczyk>
What the hell is a .odoc target and how it is connected to ocamlbuilds .odocl
<wieczyk>
Ok, I understand.
Cyanure has quit [Remote host closed the connection]
<wieczyk>
pippijn: it is possible to provide own Lib.mli, so the ,,protected'' trick should be possible
<pippijn>
nice
<wieczyk>
But I dont know how to provide correct Lib.mli
<wieczyk>
so it is very early and eager news ;]
mindbender1 has joined #ocaml
mindbender2 has quit [Ping timeout: 240 seconds]
mindbender1 has quit [Ping timeout: 252 seconds]
<pippijn>
what should I use for utf8 encoding and decoding?
Ptival has quit [Ping timeout: 276 seconds]
mfp has quit [Ping timeout: 252 seconds]
SanderM has joined #ocaml
milosn has quit [Ping timeout: 246 seconds]
mfp has joined #ocaml
sepp2k1 has quit [Remote host closed the connection]
ocp has quit [Read error: Operation timed out]
tane has quit [Quit: Verlassend]
mindbender1 has joined #ocaml
chambart has joined #ocaml
Ptival has joined #ocaml
chambart has quit [Ping timeout: 246 seconds]
eikke has quit [Ping timeout: 255 seconds]
fraggle_ has joined #ocaml
lolcathost has joined #ocaml
xavierm02 has quit [Quit: Leaving]
eikke has joined #ocaml
lolcathost has quit [Ping timeout: 265 seconds]
SanderM has quit [Remote host closed the connection]
lolcathost has joined #ocaml
mye has quit [Quit: mye]
andreypopp has quit [Quit: sleep]
ontologiae has quit [Ping timeout: 260 seconds]
as has joined #ocaml
<pippijn>
what's this: Error: Forward reference to Factory in file ccActions.cmx
<pippijn>
I can't find anything on google
lolcathost has quit [Quit: When I come back, please tell me in what new ways you have decided to be completely wrong.]