freenode/lisp - IRC Chatlog
Search
18:30:17
aeth
once I overwrote an IRC log file because I didn't quote the > when searching for a name via grep
18:30:26
cheryllium
you know how common it is for things to have a folder named bin? he was trying to delete one of those, but instead managed to nuke THE bin
18:31:24
aeth
That reminds me of that article where someone did "rm -rf /" on some server and someone else had to recover it.
18:31:40
cheryllium
one time we did a find+replace on a directory but we didn't exclude image files, so all the image files in that dir got corrupted
18:32:44
cheryllium
wasn't the digitalocean incident something like this? they deleted their production db...
18:35:01
cheryllium
anyway, to stay on topic: is there any difference between :foobar and 'foobar in lisp? I understand the latter to be a quoted symbol, I'm unsure of the former though
18:36:17
cheryllium
I notice they seem to be interchangeable when I'm loading things like with quickload
18:36:24
aeth
cheryllium: generally, it's a good idea to use keywords instead of symbols where e.g. Scheme might always use a symbol... because of how packages work
18:36:47
Bike
they have the same symbol-name, and that's what's used as the string. the package is discarded.
18:39:05
aeth
cheryllium: off-topic, but your ls not found story reminds me of this: http://www.lug.wsu.edu/node/414
18:43:06
aeth
(originally posted in 1986, copied from a place where it was last modified in 1996, uploaded to that site in 2006, and moved to a new system on that site sometime around 2011 when the comments begin)
18:46:35
aeth
cheryllium: Anyway, either you mess with packages (symbols) or you use keywords. In the REPL (like when using Quicklisp) it makes no real difference to use "" or ' or : or even '#:
18:47:48
aeth
(the last one is non-interned, like what you get from gensym, and the first one, the string-literal quotes, will probably be in all-caps if you want to use those)
18:47:50
cheryllium
I wonder if it could be simplified further, CL packages seem to be a common source of confusion
18:49:27
jackdaniel
cheryllium: this is a nice (and short!) read which can possibly reduce some confusion
18:50:04
aeth
The confusion with packages is when you have something like * that is probably going to be imported from CL into all packages. So you can think that keywords and symbols are basically equivalent, up until the point where you use a symbol that isn't in CL.
18:51:41
aeth
jackdaniel: (* 2 3) will work as expected even though it should probably be (:* 2 3) and you won't really notice until you also have a (foo 2 3) and suddenly your CASE or whatever you're using to process the symbols will only work internally for foo, because it is looking for your-little-language::foo
18:52:25
jackdaniel
if you "use" CL package, then symbols are imported from it, if you don't, then they are not
18:52:52
jackdaniel
so meaning of (* 2 3) depends on your current package (and its inherited symbols)
18:53:52
aeth
Right, what I mean is, the main point where you'd probably have confusion over symbols is when you're writing a fancy macro.
18:54:22
nyef
On the other hand, if you use DEFPACKAGE and forget the :USE term entirely, you may-or-may-not end up with a package that uses :CL.
18:55:10
shrdlu68
This got me a few times when I was starting out with lisp. Very confusing and alarming errors.
18:55:55
jackdaniel
for me CL package system works fine. I had some confusion at start with forward references to not defined yet packages
18:56:50
aeth
What I like about the CL package system is that you can encapsulate things via macros by interning a symbol to (or hardcoding the path to) an internal package.
19:13:24
emaczen
Where can I find newer documentation for parenscript? It seems to have changed a lot since I last used it.
19:23:19
phoe
unrelated - a recent screenshot of LambdaDelta 0.98.1 running actual LMI stuff http://i.imgur.com/D0sJJKR.jpg
19:49:45
nosefouratyou
when I run a function that has something undefined, why don't I get an error? in this example https://gist.github.com/nosefouratyou/7653375e28e74d106f68663099124e38 I didn't define message-parse but I don't get an error
19:51:13
phoe
so the undefined-function error gets caught by the handler-case and you do not get cast into the debugger
19:53:19
nosefouratyou
for some reason I thought that an undefined error wouldn't be caught by the exception handling mechanism. guess I underestimated how complete/awesome it is.
19:55:06
phoe
nosefouratyou: well, an error is an error in Lisp, which is a condition of type undefined-function which is a subtype of error
20:11:06
phoe
but seemingly "So far we have been able to run full-speed on a 2.3 GHz i7 and a 2.5 GHz i5, but the i5 was pushing it. The i7 gets a bit warm."
20:49:12
phoe
...I am really going to check how well the Windows version of SBCL behaves on Linux/Wine.
20:52:27
drmeister
(clos:subclasses* xxx) returns a list of all classes that inherit from class (including class)
20:53:29
phoe
So you don't need to cons up new lists - you can destructively append the ones you cons in the depths.
20:54:46
mhd
Hi, using SBCL. Trying to use defsystem, but forgot how to get defsystem (ASDF). How do I get defsystem in fresh SBCL? I did ./run-sbcl.sh and then (require :asdf). No workee. I know I could probably install quicklisp, but is there some way without using quicklisp?
20:57:43
phoe
If, in some weird case, you don't have it, https://github.com/fare/asdf has an installation guide.
21:04:30
mhd
This worked: download https://common-lisp.net/project/asdf/archives/asdf.lisp, and then LOAD it.
21:06:21
Xach
mhd: if you cannot (require :asdf), something is incomplete or broken with the installation.
21:08:39
mhd
I think it's just: be on Mac, download latest SBCL, run it from shell using ./run-sbcl, do (require :asdf) => error: debugger invoked on a SB-INT:SIMPLE-FILE-ERROR:
21:19:09
mazoe
mhd: FYI I have sbcl v1.3.16 installed and working fine on a Mac. Installed with Homebrew
21:36:24
mhd
_death: nothing I tried worked (improved things): tried ./ and tried absolute pathname to same and no workee
21:39:12
francogrex
hi what was the command in slime where the evaluation results gets printed inside (below) the .lisp file expression?
21:47:59
mhd
prxq: I'm trying to respond to _death's request to set SBCL_HOME appropriately and then try ./run-sbcl and see if (require :asdf) then works.
21:56:21
mhd
prxq: it's going from http://www.sbcl.org/platform-table.html => download latest for Mac => unarchive => cd sbcl-1.2.11-x86-64-darwin => INSTALL (text file to read for instructions) => follow these instr's: 1. BINARY DISTRIBUTION
22:24:13
mhd
prxq: xach: OK, solved: I had an old ~/.sbclrc init file around, which in my case changed the working directory using sb-posix:chdir. Running without init file works, among other possible things I could do once I realized this. I think it's pretty much not-a-bug.
0:17:49
pillton
kruhft: There are people in this thread that have used it: https://mailman.common-lisp.net/pipermail/pro/2015-August/001227.html.
2:47:06
White_Flame
I changed the syntax highlighting to make my parens yellow. banana flavored lisp
3:05:41
nyef
Trying to confirm that I'm not doing anything more stupid than usual, the magic for opening a Linux device file with OPEN is :DIRECTION :IO :IF-EXISTS :OVERWRITE, yes?
3:15:46
nyef
Hrmph. Typical. The device file in question enforces stricter permissions than the filesystem declares.
3:18:04
nyef
Which, of course, means that I need to run the program which accesses this device as root. Great going, Linux!
3:42:07
PuercoPop
phoe: IIRC the c-l.net version can only be updated by Vladimir Sedachv, while for the github repo jasom also commit rights. So jasom could accept the PR but not update c-l.net
5:21:05
White_Flame
well, "vector animation" can mean a million different things, from moving line graphs to flash-style cartoons
5:21:46
White_Flame
and for most creative visual stuff, the content creation tool drives most of the file formats & processing anywya
5:21:53
beach
I was imagining displaying a vector of objects as it changes, like when you want to illustrate a sorting algorithm.
5:23:49
White_Flame
but in any case, if you're drawing in svg, then I guess you need to link to a SVG rendering library
5:24:06
White_Flame
I don't think much native CL code has been written for that yet, but there's a lot of ffi libraries out there