Re: DESCRIBE, impnotes, and https client
Bruno Haible <[email protected]>
| Newsgroups | gmane.lisp.clisp.devel |
|---|---|
| Message-ID | <3014660.zn0xvhH4Rs@omega> |
We have three problems. Here's what I plan to do about them.
1) The DESCRIBE function makes accesses to https://clisp.org/. This
has drawbacks:
- The user cannot do DESCRIBE when an internet connection is not
available.
- The documentation that the user accesses does not match the version
of clisp she is using.
- https access is currently not implemented in clisp.
- It violates the user's privacy if other parties can infer by sniffing
what documentation she is accessing.
Proposed solution:
Let clisp use the *installed* documentation (packaged with clisp).
=> No network accesses in this case.
For "make check" to work before clisp is installed, add a command-line
option that specifies the location of the doc. (Like option '-N'.)
2) https access is currently not implemented in clisp. But the web consists
of more and more https.
For https, one needs SSL support with all its intricacies (TLS protocol
versions, certificate checking etc.).
I'm no longer in favour of including something like Drakma in clisp.
Instead, I believe we need to distinguish the bottom layer (SSL) and the
layer sitting on top of it (https). Given SSL, https can well be done in
Lisp. However, the SSL support ought to use a system-wide standard facility
and the system-wide certificates (/usr/share/ca-certificates/mozilla/ on
some systems) - otherwise revocations won't be handled right. This leaves us
with three options:
- GNUTLS,
- openssl,
- CL+SSL, which is based on openssl.
I'll go with GNUTLS in the first place, and openssl as fallback (for
portability).
Since SSL cannot be applied to random streams, pipe streams, etc., but
only to socket streams, the result will be a variant of SOCKET-STREAMs
in clisp.
3) The DESCRIBE function makes accesses to the CLHS on the web. This has
drawbacks:
- The user cannot do DESCRIBE when an internet connection is not
available.
- It violates the user's privacy if other parties can infer by sniffing
what documentation she is accessing.
Proposed solution:
Add a facility through which the user can download and install the
complete CLHS on their system once; this requires acknowledging a license.
Cf. [1]
Comments?
Bruno
[1] https://stackoverflow.com/questions/23676164/viewing-the-common-lisp-hyperspec-offline-via-emacs
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
clisp-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/clisp-devel