<discocaml>
<rmu.> I recall seeing it I thought to myself who is this insane person who thought it’s a good idea to write a programming language in swift 😭
<discocaml>
<aurelian5014> compilers can be ported
<discocaml>
<aurelian5014> he was on the swift core team
<discocaml>
<rmu.> ah makes sense then
<discocaml>
<rmu.> I highly doubt it’ll be ported then 😂
<discocaml>
<aurelian5014> well if they finish the language they could self host
<discocaml>
<rmu.> I don’t feel very assured in languages where they push for exception based error handling. It’s weird because ocaml does have exceptions and they aren’t checked either but it’s just about community discipline when it comes towards using them
zor has quit [Read error: Connection reset by peer]
<discocaml>
<rmu.> I don’t feel very assured in languages where they push for exception based error handling by default. It’s weird because ocaml does have exceptions and they aren’t checked either but it’s just about community discipline when it comes towards using them
zor has joined #ocaml
<discocaml>
<rmu.> I saw they have something called rich errors coming soon I guess that’s nice
<discocaml>
<aurelian5014> who?
<discocaml>
<rmu.> kotlin
humasect has quit [Quit: Leaving...]
<discocaml>
<rmu.> for exceptional scenarios sure 😭 just not everywhere
<discocaml>
<rmu.> Never libraries
casastortaAway has quit [Quit: ZNC 1.10.1 - https://znc.in]
<discocaml>
<shalokshalom> I hate them, but the user asking for the language, is probably just used to it.
<discocaml>
<shalokshalom> I think everything besides indentation is violating DRY, and shouldnt be considered at any point.
<discocaml>
<shalokshalom> There are some cases, where using a closing keyword does make sense, especially in cases with nested semantics, such as `if-then-else`
<discocaml>
<shalokshalom> In my own language, I use `close` for the `else` semantics - and I require it to be written in any case, even if there is no `else` branch.
<discocaml>
<shalokshalom> I think everything besides indentation is violating DRY, and should be largely avoided.
marijan has left #ocaml [Error from remote client]
<discocaml>
<shalokshalom> This is to ensure clarity about scoping at any time. Readability comes first. 🙂
marijan has joined #ocaml
Frostillicus has quit [Ping timeout: 276 seconds]
Frostillicus has joined #ocaml
Frostillicus has quit [Ping timeout: 245 seconds]
casastortaAway has quit [Ping timeout: 248 seconds]
toastal has joined #ocaml
bewo001 has quit [Quit: WeeChat 3.5]
casastortaAway has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
Frostillicus has joined #ocaml
toastal has left #ocaml [#ocaml]
toastal has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
luc4 has joined #ocaml
<luc4>
Hello! I'm migrating a large application to dune where many modules have top-level functions like "let _" and "let ()". My understanding is that those functions are called when the module is initialized. Dune seems to be stripping those modules away. Is there a quick way to ensure every module is not stripped away and top-level functions are called?
<discocaml>
<yawaramin> iirc using the `-opaque` compilation flag has this effect. can you check if your project is using it?
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
Haudegen has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
<luc4>
yawaramin: it does not seem that param is anywhere in the old project. Can I use it in dune?
<discocaml>
<yawaramin> yeah but i am just to make sure it's not used
<luc4>
yawaramin: I wasl also looking at -linkall
toastal has left #ocaml [#ocaml]
<discocaml>
<deepspacejohn> FWIW, the general advice is to put side-effects in "init" functions that you can call from your executable module, e.g. in bin.ml : `let () = Module1.init () let () = Module2.init ()` etc. (I know rewriting all of that may not be practical for a large project, but just mentioning it for posterity.)
<luc4>
deepspacejohn: this is exactly what I was doing, but I stopped because there are way too many modules. It would take too much to do it.
marijan has left #ocaml [Error from remote client]
<luc4>
Actually, it may seem -linkall is helping.
Frostillicus has quit [Read error: Connection reset by peer]
<discocaml>
<yawaramin> huh, interesting. i thought dune automatically added references to modules in libraries
<luc4>
yawaramin: actually it does not seem to work for every module, so not good for me
Frostillicus has joined #ocaml
marijan has joined #ocaml
kurfen has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
marijan has left #ocaml [Disconnected: Replaced by new connection]
luc4 has quit [Quit: Konversation terminated!]
euphores has joined #ocaml
casastortaAway has quit [Ping timeout: 272 seconds]
casastortaAway has joined #ocaml
Frostillicus has quit [Remote host closed the connection]
Frostillicus has joined #ocaml
<discocaml>
<rudyrudy_81105> Hey everyone 👋 I’m thinking of building an AI coding assistant specifically for OCaml. Something that can help write, debug, and explain code in a more OCaml‑aware way than general tools like Cursor.
<discocaml>
<rudyrudy_81105> Curious, do you think something like this would actually be useful to the community? Or do most folks here feel existing tools are already good enough? Just trying to gauge if there’s real demand before I dive in.
<discocaml>
<deepspacejohn> See also: the #ai channel