Suggestion for a new locator (possible repeat)

Anthony Juckel <[email protected]> Tue, 20 Jul 2004 09:45:27 -0500
Newsgroups gmane.lisp.open-source.franz
Message-ID <[email protected]>
------=_Part_137_8551002.1090334727555
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

I tried sending the following yesterday, but it appears I was a little
quick to send, and hand not yet been fully subscribed.  If the
previous message went through, feel free to disregard this message.

-----Original Message-----

The attached is a suggestion that I have for a generalization of the
prefix locator in AllegroServe.  Rather than simply matching based
upon prefix, it matches based upon regular expressions.

I'm submitting this here for two reasons:

1)  It's a blatant rip off of the current locator-prefix.
2)  It would be nice if the community picked this up and extended it
(the most obvious extension being publishing exact urls for requests
that match the pattern to obviate the need for further regular
expression matching for common requests).

Is there any interest in including this in the upstream CVS?

Anthony W. Juckel

------=_Part_137_8551002.1090334727555
Content-Type: application/octet-stream; name="pattern-locator.lisp"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="pattern-locator.lisp"

Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7
Ozs7Ozs7Ozs7Ozs7Ozs7Cjs7OyBsb2NhdG9yCgooaW4tcGFja2FnZSA6bmV0LmFzZXJ2ZSkKCihk
ZWZjbGFzcyBsb2NhdG9yLXBhdHRlcm4gKGxvY2F0b3IpCiAgKCkpCgooZGVmc3RydWN0IHBhdHRl
cm4taGFuZGxlcgogIHBhdHRlcm4gICAgICAgIDs7IHJlZ3VsYXIgZXhwcmVzc2lvbiBwYXR0ZXJu
CiAgc2Nhbm5lciAgICAgICAgOzsgc2Nhbm5lciBmb3IgdGhlIHJlZ2V4cAogIGhvc3QtaGFuZGxl
cnMgIDs7IGxpc3Qgb2YgaG9zdC1oYW5kbGVycwogICkKCihkZWZtZXRob2Qgc3RhbmRhcmQtbG9j
YXRvciAoKHJlcSBodHRwLXJlcXVlc3QpCgkJCQkJCQkgKGxvY2F0b3IgbG9jYXRvci1wYXR0ZXJu
KSkKICA7IGlnbm9yZSBwcm94eSByZXF1ZXN0cwogICh3aGVuICh1cmktc2NoZW1lIChyZXF1ZXN0
LXJhdy11cmkgcmVxKSkKCSAgKHJldHVybi1mcm9tIHN0YW5kYXJkLWxvY2F0b3IgbmlsKSkKICAK
ICAobGV0ICgodXJsIChyZXF1ZXN0LWRlY29kZWQtdXJpLXBhdGggcmVxKSkKCQkodmhvc3QgKHJl
cXVlc3Qtdmhvc3QgcmVxKSkpCgkgICAgIAogICAgKGRvbGlzdCAoaGFuZGxlciAobG9jYXRvci1p
bmZvIGxvY2F0b3IpKQoJICAobXVsdGlwbGUtdmFsdWUtYmluZCAocmVzdWx0IHJlZ2lzdGVycykK
CQkgIChtYXRjaC1yZWdleHAgKHBhdHRlcm4taGFuZGxlci1zY2FubmVyIGhhbmRsZXIpIHVybCA6
cmV0dXJuIDpzdHJpbmcpCgkJKGRlY2xhcmUgKGlnbm9yZSByZWdpc3RlcnMpKQoJCSh3aGVuIHJl
c3VsdAoJCSAgKGxldCAoKGhoIChvciAoYXNzb2Mgdmhvc3QgKHBhdHRlcm4taGFuZGxlci1ob3N0
LWhhbmRsZXJzCgkJCQkJCQkJCSAgaGFuZGxlcikKCQkJCQkJCSAgIDp0ZXN0ICMnZXEpCgkJCQkJ
CShhc3NvYyA6d2lsZCAocGF0dGVybi1oYW5kbGVyLWhvc3QtaGFuZGxlcnMKCQkJCQkJCQkJICBo
YW5kbGVyKQoJCQkJCQkJICAgOnRlc3QgIydlcSkpKSkKCQkJKHdoZW4gaGgKCQkJICAocmV0dXJu
IChob3N0LWhhbmRsZXItZW50aXR5IGhoKSkpKSkpKSkpCgoKKGRlZmNsYXNzIHBhdHRlcm4tZW50
aXR5IChjb21wdXRlZC1lbnRpdHkpCiAgKChwYXR0ZXJuIDppbml0YXJnIDpwYXR0ZXJuCgkJCTpp
bml0Zm9ybSBuaWwKCQkJOnJlYWRlciBwYXR0ZXJuKSkpCgooZGVmdW4gcHVibGlzaC1wYXR0ZXJu
LWVudGl0eSAoZW50IHBhdHRlcm4gbG9jYXRvciBob3N0IGhvc3QtcCByZW1vdmUpCiAgKGRvbGlz
dCAoZW50cGFpciAobG9jYXRvci1pbmZvIGxvY2F0b3IpKQoJKHdoZW4gKGVxdWFsIChwYXR0ZXJu
LWhhbmRsZXItcGF0dGVybiBlbnRwYWlyKSBwYXR0ZXJuKQoJICAod2hlbiAoYW5kIHJlbW92ZSAo
bm90IGhvc3QtcCkpCgkJKHNldGYgKGxvY2F0b3ItaW5mbyBsb2NhdG9yKQoJCQkgIChyZW1vdmUg
ZW50cGFpciAobG9jYXRvci1pbmZvIGxvY2F0b3IpKSkKCQkocmV0dXJuLWZyb20gcHVibGlzaC1w
YXR0ZXJuLWVudGl0eSBuaWwpKQoKCSAgKGxldCAoKGhhbmRsZXJzIChwYXR0ZXJuLWhhbmRsZXIt
aG9zdC1oYW5kbGVycyBlbnRwYWlyKSkpCgkJKGRvbGlzdCAoaG9zdCBob3N0KQoJCSAgKGRvbGlz
dCAoaG9zdHBhaXIgaGFuZGxlcnMKCQkJCSAgICh3aGVuIChub3QgcmVtb3ZlKQoJCQkJCSAgIChw
dXNoIChtYWtlLWhvc3QtaGFuZGxlciA6aG9zdCBob3N0IDplbnRpdHkgZW50KQoJCQkJCQkJIGhh
bmRsZXJzKSkpCgkJCSh3aGVuIChlcSBob3N0IChob3N0LWhhbmRsZXItaG9zdCBob3N0cGFpcikp
CgkJCSAgKGlmIHJlbW92ZQoJCQkJICAoc2V0cSBoYW5kbGVycyAocmVtb3ZlIGhvc3RwYWlyIGhh
bmRsZXJzIDp0ZXN0ICMnZXEpKQoJCQkJICAoc2V0ZiAoaG9zdC1oYW5kbGVyLWVudGl0eSBob3N0
cGFpcikgZW50KSkKCQkJICAocmV0dXJuKSkpKQoJCShzZXRmIChwYXR0ZXJuLWhhbmRsZXItaG9z
dC1oYW5kbGVycyBlbnRwYWlyKSBoYW5kbGVycykKCSAgKHJldHVybi1mcm9tIHB1Ymxpc2gtcGF0
dGVybi1lbnRpdHkgZW50KSkpKQoKCSh3aGVuIChub3QgcmVtb3ZlKQoJICAobGV0ICgobmV3LWVu
dCAobWFrZS1wYXR0ZXJuLWhhbmRsZXIKCQkJCQkgIDpwYXR0ZXJuIHBhdHRlcm4KCQkJCQkgIDpz
Y2FubmVyIChjb21waWxlLXJlZ2V4cCBwYXR0ZXJuKQoJCQkJCSAgOmhvc3QtaGFuZGxlcnMgKG1h
cGNhciAjJyhsYW1iZGEgKGhvc3QpCgkJCQkJCQkJCQkJCSAobWFrZS1ob3N0LWhhbmRsZXIgOmhv
c3QgaG9zdAoJCQkJCQkJCQkJCQkJCQkJICA6ZW50aXR5IGVudCkpCgkJCQkJCQkJCQkJIGhvc3Qp
KSkpCgkJKHB1c2ggbmV3LWVudCAobG9jYXRvci1pbmZvIGxvY2F0b3IpKSkpKQoKKGRlZnVuIHB1
Ymxpc2gtcGF0dGVybgoJKCZrZXkgKGhvc3QgbmlsIGhvc3QtcCkgcG9ydCBwYXR0ZXJuCgkgZnVu
Y3Rpb24gY2xhc3MgZm9ybWF0CgkgY29udGVudC10eXBlCgkgKHNlcnZlciAqd3NlcnZlciopCgkg
bG9jYXRvcgoJIHJlbW92ZQoJIGF1dGhvcml6ZXIKCSB0aW1lb3V0CgkgcGxpc3QKCSBob29rCgkg
aGVhZGVycwoJICkKICAobGV0IChodmFsKQogICAgKHdoZW4gKG51bGwgbG9jYXRvcikgCgkgIChz
ZXRxIGxvY2F0b3IgKGZpbmQtbG9jYXRvciA6cGF0dGVybiBzZXJ2ZXIpKSkKCiAgICAoc2V0cSBo
dmFsIChjb252ZXJ0LXRvLXZob3N0cwoJCQkJKGlmIChhbmQgaG9zdCAoYXRvbSBob3N0KSkKCQkJ
CQkobGlzdCBob3N0KQoJCQkJCWhvc3QpCgkJCQkgIHNlcnZlcikpCiAgICAKICAgIChpZiByZW1v
dmUgOyBlbGltaW5hdGUgdGhlIGVudGl0eSBpZiBpdCBleGlzdHMKCQkocHJvZ24KCQkgIChwdWJs
aXNoLXBhdHRlcm4tZW50aXR5IG5pbCBwYXR0ZXJuIGxvY2F0b3IgaHZhbCBob3N0LXAgdCkKCQkg
IG5pbCkKCSAgICAobGV0ICgoZW50IChtYWtlLWluc3RhbmNlIChvciBjbGFzcyAncGF0dGVybi1l
bnRpdHkpCgkJCQkJCQkJICA6aG9zdCBodmFsIAoJCQkJCQkJCSAgOnBvcnQgcG9ydAoJCQkJCQkJ
CSAgOnBhdHRlcm4gcGF0dGVybgoJCQkJCQkJCSAgOmZ1bmN0aW9uIGZ1bmN0aW9uCgkJCQkJCQkJ
ICA6Zm9ybWF0IGZvcm1hdAoJCQkJCQkJCSAgOmNvbnRlbnQtdHlwZSBjb250ZW50LXR5cGUKCQkJ
CQkJCQkgIDphdXRob3JpemVyIGF1dGhvcml6ZXIKCQkJCQkJCQkgIDpwbGlzdCBwbGlzdAoJCQkJ
CQkJCSAgOmhvb2sgaG9vawoJCQkJCQkJCSAgOnRpbWVvdXQgdGltZW91dAoJCQkJCQkJCSAgOmhl
YWRlcnMgaGVhZGVycykpKQoJICAgICAgKHB1Ymxpc2gtcGF0dGVybi1lbnRpdHkgZW50IHBhdHRl
cm4gbG9jYXRvciAgaHZhbAoJCQkJCQkJCSAgaG9zdC1wIG5pbCkKCSAgICAgIGVudCkpKSkK
------=_Part_137_8551002.1090334727555--