Developing for multiple releases?

Vlad Dumitrescu XX (LN/EAB) <>
Wed Sep 14 13:34:37 CEST 2005

> > My question refers mostly to the fact that beam code 
> compiled for R10 can't be loaded by a R9 VM. So if I need to 
> support both releases, I need to compile it twice. [*]
> Why not compile using R9 then? The code will run on R10B.

Yes, that's a possibility, but then I'll be stuck to the latest release anyone is using. That feels like the same issue you are confronting daily in the OTP team :-)
> And whose code are you referring code? The code for your 
> tools, or the user's code?


** For my tool's code, it's like this. I develop Erlide that also contains Erlang code. I personally use R10, but there are many potential users that use still R9. In order to be able to start Erlide on R9, the code must be compatible.

So I can either step back and use R9 code in Erlide, or generate code for both releases and at runtime check current version and use that code.

The first is simplest, but is limiting.
The second is a little difficult to administrate.

** For the users' code, it may also be important. If it is something that is useful, it should be done early in my development cycle, because it affects other parts.


More information about the erlang-questions mailing list