<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Oh. Ouch. Oof. Defining ANY sort of custom code in an
implementation package, such as CCL, is not a good idea unless you
know what and why you are doing. My solution stands, but for even
stronger reasons now.<br>
</p>
<div class="moz-cite-prefix">On 21.03.2022 22:24, Tim Bradshaw
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:20E1EDA1-0C2C-4FA9-89F6-D8734638A569@tfeb.org">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">No, he's not: he's in CC (look at the value of
*package*), in which DBG is defined but not exported. So you're
right, but it's worse...</div>
<div dir="ltr"><br>
</div>
<div dir="ltr">--tim</div>
<div dir="ltr"><br>
<blockquote type="cite">On 21 Mar 2022, at 21:10, Michał phoe
Herda <a class="moz-txt-link-rfc2396E" href="mailto:phoe@disroot.org"><phoe@disroot.org></a> wrote:<br>
<br>
</blockquote>
</div>
<blockquote type="cite">
<div dir="ltr">
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
<p>You're coding in package CL-USER which is allowed to
contain imports from other packages, different across
implementations; defining lots of code in CL-USER is
generally a bad idea because of this.</p>
<p>The solution is to fix up your modularity and create your
own package that uses e.g. only CL. No naming conflicts this
way.<br>
</p>
<div class="moz-cite-prefix">On 21.03.2022 22:00, Denis
Lorrain wrote:<br>
</div>
<blockquote type="cite"
cite="mid:48838338.1492325.1647896431814@mail.yahoo.com">
<meta http-equiv="content-type" content="text/html;
charset=UTF-8">
<div class="ydp2224ebd2yahoo-style-wrap"
style="font-family:courier new, courier, monaco,
monospace, sans-serif;font-size:16px;">
<div>
<div>Hello all,<br>
</div>
<div><br>
</div>
<div>- Having updated from macOS 11.6.3 to 12.3, I had
to change from the old AppStore CCL 1.11.7 to CCL
1.12.1.</div>
<div>- R. Matthew Emerson kindly gave me this last
build:</div>
<div> <a class="moz-txt-link-freetext"
href="http://setf.clozure.com/~rme/ccl-1.12.1-ide-big-sur.zip"
moz-do-not-send="true">http://setf.clozure.com/~rme/ccl-1.12.1-ide-big-sur.zip</a></div>
<div>- Happily, CCL 1.12.1 runs seemingly very well with
macOS 12.3, whereas CCL 1.11.7 was very problematic
with macOS 11.6.3. So I'm globally very satisfied with
both changes.</div>
<div><br>
</div>
<div dir="ltr" data-setdir="false">- Unfortunately CCL
1.12.1 now introduces a name conflict with my own
code, which did not occur before. Briefly summarized:</div>
<div><br>
</div>
<div>===========================================================</div>
<div>Clozure Common Lisp Version 1.12.1
(v1.12.1-3-g2ae800e1) DarwinX8664</div>
<div>For more information about CCL, please see <a
class="moz-txt-link-freetext"
href="http://ccl.clozure.com" moz-do-not-send="true">http://ccl.clozure.com</a>.</div>
<div>CCL is free software. It is distributed under the
terms of the Apache</div>
<div>Licence, Version 2.0.</div>
<div>? (function DBG)</div>
<div>#<Compiled-function DBG #x30000015DD1F></div>
<div>? *package*</div>
<div>#<Package "CCL"></div>
<div>? (find-symbol "DBG")</div>
<div>DBG</div>
<div>:INTERNAL</div>
<div>? (defmacro dbg (forme &optional fonction)</div>
<div> (if fonction</div>
<div> `(format *standard-output* "~4Tdbg-> ~S
: ~S = ~S~%"</div>
<div> (quote ,fonction) (quote ,forme)
,forme)</div>
<div> `(format *standard-output* "~4Tdbg-> ~S =
~S~%" (quote ,forme) ,forme)))</div>
<div>; Warning: The function DBG is being redefined as a
macro.<br>
</div>
<div>; While executing: (SETF MACRO-FUNCTION), in
process Listener(4).</div>
<div>DBG</div>
<div>? (dbg a) => crash: AltConsole</div>
<div> Lisp Breakpoint</div>
<div> ? for help</div>
<div dir="ltr" data-setdir="false">
[nnnn] Clozure CL kernel debugger:</div>
<div dir="ltr" data-setdir="false"><span>===========================================================</span><br>
</div>
<div dir="ltr" data-setdir="false"><span><br>
</span></div>
<div dir="ltr" data-setdir="false">- The conflict is
created by my definition of dbg as a macro-function.
You understand it's a simple developing help, inserted
for debugging, checking things on the fly, printing
internal values, etc.</div>
<div><br>
</div>
<div>- The annoying point is that my dbg macro-function
is everywhere in my code, sometimes commented out, but
often not. I could change its name, but it would be
quite tedious to edit all my source files, written
over the last 15 or 20 years...</div>
<div><br>
</div>
<div dir="ltr" data-setdir="false">=> Is there some
package trick which could solve this name conflict? So
called shadowing? Unfortunately, my knowledge about
packages doesn't extend further than the clumsy demo
above.</div>
<div>=> Could anyone suggest a hopefully simple
solution?</div>
<div><br>
</div>
<div>Sorry for this long message. Many thanks in
advance,</div>
<div dir="ltr" data-setdir="false"><br>
</div>
</div>
<div dir="ltr" data-setdir="false"> DLO</div>
<div class="ydp2224ebd2signature">
<div style="font-family:courier, monaco, monospace,
sans-serif;font-size:13px;">
<div>--</div>
<div>Denis Lorrain</div>
<div><a href="http://denislorrain.org" rel="nofollow"
target="_blank" moz-do-not-send="true">http://www.denislorrain.org</a></div>
<div dir="ltr">Recordings of selected piano works:</div>
<div dir="ltr"> <a
href="https://soundcloud.com/user-205054622"
rel="nofollow" target="_blank"
moz-do-not-send="true">http://w</a>orks.denislorrain.org</div>
<div dir="ltr">e-mail: <a
class="moz-txt-link-abbreviated
moz-txt-link-freetext"
href="mailto:dlo@denislorrain.org"
moz-do-not-send="true">dlo@denislorrain.org</a></div>
<div>--</div>
</div>
</div>
</div>
</blockquote>
</div>
</blockquote>
</blockquote>
</body>
</html>