<d_bot>
<theangryepicbanana> does the higher version number scare you?
<d_bot>
<thangngoc89> Sadly there isn’t ES7
<d_bot>
<thangngoc89> Only ES2015+
<d_bot>
<aolko> TC39 ditched numbers for years
<d_bot>
<aolko> since es6
<d_bot>
<theangryepicbanana> I don't see how that affects the language
<d_bot>
<thangngoc89> To shame browsers not implementing new features fast enough
<d_bot>
<aolko> no, since ES4 was technically cancelled
<d_bot>
<theangryepicbanana> and yet it was still implemented
<d_bot>
<aolko> ehh..not as much of a standard
<d_bot>
<thangngoc89> My first browser was IE5
<d_bot>
<aolko> same
<d_bot>
<thangngoc89> Windows ME
<d_bot>
<aolko> 98
<d_bot>
<thangngoc89> With dial up
rgrinberg has joined #ocaml
<d_bot>
<thangngoc89> My first windows was 95
<d_bot>
<thangngoc89> But we didn’t have internet back then
<d_bot>
<aolko> remember those "funny cursors"?
<d_bot>
<aolko> that was js was used for
<d_bot>
<thangngoc89> Wiggling cursor
<d_bot>
<aolko> and it was absolutely fine
<d_bot>
<thangngoc89> Ditching ie for Firefox 2 was like opening a new chapter for browser the web
<d_bot>
<aolko> js script scope was bound to the current html page
<d_bot>
<thangngoc89> Well. Whatever you say, JS isn’t bound to html anymore. It generates HTML now
<d_bot>
<thangngoc89> But those quirks are still there
<d_bot>
<aolko> and that's not great
<d_bot>
<thangngoc89> node with id are available in global scope
<d_bot>
<thangngoc89> Unless you have use strict
<d_bot>
<aolko> i mean, i can't even opt out of es6
<d_bot>
<aolko> without breaking anything
<d_bot>
<Alistair> Make a time machine?
<d_bot>
<aolko> no, a js fork
<d_bot>
<thangngoc89> There are several js interpreter that isn’t in a browser
<d_bot>
<thangngoc89> Something starts with Be from the author of FFMPEG
<d_bot>
<NULL> Can you bring the subject back to OCaml ? Or go to #random🎲
<d_bot>
<aolko> sounds great, ↪#random🎲
<d_bot>
<NULL> (sorry to those who muted #general but not #random🎲 )
favonia has quit [Ping timeout: 240 seconds]
favonia has joined #ocaml
favonia has quit [Ping timeout: 255 seconds]
Stumpfenstiel has quit [Ping timeout: 265 seconds]
vicfred has joined #ocaml
favonia has joined #ocaml
Haudegen has quit [Ping timeout: 272 seconds]
favonia has quit [Ping timeout: 252 seconds]
favonia has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
gravicappa has joined #ocaml
zebrag has quit [Quit: Konversation terminated!]
favonia has quit [Ping timeout: 255 seconds]
favonia has joined #ocaml
ralu has quit [Ping timeout: 252 seconds]
ralu has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
favonia has quit [Ping timeout: 252 seconds]
favonia has joined #ocaml
rgrinberg has joined #ocaml
fluxm has quit [*.net *.split]
marinelli[m] has quit [*.net *.split]
daimrod has quit [*.net *.split]
nore has quit [*.net *.split]
daimrod has joined #ocaml
nore has joined #ocaml
favonia has quit [Ping timeout: 246 seconds]
mro has joined #ocaml
favonia has joined #ocaml
mro has quit [Ping timeout: 246 seconds]
hackinghorn has quit [Ping timeout: 252 seconds]
favonia has quit [Ping timeout: 246 seconds]
favonia has joined #ocaml
hackinghorn has joined #ocaml
favonia has quit [Ping timeout: 246 seconds]
favonia has joined #ocaml
Serpent7776 has joined #ocaml
<d_bot>
<Cyclomatic Complexity> I'm sure it's not trivial, but `ppx show` doesn't work in case where you define a type in a recursive module signature, and refer to it within the module to avoid copy-pasting it
vicfred has quit [Quit: Leaving]
favonia has quit [Ping timeout: 240 seconds]
favonia has joined #ocaml
labor[m] has quit [Quit: Bridge terminating on SIGTERM]
smondet[m] has quit [Quit: Bridge terminating on SIGTERM]
krnkktz has quit [Quit: Bridge terminating on SIGTERM]
inkbottle[m] has quit [Quit: Bridge terminating on SIGTERM]
schube[m] has quit [Quit: Bridge terminating on SIGTERM]
brettgilio has quit [Quit: Bridge terminating on SIGTERM]
krnkktz has joined #ocaml
fluxm has joined #ocaml
labor[m] has joined #ocaml
brettgilio has joined #ocaml
inkbottle[m] has joined #ocaml
smondet[m] has joined #ocaml
schube[m] has joined #ocaml
marinelli[m] has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jtck has quit [Read error: Connection reset by peer]
mro has joined #ocaml
mro has quit [Remote host closed the connection]
favonia has quit [Ping timeout: 246 seconds]
favonia has joined #ocaml
mro has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
mro has quit [Remote host closed the connection]
cedric has joined #ocaml
bartholin has joined #ocaml
mro has joined #ocaml
mro has quit [Remote host closed the connection]
favonia has quit [Ping timeout: 240 seconds]
favonia has joined #ocaml
favonia has quit [Ping timeout: 240 seconds]
favonia has joined #ocaml
favonia has quit [Ping timeout: 240 seconds]
favonia has joined #ocaml
yoctocell has joined #ocaml
Haudegen has joined #ocaml
mro has joined #ocaml
mro has quit [Client Quit]
favonia has quit [Ping timeout: 240 seconds]
favonia has joined #ocaml
favonia has quit [Ping timeout: 240 seconds]
favonia has joined #ocaml
favonia has quit [Ping timeout: 240 seconds]
jtck has joined #ocaml
bartholin has quit [Ping timeout: 272 seconds]
bartholin has joined #ocaml
bartholin has quit [Ping timeout: 258 seconds]
bartholin has joined #ocaml
bartholin has quit [Ping timeout: 268 seconds]
_tjr_ has quit [Quit: quitting]
_tjr_ has joined #ocaml
bartholin has joined #ocaml
mbuf has joined #ocaml
bartholin has quit [Ping timeout: 272 seconds]
bartholin has joined #ocaml
favonia has joined #ocaml
waleee has joined #ocaml
berberman_ has quit [Ping timeout: 240 seconds]
berberman has joined #ocaml
Stumpfenstiel has joined #ocaml
bartholin has quit [Ping timeout: 268 seconds]
bartholin has joined #ocaml
zebrag has joined #ocaml
mbuf has quit [Quit: Leaving]
mbuf has joined #ocaml
bartholin has quit [Ping timeout: 272 seconds]
bartholin has joined #ocaml
mro has joined #ocaml
bartholin has quit [Quit: Leaving]
mro has quit [Ping timeout: 255 seconds]
Tuplanolla has joined #ocaml
scoobybejesus has joined #ocaml
mbuf has quit [Quit: Leaving]
<scoobybejesus>
On freebsd 12.2-RELEASE, I am trying to get opam to install lame. The system has `/usr/local/include/lame/lame.h`, but from `opam install lame` i get `fatal error: 'lame/lame.h' file not found`. I looks like the path where it looks is auto-generated. I tried to set `export CPPFLAGS=-I/usr/local/include` and `export LDFLAGS=-L/usr/local/lib` and `export OCAMLMKLIB_FLAGS=-L/usr/local/lib`, but no change. I'm stuck
<scoobybejesus>
The very end of the output, of course, is: `The packages you requested declare the following system dependencies. Please make sure they are installed before retrying: lame`. But, like I said, the system has it. .. I tried to edit src/config/discover.ml, but it appears that's generated in each build automatically. Hm. I don't know ocaml.
hackinghorn has quit [Quit: Leaving]
rgrinberg has joined #ocaml
<scoobybejesus>
If relevant, what i'm trying to do is install liquidsoap. It is no longer in ports, so the recommended way is to use opam. I couldn't get the 4.08.0 compiler to compile on 13.0-RELEASE, so i tried 12.2. Then opam got hung up on taglib and mad, but after a pkg install taglib libmad, they installed fine with opam. Everything else installed fine. Lame is the last thing that opam is stuck on before it can install liquidsoap
<scoobybejesus>
after trying again after `export OCAMLLIB=-L/usr/local/include`, now I get https://bsd.to/njgD. Without that exported, it's: https://bsd.to/6rtx . I will lurk, in case anyone has tips for me. Thanks
<Absalom>
May I ask what is this d_bot thing? It looks like most messages are echoed from somewhere else... Another network?
<d_bot>
<g_w1> discord bot
<d_bot>
<g_w1> what irc is this?
<companion_cube>
it bridges Libera with discord
<companion_cube>
it's a mattermost instance iirc
<companion_cube>
ask @Bluddy
<d_bot>
<g_w1> #ocaml on libera?
<xenu>
yes
g-w1 has joined #ocaml
<g-w1>
hello from irc :)
<Absalom>
I understand, most users are on Matrix, then
g-w1 has left #ocaml [ill be on discord]
mro has joined #ocaml
gravicappa has quit [Ping timeout: 272 seconds]
<d_bot>
<RegularSpatula> Speaking of parsers writing parsers in OCaml, is there ever a good reason not to use Menhir? Like would you ever need to roll your own recursive descent parser for some reason?
<zozozo>
Well, it's easier to write nice syntax error messages with a handwritten recursive descent parser
<zozozo>
But I don't think it's worth the cost of writing it by hand instead of using Menhir
<zozozo>
And you can get good enough euros messages with menhir of you invest some time
<zozozo>
*error messages
<d_bot>
<theangryepicbanana> menhir is LR(1) iirc, which doesn't work with every language's grammar
<d_bot>
<theangryepicbanana> like for my language Star, it flat-out not possible because of certain precedence rules for operators and subscripts
<d_bot>
<g_w1> i'm doing that, to learn
<d_bot>
<Alistair> Yeah, LR(1) is a strict subset of all CFLs
<d_bot>
<Alistair> If you're using a CFL that isn't LR(1) then either use a greater lookahead e.g. LR(2), etc or parser combinators
<d_bot>
<theangryepicbanana> (not sure what I *actually* ended up with, but imma assume it's like LR(3) or something)
<d_bot>
<theangryepicbanana> as a side note, you could probably still use ocamllex for lexing without menhir
<d_bot>
<Alistair> It looks like a recursive decent parser, so probably LL(k) for some k I guess?
Serpent7776 has quit [Read error: Connection reset by peer]
Serpent7776 has joined #ocaml
yoctocell has quit [Ping timeout: 268 seconds]
mro has quit [Read error: Connection reset by peer]
mro_ has joined #ocaml
mro_ has quit [Quit: Leaving...]
<d_bot>
<theangryepicbanana> hmm maybe, but I didn't think it was LL
<d_bot>
<theangryepicbanana> oh the type syntax probably does that huh
<d_bot>
<Alistair> LL = Left to right parsing, leftmost CFG derivation (topdown parsing)
<d_bot>
<theangryepicbanana> yeah probably then
<d_bot>
<theangryepicbanana> probably wouldn't be if `A[B[C] ...]` wasn't valid syntax lmao
<d_bot>
<Alistair> Does `...` mean something like `A[B[C[ ... Y[Z] ...]]]`?
cedric has quit [Quit: Konversation terminated!]
Stumpfenstiel has quit [Ping timeout: 265 seconds]
<d_bot>
<theangryepicbanana> basically `B[C]` is a generic type `B` called with `C`, and `A[...]` is a static method call that looks something along the lines of this `sender=( <type> '[' | '[' <type> ) category=<type>? args=( <name> | ( <label> <expr> )+ ) ']'`
<d_bot>
<theangryepicbanana> it's ambiguous here because both rules can start with `A[B`, which isn't allowed with LR(1) since `<type> '[' <type> <deciding_token>` requires you to look ahead *2* rules instead of the 1 that LR(1) allows
Haudegen has quit [Ping timeout: 268 seconds]
Tuplanolla has quit [Quit: Leaving.]
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]