companion_cube changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 4.12 released: https://ocaml.org/releases/4.12.0.html | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
favonia has quit [Ping timeout: 240 seconds]
favonia has joined #ocaml
vicfred has joined #ocaml
eltonpinto has joined #ocaml
glassofethanol has quit [Ping timeout: 268 seconds]
Tuplanolla has quit [Quit: Leaving.]
eltonpinto has quit [Ping timeout: 240 seconds]
eltonpinto has joined #ocaml
Corbin has joined #ocaml
favonia has quit [Ping timeout: 255 seconds]
favonia has joined #ocaml
eltonpinto has quit [Ping timeout: 256 seconds]
Stumpfenstiel has quit [Ping timeout: 255 seconds]
favonia has quit [Ping timeout: 255 seconds]
favonia has joined #ocaml
favonia has quit [Ping timeout: 256 seconds]
favonia has joined #ocaml
waleee has quit [Ping timeout: 268 seconds]
favonia has quit [Ping timeout: 255 seconds]
favonia has joined #ocaml
mbuf has joined #ocaml
TakinOver has joined #ocaml
favonia has quit [Ping timeout: 255 seconds]
favonia has joined #ocaml
adanwan has joined #ocaml
adanwan has quit [Remote host closed the connection]
adanwan has joined #ocaml
adanwan_ has quit [Remote host closed the connection]
<d_bot> <EduardoRFS> Corbin: why not compile to lambda?
favonia has quit [Ping timeout: 255 seconds]
favonia has joined #ocaml
<d_bot> <dj charlie> anyone read this? seems interesting https://counterexamples.org
<Corbin> EduardoRFS: I'm kind of tired of managing names, and I'm working with nameless presentations. I want to use OCaml's production-ready CAM, but generating names is just such a hassle and also I know that the OCaml compiler will immediately undo them.
bartholin has joined #ocaml
bartholin has quit [Quit: Leaving]
PinealGlandOptic has quit [Quit: leaving]
favonia has quit [Ping timeout: 272 seconds]
favonia has joined #ocaml
mettekou has joined #ocaml
<d_bot> <Cyclomatic Complexity> hey, by chance, does anyone already have a full-stack webapp template using Dream and JSOO/Melange?
gravicappa has joined #ocaml
favonia has quit [Ping timeout: 240 seconds]
favonia has joined #ocaml
favonia has quit [Ping timeout: 250 seconds]
favonia has joined #ocaml
<d_bot> <mettekou> What is the canonical way of seeking in and reading large binary files in OCaml?
favonia has quit [Ping timeout: 255 seconds]
favonia has joined #ocaml
favonia has quit [Ping timeout: 272 seconds]
favonia has joined #ocaml
Serpent7776 has joined #ocaml
cedric has joined #ocaml
<d_bot> <ggole> You could use the usual I/O, or bigarrays as an interface to a mmap'd file
<d_bot> <mettekou> @ggole The usual I/O being channels or streams?
<d_bot> <ggole> Yep
<d_bot> <ggole> For actually parsing binaries, there's a neat ppx library called bitstring that is worth a look
<d_bot> <mettekou> @ggole That library seems useful, indeed. I am porting over my F# implementation of the NI TDMS file format as a way of learning OCaml. NI TDMS files consist of segments of serialized C structs representing metadata followed by arrays of primitive data.
glassofethanol has joined #ocaml
glassofethanol has quit [Ping timeout: 240 seconds]
Tuplanolla has joined #ocaml
favonia has quit [Ping timeout: 255 seconds]
favonia has joined #ocaml
<d_bot> <sarna> hey! is there a way to use ocaml like an interpreted language, with just one file that's run like `./my_program.ml`?
<d_bot> <sarna> I've tried a couple of setups for this, but they all either won't let me use topfind, or get tuareg to report syntax errors
<d_bot> <sarna> (all methods from here https://www.systutorials.com/how-to-use-ocaml-as-a-script-language/ for example)
<d_bot> <ggole> `ocaml my_program.ml`
mettekou has quit [Quit: Konversation terminated!]
<d_bot> <sarna> but I want to use libraries
<d_bot> <thangngoc89> @sarna https://github.com/thangngoc89/denu
<d_bot> <thangngoc89> I built denu for the same purpose
<d_bot> <thangngoc89> Maybe you can ask denu to invoke the binary afterwards
<d_bot> <sarna> @thangngoc89 that looks like it could work, thank you!
<d_bot> <sarna> @thangngoc89 btw, your opam file points to ocaml-slug https://github.com/thangngoc89/denu/blob/master/denu.opam
favonia has quit [Ping timeout: 265 seconds]
<d_bot> <thangngoc89> @sarna sorry I didn’t have a chance to lint opam file 😂
<d_bot> <sarna> yeah just a heads up bc you probably want to fix it
<d_bot> <thangngoc89> Definitely. Thanks
<d_bot> <thangngoc89> I usually copy the opam files across projects for starting point
gravicappa has quit [Ping timeout: 265 seconds]
yoctocell has joined #ocaml
glassofethanol has joined #ocaml
olle_ has joined #ocaml
glassofethanol has quit [Ping timeout: 265 seconds]
gravicappa has joined #ocaml
dhil has joined #ocaml
mro has joined #ocaml
mro has quit [Remote host closed the connection]
mro has joined #ocaml
darxun has quit [Ping timeout: 240 seconds]
darxun has joined #ocaml
<d_bot> <thangngoc89> @Cyclomatic Complexity https://github.com/tcoopman/dream-melange-tea-tailwind
<d_bot> <thangngoc89> For dream related questions, i would suggest #webdev or reasonml’s discord dream channel
<d_bot> <thangngoc89> Everything in general is easily get lost
vicfred has quit [Quit: Leaving]
<d_bot> <Cyclomatic Complexity> thanks
<d_bot> <Kakadu> While using ppxlib why we can't place attributes inside extension points? What should I do if I need to generate some type definitions from extension point and attach a few user-defined attributes to these type definitions?
mro_ has joined #ocaml
mro_ has quit [Client Quit]
mro has quit [Ping timeout: 245 seconds]
glassofethanol has joined #ocaml
glassofethanol has quit [Ping timeout: 255 seconds]
favonia has joined #ocaml
<d_bot> <Alistair> Are there ways to speedup dune? I'm finding that building takes a long time
<d_bot> <thangngoc89> @TheBloodlessMan do you have large folders that doesn’t contain code? For example node_modules?
<d_bot> <Alistair> No, I just have a lot of code
reynir has quit [Quit: WeeChat 2.3]
<d_bot> <antron> besides the more complete examples, such as @tcoopman's, there are dream's own bare-bones examples <https://github.com/aantron/dream/tree/master/example#full-stack>. you may have seen them, in a sense they are not web app examples because they show only the absolute core skeleton needed to get specifically *full-stack* working, and include no other conveniences
<d_bot> <Cyclomatic Complexity> @antron I hadn't seen https://github.com/aantron/dream/tree/master/example/w-fullstack-jsoo#files , nor the full list of examples, wow! Thank you 🙂
<d_bot> <tcoopman> @Cyclomatic Complexity this is an example with ocaml-vdom and dream. WIP - ran into some SVG bugs https://github.com/tcoopman/dream-channels/tree/main/examples/chat
<d_bot> <tcoopman> If you want melange look at https://github.com/tcoopman/dream-melange-tea-tailwind
mbuf has quit [Quit: Leaving]
Stumpfenstiel has joined #ocaml
mbuf has joined #ocaml
zebrag has joined #ocaml
<d_bot> <RegularSpatula> Just curious about your learning OCaml after F#…only looked at F# briefly but it seems pretty similar. Are you learning ocaml for a specific reason?
<neiluj_> F# is a clone of Ocaml giving access to the .NET ecosystem
<Corbin> It's also the natural resolution of C♯, at least under the assumption that C♯ is dominant~
<neiluj_> so, if you're primarily using Unix, go for Caml
neiluj_ is now known as neiluj
<d_bot> <NULL> Another character [sequence] not getting across to Discord untouched : we read "C♯"
adanwan has quit [Ping timeout: 244 seconds]
adanwan_ has joined #ocaml
<Corbin> Hilarious. I wrote "C#", but instead of the octothorpe # I wrote the musical sharp sign ♯ to emphasize my musical pun. (C# dominant seventh is the 5, or natural resolver, for both F# major and F# minor.)
<d_bot> <NULL> Wait; this time "♯" came across well
<d_bot> <thangngoc89> this is weird
<Corbin> Clearly the bridge-bot considered and learned from your comment~ (I hate that this is a real possibility now)
<d_bot> <thangngoc89> FSharp history https://dl.acm.org/doi/pdf/10.1145/3386325
Haudegen has quit [Quit: No Ping reply in 180 seconds.]
Haudegen has joined #ocaml
reynir has joined #ocaml
zebrag has quit [Remote host closed the connection]
zebrag has joined #ocaml
zebrag has quit [Remote host closed the connection]
eltonpinto has joined #ocaml
<d_bot> <theangryepicbanana> fwiw F# is pretty different from ocaml
mbuf has quit [Quit: Leaving]
waleee has joined #ocaml
rsd has joined #ocaml
<d_bot> <thangngoc89> @theangryepicbanana yes. it has a better ecosystem 🙂
<d_bot> <theangryepicbanana> it has a pretty different feature set as well
<d_bot> <thangngoc89> @theangryepicbanana I'm kidding. the 2 of them has diverge greatly
<d_bot> <theangryepicbanana> ah ok lol
zebrag has joined #ocaml
berberman_ has joined #ocaml
berberman has quit [Ping timeout: 240 seconds]
vicfred has joined #ocaml
olle_ has quit [Ping timeout: 240 seconds]
<Corbin> What sorts of tools do folks have/use for manipulating sexps?
<drakonis> Corbin: what exactly are you trying to do with that?
<companion_cube> My own parser
<drakonis> there's ppxes for manipulating sexps
<Corbin> drakonis: I'm trying out a tool which is written in OCaml and only operates on sexps. I suppose I want jq but for sexps.
<drakonis> okay so are you reimplementing nix on lisp?
<drakonis> lol
<d_bot> <mettekou> I already knew Haskell, but needed a language on .NET to talk to NI software at work, so I picked up F#. Now I realize some of the software at work need not run on .NET at all, hence my investigation of OCaml.
<drakonis> Corbin: what's the gaol anyways
<drakonis> the tool
<drakonis> goal for the tool
Serpent7776 has quit [Quit: leaving]
glassofethanol has joined #ocaml
vicfred_ has joined #ocaml
vicfred__ has joined #ocaml
<companion_cube> A jq for sexprs would be cool
vicfred has quit [Ping timeout: 272 seconds]
vicfred_ has quit [Ping timeout: 245 seconds]
<Corbin> drakonis: The tool is https://github.com/alexozer/flitter and I want to extract/query/manage sexps like https://bpa.st/BLMA
<drakonis> ah so you're doing a speedrun tracker
<drakonis> neat
vicfred__ has quit [Quit: Leaving]
vicfred has joined #ocaml
gravicappa has quit [Ping timeout: 265 seconds]
oriba has joined #ocaml
<d_bot> <Anurag> There is <https://github.com/janestreet/sexp> that could help.
<Corbin> Anurag: Nice!
<Corbin> `sexp select` gets quite far on its own. Very cool. And it's in nixpkgs as `ocamlPackages.sexp`.
yoctocell has quit [Ping timeout: 240 seconds]
cedric has quit [Quit: Konversation terminated!]
dhil has quit [Ping timeout: 255 seconds]
oriba has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
vicfred_ has joined #ocaml
vicfred has quit [Ping timeout: 252 seconds]
<d_bot> <EduardoRFS> in which version ocaml started to allow `open struct end`?
glassofethanol has quit [Ping timeout: 240 seconds]
<d_bot> <anmonteiro> I believe it was 4.08
<d_bot> <anmonteiro> @EduardoRFS I think this was the PR https://github.com/ocaml/ocaml/pull/2147
<d_bot> <EduardoRFS> oh that's interesting
<d_bot> <EduardoRFS> I noticed that I did that for include but never for open
vicfred_ has quit [Ping timeout: 265 seconds]
Tuplanolla has quit [Quit: Leaving.]
Stumpfenstiel has quit [Ping timeout: 240 seconds]