Infinite recursion in Slime's cl-lib #115

Closed
nbtrap opened this Issue Feb 25, 2014 · 8 comments

Comments

Projects
None yet
3 participants
@nbtrap
Contributor

nbtrap commented Feb 25, 2014

I just installed Slime from master. When I leave Slime's cl-lib in place, I get infinite recursion on Slime's startup in the advice defined around cl-position. I believe installing the patch here will fix it. See also here.

@ellerh

This comment has been minimized.

Show comment
Hide comment
@ellerh

ellerh Feb 25, 2014

Contributor

Judging from the second link, it looks like you have .../slime/lib/ in your load path. That should normally not be needed and it's likely causing the problem. SLIME will look in the lib/ directory if cl-lib can't be found in the normal load-path; no need to add lib/ explicitly to load-path.

I think Mr. Monnier will release a new version of cl-lib when he integrates the patches from the first link. We will then bundle that version with SLIME.

Contributor

ellerh commented Feb 25, 2014

Judging from the second link, it looks like you have .../slime/lib/ in your load path. That should normally not be needed and it's likely causing the problem. SLIME will look in the lib/ directory if cl-lib can't be found in the normal load-path; no need to add lib/ explicitly to load-path.

I think Mr. Monnier will release a new version of cl-lib when he integrates the patches from the first link. We will then bundle that version with SLIME.

@joaotavora

This comment has been minimized.

Show comment
Hide comment
@joaotavora

joaotavora Feb 25, 2014

Contributor

@ellerh Do you have anything against applying the patch to our bundled version as a safety in the meantime?

Contributor

joaotavora commented Feb 25, 2014

@ellerh Do you have anything against applying the patch to our bundled version as a safety in the meantime?

@ellerh

This comment has been minimized.

Show comment
Hide comment
@ellerh

ellerh Feb 25, 2014

Contributor

@ellerh Do you have anything against applying the patch to our bundled version as a safety in the meantime?

No. Maybe add some comment that it contains an interim fix.

Contributor

ellerh commented Feb 25, 2014

@ellerh Do you have anything against applying the patch to our bundled version as a safety in the meantime?

No. Maybe add some comment that it contains an interim fix.

@nbtrap

This comment has been minimized.

Show comment
Hide comment
@nbtrap

nbtrap Feb 25, 2014

Contributor

I use normal-top-level-add-subdirs-to-load-path to populate my load-path. Maybe you can add a .nosearch file to the lib directory to prevent it from being added?

Contributor

nbtrap commented Feb 25, 2014

I use normal-top-level-add-subdirs-to-load-path to populate my load-path. Maybe you can add a .nosearch file to the lib directory to prevent it from being added?

@ellerh

This comment has been minimized.

Show comment
Hide comment
@ellerh

ellerh Feb 25, 2014

Contributor

I use normal-top-level-add-subdirs-to-load-path to populate my load-path.

How bizarre.

Maybe you can add a .nosearch file to the lib directory to prevent it from being added?

OK, if you promise not to use normal-top-level-add-subdirs-to-load-path
to install SLIME but instead RTFM.

Contributor

ellerh commented Feb 25, 2014

I use normal-top-level-add-subdirs-to-load-path to populate my load-path.

How bizarre.

Maybe you can add a .nosearch file to the lib directory to prevent it from being added?

OK, if you promise not to use normal-top-level-add-subdirs-to-load-path
to install SLIME but instead RTFM.

@nbtrap

This comment has been minimized.

Show comment
Hide comment
@nbtrap

nbtrap Feb 25, 2014

Contributor

What's so bizarre about it? It's a standard function that's been in Emacs since at least 1998. And it includes a provision for this very kind of issue.

Contributor

nbtrap commented Feb 25, 2014

What's so bizarre about it? It's a standard function that's been in Emacs since at least 1998. And it includes a provision for this very kind of issue.

@ellerh

This comment has been minimized.

Show comment
Hide comment
@ellerh

ellerh Feb 25, 2014

Contributor

On Tue, Feb 25 2014, nbtrap wrote:

What's so bizarre about it? It's a standard function that's been in Emacs
since at least 1998. And it includes a provision for this very kind of issue.

Using normal-top-level-add-subdirs-to-load-path is bizarre because it
predictably creates problems.

Contributor

ellerh commented Feb 25, 2014

On Tue, Feb 25 2014, nbtrap wrote:

What's so bizarre about it? It's a standard function that's been in Emacs
since at least 1998. And it includes a provision for this very kind of issue.

Using normal-top-level-add-subdirs-to-load-path is bizarre because it
predictably creates problems.

@joaotavora

This comment has been minimized.

Show comment
Hide comment
@joaotavora

joaotavora Feb 25, 2014

Contributor

What's so bizarre about it? It's a standard function that's been in Emacs
since at least 1998. And it includes a provision for this very kind of issue.

Using normal-top-level-add-subdirs-to-load-path is bizarre because it
predictably creates problems.

I also don't think it's bizarre at all, and is a very simple way to
create relocatable drag-and-drop installations for third-party
packages. Made a bit obsolete by things such as el-get or
package.el, which do more. I used to use it and never had this
problem.

But now that SLIME bundles libs found elsewhere (which it ideally
shouldn't) it is indeed problematic. Anyway, by adding .nosearch file
we apparently get the best of both worlds so I'm closing this issue.

João

Contributor

joaotavora commented Feb 25, 2014

What's so bizarre about it? It's a standard function that's been in Emacs
since at least 1998. And it includes a provision for this very kind of issue.

Using normal-top-level-add-subdirs-to-load-path is bizarre because it
predictably creates problems.

I also don't think it's bizarre at all, and is a very simple way to
create relocatable drag-and-drop installations for third-party
packages. Made a bit obsolete by things such as el-get or
package.el, which do more. I used to use it and never had this
problem.

But now that SLIME bundles libs found elsewhere (which it ideally
shouldn't) it is indeed problematic. Anyway, by adding .nosearch file
we apparently get the best of both worlds so I'm closing this issue.

João

@joaotavora joaotavora closed this Feb 25, 2014

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment