companion_cube changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.11 release notes: https://caml.inria.fr/pub/distrib/ocaml-4.11/notes/Changes | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
oriba has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
mxns has joined #ocaml
decentpenguin has quit [Ping timeout: 246 seconds]
mxns has quit [Ping timeout: 256 seconds]
mxns has joined #ocaml
rock64 has quit [Ping timeout: 256 seconds]
rock64 has joined #ocaml
decentpenguin has joined #ocaml
dh` has joined #ocaml
<dh`> so after updating to 4.11 it seems that I need an explicit -ccopt -L/usr/pkg/lib to link with the z3 bindings successfully, which was not previously the case
<dh`> (/usr/pkg/lib is where libz3.so is)
<dh`> this is after already having -I /usr/pkg/lib/ocaml/site-lib/Z3 on the link line (which used to be sufficient)
<dh`> this seems like a problem, but it's not obvious to me what's wrong or where it should be fixed or why the behavior should have changed.
<dh`> it works with ocamlfind because the ocamlfind META file includes the "-ccopt -L/usr/pkglib"; but it used to work without ocamlfind too
<dh`> anyone know what's up?
<dh`> (this is with the OS packaging of both ocaml and z3, which is my problem to fix if it's bust)
<dh`> don't all reply at once :-)
Haudegen has quit [Quit: Bin weg.]
osa1 has quit [Ping timeout: 260 seconds]
mxns has quit [Ping timeout: 272 seconds]
_whitelogger has joined #ocaml
<companion_cube> people are asleep
<companion_cube> but using system's z3 is definitely not usual
<companion_cube> (and z3 is already a pain to package)
mfp has quit [Ping timeout: 245 seconds]
<dh`> well, I originally packaged it so it would be convenient to use
<dh`> that was a while back and other people have updated the package since, but I don't remember it being particularly bad
<dh`> then again, I may have a different scale :-)
<dh`> anyway the z3 package hasn't changed since it last worked, only ocaml
<dh`> (and other things z3 depends on, like python, I guess)
<dh`> anyway it seems to do
<dh`> ocamlmklib -o api/ml/z3ml -I api/ml api/ml/z3native_stubs.o api/ml/z3enums.cmx api/ml/z3native.cmx api/ml/z3.cmx -L. -lz3
<dh`> and that -L. gets remembered and replayed it seems, which is probably not what was wanted
<dh`> but on the other hand, that's hardcoded in z3's python build goo and doesn't seem to have changed
curtosis[away] has joined #ocaml
hosewiejacke has joined #ocaml
dfeuer has joined #ocaml
dfeuer has quit [Ping timeout: 256 seconds]
curtosis[away] has quit [Quit: My Mac Mini has gone to sleep. ZZZzzz…]
hosewiejacke has quit [Ping timeout: 245 seconds]
zebrag has quit [Quit: Konversation terminated!]
Haudegen has joined #ocaml
hosewiejacke has joined #ocaml
narimiran_ has joined #ocaml
osa1 has joined #ocaml
gopiandcode has joined #ocaml
<d_bot_> <froyo> ok which one of you is responsible for this 😂
<gopiandcode> Is there a way of reliably getting the path to the build outputs from dune? (in particular, the cmt and cmo files)?
mbuf has joined #ocaml
gopiandcode94 has joined #ocaml
<d_bot_> <EduardoRFS> it's a friend of mine, I was always talking on how cool OCaml Multicore is
waleee-cl has quit [Quit: Connection closed for inactivity]
hosewiejacke has quit [Ping timeout: 245 seconds]
decentpenguin has quit [Quit: ZNC crashed or something]
decentpenguin has joined #ocaml
<d_bot_> <froyo> i love it lol
Serpent7776 has joined #ocaml
nicoo has quit [Ping timeout: 268 seconds]
nicoo has joined #ocaml
gopiandcode has quit [Read error: Connection reset by peer]
gopiandcode has joined #ocaml
benc has joined #ocaml
gopiandcode has quit [Read error: Connection reset by peer]
<sadiq> I love that kc follows that.
gopiandcode94 has quit [Quit: Connection closed]
borne has joined #ocaml
Leonidas_ is now known as Leonidas
Leonidas is now known as Guest79068
bartholin has joined #ocaml
Guest79068 is now known as Leonidas_
Leonidas_ is now known as Leonidas
Leonidas has joined #ocaml
Leonidas has quit [Changing host]
<d_bot_> <joris> Hi, is there a way for ppx to emit warnings without generating attributes to raise alert in code ?
nepascourir has joined #ocaml
olle has joined #ocaml
vicfred has quit [Quit: Leaving]
hosewiejacke has joined #ocaml
<d_bot_> <Drup> It's the right way to do it :p
mfp has joined #ocaml
benc has quit [Remote host closed the connection]
<d_bot_> <fangyi> Do you mean something like https://github.com/janestreet/ppx_js_style?
Anarchos has joined #ocaml
gopiandcode has joined #ocaml
benc has joined #ocaml
<d_bot_> <joris> @Drup but it looks super complicated how do you as precise location
<d_bot_> <Drup> well, that's the point, you attach the attribute on the thing
<d_bot_> <Drup> and it raises a warning about the thing
<d_bot_> <joris> But I generate strings. There is not thing on the generated code it is super coarse
<d_bot_> <Drup> Ok, you need to give me concrete examples of your code pattern, and where you want to warn
<d_bot_> <joris> Imagine ppx tyxml but instead of generating dsl you generate plain html string. But you want to add warning on html constructs that are shady
<d_bot_> <Drup> (Note that `Ast_helper.attribute_of_warning` takes an explicit location)
<d_bot_> <joris> Ahh. That might help thanks
benc has quit [Remote host closed the connection]
<d_bot_> <Drup> (or the same function in `Ppxlib`)
<d_bot_> <Drup> (why are you reimplementing tyxml's ppx ? :D)
<d_bot_> <joris> I'm not still my sql ppx but it was to give example
<d_bot_> <joris> Basically I want to warn about suspicious ident shadowing in sql queries because scope in sql sucks really hard and is very error prone but I don't want to strictly disallow it
<d_bot_> <joris> The amount of bugs that slips into sql queries due to scoping of as is concerning the
benc has joined #ocaml
Anarchos has quit [Quit: Vision[0.10.3]: i've been blurred!]
<d_bot_> <joris> @fangyi i'll look at how the ppx is implemented, thanks
Anarchos has joined #ocaml
mbuf has quit [Quit: Leaving]
sm2n_ has quit [Quit: Leaving]
nepascourir has quit [Ping timeout: 264 seconds]
hosewiejacke has quit [Ping timeout: 245 seconds]
sm2n has joined #ocaml
dfeuer has joined #ocaml
gopiandcode has quit [Quit: Connection closed]
Anarchos has quit [Quit: Vision[0.10.3]: i've been blurred!]
hosewiejacke has joined #ocaml
nepascourir has joined #ocaml
haesbaer1 is now known as haesbaert
haesbaert has quit [Quit: leaving]
haesbaert has joined #ocaml
TheLemonMan has joined #ocaml
zebrag has joined #ocaml
<d_bot_> <Cyclomatic Complexity> hi
<d_bot_> <Cyclomatic Complexity> given a module type signature, is it possible to make it into a more abstract one?
<d_bot_> <Cyclomatic Complexity> like, `module type Woo_abstract = Woo with type t` or something
<d_bot_> <octachron> No.
<d_bot_> <Cyclomatic Complexity> is there an existing way to automate this (ppx or whatever) so that i don't have to copy-paste and maintain it manually?
<d_bot_> <octachron> Define the abstract module type and add equalities?
Anarchos has joined #ocaml
curtosis[away] has joined #ocaml
Anarchos has quit [Read error: Connection reset by peer]
curtosis[away] has quit [Quit: My Mac Mini has gone to sleep. ZZZzzz…]
<d_bot_> <Cyclomatic Complexity> The type is big, and changes a lot
hosewiejacke has quit [Ping timeout: 245 seconds]
Tuplanolla has joined #ocaml
hosewiejacke has joined #ocaml
vicfred has joined #ocaml
borne has quit [Ping timeout: 272 seconds]
mxns has joined #ocaml
curtosis[away] has joined #ocaml
benc has quit []
curtosis[away] has quit [Quit: My Mac Mini has gone to sleep. ZZZzzz…]
borne has joined #ocaml
mxns has quit [Ping timeout: 264 seconds]
mxns has joined #ocaml
nepascourir has quit [Quit: Leaving]
olle has quit [Ping timeout: 245 seconds]
hosewiejacke has quit [Ping timeout: 245 seconds]
webshinra has quit [Remote host closed the connection]
mxns has quit [Ping timeout: 256 seconds]
borne has quit [Ping timeout: 264 seconds]
mxns has joined #ocaml
borne has joined #ocaml
mxns has quit [Ping timeout: 276 seconds]
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
mxns has joined #ocaml
hosewiejacke has joined #ocaml
mxns has quit [Ping timeout: 260 seconds]
webshinra has joined #ocaml
hosewiejacke has quit [Ping timeout: 245 seconds]
borne has quit [Ping timeout: 272 seconds]
mxns has joined #ocaml
tane has joined #ocaml
waleee-cl has joined #ocaml
hosewiejacke has joined #ocaml
hosewiejacke has quit [Remote host closed the connection]
Guest87534 is now known as mischief
Serpent7776 has quit [Read error: Connection reset by peer]
Serpent7776 has joined #ocaml
borne has joined #ocaml
<d_bot_> <Cyclomatic Complexity> But yeah, that's what I ended up doing
<d_bot_> <Cyclomatic Complexity> Is there a way to have `dune --watch` reset the buffer from scratch instead of appending?
<d_bot_> <Cyclomatic Complexity> (The reason why is that emacs believes there are more and more errors in the `*compilation*` buffer)
<d_bot_> <ec> is there any way to declare that two record types are equivalent, but still type them out in two places?
<d_bot_> <ec> i doubt that message made much sense.
<d_bot_> <ec> I have an extension that *must* be applied *within* an `external` declaration — i.e., the following won't work:
<d_bot_> <ec>
<d_bot_> <ec> ```ocaml
<d_bot_> <ec> type foo = { member: a_type [@bs.unwrap] }
<d_bot_> <ec>
<d_bot_> <ec> external blah : foo -> bar = ""
<d_bot_> <ec> ```
<d_bot_> <ec> the `[@unwrap]` annotation is only functional if *inline* in the `external`:
<d_bot_> <ec>
<d_bot_> <ec> ```ocaml
<d_bot_> <ec> external blah :
<d_bot_> <ec> {member: a_type [@bs.unwrap]} ->
<d_bot_> <ec> bar = ""
<d_bot_> <ec> ```
<d_bot_> <joris> What is this syntax :o
<d_bot_> <ec> did i fuck something up? sorry, I typed that out in Discord
<d_bot_> <ec> mighta typo'd
<d_bot_> <joris> Idk can you really write a record like this in the external signature?
<d_bot_> <joris> You can do
<d_bot_> <joris> ```
<d_bot_> <joris> type a = Foo.b ={ member : int}
<d_bot_> <joris> ```
<d_bot_> <joris> But I don't j understand your case
olle has joined #ocaml
* d_bot_ <ec> nods
<d_bot_> <ec> gimmie a sec to double-check that the question I'm making even makes sense, brb
mxns has quit [Ping timeout: 245 seconds]
olle has quit [Remote host closed the connection]
bartholin has quit [Quit: Leaving]
mxns has joined #ocaml
mxns has quit [Ping timeout: 264 seconds]
engil1 is now known as engil
engil has quit [Changing host]
engil has joined #ocaml
narimiran_ has quit [Quit: leaving]
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
borne has quit [Ping timeout: 260 seconds]
borne has joined #ocaml
<dfeuer> How can I find out if there's a key/combo in vim bound to :MerlinLocate? If there isn't one, how do I make one?
<dfeuer> I don't know much about vim *or* about Merlin.
shawnw has joined #ocaml
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
mxns has joined #ocaml
mxns has quit [Ping timeout: 256 seconds]
<d_bot_> <roddy> Not sure how you can check if there is one, but you can make by putting `nnoremap keystobind :MerlinLocate<CR>` in your .vimrc (e.g. keystobind being `<leader>gd`)
mxns has joined #ocaml
oriba has joined #ocaml
mxns has quit [Ping timeout: 264 seconds]
zebrag has quit [Quit: Konversation terminated!]
zebrag has joined #ocaml
mxns has joined #ocaml
borne has quit [Ping timeout: 260 seconds]
curtosis has joined #ocaml
borne has joined #ocaml
mxns has quit [Ping timeout: 264 seconds]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
curtosis is now known as curtosis[away]
curtosis[away] has quit [Quit: My Mac Mini has gone to sleep. ZZZzzz…]