Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Oct 25 2020 20:09
    gildor478 edited #532
  • Oct 25 2020 20:09
    gildor478 commented #532
  • Oct 24 2020 23:57
    Travis ocaml/oasis (master) passed (282)
  • Oct 24 2020 21:40
    Travis ocaml/oasis (master) canceled (281)
  • Oct 24 2020 21:40

    gildor478 on master

    Update README.md (compare)

  • Oct 24 2020 21:20
    Travis ocaml/oasis (master) canceled (280)
  • Oct 24 2020 21:20

    gildor478 on master

    Improve documentation. (compare)

  • Oct 24 2020 21:13
    Travis ocaml/oasis (master) canceled (279)
  • Oct 24 2020 21:13

    gildor478 on master

    Update logo. (compare)

  • Oct 24 2020 21:10
    bar commented #532
  • Oct 24 2020 21:10

    gildor478 on master

    Integrate documentation from oa… (compare)

  • Oct 24 2020 19:13
    gildor478 commented #557
  • Oct 24 2020 19:12
    gildor478 commented #509
  • Oct 24 2020 19:12
    gildor478 commented #507
  • Oct 24 2020 19:11
    gildor478 commented #505
  • Oct 24 2020 19:11
    gildor478 commented #494
  • Oct 24 2020 19:10
    gildor478 commented #373
  • Oct 24 2020 19:10
    gildor478 commented #371
  • Oct 24 2020 19:09
    gildor478 commented #367
  • Oct 24 2020 19:09
    gildor478 commented #363
Kenneth Adam Miller
@KennethAdamMiller
In particular, I don't like how my scripts folder breaks down results with grep and other things
Oh ok!
Well, now I had planned a lot of development efforts around ppx to use instrumentation to write some programmable debugging facilities.
Separate from bap. You say that ppx is really fragile?
Ivan Gotovchits
@ivg
I didn't say this. I said that ppx_deriving is fragile, stick to ppx_jane
and it doesn't mean that you shouldn't to use [@@deriving ...]. Just ppx_deriving grabbed that name, but ppx_jane is handling better this extension.
There are a few well-supported ppx extensions from Janestreet https://github.com/janestreet?q=ppx&type=&language=
Kenneth Adam Miller
@KennethAdamMiller
I was just thinking that the correction was from ppx to ppx_deriving being fragile. So, does ppx_jane allow for some comport of what ppx_deriving was for?
Ivan Gotovchits
@ivg
Yes, ppx_deriving_* libraries are fragile
Kenneth Adam Miller
@KennethAdamMiller
ha, like just as you wrote that.
Well, maybe I could share some of the project ideas with you.
Ivan Gotovchits
@ivg
but not in this chat, we already abuse it :)
Kenneth Adam Miller
@KennethAdamMiller
ok
Jaime Arias Almeida
@himito
Hello everyone :)
I was wondering if there is an option in oasis in order to build incrementally.
Ivan Gotovchits
@ivg
@himito, what do you mean by incremental build?
Jaime Arias Almeida
@himito
hi @ivg , for example, if I change only one line of code, then the build system does not recompile the whole project
Ivan Gotovchits
@ivg
Well, this is enabled by default (and has nothing to do with oasis, in fact), but the cross-module optimization kicks in and makes things slow. You can disable it by using the -opaque option of the compiler.

E.g., you can add the following (provided that you're using ocamlbuild backend) to the myocamlbuild.ml

let disable_crossmodule_optimization = function
  | After_rules -> flag ["ocaml"; "compile"] (A "-opaque")
  | _ -> ()

let () =
  Ocamlbuild_plugin.dispatch (fun stage ->
      disable_crossmodule_optimization stage)

and then after you touch any module no other modules, including those that depend on it will be recompiled. Well, unless you change the interface, of course.

Jaime Arias Almeida
@himito
:O I see, thank you @ivg , I will try :D
Ivan Gotovchits
@ivg
Sure thing :)
Jaime Arias Almeida
@himito
@ivg it worked !! thanks a lot !
Ivan Gotovchits
@ivg
glad to help :)
Kenneth Adam Miller
@KennethAdamMiller
I don't see landmarks anywhere in your _oasis, so I don't know how you tell oasis to rewrite with the ppx-landmarks?
Ivan Gotovchits
@ivg
I wasn't using ppx_landmarks, since I was profiling monadic code, but adding landmarks.ppx to the dependencies list might work