<_y>
companion_cube @ :MerlinDocument, thanks, apparently you also need the *.cmt files
<_y>
oh ok, so apparently it half-works for local use
<Adr1>
hi, I am a beginner in OCaml and I have an issue with this simple code https://pastebin.com/FHKis0ba the function 'primary' clearly matches values of type token ?
<_y>
ie. inside the source code of my library, if i am in Lol.ml and i hover identifier “lol”, whose declaration / documentation is in Lol.mli, i get “No documentation available”
<_y>
BUT if i write Lol.lol (which is incorrect code because i am inside module Lol), Merlin finds the documentation
<octachron>
Adr1, if you are getting stated, you probably don't want to use camlp4 and the parser/stream extension. Otherwise, the problem is in the call of primary in aux_ast
<flux[m]>
maybe there's a bug that Merlin doesn't know Lol.ml also maps to module Lol. doesn't sound quite likely, though.
<adrien>
Adr1: are you a student by any chance?
<_y>
flux[m], fun fact, it also works if i “open Lol” from inside Lol :DDD
<Adr1>
adrien: not anymore
<rks`>
_y: that looks like a bug, you should open an issue
<Adr1>
octachron: thank you, what are people using nowadays to replace streams?
<_y>
rks`, will do!
<rks`>
cool :)
<octachron>
Adr1, there is a Seq module for delayed list in OCaml 4.07
<octachron>
For parsing in general people are either using menhir or parser combinator libraries
<Adr1>
octachron: hmmm looks like I have 4.05 on ubuntu, but anyway, if I am correct the issue is that I call primary with a token instead of a token stream ?
thomas_scrace has quit [Ping timeout: 240 seconds]
<Adr1>
octachron: yes but I am really trying to implement the lexer and parser by hand from scratch for learning purpose :)
thomas_scrace has joined #ocaml
<octachron>
yes, it is a quite common problem with mutually recursive functions, the type of a function is determined by its first use
<octachron>
adding some type annotation can help for debugging
<Adr1>
sure, makes sense now, thanks!
<octachron>
also it might be worthwhile investment to install opam and switch to 4.07.0 (or 4.06.1), it would make easier to install OCaml libraries
<Adr1>
got it, will do
thomas_scrace has quit [Ping timeout: 245 seconds]
Rosslaew has quit [Ping timeout: 260 seconds]
<_y>
rks`, in fact, i tried to write a MWE and it appears that compiled informations for module Lol are not made available when editing Lol.ml (quite logically), so in particular one cannot get the documentation
thomas_scrace has joined #ocaml
<_y>
the thing i observed earlier was probably a consequence of dune convoluted build process
thomas_scrace has quit [Ping timeout: 244 seconds]
Adr1 has quit [Ping timeout: 260 seconds]
thomas_scrace has joined #ocaml
thomas_scrace has quit [Ping timeout: 244 seconds]
Adr1 has joined #ocaml
pierpal has quit [Quit: Poof]
pierpal has joined #ocaml
thomas_scrace has joined #ocaml
eNigmaFx28 has joined #ocaml
eNigmaFx28 has quit [Remote host closed the connection]
pierpal has quit [Quit: Poof]
pierpal has joined #ocaml
jbrown has joined #ocaml
Yatekii16 has joined #ocaml
Yatekii16 has quit [Remote host closed the connection]
cobreadmonster has quit [Quit: Connection closed for inactivity]
FreeBirdLjj has joined #ocaml
Rosslaew has joined #ocaml
<Ulrar>
Is there a function 'a Lwt.t list -> 'a list Lwt.t somewhere ? I don't mean pick and choose, but something to actually "extract" all the values
<Drup>
Ulrar: Lwt_list.map (fun x -> x)
<Drup>
(either s or p, depending on the semantics you want)
nicoo has quit [Remote host closed the connection]
nicoo has joined #ocaml
<Ulrar>
Ah
<Ulrar>
That was simple
<Ulrar>
Thanks !
Rosslaew has quit [Ping timeout: 240 seconds]
Boulet23 has joined #ocaml
Fare has joined #ocaml
theglass has left #ocaml [#ocaml]
Boulet23 has quit [Remote host closed the connection]
theglass has joined #ocaml
TC01 has quit [Ping timeout: 250 seconds]
TC01 has joined #ocaml
ollehar has quit [Ping timeout: 240 seconds]
Rosslaew has joined #ocaml
Fare has quit [Ping timeout: 244 seconds]
nicoo has quit [Ping timeout: 256 seconds]
Haudegen has quit [Remote host closed the connection]
nicoo has joined #ocaml
BWBellairs16 has joined #ocaml
BWBellairs16 has quit [Remote host closed the connection]
Fare has joined #ocaml
sagotch has quit [Quit: Leaving.]
Fare has quit [Read error: Connection reset by peer]
jaar has quit [Quit: Leaving]
Rosslaew has quit [Ping timeout: 240 seconds]
Rosslaew has joined #ocaml
<discord>
<Christophe> Is there a philosophical reason why there is not an identity function in the stdlib ? (or is there under a different name?)
<discord>
<Christophe> I understand taht it's easy to write fun x -> x but still
<companion_cube>
no idea
<companion_cube>
people don't want to extend `Pervasives` too much these days, and there's no obvious place to put that
cyraxjoe has quit [Quit: I'm out!]
cyraxjoe has joined #ocaml
ziyourenxiang has quit [Ping timeout: 245 seconds]
Rosslaew has quit [Ping timeout: 240 seconds]
Guest61827 has joined #ocaml
sagotch has joined #ocaml
sagotch has quit [Client Quit]
Rosslaew has joined #ocaml
Guest61827 has quit [Remote host closed the connection]
jnavila has joined #ocaml
<ZirconiumX>
I think it's precisely that it's so easy to do that it doesn't exist
Fare has joined #ocaml
TheLemonMan has joined #ocaml
thomas_scrace has quit [Ping timeout: 240 seconds]
Denommus has joined #ocaml
Rosslaew has quit [Ping timeout: 240 seconds]
Rosslaew has joined #ocaml
jbrown has quit [Ping timeout: 245 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
jnavila has quit [Ping timeout: 260 seconds]
percY-25 has joined #ocaml
FreeBirdLjj has joined #ocaml
percY-25 has quit [Remote host closed the connection]
FreeBirdLjj has quit [Ping timeout: 246 seconds]
FreeBirdLjj has joined #ocaml
Rosslaew has quit [Ping timeout: 240 seconds]
roygbiv has joined #ocaml
Fare has quit [Ping timeout: 245 seconds]
<Adr1>
any good resources to learn about the new Seq module? There is no usage example on the man page
<reynir>
zomg, there are man pages for stdlib modules!!
Rosslaew has joined #ocaml
<discord>
<Christophe> mindblown That's awesome !
<Drup>
Yeah, the formatting is a bit borked there unfortunately :D
gareppa has joined #ocaml
roygbiv has quit [Quit: ™]
<Drup>
companion_cube: do you have any tutorials on Seq ?
<companion_cube>
no
<companion_cube>
I don't have a lot of motivation for OCaml these days, beyond exploratory stuff
<reynir>
:(
jack5638 has quit [Ping timeout: 240 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
<companion_cube>
hey, rust has standard iterators ;-)
kakadu_ has joined #ocaml
FreeBirdLjj has joined #ocaml
Fare has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 245 seconds]
FreeBirdLjj has joined #ocaml
gareppa has quit [Quit: Leaving]
gareppa has joined #ocaml
jack5638 has joined #ocaml
<Drup>
so does OCaml now :p
FreeBirdLjj has quit [Remote host closed the connection]
<companion_cube>
yeah but there's too much work yet to do
<companion_cube>
I'm not even motivated for the IO PR anymore
jbrown has joined #ocaml
<reynir>
we have tagine
<discord>
<anuragsoni.13> its nice to have a change every now and then! Rust is also really interesting to use
<companion_cube>
it is
<companion_cube>
also, cargo is so far a pleasure to use
<discord>
<anuragsoni.13> cargo has definitely been a big reason for the "ease of use" in rust
<companion_cube>
clearly, yeah
tokomak has joined #ocaml
<companion_cube>
the only aspect where rust's tooling doesn't match OCaml's is, by far, merlin
<companion_cube>
otherwise cargo and online docs are just so much simpler to use
<discord>
<anuragsoni.13> Rust language server is trying to fill that role to some extent
<discord>
<anuragsoni.13> its still pretty new but i've found it easy to setup
<tautologico>
tooling, documentation and community around Rust are great :) fighting the borrow checker is not
<discord>
<anuragsoni.13> moreso now that its managed by rustup so doesn't need to compile from source every time
<tokomak>
then there's me on gentoo :P
<tokomak>
rust gets rebuilt with firefox half the time
Rosslaew has quit [Ping timeout: 240 seconds]
<companion_cube>
RLS is there, but it's just not as good as merlin
<companion_cube>
(but yeah, overall it's very pleasant)
<discord>
<anuragsoni.13> I'm still new with merlin so i'm not aware of the full feature set, but is there anything in particular that you'd say is missing from RLS, that merlin does?
Haudegen has joined #ocaml
Adr1 has quit [Quit: WeeChat 1.9.1]
<companion_cube>
oh, merlin is much more robust in the face of syntax errors or files which don't typecheck
<companion_cube>
in my (limited) experience, RLS has trouble completing in such cases
<companion_cube>
or for long chains of `foo.bar().baaz()`, also
<discord>
<anuragsoni.13> Ah, okay!
<companion_cube>
merlin is really really robust, I find that it almost never fails when there's something to infer from a mess of a file
siinus`5 has joined #ocaml
<discord>
<anuragsoni.13> i've been very happy with merlin + ocp-indent for my editor support!
<companion_cube>
me as well!
siinus`5 has quit [Remote host closed the connection]
orbifx has joined #ocaml
pierpal has quit [Quit: Poof]
gtrak has joined #ocaml
pierpal has joined #ocaml
orbifx has quit [Ping timeout: 260 seconds]
orbifx has joined #ocaml
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
neatonk has quit [Remote host closed the connection]
neatonk has joined #ocaml
pierpa has joined #ocaml
thomas_scrace has joined #ocaml
thomas_scrace has quit [Ping timeout: 246 seconds]
Fare has quit [Ping timeout: 245 seconds]
Fare has joined #ocaml
jnavila has joined #ocaml
cyraxjoe has quit [Remote host closed the connection]
gareppa has quit [Quit: Leaving]
cyraxjoe has joined #ocaml
_andre has quit [Quit: leaving]
demonimin has quit [Ping timeout: 246 seconds]
cyraxjoe has left #ocaml ["Farewell"]
kakadu_ has quit [Remote host closed the connection]
jnavila has quit [Quit: Konversation terminated!]
bartholin has quit [Remote host closed the connection]