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/
_whitelogger has joined #ocaml
tomku has quit [Ping timeout: 245 seconds]
tomku|two has joined #ocaml
mange has joined #ocaml
<discocaml> <dubious245> All right credit where credit is do as much as I complained about dune it is nicer to use than sbt+scala.
<discocaml> <dubious245> Due*
<discocaml> <dubious245> Now I guess I need to look into how easy it is to call into a c++ library from ocaml or just slog through writing a c++ application.
<discocaml> <yawaramin> it's certainly faster than sbt+Scala 😅
<discocaml> <dubious245> I was like I got java and opencv already working in this folder over here how hard can scala+sbt be?
<discocaml> <yawaramin> famous last words
<discocaml> <dubious245> Doesn't help that opencv getting started has depreciated and crossed out links to Java resources. Which isn't a good sign.
<discocaml> <dubious245> Doesn't help that opencv's getting started has depreciated and crossed out links to Java resources. Which isn't a good sign.
<discocaml> <yawaramin> i'd say Scala Native might be a better comparison to OCaml
<discocaml> <dubious245> It looked like a neat language and I wanted to check it out.
troydm has joined #ocaml
<discocaml> <dubious245> But above checking out a new language I want to get back into my computer vision stuff. Since last time slogging through c++ made me wander off and do something else. :mcderpy:
<discocaml> <dubious245> Scala or Ocaml. Hmmm.
<discocaml> <dubious245> -# (probably not the place to air that pondering.)
wingsorc has quit [Quit: Leaving]
polykernel has quit [Remote host closed the connection]
polykernel has joined #ocaml
myrkraverk_ has joined #ocaml
myrkraverk has quit [Ping timeout: 248 seconds]
myrkraverk has joined #ocaml
myrkraverk_ has quit [Ping timeout: 276 seconds]
myrkraverk_ has joined #ocaml
myrkraverk has quit [Ping timeout: 252 seconds]
hsw has quit [Quit: Leaving]
hsw has joined #ocaml
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
nirvdrum741 has quit [Quit: The Lounge - https://thelounge.chat]
nirvdrum741 has joined #ocaml
myrkraverk has joined #ocaml
myrkraverk_ has quit [Ping timeout: 272 seconds]
bartholin has joined #ocaml
mange has quit [Quit: Quittin' time!]
Frostillicus has joined #ocaml
Frostillicus has quit [Client Quit]
Frostillicus has joined #ocaml
Haudegen has joined #ocaml
Frostillicus has quit [Ping timeout: 276 seconds]
bartholin has quit [Quit: Leaving]
Frostillicus has joined #ocaml
toastal has joined #ocaml
kurfen has quit [Ping timeout: 276 seconds]
toastal has quit [Ping timeout: 260 seconds]
kurfen has joined #ocaml
toastal has joined #ocaml
Frostillicus has quit [Ping timeout: 252 seconds]
Frostillicus has joined #ocaml
toastal has quit [Ping timeout: 276 seconds]
Frostillicus has quit [Ping timeout: 276 seconds]
spynxic has quit [Ping timeout: 276 seconds]
spynxic has joined #ocaml
myrkraverk_ has joined #ocaml
myrkraverk has quit [Ping timeout: 245 seconds]
myrkraverk has joined #ocaml
myrkraverk_ has quit [Ping timeout: 248 seconds]
Everything has joined #ocaml
boozec has joined #ocaml
boozec has quit [Client Quit]
Haudegen has quit [Quit: Bin weg.]
gdiazlo has joined #ocaml
gdiazlo has quit [Quit: gdiazlo]
cross_ has quit [Remote host closed the connection]
zor has joined #ocaml
Haudegen has joined #ocaml
Everything has quit [Quit: leaving]
toastal has joined #ocaml
myrkraverk_ has joined #ocaml
myrkraverk has quit [Ping timeout: 260 seconds]
myrkraverk has joined #ocaml
myrkraverk_ has quit [Ping timeout: 276 seconds]
toastal has quit [Ping timeout: 244 seconds]
zor has quit [Ping timeout: 252 seconds]
toastal has joined #ocaml
zor has joined #ocaml
wbooze has quit [Quit: Leaving]
<discocaml> <romain.beauxis> For reference, I believe that I found this issue. Waiting on confirmation but, a day before it appeared, this was pushed to production:
<discocaml> <romain.beauxis>
<discocaml> <romain.beauxis> ```ocaml
<discocaml> <romain.beauxis> external process : stage1:stage -> stage2:stage -> float array array -> float
<discocaml> <romain.beauxis> = "liquidsoap_lufs_process"
<discocaml> <romain.beauxis> ```
<discocaml> <romain.beauxis>
<discocaml> <romain.beauxis> ```c
<discocaml> <romain.beauxis> CAMLprim value liquidsoap_lufs_process(value _stage1, value _stage2, value _x,
<discocaml> <romain.beauxis> value _ret) {
<discocaml> <romain.beauxis> CAMLparam4(_stage1, _stage2, _x, _ret);
<discocaml> <romain.beauxis> ```
<discocaml> <romain.beauxis>
<discocaml> <romain.beauxis> The extra `_ret` param was a left-over from a previous implementation..
<discocaml> <romain.beauxis> For reference, I believe that I found this issue. Waiting on confirmation but, a day before it appeared, this was pushed to production:
<discocaml> <romain.beauxis>
<discocaml> <romain.beauxis> ```ocaml
<discocaml> <romain.beauxis> external process : stage1:stage -> stage2:stage -> float array array -> float
<discocaml> <romain.beauxis> = "liquidsoap_lufs_process"
<discocaml> <romain.beauxis> ```
<discocaml> <romain.beauxis>
<discocaml> <romain.beauxis> ```c
<discocaml> <romain.beauxis> CAMLprim value liquidsoap_lufs_process(value _stage1, value _stage2, value _x, value _ret) {
<discocaml> <romain.beauxis> CAMLparam4(_stage1, _stage2, _x, _ret);
<discocaml> <romain.beauxis> ```
<discocaml> <romain.beauxis>
<discocaml> <romain.beauxis> The extra `_ret` param was a left-over from a previous implementation..
<rustyne> romain.beauxis: ouch :-) Nice to have found it finally though.
<discocaml> <romain.beauxis> Very hard to track! I wonder if it could be possible to detect that at build time?
wickedshell has quit [Ping timeout: 245 seconds]
<discocaml> <diegogub> Hi everyone, planning to migrate a system to Ocaml (from clojure), I managed to setup the project, but I'm not sure about library choices, what should I use for Postgres and Redis? Regarding web framework I'm using Dream (shiny new since last time I saw ocaml).
<discocaml> <octachron> @romain.beauxis , arity mismatch should be detectable with lintcstubs https://ocaml.org/p/lintcstubs/0.4.7 .
<discocaml> <romain.beauxis> @octachron looks great. Also looks like it needs a little upgrade.
<companion_cube> for postgres, you can use Caqti and the postgres driver for it
Haudegen has quit [Quit: Bin weg.]
bartholin has joined #ocaml
<discocaml> <scope9247> or maybe a rust wrapper, existing one or creating one using rust tooling for cpp, and then creating ocaml bindings with ocaml-rs
toastal has quit [Ping timeout: 260 seconds]
<discocaml> <dubious245> I ultimately decided to write the data processing in c++ since both libraries (libcamera opencv) I need, work with it out of the box. But as soon as the images are processed into the format I want pipe that data to ocaml and do the actual focus of my work there.
<discocaml> <romain.beauxis> @octachron `opam install lintcstubs-arity` actually works!
casastorta has quit [Quit: ZNC 1.9.1 - https://znc.in]
casastorta has joined #ocaml
toastal has joined #ocaml
myrkraverk_ has joined #ocaml
myrkraverk has quit [Ping timeout: 244 seconds]
<discocaml> <romain.beauxis> Yeah this really is a great tool. You'd wish it could be included easily in your projects
<discocaml> <romain.beauxis> Maybe via `dune`?
Haudegen has joined #ocaml
myrkraverk has joined #ocaml
myrkraverk_ has quit [Ping timeout: 244 seconds]
infinity0 has quit [Ping timeout: 248 seconds]
<discocaml> <sim642> I haven't looked at it but you might be able to set up a dune rule to run it
deavmi has quit [Quit: Livin' in Afrika]
deavmi has joined #ocaml
wbooze has joined #ocaml
habnabit_ has quit [Ping timeout: 260 seconds]
myrkraverk_ has joined #ocaml
myrkraverk has quit [Ping timeout: 260 seconds]
toastal has left #ocaml [#ocaml]
habnabit_ has joined #ocaml
<discocaml> <sim642> The repo has an example, looks like
infinity0 has joined #ocaml
wbooze has quit [Quit: Leaving]
toastal has joined #ocaml
Tuplanolla has joined #ocaml
wbooze has joined #ocaml
wbooze has quit [Quit: Leaving]
wbooze has joined #ocaml
<discocaml> <romain.beauxis> yeah I've been able to do it but ideally I'd love for this to be an option in dune itself!
<discocaml> <romain.beauxis> I might see if I can contribute something
Serpent7776 has joined #ocaml
wbooze has quit [Quit: Leaving]
<discocaml> <romain.beauxis> ```
<discocaml> <romain.beauxis> (rule
<discocaml> <romain.beauxis> (action
<discocaml> <romain.beauxis> (with-stdout-to
<discocaml> <romain.beauxis> swscale_stubs_check.h
<discocaml> <romain.beauxis> (run %{bin:lintcstubs_arity_cmt} %{dep:.swscale.objs/byte/swscale.cmt}))))
<discocaml> <romain.beauxis> ```
<discocaml> <romain.beauxis> This doesn't seem like something I would like to carry in a released package 😉
toastal has left #ocaml [#ocaml]
Serpent7776 has quit [Ping timeout: 272 seconds]
humasect has joined #ocaml
humasect has quit [Client Quit]
bartholin has quit [Remote host closed the connection]
Tuplanolla has quit [Quit: Leaving.]
Haudegen has quit [Quit: Bin weg.]