Leonidas changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 5.1.1 released: https://ocaml.org/releases/5.1.1 | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
Square2 has joined #ocaml
micro has quit [Ping timeout: 246 seconds]
<discocaml> <jobhdez> Is ocaml better suited for compiler development than Haskell?
micro has joined #ocaml
<discocaml> <Kali> both have their pros and cons
Tuplanolla has joined #ocaml
<discocaml> <Kali> you could do well with either
<discocaml> <coollcat> lmfao your pfp @ilo_kali 😭
<discocaml> <Kali> although ocaml compilers will likely use less memory simply due to ocaml being strict and allowing impurity
average has quit [Quit: Connection closed for inactivity]
mima has quit [Ping timeout: 264 seconds]
Tuplanolla has quit [Quit: Leaving.]
cross has joined #ocaml
cross has quit [Client Quit]
cross has joined #ocaml
quidnunc has joined #ocaml
chrisz has quit [Ping timeout: 256 seconds]
chrisz has joined #ocaml
average has joined #ocaml
average has quit [Quit: Connection closed for inactivity]
average has joined #ocaml
<discocaml> <jobhdez> Yea ocaml seems to be a more pragmatic language. Thanks
jsoo has joined #ocaml
<discocaml> <jobhdez> Hey you all; are there about the same ocaml jobs available as there is Haskell jobs?
<discocaml> <wravoc> I looked at the stats for comparison pretty in-depth. It's my supposition that there are more Haskell jobs, but not by more than 1/3. However, one stat that stuck out was that OCaml is top 5 for pay. I would say that is in the Finance Industry mainly though.
<discocaml> <wravoc> Very hard to land, and I think other qualifications/merits are needed and you basically get assigned OCaml.
<discocaml> <jobhdez> Oh so it’s very hard to land an ocaml job. That sucks but I’m going to learn it anyways; it seems like great language where it’s enough Haskell like but very pragmatic unlike Haskell
<discocaml> <coollcat> In my OCaml journey the main weakness I have observed so far is the tooling
<discocaml> <coollcat> the actual language itself is phenomenal, possibly the most productive yet safe ive ever used
<discocaml> <coollcat> In my OCaml journey the main weakness I have observed so far is the tooling/standard library/ecosystem
<discocaml> <wravoc> Yeah, I would definitely say the base OCaml is industrial strength and takes no chances. The tooling is good, I myself have std lib issues, but that is another topic.
<discocaml> <Kali> imo the ocaml tooling is fantastic (certainly in comparison to haskell, but many other languages too), but the stdlib's general irregularities and overuse of exceptions is my main issue with it
<discocaml> <wravoc> Dovetailed into that, I just read the 2.2 beta is all about Windiws, what. Maybe 2.3 will see some std lib action.
<discocaml> <barconstruction> do you have pointers on tooling
<discocaml> <barconstruction> like what tools do you tend to use most
<discocaml> <wravoc> Dovetailed into that, I just read the 2.2 beta is all about Windows, what. Maybe 2.3 will see some std lib action.
<discocaml> <wravoc> Yeah, I personally feel utop and opam are top notch.
<discocaml> <Kali> well, i mostly use the standard tools like dune and utop and opam, but that's pretty much it
<discocaml> <wravoc> Like, top 10%
<discocaml> <wravoc> Dune too, whoops.
<discocaml> <barconstruction> Personally I somehow broke utop with whatever libraries i import into it in my ocamlinit
<discocaml> <barconstruction> and whenever i resize the terminal it crashes the program
<discocaml> <barconstruction> so i need to figure out what's going on there
<discocaml> <barconstruction> and whenever i resize the terminal it crashes utop
<discocaml> <barconstruction> it works fine if i delete .ocamlinit
<discocaml> <wravoc> Try BSD or Alpine Linux, absolutely flawless for me.
<discocaml> <jobhdez> I thought the community used the core library from Jane street
<discocaml> <Kali> switching operating systems in order to fix a configuration problem is a bit silly
<discocaml> <barconstruction> i'm working on WSL.
<discocaml> <barconstruction> but the same error happened with the VSCode terminal
<discocaml> <wravoc> Well, there you go!
<discocaml> <Kali> no, most people actually don't use core
<discocaml> <Kali> the primary user of core is jane street
<discocaml> <Kali> you might've gotten that impression from Real World OCaml
<discocaml> <wravoc> It's not that, if that was taking my point on. Those are just premium experiences, in total, and worth it for any reason.
<discocaml> <jobhdez> I did. I’m reading it right now
<discocaml> <coollcat> This sort of misconception is one of the unfortunate parts of OCaml. You never see people wondering which standard library they are supposed to use in Go or C#. Aside from functional programming seeming "weird" it is unfortunately one of the few things holding this language back
<discocaml> <coollcat> This sort of misconception is one of the unfortunate parts of OCaml. You never see people wondering which standard library they are supposed to use in Go or C# (because there is only one). Aside from functional programming seeming "weird" it is unfortunately one of the few things holding this language back
<discocaml> <Kali> real world ocaml happens to be coauthored by a jane street employee, so it kind of got steered into core, and with the title of "real world", that confuses a lot of people into thinking core is widely used
<discocaml> <coollcat> This sort of misconception is one of the unfortunate parts of OCaml. You never see people wondering which standard library they are supposed to use in Go or C# (because there is only one). Aside from functional programming seeming "weird" to folks who have gone through years of schooling doing C and Java, ecosystem is unfortunately one of the few things holding this language back
<discocaml> <Kali> try to avoid excessive edits, this is bridged to irc and editing here resends the message there
Square2 has quit [Ping timeout: 268 seconds]
<discocaml> <functionalprogramming> utop is great but i dont see whats special about opam
<discocaml> <functionalprogramming> im probably missing something though
<discocaml> <wravoc> It is unique, and I'm Jane Street all the way. Real World OCaml might be one if the best dev books I ever read.
<discocaml> <barconstruction> Core is the heavyweight one. Jane Street has a slightly lighter library called base, too
<discocaml> <functionalprogramming> i prefer not using jst stuff
<discocaml> <Kali> i think it is pretty neat that ocaml has the capability to swap out standard libraries at all, and it hasn't really resulted in all that much fragmentation (your alternatives are pretty much just core/base, containers, or batteries)
<discocaml> <wravoc> I had a hard time deciding, core or base, really hard. It's almost a hostile takeover honestly, having worked for Big Tech and Gov, but dang the book was a testament.
<discocaml> <jobhdez> Why was so good?
<discocaml> <jobhdez> Why was the book so good?
<discocaml> <wravoc> Well, I love learning new stuff and I have big projects in mind. The only other competitor in this space is the Cornell Tut. Out out University for way longz and professional Cybersecurity, it just more dine in a practical way, with a more robust library for getting *things done*, miles ahead imo. Top notch writing, pace, examples. If a student though, or juat wanting to improve your skills, or in Data Science, Compilers, Parsers, Lexers, I wou
<discocaml> <wravoc> Well, I love learning new stuff and I have big projects in mind. The only other competitor in this space is the Cornell Tut. Out out University for way long and professional Cybersecurity, it just more done in a practical way, with a more robust library for getting *things done*, miles ahead imo. Top notch writing, pace, examples. If a student though, or juat wanting to improve your skills, or in Data Science, Compilers, Parsers, Lexers, I woul
<discocaml> <wravoc> Well, I love learning new stuff and I have big projects in mind. The only other competitor in this space is the Cornell Tut. Out out University for way long and professional Cybersecurity, it just more done in a practical way, with a more robust library for getting *things done*, miles ahead imo. Top notch writing, pace, examples. If a student though, or just wanting to improve your skills, or in Data Science, Compilers, Parsers, Lexers, I woul
<discocaml> <wravoc> Well, I love learning new stuff and I have big projects in mind. The only other competitor in this space is the Cornell Tut. Out of University for way long and professional Cybersecurity, it just more done in a practical way, with a more robust library for getting *things done*, miles ahead imo. Top notch writing, pace, examples. If a student though, or just wanting to improve your skills, or in Data Science, Compilers, Parsers, Lexers, I would
<discocaml> <jobhdez> I might just learn both Haskell and ocaml
<discocaml> <jobhdez> The dream framework seems great
<discocaml> <wravoc> Oh man, tripling your input time, I advise not. Do one and do it great.
<discocaml> <wravoc> Dream is awesome, I'm awaiting their success.
<discocaml> <jobhdez> Oh I see: I don’t know which one to pick. I’m coming from a Common Lisp background
<discocaml> <wravoc> I don't think anything prepares you for OCaml or Haskell, both superlative. Motivation is King. Pick your project that you are really passionate about, then choose the tool.
azimut has quit [Ping timeout: 240 seconds]
<discocaml> <jobhdez> Thanks. I’m increasingly valuing pragmatism and ocaml seems to fit this more but still a beautiful language
<discocaml> <barconstruction> is there a good way to like, open up the OWL project to community control? It's not being actively developed or maintained
bartholin has joined #ocaml
average has quit [Quit: Connection closed for inactivity]
Serpent7776 has joined #ocaml
Serpent7776 has quit [Ping timeout: 264 seconds]
mro has joined #ocaml
<discocaml> <bluddy5> A good sign of OWL not being maintained would be if there were a bunch of unmerged PRs. I see only 6 right now.
mima has joined #ocaml
olle has joined #ocaml
bartholin has quit [Quit: Leaving]
czy has quit [Remote host closed the connection]
czy has joined #ocaml
szkl has joined #ocaml
alexherbo2 has joined #ocaml
alexherbo2 has quit [Remote host closed the connection]
alexherbo2 has joined #ocaml
mima has quit [Ping timeout: 260 seconds]
<discocaml> <Ada> the real world ocaml book is really good but containers is still a lot nicer than core
<discocaml> <Ada> not just because if i ever have problems i can ask the dev in the channel 😉
<discocaml> <Ada> dream is really great but i’d say it’s also worth knowing either cohttp or httpaf’s bare apis if you’re ever going to write lower level code
<discocaml> <Ada> e.g. doing streaming and the like
mro has quit [Remote host closed the connection]
szkl has quit [Quit: Connection closed for inactivity]
azimut has joined #ocaml
bibi_ has quit [Quit: Konversation terminated!]
bibi_ has joined #ocaml
yewscion has joined #ocaml
<companion_cube> 😇
yewscion has quit [Ping timeout: 246 seconds]
yewscion has joined #ocaml
Serpent7776 has joined #ocaml
mima has joined #ocaml
a51 has joined #ocaml
waleee has joined #ocaml
bartholin has joined #ocaml
yewscion has quit [Ping timeout: 264 seconds]
chrisz has quit [Ping timeout: 276 seconds]
chrisz has joined #ocaml
<discocaml> <gavins3499> Does anyone have a precompiled ocaml-lsp? I'm working on a remote server and don't have root access to download opm and install it that way
azimut has quit [Ping timeout: 240 seconds]
olle has quit [Ping timeout: 260 seconds]
azimut has joined #ocaml
<discocaml> <rgrinberg> you can always clone it and build it yourself
yewscion has joined #ocaml
Tuplanolla has joined #ocaml
<discocaml> <gavins3499> I tried that and it was complaining I didn't have the ocaml libraries required to build it
<discocaml> <gavins3499> I also had to build dune, which I did, then pointed it to the dune executable
<discocaml> <gavins3499> Would I have to download all of the ocaml dependencies individually?
<discocaml> <rgrinberg> I think so
<discocaml> <gavins3499> Hmm, that may be tough without a package manager
oriba has joined #ocaml
<discocaml> <leviroth> Do you need root in order to install opam?
alexherbo2 has quit [Remote host closed the connection]
waleee has quit [Ping timeout: 264 seconds]
yewscion has quit [Remote host closed the connection]
yewscion has joined #ocaml
azimut has quit [Remote host closed the connection]
azimut has joined #ocaml
yewscion has quit [Remote host closed the connection]
yewscion has joined #ocaml
<discocaml> <gavins3499> I think I tried to build opam from source, but the built opam points to folders that are only root-accessible when trying to install and manage packages
<discocaml> <gavins3499> Let me try once more
gwizon has quit [Ping timeout: 268 seconds]
<discocaml> <Et7f3 (@me on reply)> What command do you use ? ./configure with --prefix=$PWD --with-vendored-deps and ocamlc in PATH ?
<discocaml> <gavins3499> I just used ./configure --with-vendored-deps
<discocaml> <gavins3499> ocamlc is in the path
<discocaml> <._null._> Can you really not install and use dune in userland ? That would seem much easier
<discocaml> <gavins3499> I can, that's not the issue. The problem is that ocaml-lsp uses packages that I need to be able to download
<discocaml> <._null._> You mean only root has internet access ?
<discocaml> <gavins3499> Its a shared system that has internet access, but I'm just a user with no root access
<discocaml> <gavins3499> I'll try this configuration
<discocaml> <._null._> I meant opam*
<discocaml> <gavins3499> Doesn't look like it looking at the install instructions, everything except building from source seems to require root
<discocaml> <._null._> `--download-only` dowloads a binary, you can probably run it anywhere
<discocaml> <._null._> `--download-only` downloads a binary, you can probably run it anywhere
<discocaml> <._null._> Using `--download-only` in the script downloads a binary, you can probably run it anywhere
<discocaml> <gavins3499> I'll give that a try
<discocaml> <._null._> Just tried, can confirm. You download the script, run it with the flag and you have a binary. Make it executable and you can run it
gwizon has joined #ocaml
yewscion has quit [Ping timeout: 264 seconds]
<discocaml> <gavins3499> Ah that script worked, thank you
<discocaml> <gavins3499> I didn't even need the --download-only command line arg
<discocaml> <gavins3499> 🙏 thank you
mima has quit [Ping timeout: 260 seconds]
justache has quit [Read error: Connection reset by peer]
justache has joined #ocaml
waleee has joined #ocaml
justache has quit [Read error: Connection reset by peer]
average has joined #ocaml
justache has joined #ocaml
yewscion has joined #ocaml
alexherbo2 has joined #ocaml
mima has joined #ocaml
pandeyan has joined #ocaml
anpad has quit [Ping timeout: 260 seconds]
pi3ce_ has quit [Quit: No Ping reply in 180 seconds.]
pi3ce has joined #ocaml
yewscion has quit [Ping timeout: 252 seconds]
average has quit [Quit: Connection closed for inactivity]
alexherbo2 has quit [Remote host closed the connection]
alexherbo2 has joined #ocaml
bartholin has quit [Quit: Leaving]
Serpent7776 has quit [Ping timeout: 260 seconds]
wagle has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
wagle has joined #ocaml
wagle has quit [Client Quit]
wagle has joined #ocaml
<discocaml> <barconstruction> Sure. Let us use less pejorative language. "Lightly maintained". Owl is a project which has not had a git commit to a dot ml file in 1 year. It is no longer accepting financial donations for support. It no longer has a publicly available link to a slack server for discussion, probably this server has been retired. The most recent pr fixing an obvious bug has been there for four months.
<discocaml> <barconstruction> Mseri has a fork though that he seems to be maintaining so that's cool
waleee has quit [Ping timeout: 264 seconds]