<discocaml>
<dubious245> Utop was the first time I really used a repl to experiment with a language.
<discocaml>
<dubious245> I just used the python repl as a calculator cause the kde calc app was borked last time I tries to use it. :mbDerp:
infinity0 has quit [Ping timeout: 260 seconds]
infinity0 has joined #ocaml
Frostillicus has quit [Ping timeout: 260 seconds]
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #ocaml
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #ocaml
Frostillicus has joined #ocaml
humasect has joined #ocaml
humasect has quit [Quit: Leaving...]
bartholin has joined #ocaml
bibi_ 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]
_whitelogger has joined #ocaml
theze_ has quit [Ping timeout: 252 seconds]
troydm has quit [Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset]
Serpent7776 has joined #ocaml
<hanker>
what's the debugging support for Lwt code?
YuGiOhJCJ has joined #ocaml
inline has quit [Quit: Leaving]
wbooze has quit [Quit: Leaving]
Everything has joined #ocaml
Everything has quit [Ping timeout: 260 seconds]
Everything has joined #ocaml
steenuil has quit [Remote host closed the connection]
steenuil has joined #ocaml
Tuplanolla has joined #ocaml
Frostillicus has joined #ocaml
<discocaml>
<mbs> '
Everything has quit [Quit: leaving]
Haudegen has joined #ocaml
szkl has quit [Quit: Connection closed for inactivity]
<discocaml>
<empathy.monster> Same here. I'll admit that it did take me a little while to get used to, but tbh now it's hard for me to mess with new language without one, and I used to couldn't stand repls. I've yet to find one as good as utop though.
Frostillicus has quit [Ping timeout: 252 seconds]
Frostillicus has joined #ocaml
malte has quit [Ping timeout: 248 seconds]
Frostillicus has quit [Ping timeout: 260 seconds]
malte has joined #ocaml
tremon has joined #ocaml
Serpent7776 has quit [Ping timeout: 260 seconds]
Frostillicus has joined #ocaml
Frostillicus has quit [Ping timeout: 245 seconds]
<discocaml>
<youngkhalid> ghci for me 🥲
humasect has joined #ocaml
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
<discocaml>
<dubious245> I almost tried haskell first but something distracted me from giving it a go, I had everything installed I just didn't do anything with it.
<humasect>
i came from haskell to ocaml, looking for "middle point" between C and super-high level
<humasect>
learned a lot. might go back
<discocaml>
<youngkhalid> God saved you from suffering. Not sure you would've liked its strict purity.
<discocaml>
<youngkhalid> But as @humasect0156 says, you learn a lot from it. It's good for learning the functional paradigm (that's how I knew about it). That language is like a good old teacher, very harsh but it's worth it.
<discocaml>
<dubious245> I am just so demotivated working in c++ I'd rather do ANYTHING else.
<discocaml>
<youngkhalid> C++ has its flaws as well, I'd use it for medium-sized projects, but the language has sooooo much stuff in it that it can quickly become a hell maintaining/debugging..etc.
<discocaml>
<youngkhalid> Unless you're very careful with all the power that comes with it / work with highly skilled people in a large codebase.
<humasect>
youngkhalid: saved me? talking to me? about haskell? ...
<discocaml>
<youngkhalid> I answered to @ Dubious message
<humasect>
works nice. but, it just shifts the power from the programmer to the compiler.
<humasect>
ok
<humasect>
either type more or think more
<discocaml>
<youngkhalid> sorry ?
<discocaml>
<darrenldl> i think discord "reply to" dont carry over to irc
<discocaml>
<youngkhalid> Yes , I supposed this
<discocaml>
<youngkhalid> But what does "thinking more" has to do with it ?
<discocaml>
<darrenldl> ah, hm
<discocaml>
<darrenldl> nvm, i thought it was confusion due to messages not appearing as directed replies over at irc
<discocaml>
<dubious245> "either type more or think more" What?
<hanker>
am i the only one who really likes ocaml for the "compiling to js" deal
<hanker>
like you have this native compilation language and you can also use it in browsers
<hanker>
blows my mind
<humasect>
couldn't be simpler. type more, or think more
<humasect>
C type type type Haskell think think think
<discocaml>
<dubious245> Ooooh, I get it now.
<hanker>
dubious245 yeah I thought type as in type systems too
<hanker>
i find ocaml is the sweet point between haskell and C too
<humasect>
ah oops sry =)
<humasect>
yeah
<humasect>
and the "syntax tricks" as i like to call them, feels like im being smart =) C does same
<discocaml>
<youngkhalid> @humasect Ah I get it, you were talking about Haskell. I thought you was talking to me in an imperative way xD
<discocaml>
<youngkhalid> And yeah, it's exactly that. In Haskell you have to think more than you type. That's the cost of having syntactically cleaner and more pure code
bartholin has joined #ocaml
humasect has quit [Remote host closed the connection]
humasect has joined #ocaml
<humasect>
youngkhalid: ah yeah =) and yeah. some call it "pencil+papering"
<humasect>
still need a scratchpad
<hanker>
i think another thing i like a lot with ocaml
<hanker>
the language goes way out of its way to avoid making you name variables you don't actually want to name because you'd give them generic useless names
<hanker>
like you can decompose records pretty much anywhere. you have function and other syntactic sugar
Frostillicus has joined #ocaml
<discocaml>
<contificate> hanker: no, I really like compiling OCaml to JS as well - I honestly do not believe TypeScript etc. really address the problems of JavaScript in any meaningful sense, so it's nice to be able to write business logic in a capable language (along with being able to use normal tooling like menhir, ocamllex, etc.)
<discocaml>
<contificate> the problem with Haskell is the illusion of "patterns arising naturally" disappears once you start gluing things together - people start dealing with idioms like "reader over IO" and monad transformer stacks
<discocaml>
<contificate> and, if you're like me, you'll question what you get in return for bending over backwards so often - and the answer is nothing but partly-theoretical suggestions from Haskellers about referential transparency for reasoning - impossible when you obfuscate everything in tedious ways anyway
humasect has quit [Remote host closed the connection]
euphores has quit [Quit: Leaving.]
Frostillicus has quit [Ping timeout: 260 seconds]
<dh`>
there's nothing natural about the ways normal program logic appears in monad constructions
euphores has joined #ocaml
<dh`>
e.g. it's kind of cute that you can do "when (x < 3) $ do [sub-block]" and when can just be a function and doesn't need to be a builtin
<dh`>
but it's of no practical value, and because builtins have syntax they tend to be easier to read
<dh`>
(furthermore, the errors you get out of the compiler if you leave off the () or the $ are quite exotic)
inline has joined #ocaml
ello_ has quit [Read error: Connection reset by peer]
euphores has quit [Quit: Leaving.]
ello has joined #ocaml
euphores has joined #ocaml
<discocaml>
<five.sided.fistagon> monad transformers were where my haskell journey ended, indeed
m5zs7k has quit [Ping timeout: 276 seconds]
m5zs7k has joined #ocaml
Serpent7776 has joined #ocaml
bartholin has quit [Remote host closed the connection]
_whitelogger has joined #ocaml
Serpent7776 has quit [Ping timeout: 276 seconds]
Tuplanolla has quit [Quit: Leaving.]
spynxic has quit [Read error: Connection reset by peer]