Hi,

Overall quite happy with the EEP.

On 10/13/2015 11:31 AM, Vlad Dumitrescu wrote:
Hi!

While I think that the proposed changes are good and will improve the
preprocessor, I am worried about the effect it will have on how code is
build and on code that may run on unspecified OTP versions (escripts).
If I understand correctly, these are some of the effects:

* one will now be forced to compile within an environment identical to
the target - so that all the preprocessor conditions resolve to the
right values. This includes having all dependencies (even transitive?)
installed in the development environment and the build server, not only
OTP. Is the application descriptor enough to define that, or does it
need to be extended? Maybe the new package manager is supposed to help here?

People already do these things, although in a more awkward way, as explained in the EEP. I don't foresee the ecosystem to change much just because the preprocessor lets you do it more easily.

* if one targets multiple versions, then the set-up of the development
environment is unwieldy unless one needs to use something like kerl to
manage the multiple environments. It feels a bit wrong to have OTP
depend indirectly on a third party application... I think that OTP
should provide tools to help with that.

I'm not sure what you think something inside OTP can do better than something outside OTP. Can you clarify your thoughts on that?

I think it's very good that so much of the ecosystem relies on third party tools and libraries. It's a sign that Erlang is thriving. It's no longer the sole responsibility of the OTP team to provide everything.

* if not deploying an OTP application or a full system, one can't know
if the target will fulfill the expected conditions - what about compiled
escripts?

Those tend to be compiled for the lowest supported version to make sure they work "everywhere". I don't think this EEP will change anything about that.

--
Loïc Hoguin
http://ninenines.eu
Author of The Erlanger Playbook,
A book about software development using Erlang
_______________________________________________
eeps mailing list
[email protected]
http://erlang.org/mailman/listinfo/eeps

Reply via email to