On Sat, Apr 22, 2017 at 8:06 PM, Hongbo Zhang (BLOOMBERG/ 731 LEX) < hzhang295@bloomberg.net> wrote: > Exactly, for companies like janestreet, they may not feel its pain since > they didn't depend on external ppx, release software only works on latest > compilers, and have a very good orientation section about those > conventions, it makes perfect sense under such internal organizations. > Jane Street has no special immunity. We use external PPXs, and we in fact had a bunch of pain around versioning of PPXs, which is precisely why we've spent real effort on making versioning easier. Syntactic abstraction is amazingly useful for many different kinds of programming, open source and industrial alike. Again, I the emphasis should be on identifying and fixing the problems with PPX, not pushing to avoid it. > But for external open source communities, it's too bad that PPX is so > widely used, migrate-parsetree maybe useful, but it adds yet another layer > of complexity, the real solution is checking in generated code which will > cut the dependency completely or just don't use ppx. > Did you read Jeremie's post? That solution was considered, but it turns out to have a lot of issues. > Anyway , I don't want to make anyone unhappy, but I believe acknowledging > what the awesome OCaml language offers and keeping build high quality > software instead of writing ppx is the right way to benefit our community . > People built amazing software in less expressive languages like GoLang, I > am sure we can do much better! > But as OCaml users know, more expressive languages really do help. I'm not in favor of adding expressiveness at all costs, but the upside of PPX is massive, and the problems are eminently manageable, as the emergence of tools like migrate-parsetree has demonstrated. y > ----- Original Message ----- > From: Robert Muller > To: HONGBO ZHANG > CC: caml-list@inria.fr, ssp.mryau@gmail.com > At: 22-Apr-2017 15:47:47 > > The VAX Fortran compiler was a state-of-the-art compiler in its day. The > compiler was implemented in BLISS, a systems programming language with a > powerful macro system. Each compiler developer invariably authored their > own macros to suit their styles. So when one wandered into foreign bits of > the compiler they appeared to be written in different dialects of BLISS. We > had the dialects of the present developers as well as legacy dialects from > years of earlier developers. It was not for nothing that our development > machine was called "Babel". > New hires faced a steeper slope in mastering the compiler than they would > have had there been no macros. I concluded that macros, at least managed in > that style, were injurious to the engineering process. > - Bob Muller > > > On Sat, Apr 22, 2017 at 10:47 AM, Hongbo Zhang (BLOOMBERG/ 731 LEX) < > hzhang295@bloomberg.net> wrote: > >> Yes, I agree it's useful , and that's why I wrote hundreds of thousands >> of lines of code in syntactic meta-programming (camlp4, fan, ppx) >> But in the end of day, the conclusion is the cost is just so huge that it >> should not be widely used, at least , it should not be *leaked* to end >> users. ( I remember I had a conversation with the original maintainer of >> camlp4, Nicolas, about 5 years ago, he had similar ideas with me) >> >> >> ----- Original Message ----- >> From: Serge Sivkov >> To: caml-list@inria.fr >> At: 22-Apr-2017 08:49:40 >> >> Hence, my two cents: PPX has problems in cross-compilation use cases, but >> I suppose something like new tag in META can reslove this issue. >> As for me, just ppx_deriving* by whitequark is yet one example of >> usefullness of PPX. >> >> WBR, ssp >> >> 2017-04-22 5:10 GMT+06:00 Emilio Jesús Gallego Arias : >> >>> "Hongbo Zhang (BLOOMBERG/ 731 LEX)" writes: >>> >>> > Yes, that's exactly what I suggested in the beginning! >>> >>> Maybe I interpret the word "harmful" differently, but IMVHO I have to >>> strongly disagree with your choice of subject in the original mail. >>> >>> Not only PPX has not been harmful for me, but it has been a life-saver >>> tool that has enabled significant progress towards more productive >>> research. >>> >>> "Hongbo Zhang (BLOOMBERG/ 731 LEX)" writes: >>> >>> > calling it 'madness' is disrespectful >>> >>> Personally, I fully subscribe Yaron's message and I see nothing >>> disrespectful in suggesting that abandoning syntactic abstractions is a >>> very bad idea. >>> >>> You wrote: >>> >>> "the OCaml library developer should avoid PPX as much as you can", >>> >>> but if you meant: >>> >>> "PPX seems quite unstable these days, I wonder how could we improve >>> long-term stability?" >>> >>> I'd have to admit that message didn't reach to me. >>> >>> Best regards! >>> Emilio >>> >>> -- >>> Caml-list mailing list. Subscription management and archives: >>> https://sympa.inria.fr/sympa/arc/caml-list >>> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners >>> Bug reports: http://caml.inria.fr/bin/caml-bugs >>> >> >> >