adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | Upcoming OCaml MOOC: https://huit.re/ocamlmooc | OCaml 4.03.0 release notes: http://ocaml.org/releases/4.03.html | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
al-maisan has quit [Quit: See you later..]
mcc has joined #ocaml
copy` has quit [Quit: Connection closed for inactivity]
minn has quit [Ping timeout: 244 seconds]
<Drup> rgrinberg: ?
axiles has quit [Ping timeout: 265 seconds]
glennsl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
shinnya has quit [Ping timeout: 264 seconds]
axiles has joined #ocaml
fraggle_ has quit [Ping timeout: 264 seconds]
fraggle_ has joined #ocaml
tmtwd has joined #ocaml
nicholasf has joined #ocaml
FreeBirdLjj has joined #ocaml
bruce_r has joined #ocaml
<rgrinberg> in tyre, the operators are exposed directly in Tyre rather than Tyre.Infix
<Drup> Yeah, because you're supposed to use local open. I could change it.
<rgrinberg> that's true, but Tyre is squatting some pretty common bindings
<rgrinberg> so even a local open can be annoying
<rgrinberg> Tyre.Infix.(...) please
<rgrinberg> actually, i don't care so much about that
<rgrinberg> why are you using the applicative operator for concatenation -_-
adelbertc has quit [Quit: Connection closed for inactivity]
<rgrinberg> also <?> should really be <|>
<Drup> I took the operators from angstrom :p
<rgrinberg> but they're actually applicative there
<rgrinberg> also <?> is used for failure in angstrom "correctly"
<rgrinberg> where correctly is just the original convention from parsec i think
<rgrinberg> angstrom does use <|> for alternation btw
<Drup> huum, don't remember about that
<rgrinberg> <+> or ++ is better than <*> imo. there's many other choices
<Drup> there was some annoying with assoc/priorities
<Drup> Please open a bug report, we will bikeshed the matter thoroughly and I'll change it :p
pierpa has quit [Ping timeout: 265 seconds]
<rgrinberg> done :P
<rgrinberg> otherwise it looks real good though
<Khady> Is there a way to generate the documentation of an executable in oasis?
ygrek has quit [Ping timeout: 240 seconds]
adelbertc has joined #ocaml
tmtwd has quit [Ping timeout: 264 seconds]
nicholasf has quit [Remote host closed the connection]
tmtwd has joined #ocaml
patronus_ has quit [Remote host closed the connection]
nicholasf has joined #ocaml
Sorella has joined #ocaml
MercurialAlchemi has joined #ocaml
AlexDenisov has joined #ocaml
sdothum has quit [Quit: ZNC - 1.6.0 - http://znc.in]
patronus has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
tmtwd has quit [Ping timeout: 252 seconds]
MercurialAlchemi has quit [Ping timeout: 240 seconds]
lockdown has joined #ocaml
lockdown has quit [Quit: leaving]
eikke has quit [Remote host closed the connection]
<flux> I finally used tcmalloc (hi def`!) against my troublesome program, and it says expand_heap is the culprit. so this means the problem is in ocaml heap..
rgrinberg has quit [Ping timeout: 250 seconds]
Submarine has joined #ocaml
MercurialAlchemi has joined #ocaml
abeaumont_ has quit [Remote host closed the connection]
tane has joined #ocaml
AlexDenisov has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
segmond has quit [Quit: l8r]
nore has quit [Ping timeout: 250 seconds]
Submarine has quit [Remote host closed the connection]
wu_ng has joined #ocaml
<wu_ng> ocamlfind ocamlc -warn-error CDEFLMPSUVXYZ-3 -custom -package unix,str -c package_handler.mli -o package_handler.cmi
<wu_ng> ocamlc: unknown option '-package'.
<flux> works for me (TM)
<wu_ng> ocaml-findlib-1.5.5-4.fc23.s390x
<wu_ng> i am using
<flux> well, ocamlc should never receive that -package switch. something's worng with your ocamlfind then.
<flux> may I suggest using an opam-installed ocaml and friends instead? it's the hip thing, everybody's doing it ;).
<wu_ng> well, ok, see what i can do
<wu_ng> maybe i can use : ocamlc -warn-error CDEFLMPSUVXYZ-3 -custom -I /usr/lib64/ocaml -c package_handler.mli -o package_handler.cmi
<wu_ng> right?
Simn has joined #ocaml
<flux> I think yes, for that particular command
<flux> however in the linking phase you need to put in unix.cma and str.cma
FreeBirdLjj has joined #ocaml
bruce_r has quit [Ping timeout: 250 seconds]
mcc has quit [Quit: Connection closed for inactivity]
nichola__ has joined #ocaml
nicholasf has quit [Ping timeout: 276 seconds]
nicholasf has joined #ocaml
nichola__ has quit [Ping timeout: 240 seconds]
nicholasf has quit [Remote host closed the connection]
Distortion has joined #ocaml
ygrek has joined #ocaml
AlexDenisov has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 260 seconds]
FreeBirdLjj has joined #ocaml
AlexDenisov has quit [Client Quit]
freusque has joined #ocaml
nicholasf has joined #ocaml
copy` has joined #ocaml
wu_ng has quit [Read error: Connection reset by peer]
AlexDenisov has joined #ocaml
wu_ng has joined #ocaml
octachron has joined #ocaml
AlexDenisov has quit [Read error: Connection reset by peer]
AlexDenisov has joined #ocaml
AlexDenisov has quit [Read error: Connection reset by peer]
AlexDenisov has joined #ocaml
nicholasf has quit [Ping timeout: 255 seconds]
nicholasf has joined #ocaml
nichola__ has joined #ocaml
dakk has joined #ocaml
nicholasf has quit [Ping timeout: 260 seconds]
gwenloh has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
wu_ng has quit [Read error: Connection reset by peer]
wu_ng has joined #ocaml
infinity0_ has joined #ocaml
infinity0_ has quit [Changing host]
infinity0_ has joined #ocaml
infinity0 has quit [Ping timeout: 276 seconds]
ygrek_ has joined #ocaml
infinity0_ has quit [Remote host closed the connection]
larhat has joined #ocaml
infinity0 has joined #ocaml
ygrek has quit [Ping timeout: 250 seconds]
Distortion has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
zv has quit [Read error: Connection timed out]
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
zpe has joined #ocaml
infinity0 has joined #ocaml
adelbertc has quit [Quit: Connection closed for inactivity]
glennsl has joined #ocaml
nichola__ has quit [Remote host closed the connection]
octachron has quit [Ping timeout: 264 seconds]
Algebr` has quit [Ping timeout: 255 seconds]
jwatzman|work has joined #ocaml
zv has joined #ocaml
nicholasf has joined #ocaml
AlexDenisov has quit [Read error: Connection reset by peer]
AlexDenisov has joined #ocaml
AlexDenisov has quit [Read error: Connection reset by peer]
jlouis has joined #ocaml
Algebr` has joined #ocaml
AlexDenisov has joined #ocaml
kakadu has joined #ocaml
larhat1 has joined #ocaml
larhat has quit [Read error: Connection reset by peer]
gwenloh has joined #ocaml
Distortion has joined #ocaml
gwenloh has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
antranigv has joined #ocaml
antranigv has left #ocaml [#ocaml]
rand__ has joined #ocaml
tizoc has quit [Quit: Coyote finally caught me]
tane has quit [Quit: Leaving]
FreeBirdLjj has quit [Remote host closed the connection]
dave24 has joined #ocaml
ygrek_ has quit [Ping timeout: 265 seconds]
FreeBirdLjj has joined #ocaml
TheLemonMan has joined #ocaml
dakk has quit [Ping timeout: 240 seconds]
Denommus has quit [Ping timeout: 250 seconds]
<flux> I vote for Objective Pam!
<Algebr`> lowercase opam please, OPAM is like yelling
<Algebr`> people are double voting
<flux> my google docs-based condorcet voter form would be perfect for this! except for authentication and ease of vote manipulation..
<companion_cube> O'pam?
<Algebr`> o'bummer
FreeBirdLjj has quit [Read error: Connection reset by peer]
FreeBirdLjj has joined #ocaml
_andre has joined #ocaml
sepp2k has joined #ocaml
AlexDenisov has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
d0nn1e has quit [Ping timeout: 264 seconds]
Algebr` has quit [Ping timeout: 240 seconds]
d0nn1e has joined #ocaml
sdothum has joined #ocaml
govg has quit [Ping timeout: 265 seconds]
AlexDenisov has joined #ocaml
govg has joined #ocaml
two_wheels has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
ggole has joined #ocaml
two_wheels has joined #ocaml
<reynir> Hmm, I like opam better, but I can see it could be nice to have a distinct name for the tool
pierpa has joined #ocaml
dario9 has joined #ocaml
dakk has joined #ocaml
<dario9> I need to step outside my Postgres comfort zone for a project that uses Google Cloud SQL.
<dario9> (Google Cloud SQL uses MySQL...)
<dario9> Anyway, I couldn't find any Lwt-friendly MySQL bindings for OCaml.
<dario9> Is my google-fu failing me, are there really none?
<dario9> There's been a recent announcement for a MariaSQL library which is Lwt-friendly.
<dario9> But I reckon these are not compatible (or are they?)
<dario9> Anyway, is anyone using ocaml-mysql with Lwt? And are you using Lwt_preemptive.detach?
<dario9> One immediate annoyance with ocaml-mysql is that the API does not indicate which functions block on I/O.
sh0t has joined #ocaml
govg has quit [Ping timeout: 244 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
dakk has quit [Ping timeout: 260 seconds]
dakk has joined #ocaml
kakadu has quit [Remote host closed the connection]
mcspud has quit [Ping timeout: 255 seconds]
rgrinberg has joined #ocaml
rgrinberg has quit [Client Quit]
rgrinberg has joined #ocaml
sh0t has quit [Remote host closed the connection]
sh0t has joined #ocaml
SpaceSheep has joined #ocaml
wu_ng has quit [Ping timeout: 244 seconds]
TheLemonMan has quit [Ping timeout: 276 seconds]
TheLemonMan has joined #ocaml
dakk has quit [Ping timeout: 260 seconds]
TheLemonMan has quit [Ping timeout: 264 seconds]
hyperqhopper has joined #ocaml
AlexDenisov has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tizoc has joined #ocaml
<hyperqhopper> I'm trying to write my first ocaml program, and I'm getting a type error I'm not sure about
<hyperqhopper> Shouldn't the expression just be of type unit?
<thizanne> hyperqhopper: you wrote `let helloworlds n = function ...`
<thizanne> so you actually write a function that takes two parameters
<thizanne> `n`, and the one implicitly introduced by `function` over which you pattern-match
<flux> in other words, function xx -> .. is syntax candy for fun z -> match z with xx -> ..
agarwal1975 has joined #ocaml
<thizanne> you want to fix it by either writing `let hello = function ... ` or `let hello n = match n with ...`
<hyperqhopper> Oops, missed that, thanks so much!
<hyperqhopper> which of those is preferred in ocaml?
<hyperqhopper> I'm guessing function?
<thizanne> whichever you like the most
<thizanne> i'd personnally use function here since you don't need to have the name `n` defined
dakk has joined #ocaml
annoymouse has joined #ocaml
fraggle-boate has quit [Remote host closed the connection]
fraggle-boate has joined #ocaml
rgrinberg has quit [Ping timeout: 260 seconds]
<hyperqhopper> Would you mind looking at another one?
<hyperqhopper> why is it expecting a function that takes a function?
<hyperqhopper> (Also I know i could just use concat)
fraggle-boate has quit [Remote host closed the connection]
MercurialAlchemi has quit [Ping timeout: 265 seconds]
TheLemonMan has joined #ocaml
Algebr` has joined #ocaml
adrien_ has joined #ocaml
AlexDenisov has joined #ocaml
dakk has quit [*.net *.split]
picolino has quit [*.net *.split]
theblatte has quit [*.net *.split]
smondet_ has quit [*.net *.split]
adrien has quit [*.net *.split]
trevorriles has quit [*.net *.split]
troydm has quit [*.net *.split]
Muzer has quit [*.net *.split]
dinosaure has quit [*.net *.split]
rbocquet has quit [*.net *.split]
justin_smith has quit [*.net *.split]
vishesh has quit [*.net *.split]
SimonJF has quit [*.net *.split]
trevorriles has joined #ocaml
<hyperqhopper> got it, I again had an extra explicit argument.
fraggle-boate has joined #ocaml
AlexDenisov has quit [Client Quit]
srenatus[m] has quit [Ping timeout: 276 seconds]
<Simn> I'm using oasis for the first time and trying to do a basic setup for our project I get errors from ocamlbuild exploring our tests directory. I found out that I can ignore this using the ocamlbuild_more_args alpha feature, but the fact that it's tagged alpha makes me think I'm doing something wrong here.
Muzer has joined #ocaml
yomimono has joined #ocaml
nicholasf has quit [Remote host closed the connection]
M-Illandan has quit [Ping timeout: 276 seconds]
nicholasf has joined #ocaml
<gasche`> Simn: you can also add ("test_dir": -traverse) to your _tags file
rgrinberg has joined #ocaml
srenatus[m] has joined #ocaml
<gasche`> (but I see nothing wrong with using ocamlbuild_more_args; "alpha" probably means that the interface might change in a future oasis release, which is not necessarily an issue)
<Simn> Thanks
<Simn> Is ocamlbuild the "right" tool to use? I'm getting confused by all these build tools I come across.
agarwal1975 has quit [Quit: agarwal1975]
M-Illandan has joined #ocaml
<Algebr`> oasis is built on top of ocamlbuild
agarwal1975 has joined #ocaml
<Algebr`> don't be put off by 'alpha'
gent00 has quit [Ping timeout: 244 seconds]
<Simn> Alright, thanks
eikke has joined #ocaml
AlexDenisov has joined #ocaml
chris2 has quit [Ping timeout: 265 seconds]
agarwal1975 has quit [Client Quit]
agarwal1975 has joined #ocaml
dakk has joined #ocaml
two_wheels has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
troydm has joined #ocaml
govg has joined #ocaml
smondet_ has joined #ocaml
theblatte has joined #ocaml
picolino has joined #ocaml
justin_smith has joined #ocaml
rbocquet has joined #ocaml
vishesh has joined #ocaml
SimonJF has joined #ocaml
dinosaure has joined #ocaml
govg has quit [Max SendQ exceeded]
govg has joined #ocaml
agarwal1975 has quit [Quit: agarwal1975]
agarwal1975 has joined #ocaml
gent00 has joined #ocaml
two_wheels has joined #ocaml
zpe_ has joined #ocaml
seangrove has joined #ocaml
zpe has quit [Ping timeout: 240 seconds]
<gasche`> Simn: oasis will not hide the build tool from you, merely call it for you
<gasche`> so you should use the build tool that you feel comfortable with
<gasche`> ocamlbuild is the default, but it's easy to call `make` instead, and the last oasis version has 'omake' support as well
<Simn> I don't feel comfortable with any build tool. :D
<Simn> I'm trying to figure out how to make it use camlp4o on a single file only.
APNG has quit [Read error: Connection reset by peer]
silver has joined #ocaml
octachron has joined #ocaml
Soni has joined #ocaml
hyperqhopper has quit [Ping timeout: 264 seconds]
shinnya has joined #ocaml
Soni is now known as APNG
MercurialAlchemi has joined #ocaml
govg has quit [Ping timeout: 265 seconds]
<Simn> "ocamlfind: Using -syntax, but no package is selected specifying a preprocessor as required for -syntax"
<gasche`> Simn:
<gasche`> "foo.ml": package(camlp4), syntax(camlp4o)
AlexDenisov has quit [Read error: Connection reset by peer]
AlexDenisov has joined #ocaml
<Simn> Thanks, that removes the error, but I still get a syntax error...
<Simn> "src/syntax/parser.ml": package(camlp4), syntax(camlp4o)
<Simn> That I have that at the bottom of _tags, is that correct?
AlexDenisov has quit [Read error: Connection reset by peer]
AlexDeni_ has joined #ocaml
<gasche`> it should be, yes
<gasche`> on my machine (ocamlbuild -use-ocalmfind src/syntax/parser.inferred.mli) would work (and produce the inferred interface)
<gasche`> but of course, this is assuming that you are using no syntax extension beyond what (camlp4o) provides
<gasche`> maybe you mean to use (camlp4of), or pass another package that adds a specific syntax extension
<Simn> I seem to have some other issue still, configure is giving "E: Cannot find findlib package camlp4o"
<Simn> Ah, wrong dependency (camlp4o instead of camlp4).
<Simn> But I still get that syntax error, argh.
<Simn> All I need is "-pp camlp4o", I think.
zpe_ has quit [Remote host closed the connection]
larhat1 has quit [Quit: Leaving.]
<gasche`> (you can check that (ocamlc -pp camlp4o -i foo.ml) works first)
nicholasf has quit [Remote host closed the connection]
<Simn> Yes that works
<Simn> That's what we use in our currently "build system".
<Simn> (Which is a makefile that is being maintained by hand...)
Distortion has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
digiorgi has joined #ocaml
<digiorgi> can i get a function like val foo : string, that gets evaluated only when i call it?
<digiorgi> because i dont like val foo () : string
<digiorgi> xddd
<Simn> For future generations: I changed _tags to "<src/syntax/parser.ml>: -pp,camlp4o" and that works now.
AlexDeni_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
ousado has quit [Remote host closed the connection]
ygrek_ has joined #ocaml
ousado has joined #ocaml
bruce_r has joined #ocaml
zpe has joined #ocaml
<dave24> hello, I'm trying to compile an ocaml program for an old kernel like this: http://sprunge.us/LTdK
<dave24> but I get undefined references in ocaml/stdlib.a (pervasives) to libm functions
<dave24> anyone have any experience with this?
AlexDenisov has joined #ocaml
<def`> dave24: add the -verbose flag at the beginning of your command line
<def`> it will help understanding what goes wrong
<dave24> well I know what is wrong, its not linking to -lm properly. But give me a sec, I'll try anyway
zpe has quit [Remote host closed the connection]
<dave24> hmm, nothing very interesting
<dave24> although now I notice its not just libmath, its all of libc as well
<dave24> this is stderr: http://sprunge.us/jWaE
<def`> Looks bad, how did you install this system?
<dave24> i compiled musl myself
<dave24> its a voidlinux machine with ocaml and findlib from repos
<def`> there are opam switches for musl ocaml
annoymouse has quit [Quit: Connection closed for inactivity]
<def`> you need a special build of the compiler (to use musl-gcc)
<def`> but I cannot tell you much more, I never tried that
<dave24> def`: ah yes, I have just tried that. Still did not work. But I got a bit closer so thanks!
jwatzman|work has quit [Quit: jwatzman|work]
nicoo has quit [Ping timeout: 276 seconds]
govg has joined #ocaml
AlexDenisov has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
nicoo has joined #ocaml
adelbertc has joined #ocaml
<rgrinberg> Drup: is unparsing in tyre really that useful? Seems like it's making some things a lot more awkward.
<rgrinberg> Like having a map combinator for example
<Drup> I think it is, and I need it for furl :3
<dave24> can I tell it to put the -lc after the libasmrun.a somehow? The order of the -cclib flags seems random
<Drup> Yes, it makes some combinators more complicated (map, *> and <*, mostly) but I think it's worth it. I might be able to improve the current API, though.
<rgrinberg> Would be nice if it was possible to support an API without unparsing that does allow for these operations
<Drup> I could add a type parameters ... :/
digiorgi has quit [Remote host closed the connection]
<Drup> I'm not convinced it's a good idea
annoymouse has joined #ocaml
<annoymouse> Is finding the length of a list in OCaml O(n) or does the compiler optimize it to O(1)
<Drup> rgrinberg: if there was an API that would support unparsing, in the "end" result, would you really use it, or would you use it only for prototyping ?
<reynir> annoymouse: O(n)
<annoymouse> That's really weird
<annoymouse> Isn't it tail recursion optimization though reynir
<rgrinberg> Drup: yeah, i think unparsing is useful. Just not always
<Drup> rgrinberg: if the answer is "only for prototyping", then the solution is not to duplicate the API, it's to reduce the friction in the API :p
<reynir> annoymouse: I think it's tail recursive, but that doesn't make iterating a list faster (asymptotically)
<Drup> (duplicating the API has a significant cost too, both for me and for the user)
<rgrinberg> hmm, would duplicating the api really be needed?
<Drup> yes
<Drup> or adding a new gadt type parameter, which I'm very reluctant
<rgrinberg> like you said, just add a phantom parameter for tyre re's with unparsing
<Drup> (that would track "reversibility")
<Drup> Yeah :/
<rgrinberg> yeah, that seems ok no?
<Drup> It makes the API more complicated
<companion_cube> breaks everything
<Drup> now you have bigger type signatures, bigger types, combinators that are reversible and combinators that are not, putting Tyre.t into containers is more painful ...
<Drup> (adding a gadt type parameters is far from being innocuous)
<annoymouse> reynir: In most languages its O(1)
<Drup> annoymouse: not for linked lists. Only for arrays or arraylists
<rgrinberg> ok, would it be possible to add that type parameter but only expose the specialized versions with equivalent api's? (in submodules)
<annoymouse> It's just interesting that something like that isn't optimized though
<Drup> rgrinberg: so, duplicating the API :p
octachron has quit [Quit: Page closed]
ggole has quit []
<annoymouse> Drup: Are they implemented using the same syntax?
<rgrinberg> oh. you mean the signatures?
<rgrinberg> implementation should be the same
<Drup> I mean the surface API exposed to the user
<rgrinberg> ok i see. but i think that's common
<annoymouse> rgrinberg: I mean are linked lists and arrays both declared with [] in OCaml
<Drup> rgrinberg: and I think it results in very large API that are hard to learn :p
<chelfi> annoymouse: [] is for linked list, [| |] is for arrays
<annoymouse> ah I see
<Drup> As I said, I would prefer to try to identify the pain points with the current API, and make them less painful. If this means adding combinators such as tuple and things like that, that's fine with me
<chelfi> so [1; 2; 3] is a linked list and [|1; 2; 3|] is the equivalent array
<rgrinberg> Drup: the most immediate concern currently is to make tyre applicative again!
<rgrinberg> val (*>) : 'a t -> 'b t -> 'b t
<rgrinberg> please
<Drup> Why ? what does it gives you exactly ?
AlexDenisov has joined #ocaml
<rgrinberg> a very common and useful combinator
maurer has left #ocaml ["WeeChat 1.4"]
<rgrinberg> what do you mean?
<Drup> I mean that the expressivity is already there, you just need to give a witness for the ignored part, so what does that precise type signature gives you ?
<rgrinberg> of course, i just mean that this signature is simply the more convenient one often enough
<rgrinberg> for example, parse something surrounded with spaces
<rgrinberg> space *> thing <* space
<Drup> I didn't make it "not applicative" (it is, really) just for the pleasure of screwing haskell idioms :p
<Drup> So you want something more convenient than (space,"") **> thing <** (space,"")
<Drup> Huuum, I wonder if we could generate a witness by inspecting the regex. that's technically feasable.
<rgrinberg> sure, shortest path to an epsilon state ^_^
<Drup> rgrinberg: yes, but what do you do for Tyre.regex ?
sepp2k has quit [Ping timeout: 244 seconds]
<Drup> we need the fonctionallity in re too
<rgrinberg> anyway, i don't know but i definitely think you should make it properly applicative
<Drup> rgrinberg: If you make me a fonction "Re.witness : Re.t -> string" that is deterministic and such that Re.execp re (Re.witness) = true", then I'll make it applicative
<Drup> :D
<Drup> :challenge:
<rgrinberg> you will give core users a lot of freebies from Applicative.Make
seangrove has quit [Ping timeout: 244 seconds]
<Drup> Yeah
<rgrinberg> and i'm wondering if that will mae the syntax extension from jsc usable with it
<Drup> That would be amusing
<rgrinberg> Drup: so you want a witness on the re itself or the compiled re?
<Drup> the re itself
<Drup> Re.t
<Drup> well, actually ...
<Drup> whichever you prefer
<rgrinberg> hmm, I'll see. Although i'd like for something like this to be marked as experimental for now
<rgrinberg> and not part of the stable api :/
<Drup> Currently, unparsing doesn't need Tyre.compile, but I wouldn't mind changing that
freusque has quit [Quit: WeeChat 1.4]
rom1504 has quit [Ping timeout: 244 seconds]
alienbot has joined #ocaml
<Drup> I don't think it's that difficult, actually, I just didn't tried it
<Drup> rgrinberg: you have your challenge, I have high hopes :D
<rgrinberg> i still don't understand why it's a pre-requeiste though
<Drup> Ok, if we consider x = foo *> bar
<Drup> and I try to do Re.eval x v
<Drup> Tyre.eval*
<Drup> v represents bar, so I can do recursively "Tyre.eval bar v" for the right part
<Drup> but I need something for the left part, I can't just assume it's the empty string
sepp2k has joined #ocaml
<Drup> currently, I ask for a user provided string
<Drup> but you want it so that the user doesn't need to provide a string
ygrek_ has quit [Ping timeout: 244 seconds]
<Drup> so we need to figure out the string in some other way, which is probably not too hard on the tyre side, until we hit Tyre.regex, which is just a Re.t.
stux|RC-only has quit [Ping timeout: 244 seconds]
<Drup> and there is currently no way to figure out the string representing an Re.t
srcerer has quit [Remote host closed the connection]
stux|RC-only has joined #ocaml
rom1504 has joined #ocaml
rand__ has quit [Ping timeout: 250 seconds]
<rgrinberg> Hmm i see. again this unparsing crap is biting us
<Drup> I disagree on the "crap" qualifier :<
Xizor has joined #ocaml
yomimono has quit [Ping timeout: 250 seconds]
srcerer has joined #ocaml
stux|RC-only has quit [Max SendQ exceeded]
<Drup> (there is still going to be an issue with map)
stux|RC-only has joined #ocaml
seangrove has joined #ocaml
lolisa has joined #ocaml
Algebr` has quit [Ping timeout: 252 seconds]
ygrek_ has joined #ocaml
_2can has quit [Ping timeout: 276 seconds]
_2can has joined #ocaml
yomimono has joined #ocaml
FreeBirdLjj has joined #ocaml
dave24 has quit [Quit: leaving]
mattrepl has joined #ocaml
seangrove has quit [Ping timeout: 250 seconds]
chris2 has joined #ocaml
seangrove has joined #ocaml
seangrove has quit [Ping timeout: 265 seconds]
fraggle-boate has quit [Ping timeout: 264 seconds]
fraggle_ has quit [Ping timeout: 264 seconds]
fraggle_ has joined #ocaml
fraggle-boate has joined #ocaml
govg has quit [Ping timeout: 255 seconds]
SpaceSheep has quit [Quit: WeeChat 1.5]
rgrinberg has quit [Ping timeout: 244 seconds]
dario9 has quit [Quit: Konversation terminated!]
glennsl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
adelbertc has quit [Quit: Connection closed for inactivity]
_2can has quit [Ping timeout: 276 seconds]
_2can has joined #ocaml
glennsl has joined #ocaml
lolisa has quit [Quit: KVIrc 4.9.1 Aria http://www.kvirc.net/]
seangrove has joined #ocaml
orbifx has joined #ocaml
bruce_r has quit [Remote host closed the connection]
seangrove has quit [Ping timeout: 265 seconds]
rgrinberg has joined #ocaml
adelbertc has joined #ocaml
Sorella has quit [Quit: Connection closed for inactivity]
<sh0t> Hi, so I am working on a interpreter, and now I am trying to test it a bit. For this I was planning to use gramtest (https://github.com/codelion/gramtest). I am having soume doubts about it what do you guys use? quickcheck for these kind of things?
<sh0t> gramtest looks easy to use that why i am considering it.
minn has joined #ocaml
_2can has quit [Ping timeout: 240 seconds]
kakadu has joined #ocaml
_2can has joined #ocaml
Algebr` has joined #ocaml
_2can has quit [Ping timeout: 265 seconds]
_2can has joined #ocaml
zpe has joined #ocaml
AlexDenisov has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rand__ has joined #ocaml
Xizor has quit [Read error: Connection reset by peer]
seangrove has joined #ocaml
mattrepl has quit [Quit: mattrepl]
soupault has joined #ocaml
<orbifx> rgrinberg: lost you yesterday at some point
yomimono has quit [Quit: Leaving]
<orbifx> I noticed that even if someone manually enters ../foobar, opium autmatically redirects them to /foobar
<rgrinberg> orbifx: hmm. Would you mind making an issue so I can take a look? Won't be free until later tonight.
Submarine has joined #ocaml
Submarine has quit [Changing host]
Submarine has joined #ocaml
martinkl_ has joined #ocaml
<orbifx> why is it not expected behaviour?
seangrove has quit [Ping timeout: 252 seconds]
<rgrinberg> i think that should be expected, but i'd have to double check. Just to confirm you're talking about a route param right?
<rgrinberg> I don't quite recall adding any such redirection
octachron has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
orbifx1 has joined #ocaml
soupault has quit [Remote host closed the connection]
<orbifx> rgrinberg: yeah my route is "/:title"
<orbifx> and if I visit /../foobar it redirects to /foobar
gent00 has quit [Ping timeout: 264 seconds]
<orbifx> relogging, brb
orbifx has quit [Quit: WeeChat 1.5]
orbifx1 is now known as orbifx
<orbifx> back rgrinberg
<rgrinberg> yeah i wonder if routes accept any /'s in paths at all. but i don't recall opium doing such redirections
<rgrinberg> maybe its your browser?
<orbifx> yeah it is it seems
<orbifx> false alarm
<orbifx> going to try telnet
<rgrinberg> curl might be a better candidate :P
MercurialAlchemi has quit [Ping timeout: 276 seconds]
<orbifx> telnet did no redirection rgrinberg
_andre has quit [Quit: leaving]
<orbifx> but i wrote a simple substitution which should work for my case: https://github.com/orbifx/logarion/blob/master/src/web.ml#L20
<orbifx> although I'm going to upgrade that at some point and change it to removing any ../ patterns
<minn> Does writing 'let module <name> = <module>' inside a recursive let expression evaluate at each recursive call, or will it be factored out?
<minn> E.g., is one of these more efficient: <http://lpaste.net/186185>?
<flux> I wouldn't assume ocamlopt does that kind of lifting.
<flux> benchmark?
<octachron> minn, "let module ... = ... in" should be no different in term of optimisation than creating a record
<orbifx> rgrinberg: Actually i think there is no point writing this check I've written, need to go straight for ../
two_wheels has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
two_wheels has joined #ocaml
ydl has joined #ocaml
<minn> flux: I wasn't even thinking about compiler optimizations! Thanks.
<minn> octachron: Thanks - I suppose that's true. I was a little unclear on the semantics.
sepp2k has quit [Quit: Leaving.]
<orbifx> rgrinberg: I think curl does redirections too
seangrove has joined #ocaml
nore has joined #ocaml
seangrove has quit [Ping timeout: 255 seconds]
<ydl> i am having trouble building utop (on Linux). the ./configure step runs fine, but then I get an "unbound module Ocamlbuild_cppo" error when building myocamlbuild at the "make" (first step). the immediate source of the error is obvious: for some reason the setup-dev.exe generated by configure tries to build myocamlbuild without -package cppo_ocamlbuild. is this a problem with oasis (I am using 0.4.6 installed by opam)?
<ydl> sorry, 0.4.7*
cryyya has joined #ocaml
minn has quit [Ping timeout: 250 seconds]
<rgrinberg> orbifx: hmm, i'd like to test that
two_wheels has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
silver has quit [Quit: rakede]
zpe has quit [Remote host closed the connection]
nicholasf has joined #ocaml
nicholasf has quit [Remote host closed the connection]
martinkl_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
two_wheels has joined #ocaml
two_wheels has quit [Client Quit]
martinkl_ has joined #ocaml
nicholasf has joined #ocaml
seangrove has joined #ocaml
<orbifx> rgrinberg: I've opened an issue
nicholasf has quit [Remote host closed the connection]
<orbifx> ydl: are you sure your opam is setup correctly? (eval `opam conf env`)
<ydl> just ran it, same problem
<ydl> i am looking at the differences between my environment and the travis one (where the build seems to work) and the two i've seen is my version of oasis is later (0.4.7, but still from opam) and i'm using 4.03.0+flamda
<ydl> as opposed to 4.03.0
agarwal1975 has quit [Quit: agarwal1975]
Sorella has joined #ocaml
mcspud has joined #ocaml
<ydl> just tested it, turns out it was the oasis version. 0.4.7 introduces some breaking changes.
nicholasf has joined #ocaml
annoymouse has quit [Quit: Connection closed for inactivity]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
<ydl> should it be considered a bug with utop's build configuration (unlikely) or oasis (probably) if the new version of oasis does not build something? just wondering where to submit the bug report
Algebr` has quit [Ping timeout: 255 seconds]
martinkl_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
valexey has joined #ocaml
<valexey> Hi All.
<valexey> Is syntax for bigarray is embedded to language directly or it was done via library?
<valexey> I mean something like arr.{42} syntax.
Simn has quit [Quit: Leaving]
sh0t has quit [Remote host closed the connection]
ydl has quit [Ping timeout: 265 seconds]
al-damiri has quit [Quit: Connection closed for inactivity]
ydl has joined #ocaml
al-damiri has joined #ocaml
k1000 has quit [Ping timeout: 265 seconds]
k1000 has joined #ocaml
<Bluddy[m]> ydl: it's an OASIS bug. Unfortunately OASIS doesn't use github's issue system
<Bluddy[m]> you need to go here https://forge.ocamlcore.org/projects/oasis/ and register to file a bug report
<Bluddy[m]> it sucks
Algebr` has joined #ocaml
orbifx has quit [Ping timeout: 276 seconds]
Algebr` has quit [Ping timeout: 252 seconds]
minn has joined #ocaml
rand__ has quit [Quit: leaving]
kakadu has quit [Remote host closed the connection]
<octachron> valexey, the syntax a.{m} itself is part of the language
<octachron> however, the implementation of bigarray is done in a library
seangrove has quit [Ping timeout: 252 seconds]
<valexey> octachron, thx
sh0t has joined #ocaml