00:00:06 when someone is confused why NIL is being printed after each format suggesting (progn .. (values)) probably won't clear his confusion 00:00:45 Zulu: thank you, i was calling format from a function and that function from another, since the call is the last one in the top function, it printed nil at the bottom 00:01:00 kennyd: I actually understood. 00:01:32 kennyd: I am reading books, articles and suggestions from you guys are helping a lot 00:03:03 I did not know anything about format a while ago and now i am using this: 00:03:06 (format t "~% Title :~T~:[~a~;~{~A~^ ~}~]~% Artist:~T~:[~a~;~{~A~^ ~}~]~% Rating:~T~d~%~%" 00:03:07 (listp music) music (listp (get music 'artist)) (get music 'artist) (get music 'rating)) 00:03:21 :D 00:04:24 wildnux: the listp stuff reads badly 00:05:11 wildnux: i'd use alexandria:ensure-list to make atoms into lists, and simplify the format string accordingly. 00:05:39 wildnux: (as a suggestion) 00:05:50 H4ns: thank you i will try it 00:05:56 alexandria is really popular with you guys, huh 00:07:07 Zulu: i've had my share of private utility libraries. alexandria is just my standard, and it is widely available, too. 00:07:17 I guess i will not use (alexandria ??) as i am just a beginner. I believe its a library? 00:07:25 Zulu: seems fitting for the users of an ancient language 00:07:27 wildnux: it is a utility library. 00:07:33 H4ns: oh... 00:07:37 replore_ [~replore@203.152.213.161.static.zoot.jp] has joined #lisp 00:08:09 I am doing my program for my class and we have not reached that advanced level. I guess format is also too advance for what we are doing in the class 00:08:22 wildnux: write your own ensure-list then. 00:08:23 but it should not be a problem to know how to use macros like format 00:08:33 (defun ensure-list (x) (if (listp x) x (list x))) 00:08:37 H4ns: for now I will stick with that listp 00:08:51 shaggy-: thats neat 00:08:55 wildnux: format is a function 00:08:56 wildnux: i'd point that out as a readability issue if i was your instructor. 00:09:23 H4ns: i am going with shaggy-'s solution, :P 00:09:28 wildnux: also, i'd question whether it is good to have the type ambiguity in the artist field in the first place. 00:09:48 wildnux: nothing wrong with it :) 00:13:53 *H4ns* is afk 00:20:42 -!- Soulman1 [~knute@175.80-202-238.nextgentel.com] has left #lisp 00:21:12 -!- SegFaultAX [~mkbernard@173.228.45.162] has quit [Ping timeout: 258 seconds] 00:22:41 wanderingelf [4817e03a@gateway/web/freenode/ip.72.23.224.58] has joined #lisp 00:23:02 SegFaultAX [~mkbernard@173.228.45.162] has joined #lisp 00:25:11 -!- GrayMagiker [~steve@174.56.88.247] has quit [Quit: Ex-Chat] 00:26:07 Oladon [~Oladon@c-71-237-71-104.hsd1.co.comcast.net] has joined #lisp 00:26:45 -!- shaggy- [~redmundia@84.122.73.141.dyn.user.ono.com] has quit [Quit: Chateando desde http://webchat.redmundial.org (Ping timeout)] 00:27:45 -!- kennyd [~kennyd@93-139-39-198.adsl.net.t-com.hr] has quit [Read error: Connection reset by peer] 00:28:47 superflit_ [~superflit@71-208-212-174.hlrn.qwest.net] has joined #lisp 00:30:37 -!- superflit [~superflit@71.208.206.220] has quit [Ping timeout: 252 seconds] 00:30:37 -!- superflit_ is now known as superflit 00:30:41 easyE [7ZVn3tNKmy@panix2.panix.com] has joined #lisp 00:32:20 kennyd [~kennyd@93-139-39-198.adsl.net.t-com.hr] has joined #lisp 00:36:32 -!- SegFaultAX [~mkbernard@173.228.45.162] has quit [Ping timeout: 258 seconds] 00:37:57 Vivitron [~user@pool-108-7-56-243.bstnma.fios.verizon.net] has joined #lisp 00:38:18 SegFaultAX [~mkbernard@173.228.45.162] has joined #lisp 00:39:07 neoesque [~neoesque@210.59.147.232] has joined #lisp 00:39:48 Oladon1 [~Oladon@np34.co.returnpath.net] has joined #lisp 00:40:05 -!- Oladon [~Oladon@c-71-237-71-104.hsd1.co.comcast.net] has quit [Disconnected by services] 00:40:09 -!- Oladon1 is now known as Oladon 00:41:05 -!- p_l [plasek@gateway/shell/rootnode.net/x-gvzsdgfldttuvcyq] has quit [Quit: leaving] 00:41:25 p_l [plasek@gateway/shell/rootnode.net/x-oxugdzimfpqleest] has joined #lisp 00:42:39 -!- p_l [plasek@gateway/shell/rootnode.net/x-oxugdzimfpqleest] has quit [Client Quit] 00:43:25 -!- rainyrhy|afk is now known as rainyrhy 00:43:55 Bike [~Glossina@71-214-98-150.ptld.qwest.net] has joined #lisp 00:44:40 p_l [plasek@gateway/shell/rootnode.net/x-utmqvumnydalakwp] has joined #lisp 00:44:48 -!- wishbone4 [~user@167.216.131.126] has quit [Remote host closed the connection] 00:46:58 -!- p_l|backup [~plasek@pp84.internetdsl.tpnet.pl] has quit [Quit: leaving] 00:47:49 -!- nanoc [~conanhome@186.123.184.103] has quit [Ping timeout: 240 seconds] 00:50:31 -!- easyE [7ZVn3tNKmy@panix2.panix.com] has quit [Ping timeout: 276 seconds] 00:56:04 easyE [unFNlpnup2@panix2.panix.com] has joined #lisp 01:00:20 nanoc [~conanhome@186.157.190.177] has joined #lisp 01:03:31 -!- billstclair [~billstcla@unaffiliated/billstclair] has quit [Ping timeout: 276 seconds] 01:04:47 -!- EyesIsServer [~eyes@WiseOS/Founder/EyesIsMine] has quit [Ping timeout: 248 seconds] 01:08:20 frozencemetery [~frozencem@CMU-786527.WV.CC.CMU.EDU] has joined #lisp 01:09:40 -!- marsell [~marsell@120.20.162.240] has quit [Quit: marsell] 01:11:20 -!- gffa [~gffa@unaffiliated/gffa] has quit [Quit: sleep] 01:15:20 shaggy- [~redmundia@84.122.73.141.dyn.user.ono.com] has joined #lisp 01:17:40 (with-foreign-object (ptr 'point) (c-func (mem-aref ptr 'point))) doesn't do what it's suppose to. I have also noticed that typing (mem-aref ptr 'point) in REPL just gives me foreign address instead of point struct, as if the function didn't even dereference the pointer. what to do? 01:20:06 -!- kennyd [~kennyd@93-139-39-198.adsl.net.t-com.hr] has quit [Read error: Connection reset by peer] 01:20:20 -!- shaggy- [~redmundia@84.122.73.141.dyn.user.ono.com] has quit [Quit: Chateando desde http://webchat.redmundial.org (EOF)] 01:20:36 shaggy- [~redmundia@84.122.73.141.dyn.user.ono.com] has joined #lisp 01:20:46 sorry I got disconnected don't know if my message went through 01:21:04 I'm trying to pass a C struct by value using CFFI 01:21:08 shaggy-: CFFI foreign structures _are_ pointer types 01:21:40 hmm, so how do I pass a struct by value then? 01:21:43 shaggy-: passing foreign structures by value is not supported by CFFI 01:22:04 really? :( 01:22:05 -!- zmv [~daniel@c95339f3.virtua.com.br] has quit [Read error: Operation timed out] 01:22:55 sometimes we can work around it (isn't the POINT of yous from , btw?) 01:23:28 -!- Yuuhi` [benni@p5483D444.dip.t-dialin.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 01:23:43 no it's windows api. I'm trying to pass it to WindowFromPoint function. how could I work around it? 01:25:20 kennyd [~kennyd@93-139-39-198.adsl.net.t-com.hr] has joined #lisp 01:25:27 (cffi:foreing-type-size 'point), then find an :uint type with the same size.. 01:25:28 I guess I can write a C function that accepts a pointer to structure. but do I have to resort to C? 01:26:26 and then dereference it as that integer? 01:26:39 -!- ignas [~ignas@user-46-112-167-216.play-internet.pl] has quit [Ping timeout: 248 seconds] 01:28:03 shaggy-: yes: use uint-typed mem-ref, pass its result by value as some :uint64 01:28:52 shaggy-: this thing is not portable between ABIs 01:30:27 should work portable for simple thing like this though, no? 01:30:30 portably 01:30:32 -!- easyE [unFNlpnup2@panix2.panix.com] has quit [Ping timeout: 256 seconds] 01:31:15 well, if you're using windows, it's as portable as winapi, iirc (the same trick works on amd64, too) 01:31:42 yes it worked. odd that cffi doesn't support this though. is it because of different ABIs issues or? 01:32:30 shaggy-: CFFI relies on underlying native FFI (of your Lisp). That's where it should be fixed. 01:33:17 meaning not all lisp implementations CFFI runs on support this? 01:33:35 shaggy-: the problem (on X86) is, when the size of struct is too large, or it's not a power of 2, it may affect calling convention here 01:34:11 -!- dnolen [~davidnole@pool-68-161-52-174.ny325.east.verizon.net] has quit [Quit: dnolen] 01:34:30 yes I see 01:34:56 dnolen [~davidnole@pool-68-161-52-174.ny325.east.verizon.net] has joined #lisp 01:34:56 shaggy-: MS is probably the only vendor you'll meet who publishes pass-struct-by-value interfaces (others know better). Fortunately, passed-by-value structures in WinAPI usually have a good size :) 01:35:13 haha yes I was surprised it's passed by value 01:35:46 akovalenko: Apple does that too 01:36:27 shaggy-: as of implementations: SBCL doesn't pass struct by value, don't know of the others.. 01:38:04 -!- dnolen [~davidnole@pool-68-161-52-174.ny325.east.verizon.net] has quit [Client Quit] 01:38:17 -!- Kenjin [~josesanto@2.81.201.190] has quit [Quit: Computer has gone to sleep] 01:38:19 EyesIsServer [~eyes@WiseOS/Founder/EyesIsMine] has joined #lisp 01:44:30 I have 5 different implementations installed, it worked on all but allegro. it seems that allegro has issues with :uint64 part 01:45:34 Error: :UNSIGNED-LONG-LONG fell through a ECASE form. The valid cases were :CHAR, :UNSIGNED-CHAR, :SHORT, :UNSIGNED-SHORT, :INT, :UNSIGNED-INT, :LONG, :UNSIGNED-LONG, :FLOAT, :DOUBLE, :POINTER, and :VOID. [condition type: CASE-FAILURE] 01:45:47 -!- EyesIsServer [~eyes@WiseOS/Founder/EyesIsMine] has quit [Max SendQ exceeded] 01:46:04 shaggy-: be sure to look at allegro FFI docs -- there might be a support for real structure pass-by-value, so you won't need this trick.. 01:46:56 -!- SegFaultAX [~mkbernard@173.228.45.162] has quit [Remote host closed the connection] 01:47:19 shaggy-: decomposing the value to a pair of :uint32 may work (on x86, 32-bit only) if you figure out the order of arguments.. 01:47:39 EyesIsServer [~eyes@WiseOS/Founder/EyesIsMine] has joined #lisp 01:49:41 -!- xristos_ [~x@2001:4968:200:0:5652:ff:fe55:7b51] has quit [Quit: ZNC - http://znc.in] 01:49:47 meaning smoething like this? (defcfun "WindowFromPoint" window (a :uint32) (b :uint32)) 01:50:29 shaggy-: yes 01:51:38 There's also CFFI-FSBV (Foreign-Struct-By-Value) which is (currently) a separate thing, but I seem to recall that there's integration work going on. 01:52:40 xristos [~x@research.suspicious.org] has joined #lisp 01:53:05 pinterface interesting i'll give it a try 02:00:17 a pair of :uint32 worked on allegro as well. why is this a solution only for 32 bit systems? 02:00:44 I've got something very strange going on. I'm using CL-PPCRE, creating a scanner for "[0-9]{1,2}[\/-][0-9]{1,2}". The scanner creates fine, but when I use it to scan-for-strings "a 8/5 b", I get nil. However, if I use the raw regex instead of the scanner to search "a 8/5 b", it works perfectly, returning "8/5". I'm sure I'm just missing something silly -- any ideas/ 02:00:45 ? 02:01:31 shaggy-: on amd64, first arguments are passed in (64-bit) registers 02:01:47 ah 02:01:54 Oladon: \/ => \\/ 02:02:11 *Oladon* boggles 02:02:13 Whyfor? 02:02:24 Oladon: (print "\/ and \\/") => be enlightened. 02:02:53 \/ tries to escape / 02:03:03 That's what I'm doing... 02:03:24 akovalenko: I want /, not \/ 02:03:37 Oladon: then why escape / at all? 02:03:38 if you want / then / alone will work 02:03:45 orly 02:04:23 now, that's unlikely your real problem 02:04:28 -!- kennyd [~kennyd@93-139-39-198.adsl.net.t-com.hr] has quit [Quit: bye] 02:04:35 Indeed, since it wouldn't make a difference 02:04:42 But good to know, anyway :) 02:04:48 Oladon: what if you create a scanner and scan "8/5" alone? 02:05:26 Also tried that. No dice. I can, however, create a scanner for some text and find it with and without text around it 02:06:58 Oladon: show your code (scanner created from your regex works for me) 02:07:43 Oladon: I have (funcall (create-scanner ...) "a 8/5 b" 0 nil) 02:07:56 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Ping timeout: 256 seconds] 02:08:28 Oladon: ..return values => 2, 5, #(), #() 02:09:31 http://paste.lisp.org/display/125143 02:11:01 Oladon: Unlike defparameter, defvar only assigns once (in a lifetime). Did you experiment with *date-scan* to get it right? 02:11:24 I did 02:11:37 I see... 02:11:57 Is there a corresponding undefvar? :) 02:12:01 defvar, will you ever cease to toil with our souls? 02:12:06 hehe 02:12:17 Use defparameter for that 02:12:31 well, once I do get it right I want it to stay that way 02:12:40 -!- replore_ [~replore@203.152.213.161.static.zoot.jp] has quit [Read error: Connection reset by peer] 02:12:57 replore__ [~replore@203.152.213.161.static.zoot.jp] has joined #lisp 02:13:11 Oladon: But until you do. Haha. If you wanted to force it, you could use make-unbound 02:13:17 Oladon: why bother? defparameter will reassign if your file is _reloaded_, but it isn't going to happen frequently, right? 02:13:25 hmm 02:13:38 Fair 'nuff. 02:13:48 makunbound* 02:13:53 sorry. It has an awkward name 02:13:58 hehe 02:14:09 Probably to discourage people from using it. 02:14:34 Oladon: See also cl-ppcre:register-groups-bind, which will optimize your constant string to death.. 02:14:50 Oladon: Agreed 02:14:57 heh, it's not actually a constant string ;) 02:14:57 Intensity [V5FHESfLfn@unaffiliated/intensity] has joined #lisp 02:14:58 -!- madnificent [~madnifice@83.101.62.132] has quit [Ping timeout: 245 seconds] 02:15:14 well, it's "constant" in that it's the same regex.. 02:15:18 gko [~gko@27.242.25.19] has joined #lisp 02:15:24 but if you mean the "foo", that was just a placeholder. 02:15:59 hehe, thanks both of you... working now :) 02:16:23 So what's a good use case for defvar, then? 02:17:34 Oladon: all kind of things that should survive code upgrade (user settings, application data queues..) 02:17:53 Hmm 02:18:30 Oladon: you don't want to restart an application for a minor trivial patch, do you :)? 02:18:50 stassats [~stassats@wikipedia/stassats] has joined #lisp 02:19:21 Hrm. Pretty sure I still don't understand, but I'll switch to defparameter and go read up on it later 02:19:48 -!- neoesque [~neoesque@210.59.147.232] has quit [Quit: Bye!] 02:19:49 -!- gko [~gko@27.242.25.19] has quit [Ping timeout: 240 seconds] 02:20:25 CS curriculum should not be considered complete without a Lisp or ST. 02:21:19 True story. 02:21:53 neoesque [~neoesque@210.59.147.232] has joined #lisp 02:23:50 Oladon: register-group-bind example with your regexp http://paste.lisp.org/+2OK7/2 02:24:55 akovalenko: Thanks. I'm going to have to do some reading to understand what you've done :) 02:25:24 i'd use \\d instead of [0-9] 02:25:38 I had tried \d, but without luck 02:25:48 Oladon: "\\d", eh? 02:25:51 that's why you need to read carefully what i wrote 02:25:59 Didn't say I tried \\d :) 02:26:16 littlegiraffe [~littlegir@host-64-151-208-2.bchsia.in2net.net] has joined #lisp 02:27:21 hmm... this register-groups-bind is interesting 02:28:06 btw, you can use (defun split-date-string (string) (cl-ppcre:register-groups-bind ((#'parse-integer month day)) ("(\\d{1,2})[/-](\\d{1,2})" string) (values month day))) 02:28:14 (split-date-string "10-20") => 10, 20 02:28:18 cool, ain't it? 02:29:11 Ooh, fancy 02:29:24 That will make it even easier to somehow convert that into a date I can insert into mysql 02:29:25 s/cl-ppcre:/ppcre:/ 02:30:49 What does the #'parse-integer do there? 02:31:09 it's name is quite suggestive 02:31:13 its 02:31:14 hehe 02:31:28 Yes indeed... perhaps I should reword that as "why is it necessary"? 02:31:50 who knows? 02:32:01 hmm 02:32:35 (=let* ((month (int)) (_ (=char #\-)) (day (int))) (if (and (<= 1 month 12) (<= 1 day 31)) (result (cons month day)) (fail))) smug is lovely, too. :) 02:33:01 heh 02:33:53 (valid-month/day-pair-p month day) for more accuracy, I guess. 02:35:39 So question. Say I'm going to match only one or the other of a set of match groups. What's the best way to return only those matched, and not all the nils as well? 02:36:04 (or one other) ? 02:36:17 gko [~gko@27.242.25.19] has joined #lisp 02:36:19 One or the other of a set 02:36:23 i.e., say my regex is: 02:36:24 heh 02:36:32 "(\\d{1,2})[/-](\\d{1,2}) ?(?:-|to) ?(\\d{1,2})[/-](\\d{1,2})|(\\d{1,2})[/-](\\d{1,2})" 02:37:10 like this: 02:37:10 (mapcar (lambda (from-one from-other) (or from-one from-other)) one-set other-set) 02:37:20 Oladon consider using cl-interpol to make that regex a bit less disturbing 02:37:26 heh 02:37:42 he already has 2 problems, he doesn't need 3. 02:37:45 ;) 02:37:48 she* 02:37:55 she* 02:38:32 Oladon you would have this instead. #?r"(\d{1,2})[/-](\d{1,2}) ?(?:-|to) ?(\d{1,2})[/-](\d{1,2})|(\d{1,2})[/-](\d{1,2})" 02:38:35 -!- lemoinem [~swoog@216.252.78.207] has quit [Ping timeout: 252 seconds] 02:38:47 akovalenko: hmm 02:39:00 shaggy-: And that's better how? ;) 02:39:02 shaggy-: t's still a regular expression, it's equally disturbing 02:39:20 hey, don't be dissing 02:39:27 regular expressions are beautiful. 02:39:29 it is, but less so 02:40:21 'Some people, when confronted with a problem, think "I know, I'll use regular expressions." Now they have two problems.' 02:40:30 Heh 02:40:53 if you have some text source with no formal syntax, where dates _just happen to look like this_, regexps are the right tool for this (wrong) job... 02:41:09 I do agree that regular expressions suck as a parser replacement 02:41:10 i.e. user input ;) 02:47:28 lemoinem [~swoog@216.252.78.207] has joined #lisp 02:51:29 -!- lemoinem [~swoog@216.252.78.207] has quit [Read error: No route to host] 02:51:40 wbooze` [~levgue@xdsl-78-35-143-146.netcologne.de] has joined #lisp 02:52:09 homie` [~levgue@xdsl-78-35-143-146.netcologne.de] has joined #lisp 02:53:18 lemoinem [~swoog@216.252.78.207] has joined #lisp 02:53:50 -!- homie [~levgue@78.35.190.31] has quit [Ping timeout: 260 seconds] 02:54:24 -!- wbooze [~levgue@xdsl-78-35-190-31.netcologne.de] has quit [Ping timeout: 256 seconds] 02:54:42 -!- wildnux [~shekhar@pool-96-226-21-221.dllstx.fios.verizon.net] has quit [Ping timeout: 255 seconds] 02:54:43 -!- ivan4th [~ivan4th@smtp.igrade.ru] has quit [Ping timeout: 260 seconds] 02:58:03 Demosthenes [~demo@206.180.155.43.adsl.hal-pc.org] has joined #lisp 03:00:52 ISF [~ivan@201.82.136.131] has joined #lisp 03:01:31 _main_ [~main@76.220.16.41] has joined #lisp 03:02:56 -!- shaggy- [~redmundia@84.122.73.141.dyn.user.ono.com] has quit [Quit: leaving] 03:03:13 -!- _main_ [~main@76.220.16.41] has quit [Read error: Connection reset by peer] 03:03:36 -!- __main__ [~main@adsl-99-173-15-158.dsl.pltn13.sbcglobal.net] has quit [Read error: Connection reset by peer] 03:04:23 _main_0 [~main@adsl-99-173-15-158.dsl.pltn13.sbcglobal.net] has joined #lisp 03:05:23 -!- Krystof [~user@81.174.155.115] has quit [Ping timeout: 260 seconds] 03:11:33 lusory [~bart@115.66.195.54] has joined #lisp 03:12:27 -!- rainyrhy is now known as rainyrhy|afk 03:12:47 -!- cheezus [~Adium@76-10-168-148.dsl.teksavvy.com] has quit [Quit: Leaving.] 03:13:08 They're generally OK for lexing. 03:14:23 kennyd [~kennyd@93-138-120-38.adsl.net.t-com.hr] has joined #lisp 03:14:44 dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has joined #lisp 03:14:46 -!- dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has quit [Client Quit] 03:15:08 dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has joined #lisp 03:15:26 realitygrill [~realitygr@adsl-76-226-140-75.dsl.sfldmi.sbcglobal.net] has joined #lisp 03:16:09 -!- wanderingelf [4817e03a@gateway/web/freenode/ip.72.23.224.58] has quit [Quit: Page closed] 03:18:22 -!- superflit [~superflit@71-208-212-174.hlrn.qwest.net] has quit [Quit: superflit] 03:27:14 akovalenko: if it has no formal syntax, but dates just happen to conform to a formal syntax, then... 03:27:17 :P 03:28:35 *Ralith* hugs cl-yacc 03:29:29 Ralith: when they cease to conform suddenly, rewriting a real parser may be non-trivial. Of course, when their grammar cease to be regular at all, then we'd be out of luck with regexps in a similar way :) 03:30:24 -!- Bike [~Glossina@71-214-98-150.ptld.qwest.net] has quit [Quit: Leaving.] 03:30:35 -!- dmiles_afk [dmiles@dsl-173-239-81-226.cascadeaccess.com] has quit [Read error: Connection reset by peer] 03:30:44 Bike [~Glossina@71-214-98-150.ptld.qwest.net] has joined #lisp 03:32:21 fair enough 03:40:07 -!- Cam [~Cam@trivialand/staff/Cam] has quit [Quit: night] 03:40:17 dmiles_afk [dmiles@dsl-173-239-80-100.cascadeaccess.com] has joined #lisp 03:40:48 Ralith: maybe you have an idea how to make cl-yacc attach precedence (and associativity) to productions (instead of terminals which are supposed to be binary operators). When I have a grammar specification in terms of precedence/assoc, it's annoying to factor out some family of non-terminals, just to express precedence/assoc for a few cases where CL-YACC doesn't support it directly... 03:41:41 superflit [~superflit@71-208-212-174.hlrn.qwest.net] has joined #lisp 03:42:19 akovalenko: I'm not really an expert on grammars in general, or cl-yacc in particular, sorry. 03:42:24 it's just serving my relatively straightforward needs well 03:42:45 thx. [I have no immediate problem with CL-YACC, just curious for now. Yet I'll definitly hit it again at some point] 03:43:21 akovalenko: I've seen some people use specialised algorithms (shunting yard or pratt's tdop) for more complex precedence/associativity rules. 03:48:45 -!- Zulu [~Zulu@c-174-58-204-235.hsd1.fl.comcast.net] has quit [Quit: ~ Trillian Astra - www.trillian.im ~] 03:50:30 -!- sanjoyd [~sanjoyd@unaffiliated/sanjoyd] has quit [Ping timeout: 256 seconds] 03:52:56 daniel__ [~daniel@p5B3260F3.dip.t-dialin.net] has joined #lisp 03:54:40 http://paste.lisp.org/display/125150#1 I'm getting some style warnings about from-day/from-month etc being nil here... could someone help me understand what's wrong? 03:55:16 (I also apparently left out the last close parentheses in my copy) 03:55:38 What does parse-integer return? 03:55:45 it never gets to it 03:55:46 -!- daniel___ [~daniel@p5B3263DA.dip.t-dialin.net] has quit [Ping timeout: 276 seconds] 03:55:52 I get the warnings on the defun 03:55:59 Oladon: STYLE-WARNING or WARNINGS? 03:56:11 style warnings, as I said 03:56:19 Oladon: STYLE-WARNINGs are about your style, something that doesn't prevent code from running at all :) 03:56:31 Oladon: Answer the question. 03:56:55 -!- rme [~rme@50.43.153.241] has left #lisp 03:57:10 You'll have to restate your question, Zhivago. 03:57:42 Oladon: PARSE-INTEGER (when :junk-allowed is true) returns either an integer or... 03:57:57 Never mind. Illiteracy is not worth dealing with. 03:58:00 Vicfred [~Vicfred@201.102.54.133] has joined #lisp 03:58:10 I'm not having an issue with parse-integer. 03:58:35 Oladon: type propagation is like that. 03:59:34 Oladon: (1) running your code on valid input is likely to work (perhaps you'll see some other problem, though) 04:00:52 I don't have a problem with it working... 04:01:01 -!- lemoinem [~swoog@216.252.78.207] has quit [Remote host closed the connection] 04:01:14 Oladon: ..and you know full well that your groups (with \\d) won't match anything except digits. :Junk-allowed is not needed here, that's all. 04:01:29 lemoinem [~swoog@216.252.67.68] has joined #lisp 04:01:31 Fair enough 04:01:32 Thanks. 04:03:36 _If_ there is something wrong with group bindings and your expression, wouldn't we like to know it as early as possible? That's one more argument to let parse-integer signal an error. 04:08:01 Especially if I were doing it right and implementing handling for such errors. 04:08:15 Oladon: Finally, STYLE-WARNINGs are _so_ non-fatal that we might conclude (in some situations) that we're right, and the compiler is too picky. (Normally, STYLE-WARNING hints at some actual problem). 04:08:30 -!- homie` [~levgue@xdsl-78-35-143-146.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 04:08:34 Nod, so far they've mostly been helpful 04:08:36 -!- wbooze` [~levgue@xdsl-78-35-143-146.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 04:09:16 Oladon: this would be useful for error handling => http://l1sp.org/cl/handler-case 04:09:47 register-group-bind is a convoluted case that's difficult for SBCL/CMUCL to prove safe. 04:10:00 akovalenko: Sadly this is a hack-a-thon project and I'm almost out of time 04:11:01 Still trying to get my "basic" functionality done ;) 04:12:43 sanjoyd [~sanjoyd@unaffiliated/sanjoyd] has joined #lisp 04:16:07 -!- Kron [~Kron@69.166.23.250] has quit [Quit: Kron awayyy!] 04:17:35 Alright... the or case isn't working. http://paste.lisp.org/display/125151 (get-dates "4/5 to 8/8") works, but (get-dates "3/4") returns (NIL NIL NIL NIL) 04:17:38 Ideas? 04:18:59 Oladon: I don't see how "3/4" matches that regexp. 04:19:18 pkhuong: note the last portion of the regexp 04:19:31 There's an or 04:20:06 Oladon: sixth (multiple-value-list => nth-value 6 04:20:20 stassats: Hmm? that one gets the year 04:20:32 oh 04:20:36 you mean improvement 04:20:38 Thanks :) 04:20:38 ah! 04:21:49 Oladon: you don't bind the groups that are matched in the "3/4" case. 04:22:09 Ah 04:22:24 Calling cl-ppcre:scan directly can be useful to catch those errors. 04:22:59 wildnux [~shekhar@68-191-210-216.dhcp.dntn.tx.charter.com] has joined #lisp 04:23:13 Oladon: another option is to make the "to ..." part optional. 04:23:18 nod, thanks. Now I just have to figure out the best way to combine those 04:23:22 well 04:23:31 hmm 04:23:39 that's actually an excellent idea. 04:24:30 -!- alkoma [~alkoma@c-98-207-166-94.hsd1.ca.comcast.net] has quit [Ping timeout: 256 seconds] 04:28:13 :) 04:28:19 * (get-dates "4/5") 04:28:19 (3510972000 NIL) 04:28:51 Amyn1 [~abennama@cac94-2-87-91-21-215.dsl.sta.abo.bbox.fr] has joined #lisp 04:30:19 -!- guther [~guther@gateway/shell/bshellz.net/x-dvovknrkkdmnzoap] has quit [Read error: Operation timed out] 04:30:19 -!- Amyn [~abennama@cac94-2-87-91-21-215.dsl.sta.abo.bbox.fr] has quit [Read error: Connection reset by peer] 04:30:48 -!- ISF [~ivan@201.82.136.131] has quit [Ping timeout: 245 seconds] 04:31:28 guther [~guther@gateway/shell/bshellz.net/x-bigompyhhbkdddho] has joined #lisp 04:33:24 -!- nuba [~nuba@pauleira.com] has quit [Ping timeout: 252 seconds] 04:33:33 nuba [~nuba@pauleira.com] has joined #lisp 04:37:17 cheezus [~Adium@76-10-168-148.dsl.teksavvy.com] has joined #lisp 04:37:46 -!- cmatei [~cmatei@95.76.22.68] has quit [Read error: Operation timed out] 04:39:50 cmatei [~cmatei@95.76.22.68] has joined #lisp 04:42:12 alkoma [~alkoma@c-98-207-166-94.hsd1.ca.comcast.net] has joined #lisp 04:42:56 -!- alkoma [~alkoma@c-98-207-166-94.hsd1.ca.comcast.net] has quit [Remote host closed the connection] 04:48:22 alkoma [~alkoma@c-98-207-166-94.hsd1.ca.comcast.net] has joined #lisp 04:49:04 -!- cheezus [~Adium@76-10-168-148.dsl.teksavvy.com] has quit [Quit: Leaving.] 04:51:19 -!- littlegiraffe [~littlegir@host-64-151-208-2.bchsia.in2net.net] has quit [Quit: leaving] 04:51:30 -!- wildnux [~shekhar@68-191-210-216.dhcp.dntn.tx.charter.com] has quit [Read error: Connection reset by peer] 04:51:49 wildnux [~shekhar@68-191-210-216.dhcp.dntn.tx.charter.com] has joined #lisp 04:54:03 mcsontos [~mcsontos@hotspot8.rywasoft.net] has joined #lisp 04:54:39 -!- sabalaba [~sabalaba_@c-98-250-107-145.hsd1.mi.comcast.net] has quit [Ping timeout: 248 seconds] 04:56:58 -!- Vicfred [~Vicfred@201.102.54.133] has quit [Read error: Connection reset by peer] 05:00:13 gdmorning [~nick@119.185.70.227] has joined #lisp 05:01:09 -!- Intensity [V5FHESfLfn@unaffiliated/intensity] has quit [Ping timeout: 255 seconds] 05:01:37 -!- alvis [~alvis@tx-71-2-123-220.dhcp.embarqhsd.net] has quit [Ping timeout: 258 seconds] 05:06:17 sabalaba [~sabalaba_@c-98-250-107-145.hsd1.mi.comcast.net] has joined #lisp 05:08:30 manuel_ [~manuel_@pD9FDD121.dip.t-dialin.net] has joined #lisp 05:08:51 -!- alkoma [~alkoma@c-98-207-166-94.hsd1.ca.comcast.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 05:12:29 -!- dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has quit [Quit: dnolen] 05:15:47 -!- bgs100 [~ian@unaffiliated/bgs100] has quit [Quit: Leaving] 05:16:32 How can I call the DB function from_unixtime from within my clsql:select? Googling isn't turning up anything 05:16:52 alvis [~alvis@tx-71-2-123-220.dhcp.embarqhsd.net] has joined #lisp 05:17:37 mrSpec [~Spec@unaffiliated/mrspec] has joined #lisp 05:18:40 ramkrsna [~ramkrsna@209.132.188.26] has joined #lisp 05:18:40 -!- ramkrsna [~ramkrsna@209.132.188.26] has quit [Changing host] 05:18:40 ramkrsna [~ramkrsna@unaffiliated/ramkrsna] has joined #lisp 05:20:09 Spion [~spion@unaffiliated/spion] has joined #lisp 05:23:39 -!- Spion_ [~spion@unaffiliated/spion] has quit [Ping timeout: 255 seconds] 05:24:13 Spion_ [~spion@unaffiliated/spion] has joined #lisp 05:25:11 -!- Spion [~spion@unaffiliated/spion] has quit [Ping timeout: 258 seconds] 05:28:49 -!- gdmorning [~nick@119.185.70.227] has left #lisp 05:29:42 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 05:33:40 billstclair [~billstcla@unaffiliated/billstclair] has joined #lisp 05:39:17 -!- superflit [~superflit@71-208-212-174.hlrn.qwest.net] has quit [Read error: Connection reset by peer] 05:39:22 superflit [~superflit@71-208-212-174.hlrn.qwest.net] has joined #lisp 05:43:48 Ray24 [~Ray24@adsl-70-231-231-169.dsl.snfc21.sbcglobal.net] has joined #lisp 05:43:54 Hi, where are the best programmers here? 05:44:06 What? 05:44:18 are you what I'm asking for? are you the best? 05:44:21 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Ping timeout: 255 seconds] 05:44:33 I'm positive I am the best. Noone can defeat me. 05:44:43 who's Noone? 05:44:49 bards sing of austinh throughout the lands. What do you require, noble guest 05:44:50 If I asked you to hack my computer by using LISP, could you? 05:45:47 hacking is a serious business 05:46:02 usually a hacker takes at most one apprentice 05:46:11 What's your definition of a good programmer? what's your expectation? 05:46:16 how much are you expected to know? 05:46:40 Your troll powers are too much for me. I submit. 05:47:15 you are expected to know everything. 05:47:38 Good. Now , do you know everything? 05:48:54 everybody knows that everything is in 42. 05:49:05 there's nothing else left to know. 05:49:06 if you have to ask this, obviously you don't know everything. 05:49:49 I was expecting you to come up with such a response a little quicker. 05:50:08 anyways, I haven't found what I was looking for 05:50:42 mishoo [~mishoo@79.112.115.118] has joined #lisp 05:51:51 Ray24: I think you want Mel 05:51:54 (this will be on the test) 05:52:27 mel 05:52:28 Ray24: do you own an iPhone? 05:52:36 I own 3 iphones and 2 blackberries 05:52:41 who is mel? 05:54:29 just checking... 05:55:16 -!- Ray24 [~Ray24@adsl-70-231-231-169.dsl.snfc21.sbcglobal.net] has left #lisp 05:57:02 seriously speaking a good programmer is one who solves the problem, leaving the code in better state then they found it in 05:59:32 -!- brandonz [~brandon@c-76-102-192-48.hsd1.ca.comcast.net] has quit [Quit: Leaving] 06:00:04 gravicappa [~gravicapp@ppp91-77-189-195.pppoe.mtu-net.ru] has joined #lisp 06:01:34 -!- wildnux [~shekhar@68-191-210-216.dhcp.dntn.tx.charter.com] has quit [Quit: Konversation terminated!] 06:01:44 sdemarre [~serge@91.176.68.211] has joined #lisp 06:01:54 wildnux [~shekhar@68-191-210-216.dhcp.dntn.tx.charter.com] has joined #lisp 06:04:15 maxm-: sadly those two goals are often at odds with each other 06:07:34 -!- mishoo [~mishoo@79.112.115.118] has quit [Quit: (save-lisp-and-die)] 06:08:14 mishoo [~mishoo@79.112.115.118] has joined #lisp 06:13:39 ccorn [~ccorn@g132123.upc-g.chello.nl] has joined #lisp 06:13:45 -!- ccorn [~ccorn@g132123.upc-g.chello.nl] has quit [Client Quit] 06:17:38 vervic [~vervic@84.114.246.246] has joined #lisp 06:19:17 jewel [~jewel@196-209-248-67.dynamic.isadsl.co.za] has joined #lisp 06:19:24 -!- vervic [~vervic@84.114.246.246] has left #lisp 06:20:08 -!- ltriant [~ltriant@110.174.168.43] has quit [Quit: Get MacIrssi - http://www.sysctl.co.uk/projects/macirssi/] 06:23:38 mvilleneuve [~mvilleneu@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has joined #lisp 06:23:49 -!- mishoo [~mishoo@79.112.115.118] has quit [Quit: (save-lisp-and-die)] 06:24:01 good morning 06:24:37 Guthur [~user@212.183.128.66] has joined #lisp 06:25:08 mishoo [~mishoo@79.112.115.118] has joined #lisp 06:27:59 -!- Amyn1 [~abennama@cac94-2-87-91-21-215.dsl.sta.abo.bbox.fr] has quit [Ping timeout: 248 seconds] 06:33:42 -!- realitygrill [~realitygr@adsl-76-226-140-75.dsl.sfldmi.sbcglobal.net] has quit [Quit: realitygrill] 06:34:30 realitygrill [~realitygr@adsl-76-226-140-75.dsl.sfldmi.sbcglobal.net] has joined #lisp 06:38:03 marsell [~marsell@120.18.201.117] has joined #lisp 06:38:14 Trystam [~Tristam@cpe-72-226-124-205.nycap.res.rr.com] has joined #lisp 06:38:43 -!- Tristam [~Tristam@cpe-72-226-124-205.nycap.res.rr.com] has quit [Ping timeout: 245 seconds] 06:42:55 man the applegasm media is having is ridiculous 06:44:02 reminded me of this: http://www.youtube.com/watch?v=DaxU0ut5tUw 06:45:57 Athas [~athas@shop3.diku.dk] has joined #lisp 06:46:58 just bury him in a brushed alumin[i]um coffin with no visible screws inside a walled garden and call it done 06:47:35 maxm-: now it's in #lisp too, thanks 06:50:01 parabolize [~paraboliz@c-75-71-247-61.hsd1.co.comcast.net] has joined #lisp 06:50:37 -!- Bike [~Glossina@71-214-98-150.ptld.qwest.net] has left #lisp 06:50:45 -!- sabalaba [~sabalaba_@c-98-250-107-145.hsd1.mi.comcast.net] has quit [Remote host closed the connection] 06:50:47 you found me out, my secret plan is to kill #lisp by posting a youtube video per week, then increase the rate of posting so slowly as no one notices.. Before you know it lolspeak compiler will appear in sbcl/contrib 06:51:37 nil nisi bonum 06:55:10 -!- Guthur [~user@212.183.128.66] has quit [Remote host closed the connection] 06:58:55 -!- jewel [~jewel@196-209-248-67.dynamic.isadsl.co.za] has quit [Ping timeout: 248 seconds] 06:59:44 -!- DaDaDosPrompt [~DaDaDosPr@184.99.29.100] has quit [Quit: DaDaDosPrompt] 06:59:51 kiuma [~kiuma@85.18.55.37] has joined #lisp 07:01:40 spacefrogg [~spacefrog@unaffiliated/spacefrogg] has joined #lisp 07:04:16 gozoner [~ebg@ip68-6-68-92.sb.sd.cox.net] has joined #lisp 07:04:40 -!- lusory [~bart@115.66.195.54] has quit [Ping timeout: 260 seconds] 07:05:10 -!- gozoner [~ebg@ip68-6-68-92.sb.sd.cox.net] has quit [Client Quit] 07:06:26 KingNato [~patno@fw.polopoly.com] has joined #lisp 07:09:11 -!- wormwood [~wormwood@pdpc/supporter/student/wormwood] has quit [Ping timeout: 260 seconds] 07:11:11 stassats: available for question of style? 07:12:01 insomnia1alt [~milan@port-92-204-122-249.dynamic.qsc.de] has joined #lisp 07:12:01 -!- insomnia1alt [~milan@port-92-204-122-249.dynamic.qsc.de] has quit [Changing host] 07:12:01 insomnia1alt [~milan@unaffiliated/iammilan] has joined #lisp 07:12:07 superflit_ [~superflit@71-33-183-188.hlrn.qwest.net] has joined #lisp 07:12:17 #lisp is available for questions 07:13:07 wormwood [~wormwood@pdpc/supporter/student/wormwood] has joined #lisp 07:13:35 -!- superflit [~superflit@71-208-212-174.hlrn.qwest.net] has quit [Ping timeout: 252 seconds] 07:13:35 -!- superflit_ is now known as superflit 07:14:12 stassats: go to http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-18.html#%_sec_2.5.3 and search for definition of add-terms function. how would you write it in CL? would return-from be appropriate to use for recursion base case instead of having nested cond? 07:14:50 stassats: the function itself implements an algorithm analogous to merging two sorted lists. 07:15:01 -!- insomniaSalt [~milan@unaffiliated/iammilan] has quit [Ping timeout: 240 seconds] 07:15:01 -!- insomnia1alt is now known as insomniaSalt 07:17:18 if it's analogous to merging two sorted lists, then i'd use MERGE 07:17:26 nostoi [~nostoi@127.Red-79-156-52.staticIP.rima-tde.net] has joined #lisp 07:18:19 stassats: ah, but there has to be done something when two equal elements are encountered. 07:18:22 otherwise, in CL you can call CAR on an empty list without getting an error 07:18:38 stassats: i haven't seen that merge has an option of doing that. 07:18:50 Beetny [~Beetny@ppp118-208-2-165.lns20.bne1.internode.on.net] has joined #lisp 07:19:25 stassats: I know that (car nil) is nil, but.. how would it help? 07:21:06 madnificent [~madnifice@83.101.62.132] has joined #lisp 07:21:07 zvrba: http://paste.lisp.org/display/125153 07:22:33 hm, thanks. 07:23:04 oh, I see what you've done. took me a while: you took the inner let to the top-level. cool. 07:23:26 yes, this wouldn't work in scheme 07:23:49 yes, i was aware of that. 07:24:39 wow.i like that solution.it's the most elegant of everything we discussed last evening here. 07:24:44 HG` [~HG@p579F7B69.dip.t-dialin.net] has joined #lisp 07:25:00 jtza8 [~jtza8@wbs-41-208-219-19.wbs.co.za] has joined #lisp 07:27:05 Blkt [~user@89-96-199-46.ip13.fastwebnet.it] has joined #lisp 07:29:01 -!- anonchik [~anonymous@88.80.28.189] has quit [Ping timeout: 240 seconds] 07:30:32 oiiii [~oiiii@82.71.241.25] has joined #lisp 07:31:11 -!- nostoi [~nostoi@127.Red-79-156-52.staticIP.rima-tde.net] has quit [Read error: Connection reset by peer] 07:31:17 anonchik [~anonymous@88.80.28.189] has joined #lisp 07:32:25 -!- realitygrill [~realitygr@adsl-76-226-140-75.dsl.sfldmi.sbcglobal.net] has quit [Quit: realitygrill] 07:34:51 Temp [~quassel@223.191.84.181] has joined #lisp 07:35:40 good morning everyone 07:35:50 -!- Temp [~quassel@223.191.84.181] has quit [Remote host closed the connection] 07:37:20 Amyn [~abennama@62.23.212.45] has joined #lisp 07:37:32 nostoi [~nostoi@127.Red-79-156-52.staticIP.rima-tde.net] has joined #lisp 07:38:25 ccorn [~ccorn@84-53-64-50.adsl.unet.nl] has joined #lisp 07:43:47 e-user [e-user@nat/nokia/x-hgchwktkyrgfbntz] has joined #lisp 07:50:39 mishoo_ [~mishoo@79.112.115.118] has joined #lisp 07:50:43 -!- mishoo [~mishoo@79.112.115.118] has quit [Read error: No route to host] 07:52:05 -!- nostoi [~nostoi@127.Red-79-156-52.staticIP.rima-tde.net] has quit [Read error: Connection reset by peer] 07:54:02 dmiles [dmiles@dsl-173-239-80-100.cascadeaccess.com] has joined #lisp 07:54:16 bandu [kvirc@pool-71-164-173-28.dllstx.fios.verizon.net] has joined #lisp 07:54:17 -!- bandu [kvirc@pool-71-164-173-28.dllstx.fios.verizon.net] has quit [Changing host] 07:54:17 bandu [kvirc@unaffiliated/bandu] has joined #lisp 07:54:47 -!- superflit [~superflit@71-33-183-188.hlrn.qwest.net] has quit [Read error: Connection reset by peer] 07:55:28 -!- dmiles_afk [dmiles@dsl-173-239-80-100.cascadeaccess.com] has quit [Read error: Connection reset by peer] 07:55:37 -!- daniel__ [~daniel@p5B3260F3.dip.t-dialin.net] has quit [Remote host closed the connection] 07:55:47 daniel__ [~daniel@p5B3260F3.dip.t-dialin.net] has joined #lisp 07:56:49 aerique [310225@xs8.xs4all.nl] has joined #lisp 07:56:59 -!- cesarbp [~cbolano@189.139.180.200] has quit [Ping timeout: 258 seconds] 07:57:22 -!- coyo [kvirc@unaffiliated/bandu] has quit [Ping timeout: 258 seconds] 07:57:27 cesarbp [~cbolano@189.139.180.200] has joined #lisp 07:57:45 mishoo__ [~mishoo@79.112.115.118] has joined #lisp 07:57:52 -!- mishoo_ [~mishoo@79.112.115.118] has quit [Remote host closed the connection] 07:58:54 -!- anonchik [~anonymous@88.80.28.189] has quit [Ping timeout: 258 seconds] 07:58:54 -!- macrobat [~fuzzyglee@h-17-133.a328.priv.bahnhof.se] has quit [Ping timeout: 258 seconds] 08:00:23 anonchik [~anonymous@88.80.28.189] has joined #lisp 08:01:23 macrobat [~fuzzyglee@h-17-133.a328.priv.bahnhof.se] has joined #lisp 08:04:45 -!- drdo` [~drdo@89.180.120.109] has quit [Ping timeout: 260 seconds] 08:04:49 drdo`` [~drdo@89.180.120.109] has joined #lisp 08:14:16 -!- Athas [~athas@shop3.diku.dk] has quit [Read error: No route to host] 08:14:49 -!- bandu [kvirc@unaffiliated/bandu] has quit [Ping timeout: 252 seconds] 08:16:10 morning Blkt 08:17:30 drdo``` [~drdo@89.180.120.109] has joined #lisp 08:18:13 -!- HG` [~HG@p579F7B69.dip.t-dialin.net] has quit [Quit: Leaving.] 08:18:58 -!- drdo`` [~drdo@89.180.120.109] has quit [Read error: Connection reset by peer] 08:19:59 ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has joined #lisp 08:20:17 mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has joined #lisp 08:21:27 Krystof [~user@81.174.155.115] has joined #lisp 08:23:20 So I'm running hunchentoot as an init.d, and I'd like to define a handler on startup, so I added the (hunchentoot:define-easy-handler ...) to the startup.lisp that gets run... but it's not working. Any ideas? 08:24:36 it seems like it's not getting the functions correctly from the inner load 08:24:40 Oladon: "it's not working" is not a proper problem description. 08:25:08 i.e. defining the handler on startup isn't working -- I'm still getting the default hunchentoot page 08:26:15 Oladon: are you saying that the same sequence of operations that works when you run them interactively does not work when you're running them from the rc script? 08:26:44 Oladon: does the rc script work when you call it from the shell? 08:28:29 H4ns: correct. If I manually copy/paste the contents of the startup.lisp into an sbcl session, it works correctly 08:28:40 I'll try calling it from the shell without the init.d wrapper 08:29:01 Oladon: i'd add some print statements 08:29:33 attila_lendvai [~attila_le@80.98.25.142] has joined #lisp 08:29:33 -!- attila_lendvai [~attila_le@80.98.25.142] has quit [Changing host] 08:29:33 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 08:29:54 Kajtek [~nope@nat4-230.ghnet.pl] has joined #lisp 08:32:21 -!- Amadiro [~Amadiro@ti0021a380-dhcp3462.bb.online.no] has quit [Quit: Leaving] 08:32:59 alanpearce [~alan@home.alanpearce.co.uk] has joined #lisp 08:36:21 -!- neoesque [~neoesque@210.59.147.232] has quit [Quit: Bye!] 08:36:27 hi Oladon 08:40:48 -!- cesarbp [~cbolano@189.139.180.200] has quit [Ping timeout: 245 seconds] 08:46:58 -!- gcentauri [~gcentauri@76-85-192-184.cable.inebraska.com] has quit [Ping timeout: 276 seconds] 08:59:36 -!- manuel_ [~manuel_@pD9FDD121.dip.t-dialin.net] has quit [Quit: manuel_] 09:00:57 -!- dmiles [dmiles@dsl-173-239-80-100.cascadeaccess.com] has quit [Read error: Connection reset by peer] 09:01:20 -!- alanpearce [~alan@home.alanpearce.co.uk] has quit [Quit: alanpearce] 09:02:42 -!- mvilleneuve [~mvilleneu@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has quit [Read error: Operation timed out] 09:06:16 hakzsam [~hakzsam@64.120.44.106] has joined #lisp 09:06:40 mvilleneuve [~mvilleneu@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has joined #lisp 09:07:54 c_arenz [arenz@nat/ibm/x-jhkalhpenniqxvdy] has joined #lisp 09:10:51 gensym [~user@dslb-088-071-149-049.pools.arcor-ip.net] has joined #lisp 09:10:59 cyrillos [~cyrill@188.134.33.194] has joined #lisp 09:13:03 -!- replore__ [~replore@203.152.213.161.static.zoot.jp] has quit [Remote host closed the connection] 09:15:37 thijso [~thijs@83.98.233.115] has joined #lisp 09:19:02 -!- hakzsam [~hakzsam@64.120.44.106] has quit [Remote host closed the connection] 09:19:17 hakzsam [~hakzsam@64.120.44.106] has joined #lisp 09:22:25 dmiles_afk [dmiles@173.239.80.100] has joined #lisp 09:24:01 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 276 seconds] 09:25:17 alanpearce [~alan@home.alanpearce.co.uk] has joined #lisp 09:29:01 HG` [~HG@87.159.123.105] has joined #lisp 09:30:03 vervic [~vervic@84.114.246.246] has joined #lisp 09:31:20 trebor_dki [~user@mail.dki.tu-darmstadt.de] has joined #lisp 09:33:39 -!- Oladon [~Oladon@np34.co.returnpath.net] has quit [Read error: Connection reset by peer] 09:39:36 killerboy [~mateusz@users69.kollegienet.dk] has joined #lisp 09:40:35 hmm is making at :after method on (setf slot-value-using-class) supposed to work? basically as a hook on when slot value changed? 09:40:54 maxm-: yes. 09:41:11 akovalen` [~user@95.73.109.170] has joined #lisp 09:42:53 maxm-: see https://github.com/hanshuebner/bknr-datastore/blob/master/src/data/object.lisp#L111 for a usage example 09:43:11 -!- akovalenko [~user@95.73.107.178] has quit [Ping timeout: 248 seconds] 09:44:43 doh well I just realize I can't use it, thought it included slot name specializer 09:45:02 I'll just do a trigger on (setf accessor), and only use accessors on that slot 09:46:56 dabd [~dabd@2001:690:2100:1c:21e:65ff:fe49:7c12] has joined #lisp 09:50:03 -!- gravicappa [~gravicapp@ppp91-77-189-195.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 09:50:07 -!- frozencemetery [~frozencem@CMU-786527.WV.CC.CMU.EDU] has quit [Quit: Leaving.] 09:55:29 -!- dabd [~dabd@2001:690:2100:1c:21e:65ff:fe49:7c12] has quit [Ping timeout: 244 seconds] 09:58:00 easyE [GIudt0UdGV@panix2.panix.com] has joined #lisp 10:12:14 Joreji [~thomas@80.237.156.64] has joined #lisp 10:14:30 -!- kpreid [~kpreid@128.153.212.176] has quit [Quit: Quitting] 10:26:01 frozencemetery [~frozencem@CMU-786527.WV.CC.CMU.EDU] has joined #lisp 10:34:11 cfa [~cfa@unaffiliated/cfa] has joined #lisp 10:34:18 morning 10:35:14 manuel_ [~manuel_@pD9FDD121.dip.t-dialin.net] has joined #lisp 10:35:59 -!- dto [~dto@pool-96-252-89-130.bstnma.fios.verizon.net] has quit [Ping timeout: 248 seconds] 10:39:31 stassats [~stassats@wikipedia/stassats] has joined #lisp 10:40:59 -!- kephas [~pierre@AStrasbourg-551-1-4-49.w92-141.abo.wanadoo.fr] has quit [Read error: Operation timed out] 10:43:02 kephas [~pierre@AStrasbourg-551-1-36-75.w92-148.abo.wanadoo.fr] has joined #lisp 10:47:08 leo2007 [~leo@114.247.10.81] has joined #lisp 10:47:53 dto [~dto@pool-96-252-89-130.bstnma.fios.verizon.net] has joined #lisp 10:49:13 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 10:50:26 vert2 [~vert2@gateway/shell/bshellz.net/x-jwceketjcszxfqqy] has joined #lisp 10:53:10 Athas [~athas@shop3.diku.dk] has joined #lisp 11:02:33 Yuuhi [benni@p5483A99D.dip.t-dialin.net] has joined #lisp 11:04:13 zipace [~hi@unaffiliated/zipace] has joined #lisp 11:04:52 -!- H4ns [43174196@gateway/web/freenode/ip.67.23.65.150] has quit [Ping timeout: 252 seconds] 11:05:01 replore [~replore@ntkngw304073.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #lisp 11:06:34 anyone have any code for converting a polyline to a spline? My google-fu could only find autocad specific one 11:07:39 maxm-: does this help? http://helpful.knobs-dials.com/index.php/Polylines_and_splines,_curves,_interpolation,_resampling,_easing 11:09:15 -!- frozencemetery [~frozencem@CMU-786527.WV.CC.CMU.EDU] has quit [Ping timeout: 255 seconds] 11:09:22 well a little, I'm basically looking to reproducing the way perl-GD polyline.pl addControlPoints() method works 11:09:43 you give it a polyline, and it returns control points to draw a smoothed line 11:10:10 I'll just convert polyline.pl algorithm, altho its written in horrible perl style 11:10:35 -!- leo2007 [~leo@114.247.10.81] has quit [Quit: rcirc on GNU Emacs 23.3.50.1] 11:10:43 link? 11:11:58 Temp [~quassel@202.71.143.2] has joined #lisp 11:12:54 <_3b> hard to say without more info about what sort of spline, and how it should relate to the original lines 11:13:56 http://fossies.org/unix/www/GD-2.46.tar.gz:a/GD-2.46/GD/Polyline.pm 11:14:10 <_3b> from the docs of that function, my random guess would be find the tangent at each point, then intersection of adjacent tangents, and that would give you a quadratic spline that goes through the original points 11:14:11 -!- grouzen [~grouzen@ip21-159.200.109.crimea.com] has quit [Ping timeout: 256 seconds] 11:14:15 sub addControlPoints 11:14:52 I found this: http://paste.lisp.org/display/15515 which seems to be doing the same thing in a way I can understand even less then perl one :-) 11:15:21 I think it's not that badly written 11:15:48 ha! says ;; this starts to confuse me.... 11:16:07 its not the style, its me sucking at basic math 11:16:15 <_3b> variable names could be a bit longer :p 11:16:31 -!- marsell [~marsell@120.18.201.117] has quit [Ping timeout: 258 seconds] 11:17:04 hagish [~hagish@p54983D01.dip.t-dialin.net] has joined #lisp 11:17:43 <_3b> something like half the alphabet used there 11:19:32 _3b: would you prefer using only 1 character, in varying lengths? (setf aaaaaa (1+ aaaaaaaa) aaaa (* aaa aaaaaaaaa)) ? 11:20:12 <_3b> no, multiple characters, arranged in pre-defined orders representing some shared meaning :p 11:20:34 -!- Temp [~quassel@202.71.143.2] has quit [Remote host closed the connection] 11:20:57 ok found something relevant in bknr, cl-vectors 11:20:59 <_3b> (single character names can qualify if there is a link to a paper in the comments, but not usually otherwise aside from a few common cases like i, xyz, uv, etc) 11:24:32 ok cl-paths was what I needed 11:25:35 -!- hakzsam [~hakzsam@64.120.44.106] has quit [Remote host closed the connection] 11:28:21 -!- Beetny [~Beetny@ppp118-208-2-165.lns20.bne1.internode.on.net] has quit [Ping timeout: 256 seconds] 11:29:12 naeg [~naeg@194.208.239.170] has joined #lisp 11:36:48 -!- cmbntr_ [~cmbntr@slice.loopback.ch] has quit [Ping timeout: 260 seconds] 11:38:41 -!- killerboy [~mateusz@users69.kollegienet.dk] has quit [Quit: leaving] 11:38:51 killerboy [~mateusz@users69.kollegienet.dk] has joined #lisp 11:38:52 -!- killerboy [~mateusz@users69.kollegienet.dk] has quit [Client Quit] 11:39:17 killerboy [~mateusz@users69.kollegienet.dk] has joined #lisp 11:39:55 cmbntr [~cmbntr@slice.loopback.ch] has joined #lisp 11:43:02 -!- mishoo__ [~mishoo@79.112.115.118] has quit [Quit: (save-lisp-and-die)] 11:44:50 mishoo [~mishoo@79.112.115.118] has joined #lisp 11:45:13 moah [~gnu@dslb-178-006-213-130.pools.arcor-ip.net] has joined #lisp 11:47:53 el-maxo [~max@p5DE8DCAD.dip.t-dialin.net] has joined #lisp 11:47:55 hiho 11:48:35 hey el-maxo 11:48:37 there sure is a macro/function to loop accross key/value pairs of a plist that I can't think of right now? 11:48:59 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Remote host closed the connection] 11:49:20 urandom__ [~user@p548A5601.dip.t-dialin.net] has joined #lisp 11:50:48 LOOP 11:51:47 el-maxo: (loop for (key value) ) 11:54:20 -!- ramkrsna [~ramkrsna@unaffiliated/ramkrsna] has quit [Remote host closed the connection] 11:54:32 on plist by #'cddr is a rather crucial part 11:55:26 right 12:00:40 antoszka: don't get what you mean by that loop phrase 12:01:25 -!- lemoinem [~swoog@216.252.67.68] has quit [Ping timeout: 252 seconds] 12:02:30 el-maxo: (loop for (key value) on '(:foo "foo" :bar "bar") by #'cddr do ) 12:02:55 el-maxo: As stassats said, the by #'cddr bit is crucial for sensible looping in pairs. 12:03:15 -!- nanoc [~conanhome@186.157.190.177] has quit [Ping timeout: 252 seconds] 12:06:19 mjonsson [~mjonsson@38.109.95.133] has joined #lisp 12:06:56 -!- manuel_ [~manuel_@pD9FDD121.dip.t-dialin.net] has quit [Quit: manuel_] 12:07:43 -!- gko [~gko@27.242.25.19] has quit [Ping timeout: 255 seconds] 12:08:05 gko [~gko@27.242.25.19] has joined #lisp 12:08:11 I thought that iterate has a in-plist iterator, but I seem to be wrong ... 12:12:20 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 12:12:33 thanks 12:12:45 didnt know the for ... on .. by syntax 12:17:00 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Client Quit] 12:17:03 H4ns [41173d62@gateway/web/freenode/ip.65.23.61.98] has joined #lisp 12:17:08 nanoc [~conanhome@186.123.182.62] has joined #lisp 12:18:27 jdz [~jdz@193.206.22.97] has joined #lisp 12:21:36 gcentauri [~gcentauri@76-85-192-184.cable.inebraska.com] has joined #lisp 12:23:08 antifuchs: i am jealous of your fast fasls 12:23:35 Xach: did you see the planetwit.lisp file that i pasted yesterday? 12:23:48 -!- vervic [~vervic@84.114.246.246] has quit [Quit: vervic] 12:24:27 antifuchs: your article reminded me of a bug that i had in a recent project where the system kept saving a snapshot to disk, thinking that the previously saved snapshot was outdated. 12:24:33 H4ns: yes, even though it was cross-threaded in different channels :) thanks 12:24:53 -!- Kajtek [~nope@nat4-230.ghnet.pl] has quit [Quit: Leaving.] 12:25:37 antifuchs: as it showed, the problem was that on windows, file systems have different timestamp granularity, and if you set the modification time of a file, the time stored may actually be in the past from the perspective of the timestamp that you provided. 12:25:50 -!- jlaire [~jlaire@80-248-244-31.cust.suomicom.fi] has quit [Ping timeout: 244 seconds] 12:25:58 -!- nanoc [~conanhome@186.123.182.62] has quit [Read error: Connection reset by peer] 12:26:04 antifuchs: so you don't even need to go distributed, just using windows with fat32 is enough to see some quite confusing bahavior :) 12:29:24 couldn't you just do a quick MD5-sum of part of the files? 12:29:25 H4ns: using fat32 is enough ;-) 12:29:30 oh wait, that's stupid 12:29:38 *anvandare* wishes he'd learn to think before talking 12:30:25 anvandare: it can work if you have reliable timestamp as first part of the file 12:30:37 for example, first block 12:31:02 yes, but i was thinking "take bytes 40000-50000" and md5 them and compare, but of course that wouldn't matter if only other parts of the file were modified 12:31:03 jlaire [~jlaire@80-248-244-31.cust.suomicom.fi] has joined #lisp 12:32:28 ignas [~ignas@217067203062.itsa.net.pl] has joined #lisp 12:35:26 -!- mjonsson [~mjonsson@38.109.95.133] has quit [Remote host closed the connection] 12:37:24 -!- kiuma [~kiuma@85.18.55.37] has quit [Quit: Leaving] 12:37:46 For most files, it's almost as fast to read the whole file than to read the first block. 12:39:21 in this case, the snapshot was large and it was written to a flash drive. the bug caused the flash drives to go bad quite fast, as they were constantly overwritten. 12:40:58 dfox [~dfox@2001:470:9d8f:0:4261:86ff:fe8e:8446] has joined #lisp 12:41:20 -!- gko [~gko@27.242.25.19] has quit [Ping timeout: 252 seconds] 12:41:27 nanoc [~conanhome@186.157.165.127] has joined #lisp 12:43:31 *Xach* uses C-c C-o for the first time, nearly weeps with joy 12:44:23 -!- loke [~elias@bb115-66-85-121.singnet.com.sg] has quit [Remote host closed the connection] 12:44:52 *stassats* never uses it 12:45:40 Archduke [1000@184-100-206-84.ptld.qwest.net] has joined #lisp 12:45:45 It perfectly fits a situation I run into when doing Quicklisp build tests 12:46:30 -!- Joreji [~thomas@80.237.156.64] has quit [Ping timeout: 260 seconds] 12:49:56 -!- naeg [~naeg@194.208.239.170] has quit [Quit: WeeChat 0.3.5] 12:51:54 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has left #lisp 12:52:22 -!- mcsontos [~mcsontos@hotspot8.rywasoft.net] has quit [Quit: Leaving] 12:55:01 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 12:57:44 MrMC [~user@92.198.52.210] has joined #lisp 13:00:42 awesome 13:00:58 and yeah, very handy tip (then again, i could say that for all of them) 13:01:11 i've also enjoyed C-c C-o, really handy 13:01:50 when i'm inspecting an object, i drill down on the objects which are resident in the object. is there a way to display a list of objects i've inspected, so i can jump back up? 13:02:17 you can just jump back with l 13:02:50 The next slime: ftp://ftp.informatimago.com/users/pjb/images/from-slime-to-supergerm.jpg 13:03:10 stassats: thanks! 13:04:03 pjb: if you want to help the future arrive, stop using ftp 13:04:15 you are probably the person causing problems with the flying cars 13:04:35 I like ftp. 13:04:50 pjb makes flying cares go puf fpuff *booom* 13:04:56 With ftp, I can order a server to send file to another server... 13:04:57 what's wrong with ftp? 13:05:19 It wasn't designed with NATs in mind. 13:05:32 But then, NATs should disappear with IPv6. 13:05:52 also, sucky workplaces like mine block ftp 13:05:52 NATs are a ugly kludge needed for lack of IP addresses. 13:06:29 isn't ftp layer 4 and nat layer 3? 13:06:41 Yes. 13:07:04 so why wouldn't they work together? 13:07:12 Let us discuss this further on #ftp 13:07:15 anvandare: Masquerade (what most people think of when talking about NAT) is incompatible with IP 13:08:00 Well,with a well configured NAT it's possible. Basically, FTP uses two streams, one for commands, one for data, on two different sockets (20 and 21). And the direction of connection may surprise you, or a naive NAT. 13:08:24 That said, it has the passive option, to work around bad NATs. 13:09:20 btw, going back on topic... will I have any surprises if I switch CMU 18b to current snapshot? 13:09:25 loke [~elias@bb115-66-85-121.singnet.com.sg] has joined #lisp 13:10:06 Xach: clear-output? 13:11:05 loke: that's it 13:11:34 Yeah, it's useful. I learned about it... I think yesterday? Was it from your blog perhaps? 13:11:54 stassats' blog more likely. 13:11:57 ah 13:12:02 Planet Lisp then 13:12:45 Do you happen to know of a decent time and date package for CL? It's the one thing that totally drives me crazy that I really really need 13:12:57 loke: What do you want it to do? 13:13:04 It needs to properly support the differentiation between timezones and UTC-based times. 13:13:13 Well... Here's an example: 13:13:59 loke: I've tried to use simple-date-time ... but that modifies it's arguments for month+ etc (patch available) .... I gave up, operated on unix timestamps, and converted to local as needed 13:14:02 Let's say I'm getting a timestamp (universal time). I then want the local time, one day later. 13:14:17 loke: did you look at this page yet? http://www.cliki.net/time 13:14:39 loke: well, I went to unix stamps and back ... seemed easiest for doing arithmetic 13:14:41 loke: with DST rules and the like? 13:14:45 I can't just add 24 hours, as there could be DST changes involved 13:14:47 there's http://common-lisp.net/project/cl-date-calc/ 13:15:02 Xach: correct. I'd expect something like java.util.Calendar at least 13:15:11 that has deltas, 'tomorrow, 'yesterday etc. 13:15:25 cfa: I looked at it. It's very naive 13:15:28 k 13:15:31 no timezone nor DST support 13:15:41 It fakes the timezone stuff 13:16:11 loke: what do you want exactly? adding 24 hours (and getting from 1pm to 2pm across DST borders), or going from 1pm to 1pm, even if DST changes? 13:16:21 flip214: all of that 13:16:39 well, the first is easiest (I think) via UTC seconds ... 13:16:40 flip214: It's very hard to write _correct_ date handling code without it. Even on Java, most people screw it up. 13:16:59 you basically want a rich date and time lib like python's datetime or perl's DateTime i take it? 13:16:59 loke: I don't know if anyone has written something like that already. Hacks and glory await! 13:17:15 Xach: I'm actually considering porting the IBM library to java 13:17:20 i mean to Lisp from Java 13:17:32 loke: but simple-date-time might do your second point ... just increment the day, and let it normalize again ... 13:17:35 The IBM one is fairly complex though 13:18:25 -!- varjag [~eugene@122.62-97-226.bkkb.no] has quit [Quit: Leaving] 13:18:33 For a local application, it's generally possible to work around these issues. The rel problem happens when you have a web application that needs to process times in all sorts of timezones 13:18:44 sammi` [sammi@gateway/shell/devio.us/x-xigiuwpltuyzwhem] has joined #lisp 13:18:50 CL only has a concept of "local" and "UTC" representation 13:19:05 and you have to cross your fingers that "local" does the right thing 13:19:05 varjag [~eugene@62.97.226.122] has joined #lisp 13:19:09 -!- Archduke [1000@184-100-206-84.ptld.qwest.net] has left #lisp 13:19:12 ngz [~user@201.144.80.79.rev.sfr.net] has joined #lisp 13:20:08 pardon my ignorance ... but what else is there but "local" and "UTC"? 13:20:12 Yes, but decode-universal-time and encode-universal-time take a time-zone argument. 13:20:19 Another problem happens when you have to deal with wallclock times. I.e. to anser the question "what is the timestamp when it's 12:00 in CET?" 13:20:36 corni [~corni@p57AAE0C9.dip.t-dialin.net] has joined #lisp 13:20:37 -!- corni [~corni@p57AAE0C9.dip.t-dialin.net] has quit [Changing host] 13:20:37 corni [~corni@drupal.org/user/136353/view] has joined #lisp 13:20:47 pjb: a timezone is more than a time offset. A timezone includes DST information 13:20:55 ok 13:21:25 adding 24 hours to a date adds a different number of hours depending on whether the addition crosses the DST boundary 13:22:00 sorry, "adding a day" 13:22:13 adding 24 hours shouldn't take DST into account, of course. 13:22:18 loke: erik naggum wrote about the need to roll his own timezone handling code because of CL not providing for his needs, but i can't find the specific message right now. and it probably didn't have a lot of details that could be used to roll one of your own. 13:22:29 Xach: I know. I looked at the code. It's terrible. 13:22:35 loke: What code? 13:22:40 http://www.xach.com/naggum/articles/3127698009640562@naggum.no.html is the only indirect reference I could find. 13:22:55 Yeah, he made a library for it 13:22:56 -!- HG` [~HG@87.159.123.105] has quit [Quit: Leaving.] 13:23:16 Someone else wrote that. 13:23:44 dlowe [~dlowe@50-77-31-237-static.hfc.comcastbusiness.net] has joined #lisp 13:23:53 d'oh, yes, of course, not a post but lugm-time itself. 13:24:25 Ah i see 13:24:28 "based on" 13:24:32 I just checked the code again 13:24:34 loke: If you're providing some new library for that, I'd like to post a wish ... provide a macro like (to-string "YYYY-MM-DD hh:mm:ss.msec") or similar 13:24:39 -!- Athas [~athas@shop3.diku.dk] has quit [Read error: No route to host] 13:25:01 having to write big (format) statements, fetching fields out of the same thing over and over again, isn't nice 13:25:02 http://www.xach.com/naggum/articles/3132042770550791@naggum.no.html has a bit more about it 13:25:04 flip214: definitely. I have rolled that one myself a wholebunch of times 13:25:16 and a macro so that simply a matching (format) line is inserted 13:25:19 thanks a lot 13:25:33 flip214: local-time? 13:25:38 flip214: i like the (format nil "~/iso:8601/" ...) cuteness. 13:25:56 -!- akovalen` is now known as akovalenko 13:26:01 I will look at the source for the IBM library (which is the one everybody bases their date handling code on) to see if it's feasible to get it to Lisp 13:27:18 take a look at the python/perl datetime libs if you're familiar with either language too -- it might be more readable 13:27:26 or at least, more concise 13:29:01 cfa: I could, but I'm not experienced enough with them to determine if they are good. 13:29:02 dlowe: hmmm, perhaps two or more macros ... one for UTC, one for current locale, and for given locale 13:29:15 Time and date stuff is hard. Much harder than most people think. 13:29:21 Xach: yes, but that would mean that you need a lot of functions, and need to remember what they're called 13:29:49 loke: that's why everyone is waiting for someone to solve that ;) 13:29:54 I might just try to build something that covers the basics. I.e. date and time arithmetic with proper TZ support. 13:30:06 as well as parse and format of course 13:30:10 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 13:30:17 loke: try looking at local-time. it's on quicklisp 13:30:22 hi aerique 13:30:26 dlowe: Yeah, I did look at it already 13:30:31 It doesn't do TZ 13:30:34 loke: tell me where, and I'll provide a bit of support .... testing, perhaps some fixes, and so on 13:30:50 well, once (if) I do it, I'm sure I'll talk about it here 13:30:51 loke: uh, it does do timezones. 13:31:00 dlowe: not properly 13:31:10 loke: so submit a patch 13:31:31 loke: how improperly does it do it? 13:33:09 dlowe: Can't remember. I looked at it before. Now that I'm looking at it again, I can't see what it was. Perhaps I should give it another look first. 13:33:29 dlowe: who is maintaining it? 13:33:34 it uses the compiled tzdata files, which kinda sucks 13:33:37 loke: me :p 13:33:44 dlowe: Ah, neat 13:33:48 dlowe: why does that suck? because of the lawsuit? 13:33:52 -!- armchairanalyst is now known as upgrayedd 13:33:58 ilraffa [~ilraffa@host205-3-dynamic.9-79-r.retail.telecomitalia.it] has joined #lisp 13:34:22 flip214: no, because using the raw Olsen files would mean it could calculate dates into the indefinite future 13:34:35 dlowe: what are you using then? 13:34:52 loke: tzdata files shipped with the source 13:35:00 flip214: i don't think you can get away from learning what things are called. 13:35:05 dlowe: yeah, but where are those files from? 13:35:13 loke: debian, I think 13:35:19 dlowe: Ohh 13:35:35 dlowe: That should be OK though, since they are being maintained 13:35:44 how to open the files. fas what process should we do? 13:35:57 ilraffa: "load" 13:36:13 -!- mishoo [~mishoo@79.112.115.118] has quit [Ping timeout: 245 seconds] 13:36:43 i wont see the text 13:36:51 Xach: perhaps, but sometimes you need MMM-dd or dd-MM or dd-MMM etc. ... providing a function for every single possible combination is not efficient. 13:37:00 dlowe: If only I could remember why I dismissed it before. 13:37:01 Certainly possible using some iterating macro, but not nice 13:37:22 flip214: i wrote format-time for that purpose, though it is half-baked. 13:37:40 flip214: http://common-lisp.net/project/local-time/manual.html#Parsing-and-Formatting 13:37:49 dlowe: I'll try to use it tomorrow, and I'll let you know what problems I face 13:38:10 loke: it only really supports exact points in time atm. That may have been the problem 13:38:11 ilraffa: I don't understand your question, sorry. 13:38:41 sorry 13:38:50 dlowe: Ah, perhaps that was it. There isn't a way to ask it "how many days are there between these two times"? 13:39:03 loke: timestamp-difference 13:39:42 oh. it's not in mainline. oops. 13:40:00 There is something newer? 13:40:00 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Quit: under the bit stream] 13:40:33 loke: not supported. 13:40:57 How about "add two months to date X"? 13:41:00 loke: but you could do (- (day-of b) (day-of a)) 13:41:40 dlowe: that won't work if the days are in different years, now would it? 13:41:48 loke: (adjust-timestamp ts (offset :month 2)) 13:41:52 loke: yes, it could 13:42:04 surrounder [~user@d130031.upc-d.chello.nl] has joined #lisp 13:42:08 loke: day-of accesses the internal representation 13:42:17 i have a function named format-relative-time; could put it in lisppaste, but then nyef will flame me for another undocumented ugly piece of code again 13:42:31 dlowe: is there a MONTH-OF? 13:42:49 (or something equivalent) for month comparisons? 13:42:52 loke: you'd have to use the result of decode-timestamp 13:43:53 dlowe: How do I tell the library what timezone ADJUST-TIMESTAMP should use? 13:44:20 Does it use *DEFAULT-TIMEZONE*? 13:45:41 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 13:45:42 does right now looks like. 13:45:48 OK, awsome 13:45:51 I'll play with it 13:45:53 thanks a lot 13:46:15 though it looks like the plan was to have a :timezone argument that then got forgotten midway 13:46:17 frozencemetery [~frozencem@128.237.125.86] has joined #lisp 13:46:24 *dlowe* didn't write adjust-timestamp 13:47:54 pnq [~nick@AC826F05.ipt.aol.com] has joined #lisp 13:47:59 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Client Quit] 13:48:11 or i'll try to polish it up and put it on github... 13:48:12 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 13:49:02 -!- sammi` [sammi@gateway/shell/devio.us/x-xigiuwpltuyzwhem] has left #lisp 13:49:22 -!- antgreen [~user@70.50.67.27] has quit [Remote host closed the connection] 13:49:24 -!- gienah [~mwright@ppp121-44-130-151.lns20.syd7.internode.on.net] has quit [Quit: leaving] 13:52:05 -!- mindCrime [~chatzilla@rrcs-70-62-112-146.midsouth.biz.rr.com] has quit [Quit: ChatZilla 0.9.87-rdmsoft [XULRunner 1.9.0.15/2009101909]] 13:53:00 "And three, the Allegro CL fasl loader is very fast" ... unless the project manager's Modules tab is being displayed. :) 13:57:29 -!- y3llow is now known as help 13:57:39 -!- help is now known as y3llow 13:58:05 -!- df [~df@163.8.187.81.in-addr.arpa] has quit [Ping timeout: 258 seconds] 13:58:46 df [~df@163.8.187.81.in-addr.arpa] has joined #lisp 14:00:11 -!- drdo``` is now known as drdo 14:01:13 -!- sonnym [~sonny@rrcs-184-74-137-69.nys.biz.rr.com] has quit [Quit: Leaving.] 14:01:25 -!- dmiles_afk [dmiles@173.239.80.100] has quit [Quit: Read error: 110 (Connection timed out)] 14:04:27 gavinharper [~gavinharp@dyn3-82-128-190-151.psoas.suomi.net] has joined #lisp 14:05:41 -!- gavinharper [~gavinharp@dyn3-82-128-190-151.psoas.suomi.net] has quit [Client Quit] 14:09:21 -!- FreeArtMan is now known as Fr334r7m4n 14:09:37 -!- MrMC [~user@92.198.52.210] has quit [Remote host closed the connection] 14:14:26 -!- setmeaway [~setmeaway@119.201.52.182] has quit [Quit: Leaving] 14:15:57 setmeaway [~setmeaway@119.201.52.182] has joined #lisp 14:16:03 sabalaba [~sabalaba_@141.212.58.182] has joined #lisp 14:17:19 -!- cyrillos [~cyrill@188.134.33.194] has quit [Ping timeout: 255 seconds] 14:17:39 mindCrime [~chatzilla@rrcs-70-62-112-146.midsouth.biz.rr.com] has joined #lisp 14:18:40 every time I work with files created by C programmers I curse the Logical pathnames spec for banning underscores. 14:19:01 You're doing it wrong. 14:19:08 -!- pnq [~nick@AC826F05.ipt.aol.com] has quit [Ping timeout: 245 seconds] 14:19:21 Logical pathnames don't go that way. 14:20:26 ? 14:20:52 Logical pathnames are for translating a finite set of known-in-advance abstract pathnames into concrete underlying names. 14:21:05 nyef [~nyef@c-174-63-105-188.hsd1.ma.comcast.net] has joined #lisp 14:21:15 G'morning all. 14:21:28 It's not for automagic mapping from arbitrary logical name to arbitrary physical name. 14:21:31 hi 14:21:48 dmiles_afk [dmiles@dsl-173-239-80-100.cascadeaccess.com] has joined #lisp 14:21:59 It starts from the name embedded in Lisp source code and goes from there. 14:22:11 It's not bidirectional. 14:22:30 Kajtek [~nope@nat4-230.ghnet.pl] has joined #lisp 14:23:03 Xach: I'm sorry, but I just don't buy that. Logical pathnames should be for machine-independent access to files... 14:23:25 Oh, god. We're having an LPN discussion? 14:23:39 nyef: No, I was doing the equivalent of an LPN tweet... 14:24:23 Mmm. LPNs are very carefully specified to be nowhere near as useful as they seem. 14:24:23 ramusara [~ramusara@220.156.210.236.user.e-catv.ne.jp] has joined #lisp 14:24:24 -!- wildnux [~shekhar@68-191-210-216.dhcp.dntn.tx.charter.com] has quit [Remote host closed the connection] 14:24:52 It's not the fault of the logical pathname system that they are not as useful as you imagine they should be from a lack of understanding of the standard. 14:25:14 It's a little like complaining that you hate that symbol-value doesn't work on lexical variables when porting PHP code... 14:26:22 The set of allowed characters allows for reasonably descriptive pathnames to be embedded in your Lisp code. 14:27:00 Kron [~Kron@129-97-120-142.uwaterloo.ca] has joined #lisp 14:27:01 The one thing that I'd like from pathnames (logical or otherwise) is to be able to hook into OPEN and provide a per-host stream class. 14:27:40 Well, not merely per-host, but defer stream class selection to the actual host. 14:28:13 nyef: I was thinking about something like that for embedded or otherwise virtual filesystems. 14:28:42 Yeah, exactly. 14:28:45 -!- oiiii [~oiiii@82.71.241.25] has quit [Remote host closed the connection] 14:28:50 Xach: That's a matter of debate. There are cases where one doesn't understand the standard, and there are cases where a standard might misfire. Both of these can happen. It's not a blanket defense to say that the spec says that it's providing inadequate functionality. 14:29:04 superflit [~superflit@71-208-212-164.hlrn.qwest.net] has joined #lisp 14:29:21 rpg: the standard is from a time where many systems disallowed underscore as characters in file names 14:29:46 What's allowed or not allowed in a *logical* pathname is not really the point. 14:29:57 H4ns: Right. The standardizers had no way to foresee the change in the filesystem. 14:30:11 s/filesystem/filesystem universe/ 14:30:42 The point is to be able to write something like #p"config:x;configuration.txt" and have it refer to /etc/X11/XF86Config.conf in Linux and /opt/woo/X11/config_file.txt on A/UX. 14:31:17 Depending on application, implementation, and OS-specific supplied translations. 14:32:05 Xach: I'm not sure I fully agree. Indeed, your recent discussion illustrates a need that is not met well either by ASDF or by logical pathnames: addressing data files in a system. Particularly, in my experience, data files not generated in the CL world. 14:33:38 That there is a need that is not addressed by logical pathnames is not a great reason to curse them. It is a pretty good reason to use some other mechanism. 14:34:09 -!- aerique [310225@xs8.xs4all.nl] has quit [Quit: ...] 14:34:26 rpg: for this need, there are physical pathnames. 14:34:41 If your set of physical names is arbitrary and not known in advance, and the names are not embedded in source code, logical pathnames are not a good tool for the job. 14:34:42 pjb: physical pathnames do not address the relocation issue. 14:35:08 rpg: merge-pathnames 14:35:41 pjb: merge after translation? 14:36:07 pjb: Xach's post addresses this well: http://xach.livejournal.com/294639.html 14:36:39 I mean you can merge physical pathnames. Again, to access pre-existing files, you just use physical pathnames. If you want to manipulate those physical pathnames (relocation or whatever), you have all the tools you need to work on physical pathnames. 14:36:45 rpg: logical pathnames would be a good fit for that specific situation. 14:37:00 cesarbp [~cbolano@189.139.180.200] has joined #lisp 14:37:20 rpg: I could write #p"fonts:bold.ttf" in my source code and have it translate to c:\extra_fonts\Verdana_Bold.ttf if I liked. 14:37:39 or /usr/share/fonts, or wherever. 14:37:45 Xach: If you own all the filenames, and there are a finite and small number. If you don't, then not, because you may not be able to beat your non-lisp-using colleagues into logical-pathname compliant names... 14:37:57 rpg: Are you intentionally dense? 14:38:10 particular use case: experimental work on standard data sets 14:38:21 rpg: The names your colleagues use do not have anything to do with the syntax of logical pathnames within your lisp source code. 14:38:29 rpg: what you seem to not understand is that logical file names are not intended to be ever used as physical file names. 14:38:35 rpg: that is the whole idea about them. 14:39:39 Now, I do not think that logical pathnames are a good fit for e.g. libraries that are distributed to arbitrary CL users on arbitrary systems, because the translations really must be tailored properly to make sense. 14:39:40 Xach: I am not trying to be dense. The issue arises if you have a large number of filenames, specifying all of them in a rewrite may be too onerous. 14:39:59 It makes more sense in the context of a specific application and its delivery contexts. 14:40:40 That it doesn't fit the "give libraries to the public" is also not a great reason to complain about logical pathnames. 14:40:48 gko [~gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 14:41:12 -!- cesarbp [~cbolano@189.139.180.200] has quit [Ping timeout: 244 seconds] 14:41:12 Cloud__ [~cbolano@189.139.180.200] has joined #lisp 14:41:22 Xach: That is not what i was saying. I was saying that it doesn't fit the "locate system resources" case well. 14:41:25 juniorroy [~juniorroy@212.36.228.103] has joined #lisp 14:42:05 Athas [~athas@shop3.diku.dk] has joined #lisp 14:42:10 -!- gko [~gko@220-135-201-90.HINET-IP.hinet.net] has quit [Client Quit] 14:42:28 rpg: I know, it's an additional situation I could think of. I don't think logical pathnames are a magic bullet, but I don't think they're a crock either. 14:42:31 Xach: I was just reading CLtL and it actually does not say anything to the effect that "the rationale was solely to support filenames generated and consumed within CL." I don't believe that it's fair to say that the spec articulates the limits you propose on the application of LPNs. 14:42:42 gko [~gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 14:43:00 It says "Pathname values are not portable, but sometimes they must be mentioned in a program..." 14:43:07 rpg: It certainly has nothing to do with physical filenames generated within CL. I didn't create Verdana_Bold.ttf in CL. 14:43:58 Xach: But you were claiming that I am misinterpreting the standard and misapplying the tool. I don't find an articulated design rationale that supports that claim. 14:44:08 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 14:44:19 -!- varjag [~eugene@62.97.226.122] has quit [Quit: Leaving] 14:44:23 (I may have overlooked, of course) 14:45:49 -!- Cloud__ [~cbolano@189.139.180.200] has quit [Ping timeout: 258 seconds] 14:45:50 cyrillos [~cyrill@188.134.33.194] has joined #lisp 14:45:52 when you say "they _should_ be..." about something standardized, and then go on "but they _aren't_", you're misapplying the tool 14:46:55 akovalenko: Sorry, I simply disagree. E.g., it is common to say "the JavaScript object system gets X wrong...." 14:47:15 rpg: it is common to say that, but it is wrong, too. 14:47:16 akovalenko: That is effectively like saying "a standard cannot be criticized." 14:48:00 rpg: it's not "JavaScript object system _should_...", it's "I prefer some other system". 14:48:33 akovalenko: I think we will just have to disagree about the way the English language works. 14:48:45 rpg: the standard can't be _modified_ by criticism, valid or not. Isn't that obvious? 14:48:56 e.g., we can say "the CL type system gets characters wrong". :) 14:49:20 In this case we are referring to the moral reprehensibility of it. 14:49:45 But it is valid to say that it is thinly disguised propaganda. 14:50:32 akovalenko: Right. I think my statement was shorthand for "probably logical pathnames should be avoided." Or, more precisely, it was an expression of pique (that was not intended to spark such a complex discussion) that logical pathnames provide a sort of "false friend". 14:51:14 rpg: I would certainly find "I understand what it does, and it doesn't do as much as I want" less objectionable, as long as the first part is clearly true. 14:51:30 logical pathnames are fine, as long as you understand that they're only useful for providing a virtual lisp file-system. 14:51:32 rpg: I fully agree that logical pathnames should be avoided for your purpose. That's, essentially, what you're told by Xach, as I understand it.. 14:51:37 Within the confines of ASDF systems, in particular, I find that there is nothing I can do with logical pathnames that I cannot do better with Xach's trick. 14:51:49 Why you'd attempt to use them for anything else, I do not know. 14:52:14 Zhivago, akovalenko: the claim is somewhat stronger (I think Zhivago is saying this, too) --- a standard discipline for interacting with physical pathnames is superior. 14:52:33 For reference to system-relative locations. 14:53:07 The problem is that while you can impose a standard discipline for things your system requires, you cannot do it in general for all of the things that it does not require. 14:53:08 Standard OS resources (e.g., /etc things) may be well handled by logical pathnames. 14:53:33 e.g., trying to handle /etc, etc by logical pathname is only going to work by accident. 14:53:45 That's out of your domain in ill-defined host-land. 14:54:17 logical pathnames cannot anticipate how host-land develops, and cannot handle things like symbolic-links properly, for example. 14:54:44 Or fibers or resource forks or ... 14:55:08 they can't even make coffee, that's a real drawback 14:56:42 -!- nanoc [~conanhome@186.157.165.127] has quit [Ping timeout: 244 seconds] 14:56:46 Zhivago: I can still imagine a use-case where they would work sensibly. If I am working at an institution that has three flavors of OS, I could easily be able to do the /etc mapping properly. 14:57:00 MrMc [~user@port-92-198-52-210.static.qsc.de] has joined #lisp 14:57:22 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Ping timeout: 255 seconds] 14:57:31 Zhivago: Agreed that one cannot find all of the possible places that, e.g., fonts could be installed, but there are many well-defined host-lands (e.g., a piece of in-house software). 14:57:41 Wait, did I just defend LPNs? ;-) 14:57:50 No. 14:58:09 you're making the error of trying to suck the universe into the lisp abstraction that LPNs provide. 14:58:12 sonnym [~sonny@rrcs-72-43-20-246.nys.biz.rr.com] has joined #lisp 14:58:41 If those fonts are lisp data, living where lisp stuff has put them using LPNs, then that'll all work. 14:59:12 Otherwise, it's a crapshoot. 14:59:23 hello can I use map to call a function with 3 parameters? 14:59:34 mrmc: Sure. 14:59:36 MrMc: yes 15:00:21 how is this done? 15:00:33 gffa [~gffa@unaffiliated/gffa] has joined #lisp 15:01:00 Zhivago: They need not have been placed there using LPNs. 15:01:01 (map 'list '+ '(1 2 3) '(0.1 0.2 0.3) '(100 200 300)) 15:01:15 antgreen [~user@70.50.67.27] has joined #lisp 15:01:24 realitygrill [~realitygr@adsl-76-226-140-75.dsl.sfldmi.sbcglobal.net] has joined #lisp 15:01:27 xach: Then it's pretty much going to be a fortunate accident if you can access them. 15:01:58 Think of an LPN system that encodes version numbers into filenames, for example. 15:01:59 Zhivago: That's the role of the translation mechanism, to convert a logical pathname to an arbitrary physical one. 15:02:13 The key being 'arbitrary' rather than 'expected'. 15:02:22 Zhivago: I don't understand --- surely if I know that a fonts file is going to be in one of multiple locations, depending on OS, then for each such OS, I can define a logical pathname translation appropriately. 15:02:33 -!- e-user [e-user@nat/nokia/x-hgchwktkyrgfbntz] has quit [Read error: Connection reset by peer] 15:02:41 Zhivago: It's not automatic. 15:02:50 Zhivago: you can always set up one-by-one translation for each file (using the result of "physical" DIRECTORY), then you're in full control 15:02:54 Portions can be, when it works; when it doesn't, it isn't. 15:04:18 *Xach* also finds "I understand the system and it's more work for me than it's worth" unobjectionable 15:04:18 That's all implementation defined, unless I'm missing something. 15:04:42 Zhivago: yes, translations are very necessarily implementation-specific. 15:04:44 Which brings it back to "crapshoot" in general. 15:04:54 physical pathnames are implementation-defined. 15:04:59 Right, but recall that distribution to arbitrary OS set up is not the only use-case. We may tend to over-extend our open source anarchic distribution model as the only one. 15:05:10 Since you can't expect an arbitrary host CL system to translate them as you would like. 15:05:29 Zhivago: right, it is very much not arbitrary. It must be tailored to the implementation and operating system. 15:06:00 Which is why I think it makes sense in e.g. application delivery but not "open source anarchic distribution". 15:06:22 Which is why I think it's suitable for lisp virtual file-systems and nothing else. 15:07:48 I think it's fair to conclude from the above discussion (which, as I said, I didn't intend to inflame), that it can be a subtle matter to determine when LPNs do and don't provide a good solution. 15:08:10 *Xach* uses it to switch between production and test config/data files in SBCL in a particular application 15:09:11 Xach: ah, thanks for that idea! 15:10:13 nanoc [~conanhome@186.12.8.64] has joined #lisp 15:10:39 rpg: feasibility of producing exhaustive translations, i think, seems like a possible thing to consider 15:10:57 Xach: Agreed. 15:11:00 akovalenko:Thanks it works 15:12:33 Xach: LPNs would have more uses if you could hook into translations, making them dynamic 15:12:42 tsuru` [~user@c-68-53-57-241.hsd1.tn.comcast.net] has joined #lisp 15:13:13 p_l: hook how? 15:13:45 oh, i think i understand. 15:13:49 (pushnew 'my-translator-for-metaphysical-pathnames *translator* ) 15:14:06 #mp"foo"! 15:15:10 -!- frozencemetery [~frozencem@128.237.125.86] has quit [Quit: Leaving.] 15:16:14 Right -- then you could do things like rewrite hyphens into underscores.... 15:16:24 Xach: so you get dynamically provide translations. Better yet, have it integrated with possibility of returning custom streams, and you can have LPN referring to bundled data, for example 15:17:00 H4ns: hahaha, that's a fun war story! 15:17:12 H4ns: so, never rely on file dates, ever (: 15:17:47 cesarbp [~cbolano@189.139.180.200] has joined #lisp 15:18:04 and you could write #p"place:earth;paris;france;champs-elysees" and get a BUILDING object 15:18:34 Fortunately we have URIs for that kind of thing now. :) 15:18:53 well, not BUILDING, but some object 15:19:20 -!- Fr334r7m4n [~FreeArtMa@93.177.213.54] has quit [Quit: under the bit stream] 15:19:32 -!- Kron [~Kron@129-97-120-142.uwaterloo.ca] has quit [Read error: Connection reset by peer] 15:20:23 stassats: I wouldn't mind being able to pass URIs to OPEN etc :) 15:20:45 srolls [~user@c-76-126-212-192.hsd1.ca.comcast.net] has joined #lisp 15:20:54 p_l: scieneer can handle it 15:21:09 it doesn't handle *default-pathname-defaults* properly, but it handles URIs in OPEN! 15:21:09 (open #u"mailto:..") ;; great 15:21:30 hakzsam [~hakzsam@64.120.44.106] has joined #lisp 15:21:31 CCL can do (load "http://beta.quicklisp.org/quicklisp.lisp") 15:22:09 SBCL requires some trivial "monkey-patching" (nothing difficult) 15:22:11 H4ns: yeah, I really enjoyed that writeuup 15:22:21 frozencemetery [~frozencem@CMU-786527.WV.CC.CMU.EDU] has joined #lisp 15:23:10 -!- dlowe [~dlowe@50-77-31-237-static.hfc.comcastbusiness.net] has quit [Quit: *poof*] 15:23:43 -!- jtza8 [~jtza8@wbs-41-208-219-19.wbs.co.za] has quit [Remote host closed the connection] 15:24:18 Sicrus [~Sicrus@150.108.232.72] has joined #lisp 15:24:28 even greater: (open #u"mailto:...@gmail.com" :if-does-not-exist :create) 15:24:29 bgs100 [~ian@unaffiliated/bgs100] has joined #lisp 15:24:45 What writeup are you mentioning? Can't seem to find it in the backlog. 15:25:40 -!- Sicrus [~Sicrus@150.108.232.72] has left #lisp 15:26:21 file-system paths cannot be represented as URIs, unless you want to give up print-read consistency 15:27:25 all because of symlinks 15:28:23 -!- ilraffa [~ilraffa@host205-3-dynamic.9-79-r.retail.telecomitalia.it] has quit [Quit: Siete soltanto invidiosi perchè io sento "le vocine" e voi no. wWw.Di-Gi.cJb.nEt] 15:29:03 ilraffa [~ilraffa@host205-3-dynamic.9-79-r.retail.telecomitalia.it] has joined #lisp 15:29:42 -!- mrsolo [~mrsolo@adsl-68-126-182-17.dsl.pltn13.pacbell.net] has quit [Quit: Leaving] 15:29:45 -!- ilraffa [~ilraffa@host205-3-dynamic.9-79-r.retail.telecomitalia.it] has quit [Client Quit] 15:29:52 ilraffa [~ilraffa@host205-3-dynamic.9-79-r.retail.telecomitalia.it] has joined #lisp 15:30:12 -!- ilraffa [~ilraffa@host205-3-dynamic.9-79-r.retail.telecomitalia.it] has quit [Client Quit] 15:30:20 ilraffa [~ilraffa@host205-3-dynamic.9-79-r.retail.telecomitalia.it] has joined #lisp 15:32:46 -!- ccorn [~ccorn@84-53-64-50.adsl.unet.nl] has quit [Read error: No route to host] 15:32:52 -!- nicdev_ [~user@static-72-74-85-37.bstnma.fios.verizon.net] has quit [Read error: Connection reset by peer] 15:34:45 ISF [~ivan@143.106.196.39] has joined #lisp 15:35:46 fe[nl]ix: what about printing the path to symlink? 15:35:55 that is, prserving syumlinks? 15:37:24 Spion [~spion@unaffiliated/spion] has joined #lisp 15:38:16 Amadiro [~Amadiro@ti0021a380-dhcp3462.bb.online.no] has joined #lisp 15:38:38 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 15:39:10 -!- Amyn [~abennama@62.23.212.45] has quit [Ping timeout: 260 seconds] 15:39:17 -!- Spion_ [~spion@unaffiliated/spion] has quit [Ping timeout: 258 seconds] 15:39:37 Hi, I would like to know if this way (http://paste.lisp.org/display/125160) is the right way to apply a macro or if it's wrong or bad style. 15:40:18 Kron [~Kron@129-97-120-142.uwaterloo.ca] has joined #lisp 15:40:56 p_l: in a URI, ".." is syntactic while in unix paths it's required to be semantic 15:40:59 p_l: see http://www.lispworks.com/documentation/HyperSpec/Body/19_bbdc.htm 15:41:00 daimrod: wrong (take a look at your lambda) 15:41:30 -!- ilraffa [~ilraffa@host205-3-dynamic.9-79-r.retail.telecomitalia.it] has quit [Quit: Considerando l'apertura alare e la frequenza del battito delle ali rapportata al peso,è scientificamente provato ke 1 coleottero non può volare.Vola perchè non lo sa. wWw.Di-Gi.cJb.nEt] 15:41:56 nicdev_ [~user@static-72-74-85-37.bstnma.fios.verizon.net] has joined #lisp 15:41:57 daimrod: or right (if you really meant what it does).. 15:42:44 -!- c_arenz [arenz@nat/ibm/x-jhkalhpenniqxvdy] has quit [Ping timeout: 258 seconds] 15:43:03 it's ugly :( something like (funcall my-macro ...) 15:43:04 p_l: so then, how do you parse #u"file:///foo/../x.lisp" ? according to URI rules or Unix rules ? if "foo" is a symlink the results will be different 15:43:14 ah 15:43:31 hargettp [~hargettp@pool-71-184-177-139.bstnma.east.verizon.net] has joined #lisp 15:43:31 looks like an interesting case 15:44:48 daimrod: you may have a look at fare-utils:mapmacro 15:45:20 akovalenko: oh nice, thank you. 15:45:31 daimrod: (it's almost like yours, but do-thing is a parameter, too) 15:46:08 -!- Vivitron [~user@pool-108-7-56-243.bstnma.fios.verizon.net] has quit [Remote host closed the connection] 15:46:10 acelent [~user@2001:690:2100:4:200:1aff:fe19:ddfc] has joined #lisp 15:47:35 *akovalenko* likes (defmacro meta (&body body &aux (frob (gensym))) `(macrolet ((,frob () ,@body)) (,frob))) 15:48:23 p_l: I was going to implement IOlib pathnames as URIs, then I stumbled upon this problem and gave up 15:48:37 akovalenko: I'd almost be ok with eval, then. 15:49:12 p_l: I haven't found yet an acceptable solution in any other language's stdlib or blogs/books 15:50:28 akovalenko: and is this considered as good style or poor style? 15:50:37 -!- KingNato [~patno@fw.polopoly.com] has quit [Ping timeout: 240 seconds] 15:51:05 Or should I search another method to do it? 15:51:49 daimrod: for me, that's nothing to trigger either reaction (i.e. I would say it's just a normal piece of code) 15:53:40 akovalenko: ok, thanks for helping 15:55:05 if you want to funcall a macro, then you're doing it wrong 15:55:29 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 15:56:10 -!- Kron [~Kron@129-97-120-142.uwaterloo.ca] has quit [Read error: Connection reset by peer] 15:57:15 -!- jdz [~jdz@193.206.22.97] has quit [Ping timeout: 260 seconds] 15:57:20 Bike [~Glossina@71-214-98-150.ptld.qwest.net] has joined #lisp 15:58:03 -!- corni [~corni@drupal.org/user/136353/view] has quit [Quit: Ex-Chat] 15:58:58 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Quit: under the bit stream] 15:59:55 -!- billstclair [~billstcla@unaffiliated/billstclair] has quit [Ping timeout: 260 seconds] 16:00:23 -!- lanthan_afh [~ze@p50992b91.dip0.t-ipconnect.de] has quit [Quit: Ex-Chat] 16:01:03 wrap it in a lambda, but it's still probably wrong. 16:01:13 -!- Blkt [~user@89-96-199-46.ip13.fastwebnet.it] has quit [Quit: going to Tuscany!!!] 16:01:59 -!- thijso [~thijs@83.98.233.115] has quit [Quit: leaving] 16:02:28 again, fare-utils:mapmacro ;; not definitely _the right thing_, but sometimes it _can_ be. 16:03:19 Bawden had a type-system-based solution to funcalling macros. 16:03:27 billstclair [~billstcla@unaffiliated/billstclair] has joined #lisp 16:03:31 -!- sabalaba [~sabalaba_@141.212.58.182] has quit [Remote host closed the connection] 16:04:02 Assuming the first-class macro could be assigned a type, it worked in scheme and would be ok for CL, iirc. 16:04:19 katesmith_ [~katesmith@unaffiliated/costume] has joined #lisp 16:06:37 -!- katesmith [~katesmith@unaffiliated/costume] has quit [Ping timeout: 240 seconds] 16:09:30 -!- slyrus [~chatzilla@adsl-99-62-136-133.dsl.pltn13.sbcglobal.net] has quit [Ping timeout: 260 seconds] 16:09:33 -!- gko [~gko@220-135-201-90.HINET-IP.hinet.net] has quit [Ping timeout: 244 seconds] 16:10:23 -!- lonstein [lonstein@ohno.mrbill.net] has quit [Ping timeout: 248 seconds] 16:13:33 -!- realitygrill [~realitygr@adsl-76-226-140-75.dsl.sfldmi.sbcglobal.net] has quit [Read error: Connection reset by peer] 16:14:03 Kron [~Kron@129-97-120-142.uwaterloo.ca] has joined #lisp 16:14:27 -!- hugod [~hugod@70.24.176.108] has quit [Quit: hugod] 16:15:39 realitygrill [~realitygr@adsl-76-226-131-40.dsl.sfldmi.sbcglobal.net] has joined #lisp 16:17:03 -!- dmiles_afk [dmiles@dsl-173-239-80-100.cascadeaccess.com] has quit [Quit: Read error: 110 (Connection timed out)] 16:20:31 -!- gensym [~user@dslb-088-071-149-049.pools.arcor-ip.net] has quit [Ping timeout: 248 seconds] 16:20:35 -!- frozencemetery [~frozencem@CMU-786527.WV.CC.CMU.EDU] has quit [Quit: Leaving.] 16:20:36 GrayMagiker [~steve@c-174-56-88-247.hsd1.nm.comcast.net] has joined #lisp 16:22:09 slyrus [~chatzilla@adsl-99-62-136-133.dsl.pltn13.sbcglobal.net] has joined #lisp 16:25:35 -!- fluffycms [~cmsimon@static-50-43-53-7.bvtn.or.frontiernet.net] has quit [Quit: Leaving] 16:27:52 frozencemetery [~frozencem@CMU-786527.WV.CC.CMU.EDU] has joined #lisp 16:28:42 is there some book/documentation on how to write more powerful macros? like DSL's and macros that generate macros etc? 16:29:08 el-maxo: On Lisp is approximately about that 16:29:18 ok 16:29:23 -!- TristamWrk [~tristamwr@2620:0:2820:b03:214:22ff:fe45:5204] has quit [Quit: Some days you're the pigeon, some days the statue...] 16:29:55 started to read that a while ago liked it a lot but quit due to not having a hard copy 16:29:59 brandonz [~brandon@c-76-102-192-48.hsd1.ca.comcast.net] has joined #lisp 16:30:11 guess I have to print it out afterall :> 16:30:11 PAIP has some chapters on that, too 16:30:12 SegFaultAX [~mkbernard@173.228.45.162] has joined #lisp 16:30:18 PAIP? 16:30:44 Practical Artificial Intelligence Programming 16:30:54 Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp 16:31:01 ah, Paradigms 16:31:13 (Peter Norvig) 16:31:16 TristamWrk [~tristamwr@2620:0:2820:b03:214:22ff:fe45:5204] has joined #lisp 16:31:20 (Google) 16:31:27 pnq [~nick@172.162.223.193] has joined #lisp 16:31:28 Too much of referring to it as just "PAIP", even when it's close on a bookshelf :D 16:31:42 -!- TristamWrk [~tristamwr@2620:0:2820:b03:214:22ff:fe45:5204] has quit [Client Quit] 16:31:57 TristamWrk [~tristamwr@2620:0:2820:b03:214:22ff:fe45:5204] has joined #lisp 16:32:34 -!- urandom__ [~user@p548A5601.dip.t-dialin.net] has quit [Ping timeout: 260 seconds] 16:33:00 It is my favorite lisp book, still... 16:33:33 -!- Athas [~athas@shop3.diku.dk] has quit [Remote host closed the connection] 16:33:55 gravicappa [~gravicapp@ppp91-77-186-228.pppoe.mtu-net.ru] has joined #lisp 16:35:48 (: paper & pdf ;) 16:48:33 -!- nanoc [~conanhome@186.12.8.64] has quit [Ping timeout: 255 seconds] 16:48:42 p_l: do you have a Paradigmatic Common Lisp close? 16:49:06 lundis [~lundis@dyn56-31.yok.fi] has joined #lisp 16:50:50 ... Common Lisp, a Modern Approach ? 16:51:27 -!- slyrus [~chatzilla@adsl-99-62-136-133.dsl.pltn13.sbcglobal.net] has quit [Ping timeout: 252 seconds] 16:52:11 -!- zipace [~hi@unaffiliated/zipace] has quit [Ping timeout: 252 seconds] 16:54:13 dmiles_afk [dmiles@dsl-173-239-80-100.cascadeaccess.com] has joined #lisp 16:54:17 zipace [~hi@unaffiliated/zipace] has joined #lisp 16:55:11 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Remote host closed the connection] 16:55:37 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 16:58:09 as an aside... a friend of mine suggested printing On Lisp and binding it. I did and it worked great, cost a lot less than the amazon copies ($12 versus >$100), and my 6 year old daughter designed the cover: rainbows and unicorns. no glitter or glue-on gems though. 16:58:37 i prefer dead tree copies of programming books (except when actually programming) 16:58:38 the amazon thing is algorithms fighting. 16:58:40 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 16:59:07 hugod [~hugod@70.24.176.108] has joined #lisp 16:59:20 really? i thought it was because it was out of print 16:59:56 i prefer dead-tree copies because they have the best interface. 16:59:59 -!- mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has quit [Quit: leaving] 17:00:17 -!- MrMc [~user@port-92-198-52-210.static.qsc.de] has quit [Quit: #lisp] 17:00:20 every technological solution to reading books only complicate the interface. 17:00:24 so far. 17:00:29 wccoder: that's part of it, too. 17:01:05 I now have more lisp books than any other language in my library. :) 17:01:09 -!- pnq [~nick@172.162.223.193] has quit [Ping timeout: 255 seconds] 17:01:32 nanoc [~conanhome@186.157.185.137] has joined #lisp 17:01:51 i feel stupid for giving mine away right after uni 17:03:33 Sicrus [~Sicrus@150.108.238.48] has joined #lisp 17:03:37 Shaftoe_ [~memet@46.196.29.0] has joined #lisp 17:03:38 stassats: unfortunately not :P 17:03:51 -!- ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has quit [Quit: Leaving.] 17:03:58 jewel [~jewel@196-209-248-67.dynamic.isadsl.co.za] has joined #lisp 17:04:29 *p_l* is sitting in uni library, angry that someone borrowed latest AIMA 17:05:02 p_l: sounds like more than one person had this smart idea (-: 17:05:33 antifuchs: we have only one copy of latest edition ;_; 17:05:43 p_l: i have aima 17:05:53 not the latest. actually i have to give it to nyef. 17:05:54 sellout- [~Adium@c-98-245-83-250.hsd1.co.comcast.net] has joined #lisp 17:06:34 Mmm... At some point when we have another BLM that we both can get to. 17:06:45 nyef: see you in amsterdam in 2 weeks? 17:06:58 Xach: I'm afraid not, sorry. 17:07:11 I'll wave as I fly over. 17:07:21 Thanks. 17:07:26 you can drop the book 17:07:43 -!- cfa [~cfa@unaffiliated/cfa] has quit [Quit: -> home] 17:08:27 stassats: Too hard to aim properly from that high up. 17:08:53 you catcha, i'll aima 17:09:01 it's called AIMa, doesn't teach that sort of thing? 17:09:27 Ouch. I suppose I walked into that. 17:09:37 dlowe [dlowe@nat/google/x-oucwkkmbhnkoukch] has joined #lisp 17:14:41 pnq [~nick@ACA2DFC1.ipt.aol.com] has joined #lisp 17:17:40 dmiles [dmiles@dsl-173-239-80-100.cascadeaccess.com] has joined #lisp 17:18:02 Intensity [jzHEXplkTf@unaffiliated/intensity] has joined #lisp 17:18:05 -!- ramusara [~ramusara@220.156.210.236.user.e-catv.ne.jp] has quit [Quit: Leaving...] 17:24:04 sabalaba [~sabalaba_@c-98-250-107-145.hsd1.mi.comcast.net] has joined #lisp 17:25:37 -!- Kron [~Kron@129-97-120-142.uwaterloo.ca] has quit [Read error: Connection reset by peer] 17:27:11 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 248 seconds] 17:30:32 MoALTz [~no@host-92-8-241-233.as43234.net] has joined #lisp 17:32:36 slyrus [~chatzilla@adsl-99-62-136-133.dsl.pltn13.sbcglobal.net] has joined #lisp 17:33:59 -!- GrayMagiker [~steve@c-174-56-88-247.hsd1.nm.comcast.net] has quit [Quit: Ex-Chat] 17:36:42 -!- hagish [~hagish@p54983D01.dip.t-dialin.net] has quit [Quit: Leaving] 17:37:03 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Ping timeout: 245 seconds] 17:38:17 anyone know if it's possible to use closure-html without it fixing what it believes are html mistakes (my big problem is that it puts script tags in the head tag automatically) 17:41:27 Kron [~Kron@129.97.120.142] has joined #lisp 17:41:34 dbushenko [~dim@91.149.149.201] has joined #lisp 17:42:46 hmm, is there an instruction to which cl:truncate can compile to get both of its return values at once, given the right arguments? 17:43:22 DIV? 17:43:51 nyef: I'll have to take your word. I wish the "?" came with a confidence meter. 17:44:18 If the arguments are known to be integers, the x86 divide instructions return quotient in AX/EAX/RAX and remainder in DX/EDX/RDX, if memory serves. 17:44:39 thanks 17:44:54 Dunno about for floaty arguments, though. 17:45:07 What context, anyway? 17:45:49 nyef: I was trying to figure out if truncate was just syntactic sugar. I use both truncate values in a few different contexts. 17:46:01 *Xach* is working on an upcoming Lisp Tip 17:46:31 Ooh. 17:47:18 When was the last time you used both values from truncate/floor/ceiling/etc? 17:47:38 local-time uses both values from floor quite a bit 17:47:47 I'm fairly sure that the answer is going to be "months ago at best". 17:48:04 nyef: Is that for almost all values of Lisp X? 17:48:06 it's great for chopping up seconds into modulo bits 17:48:26 dlowe: can you give me a more concrete example? (should i just read the source?) 17:48:55 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Remote host closed the connection] 17:48:56 Yeah, I had a bit of a dry spell, and then wound up doing something webbier than my usual wont, and it doesn't appear to have involved much in the way of numerics. 17:49:03 -!- pnq [~nick@ACA2DFC1.ipt.aol.com] has quit [Ping timeout: 248 seconds] 17:49:10 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 17:49:27 Xach: read the source to the days-to-years function 17:49:31 dlowe: thanks. 17:50:45 *Xach* wonders if he would rather see a compiler macro than #. 17:51:05 I take patches :p 17:51:58 waaaaargh [~waaaaargh@agsb-4d04806b.pool.mediaWays.net] has joined #lisp 17:52:04 -!- waaaaargh [~waaaaargh@agsb-4d04806b.pool.mediaWays.net] has quit [Read error: Connection reset by peer] 17:52:58 LiamH [~none@pdp8.nrl.navy.mil] has joined #lisp 17:53:12 dlowe: is local-time yours? 17:53:17 Fade: yep 17:53:34 though to be truthful, attila_lendvai is probably responsible for most of it now 17:53:47 responsible for its current condition, rather 17:53:47 I'm using it in a pretty big project atm. thanks! it's nice software. 17:53:53 :D 17:54:00 hehh... :) 17:54:19 why? at least I've identified the problem... :) 17:54:28 /problem/problems/ 17:54:40 and thanks to attila, too. :) 17:54:40 attila_lendvai: no, I mean you rewrote a lot of the code to be betterer 17:55:20 Fade: make sure you read the TODO file, there are some issues described there that can easily bite you 17:55:41 my use is super simple atm, but I will be sure to check it out. 17:55:59 *attila_lendvai* must also give credits to his colleagues 17:56:07 mostly calls to local-time:now for timestamping various things. 17:56:19 attila_lendvai: I actually picked it up this month and started working on ambiguous time representations 17:56:24 and getting deltas from timestamps. 17:56:35 -!- slyrus [~chatzilla@adsl-99-62-136-133.dsl.pltn13.sbcglobal.net] has quit [Read error: Connection reset by peer] 17:56:50 slyrus [~chatzilla@adsl-99-62-136-133.dsl.pltn13.sbcglobal.net] has joined #lisp 17:57:14 attila_lendvai: so we might have some nice new functionality within a month or so 17:57:49 -!- antgreen [~user@70.50.67.27] has quit [Remote host closed the connection] 17:58:10 Fade: for reliable deltas better use iolib.syscalls:get-monotonic-time 17:58:30 dlowe: good to hear! someone was looking for such functionality recently on cl-l10n... 18:00:01 -!- ngz [~user@201.144.80.79.rev.sfr.net] has quit [Ping timeout: 252 seconds] 18:01:02 -!- spacefrogg [~spacefrog@unaffiliated/spacefrogg] has quit [Quit: spacefrogg] 18:02:02 fe[nl]ix: yeah, that's what I'm using in the pinger. 18:03:56 -!- katesmith_ is now known as katesmith 18:04:23 -!- ISF [~ivan@143.106.196.39] has quit [Quit: WeeChat 0.3.5] 18:07:42 gigamonkey [~user@adsl-99-24-222-56.dsl.pltn13.sbcglobal.net] has joined #lisp 18:09:34 ISF [~ivan@143.106.196.39] has joined #lisp 18:13:20 Oladon [~Oladon@38.109.196.34] has joined #lisp 18:13:25 ISF_ [~ivan@143.106.196.39] has joined #lisp 18:13:57 -!- ISF [~ivan@143.106.196.39] has quit [Read error: Connection reset by peer] 18:14:39 -!- dbushenko [~dim@91.149.149.201] has quit [Ping timeout: 256 seconds] 18:15:11 -!- Sicrus [~Sicrus@150.108.238.48] has quit [Ping timeout: 248 seconds] 18:15:43 -!- drdo [~drdo@89.180.120.109] has quit [Ping timeout: 276 seconds] 18:16:15 -!- dto [~dto@pool-96-252-89-130.bstnma.fios.verizon.net] has quit [Ping timeout: 248 seconds] 18:17:33 -!- Kron [~Kron@129.97.120.142] has quit [Read error: Connection reset by peer] 18:18:58 puchacz [~puchacz@87-194-5-99.bethere.co.uk] has joined #lisp 18:19:11 msponge [~msponge@18.111.37.86] has joined #lisp 18:19:45 -!- benny [~benny@i577A88DB.versanet.de] has quit [Ping timeout: 244 seconds] 18:20:12 -!- realitygrill [~realitygr@adsl-76-226-131-40.dsl.sfldmi.sbcglobal.net] has quit [Quit: realitygrill] 18:20:48 -!- sabalaba [~sabalaba_@c-98-250-107-145.hsd1.mi.comcast.net] has quit [Remote host closed the connection] 18:21:41 Sicrus [~Sicrus@150.108.238.48] has joined #lisp 18:29:58 benny [~benny@i577A2151.versanet.de] has joined #lisp 18:30:56 dto [~dto@pool-96-252-89-130.bstnma.fios.verizon.net] has joined #lisp 18:31:02 Cam [~Cam@trivialand/staff/Cam] has joined #lisp 18:31:19 Hi, I am working on http://pastie.org/2656882 -> I am just starting lisp (5 days under my belt) so give me the.... basic answer please! 18:31:22 i'm looking for some wisdom: i have a list that can be either (("key1" "value1") ("key2" "value2") ...) or the flattened version - i want to convert it into something where i can easily access the values by keys; i was thinking about structs, but i see noe easy way to quickly convert the list to a struct, am i thinking it the wrong way? 18:32:45 Cam: there are too many setq/setf. 18:32:54 pjb: what do you mean? 18:33:04 Use LET instead of SETQ. 18:33:09 What does that do? 18:33:13 dRbiG: I'd propose a-list. 18:33:18 clhs let 18:33:37 clhs? 18:33:41 dRbiG: using it as-is is easy enough with assoc 18:34:00 clhs = http://www.lispworks.com/documentation/HyperSpec/Front/index.htm 18:34:04 Xach: yeah second thoughts now are around hash tables; i'll check assoc 18:34:07 oh.... 18:34:13 Cam: that is very difficult to read with its unconventional indentation. 18:34:29 Xach: sorry :\ 18:34:30 Cam: is that meant to be a common lisp program? 18:34:34 Yes. 18:34:43 *Cam* comes from a python background 18:34:46 Cam: nested defuns are extremely uncommon in Common Lisp. 18:34:54 pjb: now i assume that a-list is for 'association list', right? 18:35:05 Xach: can I not do them? 18:35:37 Cam: you can, but they introduce a new global function. 18:35:42 Oh? 18:35:47 wow 18:35:50 Cam: if the intent is to have a named local function, use flet or labels. 18:35:51 So nesting doesn't ensure function locality? 18:36:00 blargh eh.... ok 18:36:00 Cam: nope. 18:36:07 Can you help me with my code though? 18:36:11 I don't see why it wouldn't work :\\ 18:36:25 And I also don't understand (let *) 18:36:31 Cam: Sorry, nope. I don't have the gumption today to read badly-formatted code. I'm just pointing out something obvious to me. 18:36:35 dRbiG: right. 18:36:39 Alright. 18:36:50 -!- msponge [~msponge@18.111.37.86] has quit [Quit: msponge] 18:37:16 Cam: this isn't specific to your problem, but when asking for help, it's good to say what you tried, what you expected to happen, and what happened instead. 18:37:30 ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has joined #lisp 18:37:42 Xach: scroll down on the paste 18:37:59 -!- Sicrus [~Sicrus@150.108.238.48] has quit [Ping timeout: 260 seconds] 18:38:19 2 out of 3 ain't bad 18:38:34 Xach: http://pastie.org/2656936 18:38:40 I'll be back online later 18:38:41 I gotta run 18:38:45 -!- Cam [~Cam@trivialand/staff/Cam] has quit [Quit: brb] 18:38:57 yeah, we'll be fixing it for you until then. 18:38:59 enjoy! 18:39:06 rmarianski [~rmariansk@mail.marianski.com] has joined #lisp 18:40:11 xcv [~xcv@dsl-225-28.hive.is] has joined #lisp 18:40:36 -!- austinh [~austinh@c-67-189-92-40.hsd1.or.comcast.net] has quit [Ping timeout: 258 seconds] 18:43:33 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Quit: under the bit stream] 18:43:48 realitygrill [~realitygr@thewall.novi.lib.mi.us] has joined #lisp 18:44:57 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 18:45:50 -!- frozencemetery [~frozencem@CMU-786527.WV.CC.CMU.EDU] has quit [Quit: Leaving.] 18:47:03 vervic [~vervic@109.126.95.48] has joined #lisp 18:48:13 -!- Ralith [~ralith@S010600221561996a.vc.shawcable.net] has quit [Ping timeout: 240 seconds] 18:49:53 -!- dmiles_afk [dmiles@dsl-173-239-80-100.cascadeaccess.com] has quit [Ping timeout: 252 seconds] 18:50:44 RomyEatsDrupal [~stickycak@209-6-17-16.c3-0.nat-ubr1.sbo-nat.ma.cable.rcn.com] has joined #lisp 18:51:23 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Quit: under the bit stream] 18:51:30 -!- drewc` is now known as drewc 18:52:39 oconnore [~Eric@138.110.186.248] has joined #lisp 18:53:42 hi drewc. is your =foo convention in smug taken from something earlier? 18:55:33 -!- cesarbp [~cbolano@189.139.180.200] has quit [Ping timeout: 258 seconds] 18:59:38 -!- JuanDaugherty [~Ren@cpe-72-228-177-92.buffalo.res.rr.com] has quit [Quit: Exeunt IRC] 19:00:11 JuanDaugherty [~Ren@cpe-72-228-177-92.buffalo.res.rr.com] has joined #lisp 19:01:25 Xach: mostly, it is just me. I did similar things to some other libraries i wrote as well... to be honest i cannot remember how i came up with it. 19:02:10 Xach: i seem to recall earlier lisp code (80's) that does something similar, but i can't find it :) 19:02:12 Kron [~Kron@69.166.23.250] has joined #lisp 19:03:48 -!- Shaftoe_ [~memet@46.196.29.0] has quit [Quit: Shaftoe_] 19:04:52 -!- realitygrill [~realitygr@thewall.novi.lib.mi.us] has quit [Quit: realitygrill] 19:05:09 What is this =foo convention used for? 19:05:48 cl symbols 19:05:58 when used for smug parsers. 19:06:01 nyef: it makes closure generators look more like direct logical operations. 19:06:13 -!- vervic [~vervic@109.126.95.48] has quit [Read error: Connection reset by peer] 19:06:18 or other operations. 19:06:36 *Xach* isn't sure if he's describing it right... 19:06:56 (=let* ((_ (=char #\*))) ...) 19:07:44 -!- superflit [~superflit@71-208-212-164.hlrn.qwest.net] has quit [Ping timeout: 260 seconds] 19:07:52 vervic [~vervic@188.45.18.222] has joined #lisp 19:07:54 Okay, so something I might understand with a little more thought than I'm willing to expend right now. Fair enough. 19:08:14 -!- vervic [~vervic@188.45.18.222] has left #lisp 19:08:38 nyef: mostly so i could use it with common lisp names, but what Xach says is actually correct as well. 19:09:35 http://common-lisp.net/~dcrampsie/smug.html <--- says very little about #\=, but explains smug pretty well 19:09:45 oconnore1 [~Eric@138.110.186.248] has joined #lisp 19:09:59 I think I may have read that a time or two. 19:10:07 drewc: i'm using =and/=or/=not and things for a matcher generator for chtml documents at the moment. 19:11:23 Xach: cool! how do you like the #\=, and besides that how is the parser working for you? 19:11:56 -!- oconnore [~Eric@138.110.186.248] has quit [Ping timeout: 244 seconds] 19:12:01 (a lot of people seem to use smug now... i am not sure why :)) 19:12:05 drewc: it was a little awkward when I wanted to write something that matched an element's name, because the first name I thought of was (defun =name= ...) 19:12:13 I'm not using smug directly, but your names made snese. 19:13:16 *Xach* must read all the smug paper sometime 19:13:26 we've played with smug here, not me personally though. 19:13:42 -!- oconnore1 [~Eric@138.110.186.248] has quit [Client Quit] 19:14:05 I've read the smug paper three times and I still don't get it 19:14:41 it can only be attributable to blub braindamage! 19:14:42 superflit [~superflit@71-208-212-164.hlrn.qwest.net] has joined #lisp 19:15:58 dlowe: You just gotta write some parsers. 19:16:06 sykopomp: I have 19:16:08 even if the monad stuff is still gobbledygook 19:16:17 I get the monad stuff, actually 19:16:48 It's the use of functional combination in a way I've never seen before 19:16:54 let's enlighten each other, because I still don't grok the monad stuff, but I feel really comfortable spitting out somewhat complex parsers. 19:17:13 Xach: glad you are using something related, even if it's #\= :) 19:18:01 *sykopomp* wonders about giving smug a package nickname := and just shadowing all the CL stuff, for consistency. ;p 19:18:27 sykopomp: for extra fun, selectively import from either smug or cl 19:18:37 dlowe, sykopomp: i'll be happy to answer things as well, i really wrote smug because i wanted "Monadic Parser Combinators" in lisp, because it made things easy for me. 19:18:41 ehehe 19:19:03 drewc: I think you did a very good job of making smug's behavior and usage clear. 19:19:18 I took a look at a cl-parser-combinator library on github and my eyes just glazed over. 19:20:12 Temp [~quassel@223.183.191.213] has joined #lisp 19:20:50 sykopomp: i had a client who codes and i needed something he could read when i commited my parsers... i am amazed that other people read and use it... makes me think i got to do more to release it publically 19:21:54 drewc: I started integrating my changes already, but hooking up my error reporting is going to be a bit more involved than I thought, so I postponed it. 19:22:13 since your mainline has a different (fail) 19:25:54 -!- hargettp [~hargettp@pool-71-184-177-139.bstnma.east.verizon.net] has quit [Quit: Leaving...] 19:26:55 -!- superflit [~superflit@71-208-212-164.hlrn.qwest.net] has quit [Ping timeout: 255 seconds] 19:27:12 Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has joined #lisp 19:28:38 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 19:31:42 -!- McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has quit [Remote host closed the connection] 19:33:04 superflit [~superflit@71-208-218-28.hlrn.qwest.net] has joined #lisp 19:33:13 Ralith [~ralith@142.58.95.27] has joined #lisp 19:34:08 oconnore [~Eric@138.110.223.130] has joined #lisp 19:35:17 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 19:35:34 sykopomp: i have a few different fails around, but the one i have on github is probably the most recent 19:36:03 -!- oconnore [~Eric@138.110.223.130] has quit [Client Quit] 19:36:17 Kenjin [~josesanto@bl21-77-50.dsl.telepac.pt] has joined #lisp 19:36:27 Seems like a good time to reference the best monad article ever for lispers again: http://dorophone.blogspot.com/2011/04/deep-emacs-part-1.html 19:37:00 *drewc* imported that 14 days before he was in the hospital, and has not modified it since :) 19:37:33 are you typing from hospital? 19:38:11 gensym [~user@dslb-088-071-149-049.pools.arcor-ip.net] has joined #lisp 19:39:36 JuanDaugherty: nope, been out since aug 16, and day trips are also done for a bit as of last week 19:40:23 marsell [~marsell@120.22.174.229] has joined #lisp 19:40:29 drewc: You were in the hospital? 19:41:21 lonstein [lonstein@ohno.mrbill.net] has joined #lisp 19:41:31 nyef: he was. 19:41:49 nyef: and long too. 19:43:23 Ouch. Dare I ask why? 19:43:35 nyef: indeed, in a coma ... actually it is june 16 i went in, not my github day at all... i have my own copy of the repo and i looked at that 19:44:31 then july 16th i went to a rehab hospital, because my right side was not moving. 19:44:52 the right side is among the most important sides 19:44:56 Wow, that sucks. What happened? 19:45:07 Xach: Along with the left, front and back sides? 19:45:14 my right side is still not great, but it has improved a lot :) 19:46:15 nyef: i fell off a boat scaffolding, and went down to the ground hard enough that i should be dead or a lot more disabled 19:46:49 drewc: Wow. Sucks that it happened, glad you survived. 19:47:12 drewc: Mostly recovered now, I hope? 19:47:42 drewc: whoa. I didn't hear. that's pretty awful, but I'm glad you're alive (: 19:48:20 that's why I was busy running the servers from the tech coop. 19:48:20 nyef: it will take 6 months to a year to fully recover, but it is only my right side that hurts, my brain and lungs are a lot better :) 19:48:27 filling in for Drew. 19:48:56 McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has joined #lisp 19:49:03 indeed you were and are. hi ehu :) 19:49:17 ah, didn't know ehu worked with tech coop 19:49:50 antifuchs: i am glad to be around and my lisp is actually quite good compared to what it was 19:49:58 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Ping timeout: 276 seconds] 19:50:12 yay! you kinda need the brain and lungs (: 19:50:23 antifuchs: so i figure it can't be all bad 19:50:35 hah, and lisp can't hurt (: 19:50:56 yeah, i would not recommend losing the brain and lungs at all :) 19:51:32 i walk with a cane, but they took my wheelchair away, so a cane is good too 19:51:46 -!- Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has left #lisp 19:51:51 ngz [~user@201.144.80.79.rev.sfr.net] has joined #lisp 19:52:17 someday i should recover completely and be able to take a throw in and also shoot the penalty shot 19:53:29 ccorn [~ccorn@g132123.upc-g.chello.nl] has joined #lisp 19:54:58 sellout-1 [~Adium@c-98-245-83-250.hsd1.co.comcast.net] has joined #lisp 19:56:16 I hope that day is sooner rather than later (: 19:57:39 -!- sellout- [~Adium@c-98-245-83-250.hsd1.co.comcast.net] has quit [Ping timeout: 258 seconds] 19:58:35 -!- rotty [~rotty@nncmain.nicenamecrew.com] has quit [Remote host closed the connection] 19:59:17 i told my dad, who was also my soccer coach when i was young, that in two years i'll be better then i ever was ... since i am the same age as Dwayne De Rosario and played him was i was young, well, being better is a good thing because i don't like him at all :) 19:59:43 dwayne that is, i like my dad! 20:01:40 rotty [~rotty@nncmain.nicenamecrew.com] has joined #lisp 20:01:42 (and Dwayne will play for team 20:01:56 Canada in 2 hours) 20:02:02 -!- H4ns [41173d62@gateway/web/freenode/ip.65.23.61.98] has quit [Ping timeout: 252 seconds] 20:02:34 sorry, right hand hits enter sometimes when shift would do fine 20:04:19 -!- alvis [~alvis@tx-71-2-123-220.dhcp.embarqhsd.net] has quit [Ping timeout: 252 seconds] 20:05:17 realitygrill [~realitygr@thewall.novi.lib.mi.us] has joined #lisp 20:05:25 hargettp [~hargettp@pool-71-184-177-139.bstnma.east.verizon.net] has joined #lisp 20:13:17 -!- realitygrill [~realitygr@thewall.novi.lib.mi.us] has quit [Quit: realitygrill] 20:17:37 alvis [~alvis@tx-71-2-123-220.dhcp.embarqhsd.net] has joined #lisp 20:20:49 -!- lonstein [lonstein@ohno.mrbill.net] has quit [Ping timeout: 252 seconds] 20:20:50 -!- hargettp [~hargettp@pool-71-184-177-139.bstnma.east.verizon.net] has quit [Quit: Linkinus - http://linkinus.com] 20:21:00 hargettp [~hargettp@pool-71-184-177-139.bstnma.east.verizon.net] has joined #lisp 20:21:11 DaDaDosPrompt [~DaDaDosPr@184.99.29.100] has joined #lisp 20:21:19 -!- DaDaDosPrompt [~DaDaDosPr@184.99.29.100] has quit [Client Quit] 20:21:40 lonstein [lonstein@ohno.mrbill.net] has joined #lisp 20:21:56 DaDaDosPrompt [~DaDaDosPr@184.99.29.100] has joined #lisp 20:22:07 -!- jewel [~jewel@196-209-248-67.dynamic.isadsl.co.za] has quit [Ping timeout: 248 seconds] 20:22:27 right, a-list works fine. now i'd like to quickly pretty print the contents of the a-list like "(padded)key: value\n" - i'm guessing i can somehow do it just by properly using format? 20:23:17 wbooze [~levgue@xdsl-78-35-174-143.netcologne.de] has joined #lisp 20:23:23 homie [~levgue@xdsl-78-35-174-143.netcologne.de] has joined #lisp 20:23:58 dRbiG: With a helper function, maybe? 20:24:25 dRbiG: I'd probably use a loop of some sort around FORMAT. 20:25:58 right, i was wondering here if format can do such magic on its own :) 20:26:11 dRbiG: i don't think so. 20:26:22 That much destructuring? I don't believe so. 20:28:15 drewc, excellent, to your continued good health : 20:28:19 *:) 20:30:11 drdo [~drdo@85.207.54.77.rev.vodafone.pt] has joined #lisp 20:31:03 Temp_ [~quassel@223.191.65.33] has joined #lisp 20:31:06 realitygrill [~realitygr@198.111.167.130] has joined #lisp 20:31:35 -!- Temp [~quassel@223.183.191.213] has quit [Ping timeout: 258 seconds] 20:33:06 -!- Temp_ [~quassel@223.191.65.33] has quit [Client Quit] 20:33:45 Temp [~quassel@223.191.65.33] has joined #lisp 20:34:02 -!- ISF_ [~ivan@143.106.196.39] has quit [Ping timeout: 256 seconds] 20:34:54 -!- lonstein [lonstein@ohno.mrbill.net] has quit [Ping timeout: 255 seconds] 20:35:43 lonstein [lonstein@173.11.229.161] has joined #lisp 20:39:09 dRbiG: you just want to print out an a-list? 20:39:34 -!- Temp [~quassel@223.191.65.33] has quit [Remote host closed the connection] 20:40:17 like (format nil "~:{ ~a: ~a~%~}" a-list)? 20:41:14 *Oladon* mutters about illegal function calls 20:41:31 Oladon: the police will be at your door shortly 20:41:40 *Oladon* bursts into tears 20:41:43 dlowe: Wouldn't you want a plist for that, not an alist? 20:42:02 felideon: I do. Started last November. 20:42:08 -!- ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has quit [Quit: Leaving.] 20:42:26 nyef: dRbiG said a-list... 20:42:37 Well, yes. 20:42:58 I'm going to have to look up what CLHS says about ~{, aren't I? 20:43:20 nyef: just ~:{ iterates over lists of lists 20:43:44 -!- xcv [~xcv@dsl-225-28.hive.is] has quit [Remote host closed the connection] 20:43:49 dlowe: And what happens with an improper list? 20:44:02 dlowe: you cannot print separately the key and the value of an a-lists with format, unless you use ~/. 20:44:34 oh, an improper a-list. how uncivilized. 20:45:10 -!- realitygrill [~realitygr@198.111.167.130] has quit [Quit: realitygrill] 20:45:53 Is there a good way to figure out what's triggering the illegal function call? 20:46:07 Oladon: BACKTRACE? 20:46:20 dRbiG: (format t "~:{K:~S V:~S~%~}" (mapcar (lambda (e) (list (car e) (cdr e))) '((:a . 1) (:b . 2)))) 20:46:23 fancy 20:46:55 Oladon: that's how we normally debug: first, you paste your code and post a link to #lisp... 20:47:39 hehe 20:48:09 Using http://paste.lisp.org/ 20:48:26 Oh, really? I was just going to paste 500 lines into here... 20:48:28 Oladon: (declaim (optimize (debug 3))) (as a toplevel form in your file) may make backtrace more verbose 20:48:31 *Oladon* snickers 20:48:44 ah, thanks akovalenko 20:48:52 Oladon: contrarily to some other random paste bin. 20:49:03 pjb: like Pidgin? 20:49:31 -!- mrSpec [~Spec@unaffiliated/mrspec] has quit [Quit: mrSpec] 20:49:31 The probability I answer a question with another pastebin is ten times lower than with paste.lisp.org. 20:49:36 heh 20:50:18 Mind you there are even paste bins that ask to register to read the paste!!! 20:51:09 Register in order to read a paste? Not happening. 20:51:24 But we only need your credit card number and ssn 20:51:29 then you can help me with my code! 20:51:59 Oladon: do you use SLIME? It's kind of hard to inspect and debug without it.. 20:52:37 I've used it in the past, but don't have it set up on this box 20:52:38 sarcasm is another sure way of lowering your probability of getting help. 20:53:16 On the contrary, well-executed sarcasm can often improve it. 20:54:48 -!- sellout-1 [~Adium@c-98-245-83-250.hsd1.co.comcast.net] has quit [Quit: Leaving.] 20:55:07 sarcasm is just noise in the system. 20:55:07 realitygrill [~realitygr@thewall.novi.lib.mi.us] has joined #lisp 20:55:11 Oladon: right. but here, you'll get the wrong crowd to answer you if you use sarcasm 20:55:40 To some extent. 20:55:58 interesting that there doesn't seem to be a common lisp function that can be used to turn improper lists into proper lists 20:56:28 -!- elurin [~user@85.99.35.200] has quit [Remote host closed the connection] 20:57:59 -!- nanoc [~conanhome@186.157.185.137] has quit [Read error: Connection reset by peer] 20:58:59 -!- moah [~gnu@dslb-178-006-213-130.pools.arcor-ip.net] has left #lisp 20:59:11 JuanDaugherty: thanks :) 21:00:10 dlowe: (setf (cdr (last x)) nil) ? 21:00:42 -!- sonnym [~sonny@rrcs-72-43-20-246.nys.biz.rr.com] has quit [Quit: Leaving.] 21:02:45 pkhuong: that's not a function :p 21:02:52 and it loses the last value 21:03:47 -!- hakzsam [~hakzsam@64.120.44.106] has quit [Quit: Leaving] 21:04:09 dlowe: so you can't program anymore. What are you doing in a programming channel? 21:04:51 pjb: contributing. 21:05:28 -!- dlowe [dlowe@nat/google/x-oucwkkmbhnkoukch] has quit [Quit: Leaving.] 21:05:59 ouch! 21:06:55 -!- sdemarre [~serge@91.176.68.211] has quit [Ping timeout: 248 seconds] 21:09:12 Modius [~Modius@cpe-70-123-140-183.austin.res.rr.com] has joined #lisp 21:10:34 Does usocket or anything else like it allow for asynchronous requests for connections without resorting to threads/thread pools? 21:11:29 nanoc [~conanhome@186.12.8.219] has joined #lisp 21:11:40 Modius: As I understand it, they don't /disallow/ it. 21:11:41 iolib does, IIRC. 21:12:38 nyef: The calls appear to be blocking (my main interest is something like Drakma and having an asynch web request) 21:12:41 if host name needs to be resolved, it can be a separate problem 21:12:52 pjb: (dolist (x series) (format out "~16@A: ~A~%" (car x) (first (cdr x))))) 21:13:08 -!- Kovensky [~kovensky@abraxo.bluebottle.net.au] has quit [Ping timeout: 260 seconds] 21:13:11 that's my solution 21:13:19 -!- realitygrill [~realitygr@thewall.novi.lib.mi.us] has quit [Ping timeout: 248 seconds] 21:13:19 Modius: Can you not get ahold of the underlying fd and issue an fcntl? 21:13:33 dRbiG: yes, if you want to avoid consing a temporary list. 21:13:38 nyef: Maybe if I knew what an fd and fcntl were 21:13:57 A file descriptor, and... "file control", maybe? 21:14:08 *akovalenko* thinks of something horrible like (format ... (apply 'mapcan 'list (mapcar 'mapcar '(car cdr) (list series series)))) 21:14:11 dRbiG: you should not need to call FIRST. (dolist (entry a-list) (format out "~16@A: ~A~%" (car entry) (cdr entry))) 21:14:38 Basically, the thing that the kernel recognizes as the connection and a syscall to change some attribute of the connection. 21:14:45 fcntl = file control function, in practice a wrapper around ioctl iirc 21:14:51 akovalenko: it's not horrible,it's functional programming as envisionned by Backus. 21:14:55 I know sb-bsd-sockets supports non-block. 21:14:58 So I 'd have to go to unix-level constructs to do it any other way? 21:15:08 pjb: i have a question around this: some of the cdr's may be lists and I'd like to have them printed as value, not ("value"), or in case of a longer list as value1, value2, ... 21:15:11 Modius: IOlib abstracts some of that 21:15:15 i don't know yet how to do it :) 21:15:35 Yeah, obvious place to put it is IOLib; but it doesn't seem to claim to be portable yet 21:15:48 Seems it's not yet primetime but iolib is the place to start. 21:15:59 I mean, portable (to windows) 21:16:03 primetime ?? 21:16:25 Sorry. I'm thinking of usocket and drakma which, while blocking, seem to work everywhere 21:16:36 Miller-Rabin-pseudo-prime-time :) 21:16:51 -!- retupmoca [~andy@173-167-0-86-michigan.hfc.comcastbusiness.net] has quit [Quit: leaving] 21:16:52 dRbiG: (dolist (entry '((:a . 1) (:b . (a b c)))) (format t "~16@A: ~:[~A~;~{~A~^ ~}~]~%" (car entry) (listp (cdr entry)) (cdr entry))) 21:16:55 I need to take a peek at IOLib, just looking at the OS matrix 21:18:54 Modius: Async interfaces on windows are poorly known 21:19:23 p_l: nooo, they are known, though they aren't unix-like :) 21:19:34 Modius: I don't have time nor machine to add necssary C code to IOlib to make it work 21:20:09 Wonder if it's worth adding stuff like that out of threads + usockets blocking calls then replace as an optimization. 21:20:16 akovalenko: I don't think many people found the poor old "wait for event flag" IO system unless they are hardcore windows programmers :) 21:20:47 (or people who worked/played with "non mainstream" APIs) 21:21:43 pjb: thanks for suggestions (the output of your last one is the same as of my solution, i guess my a-list may be not that well formatted after all), i'll look more into format docs and figure it out 21:22:32 -!- brandonz [~brandon@c-76-102-192-48.hsd1.ca.comcast.net] has quit [Read error: Connection reset by peer] 21:23:20 dRbiG: it is not. Your expression signals an error on (:a . 1). 21:24:04 dRbiG: and prints only "B: A" on (:b . (a b c)) 21:25:05 -!- Ralith [~ralith@142.58.95.27] has quit [Ping timeout: 260 seconds] 21:27:35 pjb- [~t@81.202.16.46.dyn.user.ono.com] has joined #lisp 21:27:44 -!- puchacz [~puchacz@87-194-5-99.bethere.co.uk] has quit [Read error: Connection reset by peer] 21:28:08 Vivitron [~user@pool-108-7-56-243.bstnma.fios.verizon.net] has joined #lisp 21:29:35 ISF_ [~ivan@143.106.196.39] has joined #lisp 21:29:54 i'm starting to like the sbcl debugger, at first i were put off by it a lot :) 21:31:07 dRbiG: There may come a point where you find it off-putting again. Mostly because of its brain-twisting innards. 21:32:52 i have a very strange feeling that lisps are somehow more natural and familiar even though my cl knowledge is hmm, i have a book, vim and shell opened and do a read - try - rewrite loop 21:33:34 -!- hargettp [~hargettp@pool-71-184-177-139.bstnma.east.verizon.net] has quit [Quit: Linkinus - http://linkinus.com] 21:35:11 urandom__ [~user@p548A5C14.dip.t-dialin.net] has joined #lisp 21:42:46 -!- pjb- [~t@81.202.16.46.dyn.user.ono.com] has quit [Remote host closed the connection] 21:43:14 pjb- [~t@81.202.16.46.dyn.user.ono.com] has joined #lisp 21:49:26 right, got the formatting right and now i know how ~[] and ~{} works, that's the way to go :) 21:50:33 -!- ISF_ [~ivan@143.106.196.39] has quit [Ping timeout: 244 seconds] 21:50:44 -!- tsuru` [~user@c-68-53-57-241.hsd1.tn.comcast.net] has quit [Ping timeout: 258 seconds] 21:53:12 -!- Euthy [~euthy@unaffiliated/euthydemus] has quit [Quit: leaving] 21:53:43 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 245 seconds] 22:00:09 -!- rmarianski [~rmariansk@mail.marianski.com] has quit [Quit: leaving] 22:00:30 elliottcable [~me@ell.io] has joined #lisp 22:02:22 -!- Oladon [~Oladon@38.109.196.34] has quit [Quit: Leaving.] 22:04:43 Oladon [~Oladon@np34.co.returnpath.net] has joined #lisp 22:04:53 -!- cyrillos [~cyrill@188.134.33.194] has quit [Ping timeout: 255 seconds] 22:06:35 Beetny [~Beetny@ppp118-208-18-2.lns20.bne1.internode.on.net] has joined #lisp 22:07:09 Woot, our hack-a-thon project won an award :) 22:07:27 congrats 22:07:34 what did you make? 22:09:13 -!- elliottcable is now known as elliott|nuckOff 22:09:34 anvandare: a website/AIMbot/email-parser to keep track of who's out of office and/or working from home 22:09:48 schell [~schellsci@75-101-46-88.dsl.static.sonic.net] has joined #lisp 22:09:56 I mention it here because akovalenko and Xach were extremely helpful with the AIMbot portion (written in SBCL) :) 22:10:12 -!- LiamH [~none@pdp8.nrl.navy.mil] has quit [Quit: Leaving.] 22:11:39 nice, Oladon (: 22:11:42 Oladon: and you were extremely fast in understanding CL specifics, without a _single_ complain how it's all neat in scheme :) 22:12:04 in other places, you'd get banned for using aimbots! (-: 22:12:48 antifuchs: hehe. We won the "most likely to increase productivity" award 22:12:59 akovalenko: :) 22:13:06 awesome - that sounds like something an aimbot in an FPS would also achieve, even (: 22:13:14 lol 22:13:14 Oladon: you friends of Big Brother... 22:13:33 AIM being AOL Instant Messenger, antifuchs... ;) 22:13:34 *akovalenko* works from home 22:13:40 akovalenko: hehe 22:13:46 yeah, don't ruin the joke (-: 22:13:52 *antifuchs* giggles 22:14:00 Right now the policy is to email the whole company if you're going to be OOO/WFH 22:14:14 which was fine when we were under, say, 150 employees 22:14:39 but at this point you pretty much sift through 15-20 emails to figure out who's in and out 22:15:03 o_O 22:15:11 what about a nice little /away ?:> 22:15:16 -!- superflit [~superflit@71-208-218-28.hlrn.qwest.net] has quit [Ping timeout: 258 seconds] 22:15:19 hehe 22:16:03 Though I'm still somewhat displeased with the way hunchentoot turned out... we couldn't get the bot script to load correctly in the hunchentoot init.d, so right now the whole server + bot is running in a detached screen session 22:16:39 I'm running our web server here in a detached screen, lisppaste runs in a detached screen. 22:16:54 Just fire up the screen using sudo in an rc.local or something. 22:16:58 it's handy for when I want to change something with the bot 22:17:07 SBCL'ish take on #P"~/" can be misleading... 22:17:36 ? 22:17:45 akovalenko: it wasn't that... I'm not completely sure what it was. It was also 2-3 AM when I was trying to get it working, so it's possible that I missed something 22:18:26 Yes, even if you could run a lisp server as a daemon, you would still want to run it in a detached screen or tty. 22:18:50 Having a detached screen is just too useful to give up, really. 22:18:52 pjb-: You mean for the flexibility? 22:19:16 Oladon: Yeah, for the flexibility. Random code reloads, it's a great admin interface, and so on. 22:19:41 Oladon: I had once a script which setup a daemonised CCL/SBCL with SWANK 22:19:46 Oladon: yes. So that you can update or debug live servers. 22:19:47 *akovalenko* normally leaves SWANK (the server part of SLIME) running 22:19:52 p_l: might have been the one I was trying to use 22:20:12 *Oladon* has an emacs session open at the moment fixing a bug in the bot 22:20:29 Ralith [~ralith@S010600221561996a.vc.shawcable.net] has joined #lisp 22:20:50 SWANK+SLIME may be good enough, but with a screen session, we can get to REPL even from a poor emacsless machine.. 22:21:01 nods, this box doesn't have SLIME 22:21:11 Mmm. I've taken to patching a local server, generating a git commit with changes, pushing to the server, connecting to the server, merging the pushed changes, and compiling and reloading the affected files. 22:21:13 so I've got a screen with the REPL (and server) on screen 0 22:21:17 Somewhat cumbersome, but it works. 22:21:29 OTOH, emacs works perfectly in terminal, so running it on the server side is an option, too 22:22:02 a screen with emacs with a REPL to a daemonised Lisp 22:22:10 -!- ngz [~user@201.144.80.79.rev.sfr.net] has quit [Ping timeout: 258 seconds] 22:22:11 *Xach* does that 4x over on his server 22:22:19 Hehe, I feel better about it now :) 22:22:24 for l1sp.org, wigflip.com, and other sites 22:22:27 it would be nice if we could update code like OTP can, though 22:22:49 *p_l* is unsure about patching lisp this way without partial shutdown of the service 22:22:55 superflit [~superflit@71-208-218-28.hlrn.qwest.net] has joined #lisp 22:23:49 -!- gravicappa [~gravicapp@ppp91-77-186-228.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 22:23:54 p_l: drew mcdermott wrote about a way to do that called "chunks" iirc 22:24:32 OTP? 22:25:12 nyef: Open Telecom Platform, the "OS" part of Erlang 22:25:16 Ah. 22:25:49 while it can be clunky in places, it has awesome support for long-lived systems 22:26:16 at least compared to other offering available on "normal" systems (that is, not NonStop) 22:26:17 reading back - i assume that if i have a server like function i can run it in a separate thread or alike so i have the sbcl as my live debug/change interface? 22:27:21 dRbiG: There are several different designs. Hunchentoot-based servers typically have a thread listening for connections and one thread per HTTP request. The system lisppaste uses involves a lot of non-blocking I/O and only the one thread. 22:27:29 Both methods leave a working REPL. 22:27:45 (Of course, both methods were carefully designed to leave a working REPL.) 22:28:27 It can be important that a function running forever continues to run the old code, even if you redefine it 22:29:18 And it can be important in both good and bad senses of the term. 22:29:26 yep 22:29:53 nyef: the stuff i'm doing is not http-based; i'm actually reimplementing my ruby codebase in lisp just to learn lisp along the way; right now i have the whole system in a number of script that are called from cron from time to time, but the idea of having a single lisp system where everything is live and in one place sounds good for me 22:30:05 it might be interesting to define something working the way OTP updates the code, though it might require using some weird stuff that would compile to a datastructure full of closures... well, something that wouldn't look like normal packages if accessed normally 22:32:13 -!- RomyEatsDrupal [~stickycak@209-6-17-16.c3-0.nat-ubr1.sbo-nat.ma.cable.rcn.com] has quit [Quit: RomyEatsDrupal] 22:32:57 S11001001 [~S11001001@c-98-216-247-191.hsd1.ma.comcast.net] has joined #lisp 22:33:00 -!- superflit [~superflit@71-208-218-28.hlrn.qwest.net] has quit [Read error: Connection reset by peer] 22:33:00 superflit_ [~superflit@71-208-218-28.hlrn.qwest.net] has joined #lisp 22:33:02 -!- superflit_ is now known as superflit 22:35:06 dRbiG: it seems, cl-cron may be useful for you 22:37:09 homie` [~levgue@78.35.152.245] has joined #lisp 22:37:12 wbooze` [~levgue@xdsl-78-35-152-245.netcologne.de] has joined #lisp 22:39:03 -!- wbooze [~levgue@xdsl-78-35-174-143.netcologne.de] has quit [Ping timeout: 252 seconds] 22:39:11 -!- homie [~levgue@xdsl-78-35-174-143.netcologne.de] has quit [Ping timeout: 248 seconds] 22:40:00 -!- kleppari [~spa@bitbucket.is] has quit [Quit: leaving] 22:40:26 RomyEatsDrupal [~stickycak@209.6.17.16] has joined #lisp 22:41:43 akovalenko: thanks for suggestion, i'll check it when the time comes :) 22:42:57 -!- paul0 [~paul0@200.146.124.136] has quit [Quit: paul0] 22:44:54 okay, right now i have http://paste.lisp.org/display/125167 - any style/structure comments are welcome. i don't like the idea of bringing bad/wrong habits to lisp :) 22:45:46 -!- ccorn [~ccorn@g132123.upc-g.chello.nl] has quit [Quit: ccorn] 22:46:06 dRbiG: why don't you use emacs with slime? 22:46:24 dRbiG: your indentation is messed up because of that. 22:46:33 dRbiG: On your mapcar #'ql:quickload, move the '( to the start of the following line (immediately prior to "url-rewrite"). 22:47:07 -!- easyE [GIudt0UdGV@panix2.panix.com] has quit [Ping timeout: 252 seconds] 22:47:23 Indent seems wrong in your defpackage, and I would probably have grouped the :use clause onto fewer lines (but left the :export clause at one line per exported symbol). 22:47:39 Indent is, in fact, generally wrong. 22:47:53 setmeaway2 [jnoos43@119.201.52.182] has joined #lisp 22:48:39 -!- RomyEatsDrupal [~stickycak@209.6.17.16] has quit [Quit: RomyEatsDrupal] 22:48:58 right, guessed so... i've been using emacs for some time (though short), now i've switched to vim and i actually prefer it; i'll look for some more lisp friendly ways to wrok with vim 22:49:01 work* 22:49:09 Other than that, it seems largely not bad. 22:49:28 Odd use of INTERN, though. 22:50:31 i agree. it seems that a-list doesn't like string values for keys, and intern works here and right now i have no other ideas 22:51:07 "doesn't like" in what sense? 22:51:09 dRbiG: many CL functions take :test argument 22:51:27 -!- pjb- [~t@81.202.16.46.dyn.user.ono.com] has quit [Ping timeout: 248 seconds] 22:51:31 -!- setmeaway [~setmeaway@119.201.52.182] has quit [Ping timeout: 244 seconds] 22:51:44 nyef: (assoc "key" (("key" . "value"))) - i get nil 22:51:45 -!- Kenjin [~josesanto@bl21-77-50.dsl.telepac.pt] has quit [Quit: Computer has gone to sleep] 22:51:53 nyef: "doesn't like" ==> "doesn't grok that string1 is _like_ string2" 22:52:03 dRbiG: (assoc ... :test 'equal) 22:52:07 Well, I didn't see an assoc in the paste, hence my question. 22:52:21 I have an (assoc ... :test #'string=) in my server source right now. 22:53:43 dRbiG: from what i can tell, vim support for lisp is generally speaking worse than that of emacs. if you use them both for a while, it's easy to see. 22:54:51 dRbiG: so basically if you encounter some painful, or slow thing in your development process, it may be because of the tool you're using. 22:55:01 RomyEatsDrupal [~stickycak@209-6-17-16.c3-0.nat-ubr1.sbo-nat.ma.cable.rcn.com] has joined #lisp 22:55:11 dRbiG: i generally encourage you to try both for a longer time and see for yourself. 22:56:12 Dodek: continuous context switches between emacs and vim may be more painful then the worst of them :) 22:56:40 akovalenko: i've just made a portion of my code obsolete, thank you :) 22:56:45 you* 22:56:46 ehh 22:56:55 akovalenko: i use emacs exclusively to avoid that. :) 22:57:02 i guess it's getting late 22:57:34 Dodek: i would assume so, but i don't like the idea of having emacs for lisp (and maybe orgmode) and vim for everything else :) 22:57:39 03:00 am here. it would be getting _early_ very soon :) 22:58:18 dRbiG: oh well, i converted many of my friends from vim to emacs 22:58:37 *akovalenko* uses emacs for everything, except when firefox is needed and w3m is not enough.. 22:58:56 dRbiG: they generally say that emacs is more powerful, but less wieldy. 22:59:40 -!- MoALTz [~no@host-92-8-241-233.as43234.net] has quit [Quit: Leaving] 22:59:57 akovalenko: so you're even further east than i am :) 23:00:10 kleppari [~spa@bitbucket.is] has joined #lisp 23:00:27 2 hours east :) 23:01:02 dRbiG: i also encourage you to visit #lisp-pl :) 23:01:17 Dodek: here at freenode? 23:01:21 sure. 23:01:51 ignotus [~ignotus@unaffiliated/ignotus] has joined #lisp 23:02:12 hi, how can I escape/quote a wild pathname? 23:04:01 ... feral pathname? 23:04:51 escape from wild pathname? run as fast as you can. 23:05:10 touch 'foo[bar].baz', how can I open that in lisp? Is there a function that replaces [ and ] to \[ \] and possibly other such characters? 23:05:35 (make-pathname :name "foo[bar]" :type "baz") 23:05:55 akovalenko: what if I have the filename as a string? 23:05:56 -!- superflit [~superflit@71-208-218-28.hlrn.qwest.net] has quit [Read error: Connection reset by peer] 23:06:18 -!- homie` [~levgue@78.35.152.245] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 23:06:24 -!- wbooze` [~levgue@xdsl-78-35-152-245.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 23:08:20 superflit [~superflit@71-208-218-28.hlrn.qwest.net] has joined #lisp 23:08:55 parsing physical pathnames is implementation dependant. 23:09:35 -!- nyef [~nyef@c-174-63-105-188.hsd1.ma.comcast.net] has quit [Ping timeout: 248 seconds] 23:13:43 schme [~marcus@c83-254-205-42.bredband.comhem.se] has joined #lisp 23:13:43 -!- schme [~marcus@c83-254-205-42.bredband.comhem.se] has quit [Changing host] 23:13:43 schme [~marcus@sxemacs/devel/schme] has joined #lisp 23:17:54 fluffycms [~cmsimon@c-98-246-47-184.hsd1.or.comcast.net] has joined #lisp 23:18:26 sonnym [~sonny@rrcs-184-74-137-69.nys.biz.rr.com] has joined #lisp 23:19:15 i assume there are some helpers for lisp in vim, what i would like to have is obviously better formatting for the code and maybe some parentesis-aware navigation 23:19:33 i can do fine without a built-in interpreter :) 23:19:40 dRbiG: heard of a project called "slimv", never tried it, though 23:19:50 -!- Trystam is now known as Tristam 23:21:06 Dodek: heh, /me visited #lisp-pl and understood the conversation much better than I expected. That's a pity I can write Russian, English and Lisp only :) 23:21:10 akovalenko: i think i've seen it mentioned somewhere quite recently 23:21:57 -!- PissedNumlock [~resteven@igwe32.vub.ac.be] has quit [Ping timeout: 252 seconds] 23:22:12 klltkr [~klltkr@78.143.205.208] has joined #lisp 23:23:00 akovalenko: you're russian, right? polish and russian are both slavic languages, so they're a bit alike :) 23:23:04 -!- ignotus [~ignotus@unaffiliated/ignotus] has left #lisp 23:24:59 Dodek: yep. I'm a bit aware of that. (It's probably a leftover prejudice from my childhood that non-cyrillic slavic languages are harder to learn..) 23:25:37 polish may actually be a bit more diffcult than others 23:26:08 cesarbp [~cbolano@189.139.180.200] has joined #lisp 23:26:36 i found cyrillic to be, well, better designed for slavic languages than latin derivatives (what a surprise) 23:27:54 though russian - polish is a funny thing, some stuff is almost the same and the rest is false friends :) 23:30:42 gienah [~mwright@ppp121-44-52-242.lns20.syd6.internode.on.net] has joined #lisp 23:31:19 sounds like scheme vs. cl, except with the character set distinction maybe more like cl vs. tcl (: 23:32:08 *akovalenko* has pretty thick TCL background, too :) 23:32:49 zmv [~daniel@c95339f3.virtua.com.br] has joined #lisp 23:33:01 I have a pretty thick ruby accent! 23:33:21 Dodek: heh, now I know where to find a REPL-bot 23:34:07 akovalenko: want to have access? 23:34:52 akovalenko: i try to sandbox it, but i'm not sure how secure it is 23:36:11 antifuchs: my current 'weapon of choice' is ruby and i do like it a lot :) 23:36:29 i have some tcl stuff leftovers too 23:36:31 so do I! there are a lot of useful tools available in ruby 23:36:40 the only thinf i've ditched for good is perl 23:36:43 still, for the heavy lifting I prefer lisp (: 23:37:33 maybe someone could add more languages to this pun: http://paste.lisp.org/+2OKX 23:37:33 i think i've never been even close to real heavy lifting :) 23:37:38 triliyn [~desmond@76-206-56-151.lightspeed.irvnca.sbcglobal.net] has joined #lisp 23:38:01 H4ns [43174196@gateway/web/freenode/ip.67.23.65.150] has joined #lisp 23:38:29 Dodek: i prefer _not_ to have access to security-sensitive things until there is a real need. Thanks, though. 23:38:39 akovalenko: have a look at http://paste.lisp.org/display/122296 23:39:02 -!- gcentauri [~gcentauri@76-85-192-184.cable.inebraska.com] has quit [Ping timeout: 258 seconds] 23:39:37 akovalenko: it's just that i don't want anyone to wipe my home, and that's it. :P 23:40:27 bzzbzz [~franco@modemcable240.34-83-70.mc.videotron.ca] has joined #lisp 23:41:42 -!- schell [~schellsci@75-101-46-88.dsl.static.sonic.net] has left #lisp 23:41:44 pjb: that's interesting - my feeling is that everything can be reduced to schme, right? 23:41:46 Dodek: eventually, I'm going to think of a language-level "jailing" solution for CL (that's one of my favourite TCL features) 23:41:58 dRbiG: Turing Equivalence. 23:42:19 pjb: in theory 23:42:35 pjb: ..is not about syntax. 23:42:56 akovalenko: all symbols read from irc repl are already interned into a separate package, and i took steps to ensure that unsafe functions are not available, and that you cannot escape this package 23:44:07 so no reading sb-ext::exit? 23:44:27 nope 23:44:47 antifuchs: #\: isn't a package separator anymore, as we see 23:44:57 oh, haha 23:45:00 nice one (: 23:45:02 Hmm... is there a function I can use to escape single-quotes in a string? 23:45:11 unfortunately i had to hack a reader a bit 23:45:27 Oladon: yes. But it's name is somewhat complex. 23:45:48 i took com.informatimago one and patched the function responsible for reading symbol. 23:46:14 (lambda (s) (with-output-to-string (out) (loop for ch across s do (when (char= #\' ch) (princ "\\" out)) (princ ch out)))) is its name. 23:46:18 hehe 23:46:20 Dodek: heh, I was going to recommend com.informatimago 23:46:42 tsuru` [~user@c-68-53-57-241.hsd1.tn.comcast.net] has joined #lisp 23:46:59 because of this, full language is not available 23:47:08 but it's fine for irc repl 23:47:09 :P 23:47:39 that's not a function name, pjb! 23:47:41 *antifuchs* smells a trick 23:48:10 Dodek: I assume FIND-SYMBOL is marked as dangerous, isn't it? 23:48:15 (unless you patched your reader to consider ( and ) as | marks (-: 23:48:17 Technically you're right, but lambda lists can be used almost everywhere a function name can be used. In (function ...) in (... ), etc. 23:49:09 CL:FIND-SYMBOL. But you can provide a SANDBOX:FIND-SYMBOL instead. 23:49:40 akovalenko: https://bitbucket.org/dodek/klacz/src/8b2d91151e31/package.lisp 23:49:47 here's the list of shadowed packages 23:49:55 -!- Oladon [~Oladon@np34.co.returnpath.net] has quit [Read error: Connection reset by peer] 23:50:10 meh, s/packages/symbols/ 23:51:14 -!- tsuru` [~user@c-68-53-57-241.hsd1.tn.comcast.net] has quit [Ping timeout: 260 seconds] 23:53:04 Dodek: maybe I'll be able to spot something dangerous, after computing set-difference with all CL symbols.. 23:53:20 i was a bit cautious, and i believe that some of them are innocent 23:53:31 -!- S11001001 [~S11001001@c-98-216-247-191.hsd1.ma.comcast.net] has left #lisp 23:53:54 for instance compile or some packages functions 23:54:01 but, better safe than sorry :P 23:54:32 -!- fluffycms [~cmsimon@c-98-246-47-184.hsd1.or.comcast.net] has quit [Quit: Leaving] 23:59:43 -!- zmv [~daniel@c95339f3.virtua.com.br] has quit [Ping timeout: 252 seconds]