RFR: 8151542: URL resources for multi-release jar files have a #runtime fragment appended to them

John Rose john.r.rose at oracle.com
Fri Apr 29 19:56:24 UTC 2016


On Apr 28, 2016, at 11:26 AM, Steve Drach <steve.drach at oracle.com> wrote:
> 
> Keeping with the path precedent, is it acceptable to change “getReifiedName” to “getRealName”?  

For me, in this setting, "true" and "real" are equally good.
(Perhaps they differ metaphysically, but that's too many for me.)
So, yes, nio.Path says "real", and I'm happy with that.
Thanks,
— John

> 
>>>> 
>>>> Diction Note: Reified X means X wasn't real (in some sense) until now. As in non-reified types, which are not real at runtime because the static compiler discarded them.
>>>> 
>>> 
>>> I suggested reified because i thought it fit with the notion of making something abstract more concrete, but perhaps this just confuses matters?
>> 
>> It's the real name, but since it already exists (because that's how it is stored) it isn't really reified, it's just revealed.
>> 
>> This API uses the term "real name" for an almost identical phenomenon (target of a sym-link in a file system):
>> 
>> https://docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html#toRealPath-java.nio.file.LinkOption...-
>> 
>> In a versioned jar, the logical names are sometimes mapped to other names under which the elements are actually stored.
>> Thus, they behave like sym-links.  (But with a bit of control context thrown in, the active version.)
>> 
>> On old-fashioned file systems with real version numbers, the Common Lisp function TRUENAME does exactly what you are trying to do here.
>> 
>> http://www.mathcs.duq.edu/simon/Gcl/gcl_1141.html
>> 
>> (And in some way, we are sliding down the slope toward re-inventing those file systems, aren't we?)
>> 
>> The older pre-nio API for File calls it "getCanonicalPath", but I think "true name" is better than
>> "canonical name", since "canonical" means "follows the rules", rather than what we need in this case,
>> which is "where it really is stored".
>> 
>> http://docs.oracle.com/javase/8/docs/api/java/io/File.html#getCanonicalPath--
>> 
>>> 
>>>> In this case it appears you are simply exposing a translated name, not making it real for the first time.
>>>> 
>>>> If this is true, I think you want to say "true name" or "real name" or "translated name", not "reified name”.
>>> 
>>> or “versioned name" would work for me.
>> 
>> I'm just whinging about the term "reified" which doesn't seem to work, logically.
>> 
>> "Versioned name" would work for me too.  But "true name" has the two good precedents cited above.
>> 
>> — John
> 




More information about the core-libs-dev mailing list