arecaceae has quit [Remote host closed the connection]
arecaceae has joined #ocaml
aspiwack[m] has joined #ocaml
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
pqwy[m] has joined #ocaml
peddie has joined #ocaml
flux has joined #ocaml
jimt[m] has joined #ocaml
tjammer[m] has joined #ocaml
zebrag has quit [Quit: Konversation terminated!]
BitPuffin has joined #ocaml
beajeanm has quit [Quit: Ping timeout (120 seconds)]
beajeanm has joined #ocaml
mfp has quit [Ping timeout: 260 seconds]
mxns has joined #ocaml
mbuf has joined #ocaml
cartwright has quit [Remote host closed the connection]
cartwright has joined #ocaml
shawnw has joined #ocaml
mxns has quit [Ping timeout: 260 seconds]
_whitelogger has joined #ocaml
vicfred has quit [Quit: Leaving]
Serpent7776 has joined #ocaml
narimiran has joined #ocaml
osa1_ has joined #ocaml
waleee-cl has quit [Quit: Connection closed for inactivity]
osa1 has quit [Ping timeout: 265 seconds]
osa1_ has quit [Ping timeout: 265 seconds]
osa1 has joined #ocaml
TheLemonMan has joined #ocaml
Haudegen has joined #ocaml
osa1 has quit [Quit: osa1]
osa1 has joined #ocaml
olle has joined #ocaml
rwmjones_ is now known as rwmjones
bartholin has joined #ocaml
Enjolras_ has quit [Ping timeout: 272 seconds]
SquidDev has quit [Quit: Bye!]
SquidDev has joined #ocaml
SquidDev has quit [Quit: Bye!]
SquidDev has joined #ocaml
narimiran has quit [Quit: leaving]
mfp has joined #ocaml
sm2n has quit [Ping timeout: 256 seconds]
sm2n has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
sm2n has quit [Read error: Connection reset by peer]
sm2n has joined #ocaml
Haudegen has joined #ocaml
andreas303 has quit [Remote host closed the connection]
andreas303 has joined #ocaml
tane has joined #ocaml
arecaceae has quit [Remote host closed the connection]
arecaceae has joined #ocaml
<d_bot_>
<EduardoRFS> Is OCaml allowed to do optimizations that change physical equality?
<d_bot_>
<EduardoRFS>
<d_bot_>
<EduardoRFS> Can the following function be a noop?
<d_bot_>
<EduardoRFS>
<d_bot_>
<EduardoRFS> ```ocaml
<d_bot_>
<EduardoRFS> type x = | A
<d_bot_>
<EduardoRFS> let f A = A
<d_bot_>
<EduardoRFS> ```
<d_bot_>
<EduardoRFS> my guess, OCaml is not allowed to do it, but with 100% safe code, that is possible
<vsiles>
you mean replace `f x` with `x` ?
<theblatte>
variants with no arguments are always going to be physically equal
<theblatte>
I think
zebrag has joined #ocaml
<d_bot_>
<EduardoRFS> theblatte you're right I updated it to an example with an argument so that allocations happens
<d_bot_>
<EduardoRFS>
<d_bot_>
<EduardoRFS> ```ocaml
<d_bot_>
<EduardoRFS> type x = | A of int
<d_bot_>
<EduardoRFS> let f (A n) = A n
<d_bot_>
<EduardoRFS> ```
<d_bot_>
<EduardoRFS> vsiles: yes
<vsiles>
I guess flambda might do that ?
<theblatte>
yes, physical disequality is not at all guaranteed to be preserved as far as I know
<d_bot_>
<EduardoRFS> then there is some possible cool code to optimize
<d_bot_>
<octachron> Physical equality already changes between bytecode, the native compiler and flambda.
nullcone has quit [Quit: Connection closed for inactivity]
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
mxns has joined #ocaml
sz0 has quit [Quit: Connection closed for inactivity]
aditi314 has joined #ocaml
aditi31478 has joined #ocaml
<aditi31478>
This is Aditi from India. I recently came across the ocaml project while browsing through the outreachy website and the projects for summer internship 2021.
<aditi31478>
Though the contribution period hasn't started yet, I was looking forward to familiarising myself with the project and getting comfortable with it. I was looking for a suitable starting point for the same.
<aditi31478>
It would be really helpful if you could help me out with this.
<aditi31478>
Thank you :)
gunjan has joined #ocaml
Tuplanolla has joined #ocaml
<gunjan>
Greetings everyone , I am Gunjan Agarwal, I am interested in contributing to outreachy this summer , but could'nt find the point from where I should start. Can you please guide me about the same.
<gunjan>
Ok I will through the links and see what I can do.Thankyou :)
<d_bot_>
<Drup> @EduardoRFS This optimisation is allowed, and currently done by flambda IIRC.
<d_bot_>
<Drup> Might even be done by the vanilla compiler, there was a patch about it some time ago
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
fosred has joined #ocaml
fosred has quit [Client Quit]
Haudegen has quit [Quit: Bin weg.]
nullcone has joined #ocaml
aditi31478 has quit [Quit: Connection closed]
olle has quit [Ping timeout: 265 seconds]
gunjan has quit [Quit: Connection closed]
mbuf has quit [Quit: Leaving]
xenu has quit [Ping timeout: 246 seconds]
oriba has joined #ocaml
waleee-cl has joined #ocaml
bartholin has quit [Quit: Leaving]
Haudegen has joined #ocaml
xenu has joined #ocaml
mxns has quit [Ping timeout: 258 seconds]
mxns has joined #ocaml
ewd has joined #ocaml
mxns has quit [Ping timeout: 246 seconds]
xenu has quit [Quit: leaving]
xenu has joined #ocaml
mxns has joined #ocaml
mxns has quit [Ping timeout: 245 seconds]
mxns has joined #ocaml
<hannes>
anyone with ocamldoc/odoc experience here? so I have several "module type" in a mli (let's say 'module type A = sig .. end and module type B = sig .. end'. and another module type 'module type S = sig module A : A module B : B end' - how would I 'inline' the documentation written in A and B into the top level with odoc?
nicoo has quit [Remote host closed the connection]
nicoo has joined #ocaml
<hannes>
since atm I get an index page, have to click on A/B/S in order to read the documentation, but I'd prefer to just have it inline (there's not much top-level meat in the module itself, i.e. no functions & types)
<hannes>
I discovered that e.g. Irmin uses a magic (** @inline *) string, but I was unable to find its documentation and where to put it (in Irmin it is placed just after "include A", but I'm not "includ"ing anything here..
Serpent7776 has quit [Read error: Connection reset by peer]
Serpent7776 has joined #ocaml
andreas31 has joined #ocaml
mxns has quit [Ping timeout: 240 seconds]
andreas303 has quit [Ping timeout: 268 seconds]
mxns has joined #ocaml
olle has joined #ocaml
mxns has quit [Ping timeout: 260 seconds]
mxns has joined #ocaml
andreas31 has quit [Remote host closed the connection]
andreas31 has joined #ocaml
olle has quit [Ping timeout: 260 seconds]
<hannes>
another question: what is the difference between "module A : sig .. end" and "module type A = sig .. end"?
TheLemonMan has quit [Read error: Connection reset by peer]
TheLemonMan has joined #ocaml
ansiwen_ is now known as ansiwen
<d_bot_>
<ggole> The first defines the signature of the module `A`, and the other defines a module type called `A`
<d_bot_>
<Christophe> same difference basically between `let a: ... ` and `type a = ... `
<hannes>
ah, thanks
<d_bot_>
<ggole> And the two `A`s are in different namespaces
mxns has quit [Ping timeout: 260 seconds]
olle has joined #ocaml
<zozozo>
with ocamlles it seems there are cases where ocamllex raises an internal exception even if there is a case such as "| _ { ... }" in the lexer rules (it seems to happen on weird unicode characters), is that expected ?
<zozozo>
*ocamllex
ewd has quit [Ping timeout: 256 seconds]
vicfred has joined #ocaml
mxns has joined #ocaml
mxns has quit [Ping timeout: 260 seconds]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
xandkar1 has joined #ocaml
tane has quit [Quit: Leaving]
bobren has joined #ocaml
olle has quit [Ping timeout: 245 seconds]
arecaceae has quit [Remote host closed the connection]