adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.09 release notes: https://caml.inria.fr/pub/distrib/ocaml-4.09/notes/Changes | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
rand has quit [Ping timeout: 246 seconds]
mfp has quit [Ping timeout: 264 seconds]
kleisli__ has quit [Ping timeout: 246 seconds]
Haudegen has quit [Ping timeout: 240 seconds]
peterbb has quit [Quit: peterbb]
kleisli__ has joined #ocaml
kleisli_ has joined #ocaml
mfp has joined #ocaml
kleisli__ has quit [Ping timeout: 240 seconds]
mfp has quit [Ping timeout: 240 seconds]
dborisog has joined #ocaml
zv has quit [Ping timeout: 272 seconds]
zv has joined #ocaml
waleee-cl has quit [Quit: Connection closed for inactivity]
_whitelogger has joined #ocaml
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
osa1 has joined #ocaml
bartholin has quit [Ping timeout: 246 seconds]
bartholin has joined #ocaml
narimiran has joined #ocaml
mbuf has joined #ocaml
mbuf has quit [Client Quit]
dckc has quit [Ping timeout: 240 seconds]
dckc has joined #ocaml
_whitelogger has joined #ocaml
rand has joined #ocaml
pyx has joined #ocaml
pyx has quit [Client Quit]
Cybuster has quit [Quit: Leaving]
nullcone has quit [Quit: Connection closed for inactivity]
malc_ has joined #ocaml
drdee has joined #ocaml
drdee has quit [Client Quit]
Haudegen has joined #ocaml
mfp has joined #ocaml
mbuf has joined #ocaml
rand has quit [Ping timeout: 260 seconds]
narimiran has quit [Quit: leaving]
osa1 has quit [Ping timeout: 256 seconds]
bartholin has quit [Quit: Leaving]
mbuf has quit [Remote host closed the connection]
mbuf has joined #ocaml
waleee-cl has joined #ocaml
osa1 has joined #ocaml
rock64 has joined #ocaml
<rock64> would it be possible to do full program ownership inference, without any annotations?
malc_ has quit [Ping timeout: 240 seconds]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 240 seconds]
Anarchos has joined #ocaml
<rock64> yes
<rock64> ^^
<flux1> rock64: you may find that annotations can actually be enjoyable, if it _should happen_ that you have an error..
<flux1> oh, ownership inference, you weren't talking about typing per se.
<flux1> is that really possible? automatically inject reference counting where needed?
kleisli_ has quit [Ping timeout: 240 seconds]
nicoo has quit [Remote host closed the connection]
osa1 has quit [Ping timeout: 265 seconds]
nicoo has joined #ocaml
<rock64> flux1: dunno
<rock64> again, escape analysis will use ref count where needed (I assume), but not the same thing as ownership
<rock64> i had no idea you have to annotate both ownership *and* lifetime in Rust.
<rock64> sounds kinda like a type system failure, to be completely honest
<rock64> design failure*
<rock64> design fault?
<rock64> whatever
kleisli_ has joined #ocaml
osa1 has joined #ocaml
ggole has joined #ocaml
malc_ has joined #ocaml
tane has joined #ocaml
Anarchos has quit [Quit: Vision[0.10.3]: i've been blurred!]
raver has quit [Remote host closed the connection]
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
sz0 has quit [Quit: Connection closed for inactivity]
dborisog has quit [Remote host closed the connection]
dborisog has joined #ocaml
raver has joined #ocaml
<rock64> so uniqueness is basically the same as ownership?
nullcone has joined #ocaml
sz0 has joined #ocaml
mbuf has quit [Quit: Leaving]
rand has joined #ocaml
rand has quit [Ping timeout: 258 seconds]
Anarchos has joined #ocaml
ArthurStrong has joined #ocaml
Niamkik has quit [Ping timeout: 260 seconds]
rand has joined #ocaml
Niamkik has joined #ocaml
Anarchos has quit [Quit: Vision[0.10.3]: i've been blurred!]
osa1 has quit [Remote host closed the connection]
kleisli_ has quit [Ping timeout: 260 seconds]
oriba has joined #ocaml
dborisog has quit [Ping timeout: 240 seconds]
inkbottle has joined #ocaml
zebrag has quit [Ping timeout: 264 seconds]
<d_bot> <Et7f3> if OCaml implement such system => it will loose the ability to do TCO
<d_bot> <Et7f3> and this could break a big part of the ecosystem
<rock64> tco?
<d_bot> <undu> tail call optimization, I guess
<rock64> tco conflicts with what? guess I missed something ^^
Jesin has joined #ocaml
<d_bot> <Et7f3> take that example:
<d_bot> <Et7f3> ```
<d_bot> <Et7f3> type foo = {bar: int};
<d_bot> <Et7f3> let count =
<d_bot> <Et7f3> let rec count ret = function
<d_bot> <Et7f3> | [] -> ret
<d_bot> <Et7f3> | {bar} :: l -> count (bar + ret) l
<d_bot> <Et7f3> in count
<d_bot> <Et7f3> ```
<d_bot> <Et7f3> what rust does with his `Drop` is like RAII
malc_ has quit [Remote host closed the connection]
rand has quit [Quit: leaving]
jbrown has joined #ocaml
<rock64> ah
<rock64> yeah, I know that ocaml's gc already is not at all adapted to ref count anything.
<rock64> maybe there's an experimental ML out there with ownership? well, there's linearML
<rock64> all these things kind of overlap to some degree
<rock64> linear types, ownership, uniqueness
ggole has quit [Quit: Leaving]
jbrown has quit [Ping timeout: 246 seconds]
jbrown has joined #ocaml
bartholin has joined #ocaml
kleisli_ has joined #ocaml
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 244 seconds]
tmhoang has quit [Quit: Alpine Linux, the security-oriented, lightweight Linux distribution]
tmhoang has joined #ocaml
jbrown has quit [Ping timeout: 272 seconds]
jbrown has joined #ocaml
zv has quit [Ping timeout: 246 seconds]
oriba has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
kleisli__ has joined #ocaml
kleisli_ has quit [Ping timeout: 260 seconds]
snowpanda has joined #ocaml
tane has quit [Quit: Leaving]
raver has quit [Read error: Connection reset by peer]