ASDF configuration for "JAR-only" system

John Pallister john at synchromesh.com
Wed Dec 16 11:58:31 UTC 2015


Hi Mark,

Thanks for your response. Running LISP-IMPLEMENTATION-VERSION from within
the GAE development server gives:

  1.3.3
  Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.7.0_60-b19
  x86_64-Mac_OS_X-10.9.5

It sounds like getting ASDF working is going to be more of a can of worms
than simply fixing my ASDF configuration. It's not crucial to my project
and I know you're busy, so perhaps we should just create an issue for
anything PATHNAME-related that might need looking at and then come back to
it at some point in the future? I'll just unpack my JAR file and load the
FASLs directly in the meantime.

Thanks again,

John :^P (flying like an eagle to the sea)

On 15 December 2015 at 20:11, Mark Evenson <evenson at panix.com> wrote:

>
>
> On 2015/12/14 23:39, John Pallister wrote:
> […]
> > That is, merging a relative path with the (absolute) JFAD path retained
> the
> > default JAR file "device" (and remains a relative path, which ASDF won't
> > accept), but merging an absolute path reset the device component. I've
> read
> > through the documentation for MERGE-PATHNAMES in the HyperSpec[2] and
> > AFAICT the device component should be copied across. I'm reasonably
> > confident that if it were, things would work better. But I could be
> > (doubly) wrong.
> >
> > I am trying to figure this out for myself, but I'm stuck for now, so I'm
> > hoping someone (i.e. Mark) can, on reading this, offer some guidance as
> to
> > where I should go from here. I haven't (yet) tried posting to the ASDF
> > mailing list as this seems like a fairly ABCL-specific issue.
> >
> […]
> You are probably being bit here by the shenanigans noted in section
> 1.1.1 entitled "ANSI Common Lisp" of the [User Manual][1]:
>
> […]
>
> When merging pathnames and the defaults point to a EXT:JAR-PATHNAME, we
> set the DEVICE of the result to :UNSPECIFIC if the pathname to be be
> merged does not contain a specified DEVICE, does not contain a specified
> HOST, does contain a relative DIRECTORY, and we are not running on a
> MSFT Windows platform.
>
> […]
>
> [Footnote] The intent of this rather arcane sounding deviation from
> conformance is so that the result of a merge won’t fill in a DEVICE with
> the wrong ”default device for the host” in the sense of the fourth
> paragraph in the CLHS description of MERGE-PATHNAMES (see in [P+96] the
> paragraph beginning ”If the PATHNAME explicitly specifies a host and not
> a device”). A future version of the implementation may return to
> conformance by using the HOST value to reflect the type explicitly.
>
> […]
>
> [1]: http://abcl.org/releases/1.3.3/abcl-1.3.3.pdf
>
> If desired, one can study the current aim of the implementation in using
> the DEVICE field to represent a JAR file via the [url-pathname][2] and
> [jar-pathname][3] design notes.  More history can be gleaned with the
> [notes on the last time I mucked with MERGE-PATHNAMES][4].
>
> [2]:
>
> http://abcl.org/trac/browser/trunk/abcl/doc/design/pathnames/url-pathnames.markdown
> [3]:
>
> http://abcl.org/trac/browser/trunk/abcl/doc/design/pathnames/jar-pathnames.markdown
> [4]:
>
> http://abcl.org/trac/browser/trunk/abcl/doc/design/pathnames/merging-defaults.markdown
>
> Could you provide the values for LISP-IMPLEMENTATION-VERSION executed on
> your GAE container?
>
> I need more time to analyze what the right way forward would be if we
> need to fix the MERGE-PATHNAME semantics, as I need to preserve a whole
> lot of edge cases for which I don't have time to develop reliable tests.
>
> Time.  Slipping like a river, into the future.
>
>
> --
> "A screaming comes across the sky.  It has happened before, but there
> is nothing to compare to it now."
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/armedbear-devel/attachments/20151216/841b5e4d/attachment.html>


More information about the armedbear-devel mailing list