adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.07.0 release notes: https://caml.inria.fr/pub/distrib/ocaml-4.07/notes/Changes | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml | Due to ongoing spam, you must register your nickname to talk on the channel
zmt00 has joined #ocaml
Fare has joined #ocaml
barcabuona has quit [Ping timeout: 252 seconds]
JimmyRcom has joined #ocaml
zmt00 has quit [Read error: Connection reset by peer]
bronsen has quit [Ping timeout: 250 seconds]
so has joined #ocaml
zmt00 has joined #ocaml
Fare has quit [Ping timeout: 240 seconds]
jbrown has quit [Ping timeout: 252 seconds]
jbrown has joined #ocaml
bronsen has joined #ocaml
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
kvda has joined #ocaml
kvda has quit [Client Quit]
roygbiv has joined #ocaml
zmt01 has joined #ocaml
kvda has joined #ocaml
JimmyRcom has quit [Ping timeout: 260 seconds]
zmt00 has quit [Disconnected by services]
zmt01 has quit [Client Quit]
superbaloo14 has joined #ocaml
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
superbaloo14 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
kvda has joined #ocaml
silver_ has quit [Read error: Connection reset by peer]
Kyth12 has joined #ocaml
Kyth12 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Colleen14 has joined #ocaml
Colleen14 has quit [Remote host closed the connection]
roygbiv has quit [Quit: ™]
kleimkuhler has joined #ocaml
tormen has joined #ocaml
pierpal has joined #ocaml
tormen_ has quit [Ping timeout: 252 seconds]
kvda has joined #ocaml
pierpal has quit [Read error: Connection reset by peer]
jao has quit [Ping timeout: 252 seconds]
erkin has joined #ocaml
almack has joined #ocaml
almack has quit [Remote host closed the connection]
mfp has quit [Ping timeout: 264 seconds]
Fare has joined #ocaml
eeva8 has joined #ocaml
eeva8 has quit [Remote host closed the connection]
erkin has quit [Remote host closed the connection]
lostman has quit [Quit: Connection closed for inactivity]
ygrek_ has joined #ocaml
kleimkuhler has quit [Quit: kleimkuhler]
kleimkuhler has joined #ocaml
_whitelogger has joined #ocaml
Fare has quit [Quit: Leaving]
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
kvda has joined #ocaml
kvda has quit [Client Quit]
kleimkuhler has quit [Quit: kleimkuhler]
kvda has joined #ocaml
kvda has quit [Client Quit]
al-damiri has quit [Quit: Connection closed for inactivity]
rodd8 has joined #ocaml
rodd8 has quit [Remote host closed the connection]
jimt has quit [Quit: WeeChat 1.9.1]
kvda has joined #ocaml
kvda has quit [Client Quit]
windslown has joined #ocaml
jimt has joined #ocaml
windslown has quit [Ping timeout: 252 seconds]
Haudegen has joined #ocaml
Otyg15 has joined #ocaml
Otyg15 has quit [Remote host closed the connection]
freyr69 has joined #ocaml
sagotch has joined #ocaml
orbifx1 has joined #ocaml
bartholin has joined #ocaml
orbifx1 has quit [Ping timeout: 252 seconds]
jaar has joined #ocaml
kvda has joined #ocaml
pierpal has joined #ocaml
jaar has quit [Quit: Leaving]
pierpal has quit [Ping timeout: 240 seconds]
manas has joined #ocaml
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
bartholin has quit [Remote host closed the connection]
manas has quit [Remote host closed the connection]
zlsyx has quit [Read error: Connection reset by peer]
zlsyx_ has joined #ocaml
manas has joined #ocaml
manas has quit []
ziyourenxiang has joined #ocaml
mfp has joined #ocaml
kajus21 has joined #ocaml
kajus21 has quit [Ping timeout: 246 seconds]
noitakomentaja has joined #ocaml
zsmithnyc14 has joined #ocaml
zsmithnyc14 has quit [Remote host closed the connection]
dmiles has quit [Ping timeout: 245 seconds]
zlsyx_ has quit [Quit: Leaving...]
dmiles has joined #ocaml
erkin has joined #ocaml
ygrek_ has quit [Ping timeout: 272 seconds]
<def`> you cannot produce deadlock with the monadic interface
kvda has joined #ocaml
JimmyRcom has joined #ocaml
Haudegen has quit [Remote host closed the connection]
apostolis has joined #ocaml
<apostolis> Hello, in haskell, if one calls a function f with the same inputs twice, it is only executed once. Is this also true for OCaml if there are no side effects?
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<def`> no
kvda has joined #ocaml
<ZirconiumX> apostolis: it gets called twice
jao has joined #ocaml
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
kvda has joined #ocaml
kvda has quit [Client Quit]
kvda has joined #ocaml
<apostolis> ZirconiumX : Noo!
<ZirconiumX> Haskell has very different evaluation semantics to OCaml
ggole has joined #ocaml
<ZirconiumX> Haskell is lazy evaluated, OCaml is eager evaluated, apostolis
<lyxia> even in Haskell it's not true that calling a function with the same inputs twice doesn't get it reexecuted.
<lyxia> what's guaranteed is that the result is the same.
<apostolis> Well , aren't there optimizations that add a let statement so that eager evaluation does not create that problem?
<lyxia> you don't always want that though, and that optimization only works on subexpressions that are close together
JimmyRcom has quit [Ping timeout: 244 seconds]
<ZirconiumX> Also remember that computers are naturally eager machines
<ggole> Hmm. Merlin got a type search feature, but it has some pretty rough corners.
Guest8911 has joined #ocaml
Mibix28 has joined #ocaml
styler2go has joined #ocaml
Guest8911 has quit [Remote host closed the connection]
styler2go has quit [Remote host closed the connection]
Mibix28 has quit [Remote host closed the connection]
Haudegen has joined #ocaml
<apostolis> It seems easy to perform the above optimization. Maybe I will do it myself. (I am working on the malfunction backend, ie flambda)
<xvilka> seems that some Sys/Unix functions change the current directory value (even if I don't change it myself). Is this intended?
<xvilka> Or I should to find and kill this?
Chon_Lee29 has joined #ocaml
Chon_Lee29 has quit [Ping timeout: 272 seconds]
<xvilka> https://repology.org/metapackage/opam/versions ... Ubuntu (as all Debian-based distributions) will probably not update opam in 10 years
<xvilka> what surprises me - why Fedora seems so sloppy on updating it - it is supposed to be "bleeding edge" after all
spew has joined #ocaml
apostolis has quit [Quit: WeeChat 1.6]
pierpal has joined #ocaml
pita10 has joined #ocaml
silver has joined #ocaml
jaar has joined #ocaml
pita10 has quit [Remote host closed the connection]
pierpal has quit [Read error: Connection reset by peer]
pierpal has joined #ocaml
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jbrown has quit [Ping timeout: 240 seconds]
jbrown has joined #ocaml
freyr69 has quit [Remote host closed the connection]
<def`> ggole: I am happy to address implementation problems but I have no time for looking at editor's integration
<ggole> def`: there's an editor problem indeed, but it's also raising Not_found for unbound names
sleepnap has joined #ocaml
barcabuona has joined #ocaml
wildsebastian_ has left #ocaml [#ocaml]
wildsebastian has joined #ocaml
KeyJoo has joined #ocaml
erkin has quit [Remote host closed the connection]
pierpal has quit [Read error: Connection reset by peer]
pierpal has joined #ocaml
pierpal has quit [Read error: Connection reset by peer]
pierpal has joined #ocaml
noitakomentaja has quit [Ping timeout: 252 seconds]
JimmyRcom has joined #ocaml
Haudegen has quit [Remote host closed the connection]
doonz2 has joined #ocaml
doonz2 has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
pierpal has quit [Read error: Connection reset by peer]
pierpal has joined #ocaml
jao has quit [Ping timeout: 272 seconds]
sagotch has quit [Quit: Leaving.]
barcabuona has quit [Ping timeout: 245 seconds]
Jesin has quit [Quit: Leaving]
JimmyRcom has quit [Ping timeout: 240 seconds]
Jesin has joined #ocaml
FreeBirdLjj has quit []
bartholin has joined #ocaml
barcabuona has joined #ocaml
FreeBirdLjj has joined #ocaml
jnavila has joined #ocaml
Cthalupa15 has joined #ocaml
moei has quit [Quit: Leaving...]
Cthalupa15 has quit [Remote host closed the connection]
jnavila has quit [Ping timeout: 246 seconds]
jnavila_ has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 264 seconds]
jnavila_ has quit [Ping timeout: 240 seconds]
orbifx1 has joined #ocaml
pierpal has quit [Ping timeout: 252 seconds]
pierpal has joined #ocaml
chazlever24 has joined #ocaml
Jesin has quit [Quit: Leaving]
pierpal has quit [Ping timeout: 246 seconds]
chazlever24 has quit [Ping timeout: 250 seconds]
jnavila_ has joined #ocaml
jaar has quit [Quit: Leaving]
ggole has quit [Quit: ggole]
Jesin has joined #ocaml
barcabuona has quit [Ping timeout: 240 seconds]
jnavila_ has quit [Ping timeout: 246 seconds]
baboum has joined #ocaml
jao has joined #ocaml
noitakomentaja has joined #ocaml
gareppa has joined #ocaml
gareppa has quit [Client Quit]
caw_________ has quit [Quit: Connection closed for inactivity]
pierpal has joined #ocaml
kakadu has joined #ocaml
donryudragoni has joined #ocaml
roygbiv has joined #ocaml
jack5638 has quit [Ping timeout: 272 seconds]
baboum has quit [Quit: WeeChat 2.2]
caseypme[m] has left #ocaml [#ocaml]
jack5638 has joined #ocaml
pierpal has quit [Read error: Connection reset by peer]
pierpal has joined #ocaml
KeyJoo has quit [Ping timeout: 246 seconds]
quipa has joined #ocaml
neatonk has quit [Ping timeout: 244 seconds]
barcabuona has joined #ocaml
jnavila_ has joined #ocaml
pierpal has quit [Read error: Connection reset by peer]
pierpal has joined #ocaml
bartholin has quit [Remote host closed the connection]
muelleme has joined #ocaml
roygbiv has quit [Quit: ™]
donryudragoni has quit [Quit: WeeChat 2.2]
pmetzger has joined #ocaml
spew has quit []
muelleme has quit [Ping timeout: 252 seconds]
kvda has joined #ocaml
kvda has quit [Client Quit]
jnavila_ has quit [Remote host closed the connection]
TheSeeker4 has joined #ocaml
TheSeeker4 has quit [Remote host closed the connection]
rory13 has joined #ocaml
rory13 has quit [Remote host closed the connection]
kvda has joined #ocaml
kvda has quit [Client Quit]
ReimuHakurei2 has joined #ocaml
orbifx1 is now known as orbifx
<orbifx> What's the nicest method for writing parsers in OCaml just now? Avoiding extensions as much as possible
moei has joined #ocaml
<companion_cube> menhir?
<companion_cube> (or, for binary stuff, I suppose it's angstrom)
<orbifx> no, text
<orbifx> so menhir? does that require ppx or other language extensions?
<companion_cube> ocamllex + menhir should be the easiest then, I think
<companion_cube> no, but it requires a `menhir` stanza in dune
<orbifx> how so?
<orbifx> or why so?
<companion_cube> it's a code generator
<companion_cube> https://github.com/c-cube/zipperposition/tree/master/src/parsers as an example (multiple modules, but `.mll` are lexers iwth ocamllex; `.mly` are menhir files)
<orbifx> so there is a language extention?
<orbifx> `rule token = parse`
<orbifx> rule?
<companion_cube> this is ocamllex, it defines how `token` behaves
<companion_cube> (`token` is a function from the lexbuf to some sum type)
<orbifx> k
<orbifx> is there a noticable and obvious gain from using those, versus writing something in pure plain caml?
ReimuHakurei2 has quit [Ping timeout: 245 seconds]
<orbifx> (given your experience with it)
<lyxia> they are languages designed for parsing
<companion_cube> orbifx: menhir is absolutely awesome for parsing anything that has a non trivial grammar (typically with recursion)
sleepnap has quit [Remote host closed the connection]
<companion_cube> ocamllex is also pretty cool for tokenizing when you want to remove whitespace, comments, etc.
<companion_cube> writing these in pure OCaml is, imho, a PITA
<companion_cube> so if you want to parse something like OCaml or json, i'd really recommend that (although in json most of the work is doing the lexing)
<orbifx> lyxia: such systems have a curve where they are not worth it if the aim is simple
<orbifx> companion_cube: thanks
<companion_cube> sure, depends on whether you think you're going to write several parsers, or just one
<orbifx> I'm thinking of writing an Org-Mode parser
<companion_cube> the cost of re-learning is something to consider (e.g for me it's an annoyance with LaTeX)
<companion_cube> sounds ambitious :D
<orbifx> should be ok, will start with common and plain stuff, but it does have structures..
<orbifx> Does ocamllex and menhir bring rigour into their declerations? (are the logical constrains etc?)
troycurtisjr8 has joined #ocaml
<companion_cube> menhir will tell you if your grammar is ambiguous
<_y> companion_cube, LaTeX vs what ?
<companion_cube> _y: just in general, when I have to use it I always have to relearn too much :(
<_y> i was hoping you would give me an alternative to that nightmare :-(
troycurtisjr8 has quit [Remote host closed the connection]
<companion_cube> I don't think there exists any credible alternative
<companion_cube> just the set of packages, support from publications, etc. nothing can hope to replace LaTeX I think
<Fardale> I heard of pandoc but never look at it
<companion_cube> (except maybe by compiling to LaTeX)
<_y> yeah
<companion_cube> as soon as you want to use non trivial LaTeX packages, I doubt pandoc can compete
<_y> there is patholine but i guess no one uses it, and i am not sure it addresses the issues i really have with (la)tex
<steenuil> I wonder if it's even possible to fix LaTeX while still maintaining compatibility with all the packages or if it's just defective by design
Leo`5 has joined #ocaml
<_y> defective by design
<_y> you have no hope of parsing tex without compiling it
Leo`5 has quit [Remote host closed the connection]
bren201026 has joined #ocaml
<_y> thus you have no hope of doing anything to change latex
<_y> (e.g. make the compiler parallel, or whatever)
<steenuil> things like having to run the latex command thrice to obtain some outputs are baffling but I wouldn't even know where to start to fix it
<_y> indeed
<_y> the short answer is called latexmk
<_y> but it doesn’t solve the fact that the compiler outputs bazillions of garbage
<steenuil> like, there's this thing to write ocaml documentation in latex and output HTML called hevea that is used to build the ocaml manual
<_y> which you cannot filter, because the conceptors did not follow the convention of stdout vs. stderr
pmetzger has quit []
<_y> and that’s too late to fix it now because packages print their own errors and, as a consequence of what precedes, do not know about stderr
<steenuil> and it actually recompiles the output by itself a few times until it reaches a point where the previous output and the current one are the same
bren201026 has quit [Remote host closed the connection]
<steenuil> yup it's just a pile of faults you're never gonna get to the bottom of
<orbifx> I think some markdown packages with embedable latex is the way forward for industrial-grade publications. Asciidoc, sphinx and some others look viable if one doesn't care about protocol too much companion_cube _y steenuil
<_y> and you get stuck in that state because any tex guru will say you that everything is perfect and meant like that and that knuth’s tex compiler is the most beautiful code they have ever read in their lifes
<_y> which may be true if your goal is to have your coffee machine compile tex
<orbifx> companion_cube: thanks for the insight, will give them two a go, probably worth learning them and avoiding reinventing parsing and other logic
<_y> orbifx, would you be able to write e.g. a PhD thesis with Markdown + embedded LaTeX ?
muelleme has joined #ocaml
<steenuil> markdown is not very extensible, and if you're gonna compile to latex anyway you haven't really solved the issue...
<_y> steenuil, we may turn (la)tex into the assembly language of typesetting, just as javascript is the assembly language of the www
<_y> as we ocaml people surely consider it ;-)
<steenuil> but then you're still gonna have to drop down to latex to fix issues and use more complex packages
<_y> back to the topic, do i understand correctly that angstrom is meant to parse binary files ?
<orbifx> _y: can't say if I could for certain. Latex wasn't too much of an issue for me, although I didn't like the size of the dependencies.
muelleme has quit [Ping timeout: 245 seconds]
digitalw00t18 has joined #ocaml
<steenuil> isn't it supposed to be more general purpose than that?
<steenuil> angstrom I mean
<companion_cube> orbifx: markdown with embedded latex? hmm
<companion_cube> you'd need a good way to call macros directly in markdown for that…
<orbifx> I can't recall confidently which converter supported that, pandoc was probably the one
digitalw00t18 has quit [Read error: Connection reset by peer]
<orbifx> _y: take a look at the above link.
kakadu has quit [Remote host closed the connection]
derhass6 has joined #ocaml
derhass6 has quit [Read error: Connection reset by peer]
bertbob1 has joined #ocaml
<_y> maybe some day, someone really charismatic (for example someone with a lot of money ;-) will say “let’s move to X” and launch a trend of writing X bindings for al major LaTeX packages
<steenuil> maybe somebody someday will make it their mission to rid the world of latex
<_y> we just need a cool name for X
<steenuil> and there will be much rejoicing
<_y> let’s call it CaoutChouC
bertbob1 has quit [Remote host closed the connection]
<steenuil> oh so that's how you spell that
pmetzger has joined #ocaml
Denommus has joined #ocaml
orbifx has quit [Ping timeout: 264 seconds]
neatonk has joined #ocaml
yushyin12 has joined #ocaml
pmetzger has quit []
orbea29 has joined #ocaml
neatonk has quit [Ping timeout: 240 seconds]
yushyin12 has quit [Remote host closed the connection]
orbea29 has quit [Remote host closed the connection]
barcabuona has quit [Ping timeout: 252 seconds]
orbifx has joined #ocaml
orbifx has quit [Client Quit]
signal1125 has joined #ocaml
signal1125 has quit [Remote host closed the connection]
kvda has joined #ocaml
noitakomentaja has quit [Ping timeout: 252 seconds]
muelleme has joined #ocaml
muelleme has quit [Ping timeout: 240 seconds]
Martchus15 has joined #ocaml
earnestly22 has joined #ocaml
Martchus15 has quit [K-Lined]
earnestly22 has quit [Read error: Connection reset by peer]
lostman has joined #ocaml
dtroyer14 has joined #ocaml
quipa has quit [Quit: Leaving]
dtroyer14 has quit [Remote host closed the connection]