<discocaml>
<astreamingcomesacrossthesky> Maybe not the best term to use but what I am thinking of is a case where you can block the web server's main thread with a promise and then define a new router and when you're ready deliver that new router to the promise and unblock the server thread
<discocaml>
<yawaramin> but i wouldn't call the first one syntax sugar
contificate has joined #ocaml
<discocaml>
<yawaramin> OCaml has very little syntax sugar. the only one i can think of, off the top of my head, is `let%foo x = ...` which expands to something like `[%foo let x = ...]`
Anarchos has quit [Quit: Vision[]: i've been blurred!]
<discocaml>
<billdick> it does have a lot of syntax sugar, list initialization, exception types, function initialization, etc... not to mention a lot of operations which is just pattern matching under the hood
<discocaml>
<softwaresirppi> Bruh there's too much sugarrr
<discocaml>
<octachron> There are more syntactic sugar than that: the array indexing operators, the various form of let opens, the value constraints, the list syntax, the various function or functor definition
<discocaml>
<yawaramin> yeah true. i just wouldn't say let-expressions are syntax sugar for a match expression
<discocaml>
<octachron> "A lot of operation being pattern matching" is not syntactic sugar however, and there is no list initialization.
<discocaml>
<billdick> list initialization is a common way to say it
<discocaml>
<yawaramin> punning is also syntax sugar of course
<discocaml>
<billdick> there's also a massive difference between "A lot of operation being pattern matching" and " lot of operations which is just pattern matching under the hood" lol
<discocaml>
<octachron> There are not (and the typing rules for let and `match` are only the same since OCaml 4.0)
<contificate>
Well, if you bind a refutable pattern in a let, you need to compile in control flow that will raise Match_failure - so you can see why people might consider it related.
<contificate>
Usually, I only accept "syntax sugar" as literally "it is elaborated to this form internally". If they just so happen to have similar lowerings, or can merely be expressed in terms of each other, I don't really know if I call it sugar.
<discocaml>
<billdick> yeah that's what I meant
neiluj has joined #ocaml
contificate has quit [Quit: Client closed]
bartholin has quit [Quit: Leaving]
<discocaml>
<gooby_clown> I wouldn't say programmer-implemented tranformations count as sugar
<discocaml>
<gooby_clown> Not language sugar anyways
<discocaml>
<gooby_clown> I need to write me some extension point ppxes, only wrote global tranformations so far
contificate has joined #ocaml
<discocaml>
<octachron> @yawaramin is right `let%foo` is a sugar (aka an alternative syntax that maps to the same AST node) for `[%foo let ...]` without any ppxs intervention.
<discocaml>
<billdick> it's not intrinsic to the language?
<discocaml>
<gooby_clown> Aaaah
<discocaml>
<gooby_clown> I missed the point completely, my bad 😆
<discocaml>
<billdick> did you?
<contificate>
Gooby, you don't appear to be on IRC - street credibility in tatters.
<discocaml>
<gooby_clown> Yeah, they meant the `let%foo ...` to `[%foo let ...]` conversion but I thought they meant the `let ...` to [output of the ppx] conversion which is also used as syntax sugar by some libs (think the ppx bind from lwt)
<discocaml>
<gooby_clown> contificate: Truly, it's all over for me. I must find an Android IRC client to recover from this
<discocaml>
<gooby_clown> Wish you could access other channels as well from the IRC
<discocaml>
<gooby_clown> I like to see what's going on in #ppx
<contificate>
Yeah, it's unfortunate
contificate has quit [Ping timeout: 256 seconds]
yosik has joined #ocaml
contificate has joined #ocaml
yosik has quit [Ping timeout: 265 seconds]
<discocaml>
<billdick> what's the base case of putting two mirrors in front of each other?
szkl has joined #ocaml
omniscient has joined #ocaml
omniscient has quit [Remote host closed the connection]
Anarchos has joined #ocaml
toastal has quit [Ping timeout: 272 seconds]
bartholin has joined #ocaml
neiluj has quit [Ping timeout: 252 seconds]
raskol has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
neiluj has joined #ocaml
szkl has quit [Quit: Connection closed for inactivity]
pi3ce has quit [Read error: Connection reset by peer]
pi3ce has joined #ocaml
chiselfuse has quit [Remote host closed the connection]
chiselfuse has joined #ocaml
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
<discocaml>
<davesnx> when you haven't put them 100% aligned
<discocaml>
<davesnx> so it leaks the % that it isn't
<discocaml>
<davesnx> so it leaks the % that it isn't, into a base case
germ_ has quit [Quit: ZNC 1.8.2+deb2ubuntu0.1 - https://znc.in]
spew has joined #ocaml
germ_ has joined #ocaml
contificate has quit [Ping timeout: 256 seconds]
Serpent7776 has quit [Ping timeout: 252 seconds]
neiluj has quit [Ping timeout: 252 seconds]
euphores has quit [Quit: Leaving.]
szkl has joined #ocaml
myrkraverk_ has joined #ocaml
myrkraverk__ has quit [Read error: Connection reset by peer]
euphores has joined #ocaml
<discocaml>
<softwaresirppi> Sometimes I wish all the documents to be of the same format.
<discocaml>
<softwaresirppi> Man pages, documentation, markdown, asciidoc... etc
<discocaml>
<softwaresirppi>
<discocaml>
<softwaresirppi> Just imagine, your editor will be setup for that format. Easy navigation and jumping links, uniform behaviour and functionality
<discocaml>
<softwaresirppi> So if I install an IRC client, I get street cred 😂 c'mon man either way I'm a noobie
<discocaml>
<softwaresirppi> So if I install an IRC client, I get street cred? 😂 c'mon man either way I'm a noobie
rynite has joined #ocaml
<discocaml>
<contificate> yeah, only way to get credibility on the mean streets
<companion_cube>
😏
Anarchos has joined #ocaml
Tuplanolla has joined #ocaml
<discocaml>
<billdick> humans can't agree on one thing
<discocaml>
<billdick> reasonable
<discocaml>
<billdick> does the universe implode if they were 100% aligned?
<discocaml>
<donderdag> i disagree 🙂
<discocaml>
<billdick> not a paradox 😔
<discocaml>
<donderdag> does the set of all agreements contain itself
<discocaml>
<billdick> does a set that includes all sets that don't include themselves contain itself.
<discocaml>
<billdick> does a set that includes all sets that don't include themselves contain itself?.
rynite has quit [Quit: WeeChat 4.4.1]
raskol has quit [Ping timeout: 260 seconds]
bibi_ has joined #ocaml
raskol has joined #ocaml
euphores has quit [Ping timeout: 276 seconds]
Serpent7776 has joined #ocaml
euphores has joined #ocaml
<discocaml>
<softwaresirppi> That's fine... Maybe I should preprocess formats and interchange formats
<discocaml>
<softwaresirppi> lol
olle_ has joined #ocaml
infinity0 has quit [Ping timeout: 252 seconds]
olle_ has quit [Ping timeout: 252 seconds]
infinity0 has joined #ocaml
raskol has quit [Ping timeout: 260 seconds]
Serpent7776 has quit [Ping timeout: 252 seconds]
bartholin has quit [Quit: Leaving]
Anarchos has quit [Quit: Vision[]: i've been blurred!]