Leonidas changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 4.13.0 released: https://ocaml.org/releases/4.13.0.html | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
vicfred has quit [Quit: Leaving]
bgs has quit [Ping timeout: 240 seconds]
Guest78 has joined #ocaml
Tuplanolla has quit [Quit: Leaving.]
<d_bot> <atlx> Why is this naming convention chosen ?
<d_bot> <atlx> in ocaml
<d_bot> <atlx> my best guess would be "because there aren't any actual conversions being done -- values are immutable, instead it's being used like a map"
<d_bot> <atlx> not sure if that's right
Guest78 has quit [Ping timeout: 256 seconds]
<ns12> DepartureAM: Did you write that? Looks like it was authored 11 years ago (according to GitHub).
<ns12> (By the way, how do I reply to a user on DIscord? I am on IRC.)
Guest78 has joined #ocaml
<d_bot> <PureFunctor> The bridge can't do "real" Discord replies where it pings the user + highlights the message.
<d_bot> <PureFunctor> From what I can tell at least—though maybe IRC convention should be fine
<ns12> PureFunctor: You don't get a ping on Discord when I reply to you like this?
perrierjouet has quit [Quit: WeeChat 3.4]
perrierjouet has joined #ocaml
<d_bot> <atlx> To ping people on discord: <@userid>
<d_bot> <atlx> Ex. With my ID <@ 285578743324606482>
<d_bot> <atlx> @atlx
<d_bot> <atlx> Not sure if you have access to id's from there
<d_bot> <PureFunctor> ns12: Nope, though this ^ maybe works?
<d_bot> <PureFunctor> User IDs are only accessible through Discord's UI though
<ns12> @atix Like this?
<d_bot> <atlx> Nop
<ns12> @285578743324606482 Or this?
<d_bot> <atlx> The last one
<d_bot> <atlx> Put <> around it
<ns12> <@285578743324606482> This?
<d_bot> <atlx> Yes
<d_bot> <atlx> That pinged me
unyu has joined #ocaml
<ns12> Wow, what a long string of digits. I don't think this method is suitable for general use :( Too bad.
<ns12> Where is the source code of d_bot?
<d_bot> <atlx> The reason for that is that users can have the same nicknames, as well as usernames (except their discrim), also they can change their usernames as well as their discrim. So the only constant thing is the ID
<d_bot> <atlx> Also any ideas about this?
pippijn has quit [Remote host closed the connection]
pippijn has joined #ocaml
<ns12> <@285578743324606482> Thanks for the explanation.
rgrinberg has joined #ocaml
Guest78 has left #ocaml [#ocaml]
Haudegen has quit [Quit: Bin weg.]
mbuf has joined #ocaml
waleee has quit [Ping timeout: 240 seconds]
Everything has joined #ocaml
<d_bot> <monk> can someone explain what the compiler version `ocaml-system` is for?
<d_bot> <monk> i have that installed as my `default` for opam and was wanting to upgrade since it's v4.11.1
chrisz has quit [Ping timeout: 240 seconds]
<d_bot> <PureFunctor> afaik, `ocaml-system` points to the OCaml installed through a version manager on Linux, though I'm not sure about other platforms
chrisz has joined #ocaml
<d_bot> <monk> lol i wonder what it's looking at then because my own system's package manager reports something else 😅
<d_bot> <monk> interesting that even `.opam/default/bin/ocaml --version` reports `v4.13.1`...
<d_bot> <monk> doesn't really matter but hmmm
<d_bot> <monk> but `opam switch set default && ocaml --version` yields `4.12.0` 😱
<d_bot> <monk> oh well, i will simply not touch that for now lol
vicfred has joined #ocaml
<d_bot> <cemerick> I would like to use multiple versions of the same package in a single application. Is there any e.g. dune workflow that will maybe rewrite top-level modules to include their version numbers, e.g. `Containers_3_6_0`?
pieguy128 has quit [Quit: ZNC 1.8.2 - https://znc.in]
Spawns has quit [Quit: WeeChat 3.0]
gravicappa has joined #ocaml
pieguy128 has joined #ocaml
spip has joined #ocaml
bobo_ has quit [Ping timeout: 250 seconds]
kaph has quit [Ping timeout: 268 seconds]
shawnw has joined #ocaml
Everything has quit [Quit: leaving]
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
hackinghorn has quit [Ping timeout: 268 seconds]
<d_bot> <NULL> On my system, the `bin` folder of my system switch (which has only `ocaml-system` installed) is empty; `ocaml` points to `/bin/ocaml` (may be `/usr/bin/ocaml` on other systems)
<d_bot> <NULL> Look at your `$PATH` to see if there is is shadowing of your switches (I had this since the switch `bin` folder was mentioned twice in mine)
hackinghorn has joined #ocaml
kakadu has joined #ocaml
Serpent7776 has joined #ocaml
<d_bot> <Continuation Calculus> Is https://tarides.com/blog/2019-05-09-an-introduction-to-ocaml-ppx-ecosystem still the recommended intro to writing PPXs?
<d_bot> <Continuation Calculus> (I've written many PPXs using ppx_deriving, but I now need some things that are not possible with derivers)
<d_bot> <monk> both `/bin/ocaml` and `/usr/bin/ocaml` say they're `4.12.0` so i don't know why `opam switch list` shows my default switch as `ocaml-system-4.11.1`
<d_bot> <monk> maybe that's just outdated? would the switch change if my package manager updated the system ocaml after my last X system package upgrades?
spip has quit [Quit: Konversation terminated!]
spip has joined #ocaml
Tuplanolla has joined #ocaml
pieguy128 has quit [Ping timeout: 256 seconds]
dalek-caan has joined #ocaml
<d_bot> <NULL> That the the version of the system ocaml and that of `ocaml-system` are desynchronised is expected : opam doesn't know that you upgraded the system ocaml until you notice it. `opam upgrade --unlock-base`
jlrnick has quit [Ping timeout: 268 seconds]
perrierjouet has quit [Quit: WeeChat 3.4]
perrierjouet has joined #ocaml
pieguy128 has joined #ocaml
pieguy128 has quit [Ping timeout: 256 seconds]
Haudegen has joined #ocaml
jlrnick has joined #ocaml
jlrnick has quit [Ping timeout: 240 seconds]
kaph has joined #ocaml
bartholin has joined #ocaml
bartholin has quit [Read error: Connection reset by peer]
gravicappa has quit [Ping timeout: 250 seconds]
kaph has quit [Read error: Connection reset by peer]
bartholin has joined #ocaml
mro has joined #ocaml
shawnw has quit [Ping timeout: 256 seconds]
mro has quit [Remote host closed the connection]
Serpent7776 has quit [Quit: leaving]
Serpent7776 has joined #ocaml
wyrd has quit [Ping timeout: 276 seconds]
gravicappa has joined #ocaml
mro has joined #ocaml
mro has quit [Remote host closed the connection]
waleee has joined #ocaml
mro has joined #ocaml
bartholin has quit [Ping timeout: 240 seconds]
bartholin has joined #ocaml
spip has quit [Read error: Connection reset by peer]
spip has joined #ocaml
mro has quit [Remote host closed the connection]
<d_bot> <monk> okay so this is getting me somewhere. the only problem is it wants to update (read: install) my system's version of emacs when i do not want that since i build & run emacs from trunk
<d_bot> <monk> it's for the opam package `emacs-conf`
<d_bot> <monk> is there a way to sidestep that?
<d_bot> <NULL> A package from opam needs `emacs` ?
<d_bot> <monk> yeah i'm confused by it too
<d_bot> <NULL> I'm curious
<d_bot> <monk> opam is smart enough to know what it needs. im running arch and it tells you to install emacs via `pacman -Su`.
<d_bot> <NULL> The standard way would be to install a dummy `emacs` package, so that `apt` doesn't try to install it from the standard repo (substitude `apt` for your package manager)
<d_bot> <monk> why `conf-emacs` needs emacs is beyond me though
<d_bot> <monk> hmm i've never had to do that, let me look into it
<d_bot> <NULL> `conf-*` packages are dummies for external software (emacs here)
mro has joined #ocaml
<d_bot> <monk> i'm assuming that using it's other suggestion of `You can retry with '--assume-depexts' to skip this check` is potentially a very bad idea?
<d_bot> <monk> emacs was the only thing it was asking for
dalek-caan has quit [Quit: dalek-caan]
<d_bot> <monk> hmm, so it looks like when i first started messing with ocaml that i installed tuareg-mode via opam and that's what is pulling it in. i suspect it's probably from `user-setup`. so i wonder if i can just uninstall that and be done with the issue.
<d_bot> <monk> this still doesn't answer why it wants to install emacs and didn't last time? idk
<d_bot> <monk> oh, it didn't like that lol
<d_bot> <monk> `* Missing dependency: - ocaml-system = 4.11.1`
mro has quit [Remote host closed the connection]
<d_bot> <NULL> Did you not add `--unlock-base` ?
<d_bot> <monk> for `opam uninstall user-setup`? no. would that be okay here given the intention?
<d_bot> <NULL> It's probably going to always complain that the version of `ocaml-system` is wrong I think
mro has joined #ocaml
<d_bot> <NULL> A thing you could do is `opam switch set-invariant "ocaml-system"`
<d_bot> <NULL> That way it won't complain and simply upgrade when system `ocaml` is updated by `pacman`
<d_bot> <monk> i think that is the way forward
<d_bot> <monk> i use arch, it's always going to be aggressive like this for better and worse etc
<d_bot> <NULL> So do I (manjaro), it has worked nicely until now, granted I don't use the system switch often. I even removed the version requirement in my active switch, that way opam upgrades it when it can
<d_bot> <monk> going to try and see what happens when i tell it to ignore emacs
<d_bot> <monk> i'll remove `user-setup` afterwards if it goes well
<d_bot> <NULL> If the ocaml version mismatch doesn't complain, you should be able to uninstall user-setup without messing with emacs
<d_bot> <monk> ... `num` failed at `make findlib-install` which feels odious but everything else thus far has installed just fine (500/547)
<d_bot> <monk> here's the paste for the single error output but it does look like my ocaml-system managed to upgrade after `opam upgrade --update-invariant` (that's the new flag for `--unlock-base`)
<d_bot> <monk>
<d_bot> <monk> from what i can tell, it failed because Num was already installed (?) lol
<d_bot> <monk> i've successfully uninstalled `opam unintsall user-setup tuareg conf-emacs` now too
<d_bot> <monk> well, i think things are fine for opam's system switch, knock on wood
<d_bot> <monk> thanks for helping me figure that out
bartholin has quit [Ping timeout: 240 seconds]
<d_bot> <monk> and `opam switch list` shows `default` to now be `ocaml-system.4.13.1`
<d_bot> <monk> 🥳
kakadu has quit [Remote host closed the connection]
spip has quit [Ping timeout: 240 seconds]
bobo_ has joined #ocaml
rgrinberg has joined #ocaml
mro has quit [Remote host closed the connection]
bartholin has joined #ocaml
perrierjouet has quit [Quit: WeeChat 3.4]
mbuf has quit [Quit: Leaving]
perrierjouet has joined #ocaml
kaph has joined #ocaml
mro has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
perrierjouet has quit [Ping timeout: 256 seconds]
mro has quit [Remote host closed the connection]
jlrnick has joined #ocaml
<d_bot> <antron> is there a way to print to stdout or stderr while also using ppx_expect? i.e. have a part of the output that is not captured by ppx_expect
<rgrinberg> perhaps surround the part you want discarded with dup2?
bartholin has quit [Ping timeout: 256 seconds]
mro has joined #ocaml
<d_bot> <antron> that might work (note i want it printed to the terminal, not discarded, but i could probably get that somehow)
<d_bot> <antron> getting by with copying the code out to an example for now
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
mro has quit [Remote host closed the connection]
wyrd has joined #ocaml
perrierjouet has joined #ocaml
bartholin has joined #ocaml
rgrinberg has joined #ocaml
<d_bot> <mk-fg> If you have or can have input stream/fd as pipe (e.g. stdin), might want to avoid dup2, as iirc that shouldn't duplicate actual data on these
gravicappa has quit [Ping timeout: 240 seconds]
azimut has quit [Ping timeout: 276 seconds]
pieguy128 has joined #ocaml
jlrnick has quit [Ping timeout: 250 seconds]
mro has joined #ocaml
olle has joined #ocaml
<olle> Is Bolt still the goto unit test lib for OCaml?
<olle> Oh no
<olle> OUnit?
vicfred has quit [Quit: Leaving]
<d_bot> <Valentin> I'd say Alcotest
<olle> Yeah?
<olle> Gonna read
Serpent7776 has quit [Remote host closed the connection]
<olle> `let%test = ...`
mro has quit [Read error: Connection reset by peer]
mro_ has joined #ocaml
Anarchos has joined #ocaml
<olle> Maybe both alcotest and inline test is an idea...
bartholin has quit [Quit: Leaving]
azimut has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
<d_bot> <RegularSpatula> ppx_expect and cram tests are also awesome if you’re into that kind of testing
mro_ has quit [Quit: Leaving...]
<olle> Got stuck in dune config :(
<olle> But it's late now, I'll continue next week. Thanks tho :)