companion_cube changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 5.2.0 released: https://ocaml.org/releases/5.2.0 | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
Inline has joined #ocaml
wbooze has joined #ocaml
alfiee has joined #ocaml
<companion_cube> pretty weird, "Thread <n> killed on uncaught exception" doesn't seem to print backtraces :(
alfiee has quit [Ping timeout: 268 seconds]
Inline has quit [Ping timeout: 252 seconds]
wbooze has quit [Ping timeout: 248 seconds]
oisota has quit [Ping timeout: 272 seconds]
oisota has joined #ocaml
Tuplanolla has quit [Quit: Leaving.]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 245 seconds]
Haudegen has quit [Quit: Bin weg.]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 268 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 268 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
nirvdrum74 has quit [Quit: The Lounge - https://thelounge.chat]
nirvdrum74 has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
alfiee has joined #ocaml
agentcasey has quit [Quit: ZNC 1.10.x-git-38-e8c4cda0 - https://znc.in]
agentcasey has joined #ocaml
alfiee has quit [Ping timeout: 276 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 268 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 260 seconds]
bartholin has joined #ocaml
bartholin has quit [Quit: Leaving]
alfiee has joined #ocaml
<discocaml> <gooby_diatonic> F# is funny, you can add static methods to sums 🤣
alfiee has quit [Ping timeout: 248 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
tremon has joined #ocaml
Inline has joined #ocaml
Inline has quit [Remote host closed the connection]
Haudegen has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 260 seconds]
<discocaml> <adamjrios> Now, I am looking for a reliable collaborator who can assist me. If you are based in Europe, North America, or South America and are interested in a part-time or remote job, please contact me as soon as possible.
<discocaml> <darrenldl> @admin ^ adamjrios
<discocaml> <gooby_diatonic> How dare these spammers desecrate the holy camel lands 😠
<discocaml> <kinokasai> oh no I almost fell for it
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 245 seconds]
Inline has joined #ocaml
Inline has quit [Ping timeout: 268 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 265 seconds]
wbooze has joined #ocaml
Inline has joined #ocaml
Inline_ has joined #ocaml
wbooze_ has joined #ocaml
wbooze has quit [Ping timeout: 244 seconds]
Inline has quit [Ping timeout: 260 seconds]
alfiee has joined #ocaml
wbooze_ is now known as Inline
alfiee has quit [Ping timeout: 260 seconds]
Inline is now known as Guest236
Guest236 has quit [Killed (erbium.libera.chat (Nickname regained by services))]
Inline_ is now known as Inline
Inline is now known as wbooze
Guest236 has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 260 seconds]
Inline has joined #ocaml
Inline has joined #ocaml
Inline has quit [Killed (zirconium.libera.chat (Nickname regained by services))]
Guest2571 has joined #ocaml
hazelmeow has joined #ocaml
Guest2571 has quit [Remote host closed the connection]
wbooze is now known as Guest8926
Guest8926 has quit [Killed (zirconium.libera.chat (Nickname regained by services))]
Inline_ has joined #ocaml
Inline_ is now known as Inline
Guest236 has quit [Ping timeout: 268 seconds]
ygrek has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
mange has quit [Quit: Zzz...]
Inline has quit [Ping timeout: 245 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
Inline has joined #ocaml
wbooze has joined #ocaml
wbooze has quit [Quit: Leaving]
Inline has quit [Read error: Connection reset by peer]
Haudegen has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 248 seconds]
eax_ has joined #ocaml
infohazards has quit [Remote host closed the connection]
infohazards has joined #ocaml
<discocaml> <yawaramin> you mean instance methods?
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 244 seconds]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
infinity0 has quit [Ping timeout: 245 seconds]
infinity0 has joined #ocaml
euphores has quit [Quit: Leaving.]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
euphores has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
bartholin has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 248 seconds]
alfiee has joined #ocaml
wbooze has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
Anarchos has joined #ocaml
LainExperiments has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
tremon has quit [Quit: getting boxed in]
LainExperiments has quit [Quit: Client closed]
<discocaml> <barconstruction> I'd certainly be happy to be wrong about this. This page contains a simple example of an abstract data type, a "dirty string". https://okmij.org/ftp/Computation/lightweight-static-guarantees.html#dirty-string
<discocaml> <barconstruction> I tried to use F# to implement this and I was flummoxed.
<discocaml> <barconstruction> If you can find 20 or 30 minutes this weekend to implement the dirty string module using F# I would find it very illuminating.
<discocaml> <yawaramin> that looks fairly trivial to port to F# with an interface file
LainExperiments has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 260 seconds]
<discocaml> <barconstruction> I'll give it another shot and let you know if I have trouble. I might have had obstacles before because I was trying to enforce boundaries within the same file and fsi boundaries are between files.
<discocaml> <barconstruction> The first problem i'm running into is that F# distinguishes between type "abbreviations" like `type abc = int * string` and type "definitions", e.g. variant types. A type abbreviation cannot be hidden by a signature. That's a little annoying, that we have to pay a runtime cost for hiding the fact that a string is a string by putting it inside a variant.
<discocaml> <barconstruction> `type abc = int -> string` is also an "abbreviation" rather than a "definition" so that also has to be wrapped in a variant I guess
<discocaml> <barconstruction> I think that the "private" keyword is meaningless when used with type abbreviations which is also unfortunate. Only "defined" types such as records and variants can be marked private, the F# compiler ignores this annotation for type abbreviations
<discocaml> <yawaramin> can unbox it with `[<Struct>]` i think
<discocaml> <barconstruction> That's helpful
<discocaml> <yawaramin> like OCaml's `@@unboxed`
alfiee has joined #ocaml
<discocaml> <barconstruction> Do you know the syntax to annotate a type in an fsi file as being a value type? I tried `struct dirty_string` and `[<Struct>] type dirty_string`
<discocaml> <barconstruction> In the fsi file if I write `type dirty_string` it expects a normal type in the implementation not a value type
<discocaml> <alyxshang> When did the desecration happen?
alfiee has quit [Ping timeout: 260 seconds]
wbooze has quit [Quit: Leaving]
rgrinberg has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Anarchos has joined #ocaml
LainExperiments has quit [Quit: Client closed]
LainExperiments has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 252 seconds]
bartholin has quit [Quit: Leaving]
<discocaml> <._null._> Usually no more than a minute before admin gets pinged
alfiee has joined #ocaml
<discocaml> <alyxshang> What even happened????
Anarchos has quit [Quit: Vision[]: i've been blurred!]
alfiee has quit [Ping timeout: 252 seconds]
ygrek has quit [Remote host closed the connection]
Anarchos has joined #ocaml
Tuplanolla has joined #ocaml
alfiee has joined #ocaml
alfiee has quit [Ping timeout: 268 seconds]