First of all, APR is not a virtual machine or bytecode interpreter like that of.NET common language runtime or JVM. APR is a library (collection of functions) written in C, for C programs. It contains a lot of wrappers to the real standard C library functions, because some conventions of standard library still varies from OS to OS.
For example, the path separator is different in Unix ("/"), Windows ("\"), MacOS (":" - pre X, but also Finder in OS X). Another example is loading dynamically linked libraries
The NSPR offers similar functionality. Info about the NSPR is here [mozilla.org].
I'm guessing by this stage that both the APR and NSPR are industrial strength libs to write cross-platforms against. Both have similar functionality because both underpin web servers (yes NSPR is used by the AOL/Sun iPlanet webserver, and not just Mozilla).
What it might boil down to in the end is which runtime's licence is most compatible with what you have in mind.
After Firefox 1.0, Mozilla should consider ditching NSPR for APR. The engineering and QA time spent on NSPR (which is pretty much done/frozen) can be redirected to APR. That work would benefit the open-source community, but Mozilla would also benefit from other people fixing bugs in APR.:D
Some info on APR ... (Score:5, Informative)
First of all, APR is not a virtual machine or bytecode interpreter like that of .NET common language runtime or JVM. APR is a library (collection of functions) written in C, for C programs. It contains a lot of wrappers to the real standard C library functions, because some conventions of standard library still varies from OS to OS.
For example, the path separator is different in Unix ("/"), Windows ("\"), MacOS (":" - pre X, but also Finder in OS X). Another example is loading dynamically linked libraries
Re:Some info on APR ... (Score:5, Informative)
I'm guessing by this stage that both the APR and NSPR are industrial strength libs to write cross-platforms against. Both have similar functionality because both underpin web servers (yes NSPR is used by the AOL/Sun iPlanet webserver, and not just Mozilla).
What it might boil down to in the end is which runtime's licence is most compatible with what you have in mind.
Re:Some info on APR ... (Score:2)
After Firefox 1.0, Mozilla should consider ditching NSPR for APR. The engineering and QA time spent on NSPR (which is pretty much done/frozen) can be redirected to APR. That work would benefit the open-source community, but Mozilla would also benefit from other people fixing bugs in APR.