00:03:21 -!- xomas [n=onlyou@unaffiliated/xomas] has quit [] 00:11:54 bobf_ [n=bob@host81-158-233-170.range81-158.btcentralplus.com] has joined #lisp 00:12:14 -!- bobf [n=bob@unaffiliated/bob-f/x-6028553] has quit [Nick collision from services.] 00:12:18 -!- bobf_ is now known as blahblah 00:12:25 -!- blahblah is now known as bobf 00:12:31 cbeok [n=user@76-85-193-211.cable.inebraska.com] has joined #lisp 00:13:17 I'm interested in reading some articles about people's opinions on what a programming language should be - anyone know of a good one? 00:14:07 I don't mind reading an opinionated or otherwise one-sided article - I can supply my own criticisms if they seem to be required. 00:17:03 spurserh [n=shmeebeg@pool-96-233-10-80.bstnma.east.verizon.net] has joined #lisp 00:17:46 cbeok: this isn't quite what you asked for but might be interesting: http://people.csail.mit.edu/gregs/ll1-discuss-archive-html/msg04323.html 00:17:48 hello, I have been assessing LISP for a particular use and I have a couple of questions for someone experienced, if anyone is around/willing 00:18:25 spurserh: go ahead. 00:18:53 so I think LISP is quite interesting and I happen to be looking for a nice language in which to implement a GUI for a commercial product 00:19:18 so, I have tried Cusp/SBCL and ECL among others 00:19:38 but I havn't found anything that meets my requirements.. and I guess I am wondering if it exists 00:19:46 ECL was very close, but the error handling appeared to be really horrible 00:20:42 when I invoked the interpreter from a C program with an invalid program, it spat out lines to stderr until it hit a stack overflow (apparently) and then it brought up some kind of interactive debug prompt.. within my application! 00:20:55 (though it worked fine with valid programs) 00:21:37 SBCL/Cusp with Eclipse was quite pretty and seemed to handle errors nicely, but my understanding is that it's not embeddable within a larger C/C++ program 00:21:40 spurserh: You might want to look at Lispworks--some people like the GUI tools they provide. 00:22:04 gigamonk`: Well, let me clarify, it would be calling back to an existing framework within this application 00:22:14 Also, you can probably control the behavior of the debugger-- there's *debugger-hook* and also simply handling of conditions to avoid landing in the debugger. 00:22:38 looking at stuff like python and ruby etc. .. i think it is more common (and easier!) to embed C libraries "into" the python/ruby environment than the other way around .. pygtk, pyqt .. etc. 00:22:59 I can't really say from personal experience but that is what ECL is supposed to be for. 00:23:02 gigamonk`: So this would avoid the thousands of lines of output being dumped to stderr before it reaches the debugger? I expected just a null return from cl_eval() or something 00:23:18 lnostdal: Sure, and SBCL seemed to be that way too, but that's not workable for me 00:23:40 Hard to say. If those lines were a stack trace, likely. 00:24:15 spurserh: i'm sure that's very much implementation dependant, as there is no such things as stderr in lisp. The ECL docs will probably tell you how it handles such things. 00:24:24 spurserh, why? .. most of your code is probably not in the main() function anyway .. idunno 00:24:35 spurserh: it's most likely configureable. 00:24:44 Broken at SI:BYTECODES.No restarts available.0 is an illegal frs index. 00:24:55 those two lines just repeat.. it doesn't seem like a stack track to me 00:25:33 It does sound like something is signaling a condition which is not being handled. 00:25:48 Why it would be a emitted over and over, it's hard to say without knowing more about the code. 00:26:02 the code is "(c-s)" 00:26:07 just a non-existent function 00:26:16 drafael [n=tapio@ip-118-90-133-5.xdsl.xnet.co.nz] has joined #lisp 00:26:23 I defined a function c-rand, and so "(c-rand)" works fine 00:26:36 but if I change it to something invalid, there is this huge explosion.. which is unacceptable in a commercial application 00:26:51 spurserh: I suspect you need to dig a bit deeper into the ECL docs. 00:27:13 This is not really a generic Lisp issue. (Unless there happens to be somewhere here with ECL experience.) 00:27:14 gigamonk`: I've searched for the word "error" in the manual and found 2-3 instances, of no help :-/ 00:27:16 spurserh: I guess you could start with a valid, working error handler.... 00:27:30 -!- gigamonk` is now known as gigamonkey 00:27:34 and some hooks to debugger 00:27:38 sure, I don't care about ECL in particular, I am just wondering if you guys know of an embeddable LISP environment that works 00:27:46 p_l: What do you mean? 00:28:09 Well, people have reported success with ECL. 00:28:17 spurserh: try defining a catch-all handler (I'm too sleepy now to remember how to do it) 00:28:40 (handler-case (progn ...) (t (err) (princ err))) 00:28:55 and usually it's the other way around, you interface other code in CL :) 00:29:30 pjb: This is my first day with LISP, obviously, are you saying I would do (handler-case (c-s) (t (err) (princ err))) ? 00:29:57 Yes. 00:30:46 pjb: 00:30:53 pbj: That's beautiful, I get a nice error message 00:31:18 sorry, can't type 00:31:42 pjb: So I guess then I can define a callback to C instead of "princ", right? 00:32:29 spurserh: for a first day with lisp, perhaps you could first learn the language before trying sophisticated stuff such as ffi and callbacks? 00:32:42 gigamonkey: hey thanks - this will probably scratch the itch. 00:32:44 spurserh: since you call this form from lisp, you can just return a value instead of printing it. 00:32:58 (handler-case (c-s) (t (err) (princ-to-string err))) 00:33:28 pjb: Okay, but I need to be able to differentiate an error from a normal execution 00:33:40 (handler-case (c-s) (t (err) (values (princ-to-string err) :error))) 00:33:42 -!- cbeok [n=user@76-85-193-211.cable.inebraska.com] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 00:33:46 pjb: So I would like to be able to call back to a C++ "fatal error handler" which throws an exception 00:33:57 Yes, you could. 00:36:55 pjb: (handler-case (c-s) (t (err) (c-fatal-error err))) 00:37:02 pjb: Seems to work well, though I don't understand what "t" is 00:37:21 T is TOP, the supertype. 00:37:42 It's the set including all the elements. 00:37:54 pjb: All the elements of...? 00:37:59 ALL. 00:38:38 o.. kay 00:38:46 well thanks, it does work well 00:40:40 -!- gigamonkey [n=user@adsl-76-254-16-215.dsl.pltn13.sbcglobal.net] has quit [Read error: 60 (Operation timed out)] 00:42:40 yakman_ [n=bot@94-194-134-155.zone8.bethere.co.uk] has joined #lisp 00:44:54 -!- yakman_ [n=bot@94-194-134-155.zone8.bethere.co.uk] has quit ["Leaving"] 00:45:28 sykopomp [n=sykopomp@unaffiliated/sykopomp] has joined #lisp 00:55:23 gigamonkey [n=user@adsl-76-254-16-215.dsl.pltn13.sbcglobal.net] has joined #lisp 00:55:25 -!- birdsbite [n=user@74.196.9.26] has quit [Remote closed the connection] 01:01:59 birdsbite [n=user@74.196.9.26] has joined #lisp 01:03:56 -!- JAS415 [n=jon@c-24-34-16-25.hsd1.ma.comcast.net] has left #lisp 01:09:54 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 01:14:09 We're having a bear of a time using clisp as a stdio pipe program. Are there any known issues with it? 01:17:57 -!- gigamonkey [n=user@adsl-76-254-16-215.dsl.pltn13.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 01:20:07 rvirding [n=rvirding@h59n5c1o1034.bredband.skanova.com] has joined #lisp 01:20:58 amblerc [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has joined #lisp 01:21:06 -!- JohnnyL [i=crashcar@ool-182f0b98.dyn.optonline.net] has left #lisp 01:21:23 -!- Vicfred [n=Vicfred@201.102.57.186] has quit ["Leaving"] 01:23:33 Phoodus: does it display a banner on startup? 01:24:13 -!- blackened` [n=blackene@ip-89-102-208-138.karneval.cz] has quit [] 01:24:28 no, we've got all that turned off 01:24:42 We're using Erlang to launch clisp; I'm asking on that channel too 01:25:00 pfhaust [n=mike@c-71-227-167-254.hsd1.wa.comcast.net] has joined #lisp 01:25:06 If we don't use "cmd /c clisp...", and use just plain "clisp...", the stdout/stderr ports are undefined 01:25:15 and writing to the pipe just hangs the Erlang 01:25:52 distilled the problem down to this, and it still doesn't work: (defun simple () (format t "Raad:~s~%" (read-line)) (simple)) 01:26:03 with a (simple) call obviously as well 01:26:50 cmd /c clisp --silent c:/test.lisp 01:29:33 -!- mattrepl [n=mattrepl@208-45-247-237.dia.static.qwest.net] has quit [] 01:30:05 Phoodus: are you the people doing that online RTS? 01:36:39 -!- Gertm [n=user@mail.dzine.be] has quit [Read error: 60 (Operation timed out)] 01:36:48 Gertm [n=user@mail.dzine.be] has joined #lisp 01:37:48 -!- spurserh [n=shmeebeg@pool-96-233-10-80.bstnma.east.verizon.net] has quit [] 01:37:51 -!- nha [n=prefect@137-64.105-92.cust.bluewin.ch] has quit ["Save the whales, feed the hungry, free the mallocs."] 01:38:19 coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has joined #lisp 01:40:49 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 01:40:52 aja [n=aja@S01060018f3ab066e.ed.shawcable.net] has joined #lisp 01:41:32 -!- Joreji [n=user@42-104.eduroam.RWTH-Aachen.DE] has quit [Read error: 113 (No route to host)] 01:43:43 -!- dnm_ [n=dnm@250.sub-75-222-67.myvzw.com] has quit [Read error: 60 (Operation timed out)] 01:47:15 echo-area [n=user@nat/yahoo/x-3fdf065e9fae976c] has joined #lisp 01:51:12 -!- schoppenhauer [n=css@unaffiliated/schoppenhauer] has quit [Remote closed the connection] 01:52:09 Phoodus: you may want to flush output if you want to see it before having to input a line. 01:52:47 Sikander [n=soemraws@ip98-185-236-17.sb.sd.cox.net] has joined #lisp 01:53:26 Otherwise, there's no problem in using clisp as a pipe: ls | clisp -norc -q -x '(loop for line = (read-line t nil nil) while line do (princ (string-upcase line)) (terpri))' 01:53:34 s/pipe/filter/ 01:54:57 But when you use pipes to do both input and output to communicate with another process, you must be very careful with the synchronization of I/O between the two pipes, the two processes, taking into account any buffering. 01:57:39 Also, you must take into account that the pipes may have a maximum buffer size: on unix you cannot write more than 64 KB on a pipe at once (the other process must read some before more may be written). 01:58:40 pjb: does that apply to named pipes too? 01:58:48 Yes. 01:59:02 and sockets. 02:01:31 Phoodus: Since you run it on windows, why not implement windows-supported IPC? 02:02:40 Notice that in clisp, you can use socket:socket-status even on non-socket streams to implement some sort of asynchronous I/O. 02:10:09 dnm_ [n=dnm@250.sub-75-222-67.myvzw.com] has joined #lisp 02:10:36 -!- Sikander [n=soemraws@ip98-185-236-17.sb.sd.cox.net] has left #lisp 02:19:33 envi^home [n=envi@220.121.234.156] has joined #lisp 02:23:02 -!- araujo [n=araujo@gentoo/developer/araujo] has quit [Read error: 104 (Connection reset by peer)] 02:24:08 mrsolo [n=mrsolo@adsl-68-126-188-239.dsl.pltn13.pacbell.net] has joined #lisp 02:24:43 fisxoj [n=fisxoj@ool-45767be8.dyn.optonline.net] has joined #lisp 02:24:49 araujo [n=moz@gentoo/developer/araujo] has joined #lisp 02:25:11 -!- araujo [n=moz@gentoo/developer/araujo] has quit [Read error: 54 (Connection reset by peer)] 02:25:46 deylen [n=deylen@93-97-208-39.zone5.bethere.co.uk] has joined #lisp 02:26:19 p0a [n=user@athedsl-381559.home.otenet.gr] has joined #lisp 02:26:34 Hello I'm trying to write an inversion function which may return different places depending on the parameters 02:27:07 araujo [n=moz@gentoo/developer/araujo] has joined #lisp 02:27:25 -!- rvirding [n=rvirding@h59n5c1o1034.bredband.skanova.com] has left #lisp 02:27:32 for instance, (f x 'foo) will (setf (gethash x *bar*) val), and (f x 'bar) will (setf (car x) val) 02:29:27 I tried to do this with defun like (defun (setf f) (x y z) (case z ('foo (setf (gethash y *bar*) x)) ('bar (setf (car y) x)))) 02:31:08 Why don't you just write what you want? (defun f (x sel) (ecase sel ((foo) (setf (gethash x *bar*) val)) ((bar) (setf (car x) val)))) 02:31:40 Of course, having a free variable named val is inconvenient. You may want to add it to the parameter list of f. 02:32:00 -!- Rivelli` [n=tesla@adsl-75-16-94-29.dsl.irvnca.sbcglobal.net] has left #lisp 02:32:04 Rivelli` [n=tesla@adsl-75-16-94-29.dsl.irvnca.sbcglobal.net] has joined #lisp 02:32:23 Also, there's no inversion in that... 02:36:15 -!- eno__ [n=eno@adsl-70-137-175-96.dsl.snfc21.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 02:39:42 -!- Corun [n=Corun@94-194-31-231.zone8.bethere.co.uk] has quit ["Leaving..."] 02:40:18 pjb: Yes, val is not free. I got confused with the DEFSETF version 02:40:28 Now if what you mean was that (setf (f x 'foo) val) would do (setf (gethash x *bar*) val) and (setf (f x 'bar) val) would do (setf (car x) val), then your (setf f) function is ok, if we ignore that (setf (f x 'quote) val) would do the same as (setf (f x 'foo) val)... 02:40:45 Yes that is the problem 02:41:02 Then why did you put lists including QUOTE in your CASE? 02:41:18 eno [n=eno@nslu2-linux/eno] has joined #lisp 02:41:27 I hadn't realized that case works that way 02:41:58 And you should probably better use ECASE so an error is signaled when you don't give the right key. 02:42:50 -!- dnm_ [n=dnm@250.sub-75-222-67.myvzw.com] has quit [Client Quit] 02:43:16 you're right that also troubled me, and I wasn't sure what to put in (t (error ...)), but ecase is convenient 02:43:42 -!- deylen [n=deylen@93-97-208-39.zone5.bethere.co.uk] has quit [] 02:43:45 -!- araujo [n=moz@gentoo/developer/araujo] has quit ["Leaving"] 02:44:07 p0a: ok so it's not an inversion function, it's a setf function. It doesn't return places, but sets different places depending on the parameters. 02:44:08 Adamant [n=Adamant@c-76-29-188-22.hsd1.ga.comcast.net] has joined #lisp 02:44:09 araujo [n=araujo@gentoo/developer/araujo] has joined #lisp 02:44:26 -!- araujo [n=araujo@gentoo/developer/araujo] has quit [Read error: 104 (Connection reset by peer)] 02:44:34 But setf does this 02:44:41 What? 02:44:47 What does SETF do? 02:45:17 I mean, (defun (setf mycar) (new-car lst) (rplaca lst new-car) new-car) 02:45:35 Then (setf (mycar lst) x) 02:45:50 Yes. What does setf do? 02:46:08 I don't know. I assumed there's some communication between defun and setf on this case 02:46:11 araujo [n=araujo@gentoo/developer/araujo] has joined #lisp 02:46:30 it looks up somewhere the definition of MYCAR for a generalized variable and executes what is there? 02:46:33 it calls (funcall (function (setf mycar)) x lst) 02:46:35 -!- araujo [n=araujo@gentoo/developer/araujo] has quit [Read error: 54 (Connection reset by peer)] 02:46:49 It's actually your function you named (setf mycar) that will do the setting. 02:46:58 that's a function namE? 02:47:06 a symbol or (setf symbol) 02:47:12 Can it be other lists? 02:47:30 also (lambda ...) is a function name (strangely, it's the name of an anonymous function). 02:47:36 Nothing else. 02:47:42 Ah, so (setf symbol) is a specific case 02:47:52 Yes. 02:47:53 araujo [n=araujo@gentoo/developer/araujo] has joined #lisp 02:48:08 mikezor_ [n=mikael@c-a1e370d5.04-404-7570701.cust.bredbandsbolaget.se] has joined #lisp 02:48:31 Alright thanks, so I was right that's the communication :) SETF uses (function form) and defun uses symbol-function ? or that is implementation specific 02:49:01 -!- araujo [n=araujo@gentoo/developer/araujo] has quit [Read error: 54 (Connection reset by peer)] 02:49:03 well (symbol-function '(setf car)) doesn't work, lisp is not a symbol 02:49:05 I don't understand. 02:49:07 list* 02:49:25 Ah, nevermind... It was me who did not understand 02:49:28 thanks much 02:49:28 (fdefinition '(setf mycar)) 02:49:34 -!- p0a [n=user@athedsl-381559.home.otenet.gr] has quit ["bye"] 02:50:08 for standard places, it's unspecified how they are implemented. It could be something specific setf does, it could be a setf-expander or it could be a (setf car) or yet something else. 02:50:22 DarkRavin [n=thedarkr@adsl-4-43-193.bhm.bellsouth.net] has joined #lisp 02:50:39 -!- DarkRavin [n=thedarkr@adsl-4-43-193.bhm.bellsouth.net] has quit [Client Quit] 02:50:41 -!- Phoodus [i=foo@ip68-231-38-131.ph.ph.cox.net] has quit [Read error: 60 (Operation timed out)] 02:51:46 hmm... is updating slime (right now) safe? 02:56:18 -!- legumbre_ [n=user@r190-135-45-59.dialup.adsl.anteldata.net.uy] has quit [Read error: 60 (Operation timed out)] 02:56:39 araujo [n=araujo@gentoo/developer/araujo] has joined #lisp 03:01:22 -!- sykopomp [n=sykopomp@unaffiliated/sykopomp] has quit [Read error: 110 (Connection timed out)] 03:01:47 -!- coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has quit [Remote closed the connection] 03:02:00 p_l: how do you spell assinine? 03:02:45 p0a [n=user@athedsl-381559.home.otenet.gr] has joined #lisp 03:03:06 I'm back because I'm still troubled by this 03:03:08 http://paste.lisp.org/display/81097 03:03:55 -!- mikezor [n=mikael@c-a1e370d5.04-404-7570701.cust.bredbandsbolaget.se] has quit [Read error: 110 (Connection timed out)] 03:04:25 manic12: assinine? No idea 03:04:49 well however it's spelled that's the bug I found in my code 03:05:04 can anyone give me a pointer on how to code a context free grammar in lisp? 03:05:10 I posted an annotation, http://paste.lisp.org/display/81097#1 03:05:12 i am sure there are idioms for that 03:05:31 HET2: cl-ppcre :P 03:05:44 p0a: that'd do the lexer though 03:06:14 i'd like to avoid using cl-yacc 03:07:45 You could define a function that mapcars itself on a list and replaces the cars with their expanded version or themselves if they can't be expanded 03:08:47 erm i know 03:08:53 but how do i produce said list 03:09:27 only in the rarest cases can you reduce all your elements to terminals 03:09:42 well you have to write a predicate expandablep and an expander. You can save definitions in some data structure. How is someone going to provide the CFG definitions? 03:10:12 err, never mind 03:10:51 p0a: what's troubling you? 03:11:03 pjb: this code gives me a warning which says that I can't setf nil 03:11:17 (setf nil ...) The warning becomes an error if I try to use a 03:12:07 -!- athos [n=philipp@92.250.250.68] has quit ["leaving"] 03:12:14 -!- anfairch` [n=user@c-24-16-32-126.hsd1.wa.comcast.net] has quit [Remote closed the connection] 03:12:27 HET2: sorry I don't think I know what you mean. I thought everything is expanded until everything is a terminal 03:13:11 p0a: I don't see anything wrong with what you pasted. 03:13:21 moocow [n=new@mail.fredcanhelp.com] has joined #lisp 03:14:17 HET2: a context free grammar is a quadruple. You could represent it by a list of four elements: a set of terminals, a set of non-terminals, a set of productions, and a start symbol which is an element of the set of non-terminals. 03:14:28 HET2: you could represent these sets as lists of elements. 03:14:28 derekv [i=w8ur3fif@c-76-112-240-178.hsd1.mi.comcast.net] has joined #lisp 03:15:34 HET2: the productions are made of a left-hand-side and a right-hand-side; for a context-free grammar, the lhs must be a single non-terminal ; the rhs may be any sequence of terminals or non-terminals. 03:17:09 dnm_ [n=dnm@78.sub-75-193-97.myvzw.com] has joined #lisp 03:17:31 So you can easily represent a context free grammar such as ((integer + - * / |(| |)| ) (expression factor term) ((expression factor * expression) (expression factor / expression) (factor term + factor) (factor term - factor) (term integer) (term |(| expression |)|)) expression). 03:17:52 HET2: doesn't taht work for you? http://paste.lisp.org/display/81098 03:17:55 of course, you may also use structures or classes to represent grammars. 03:18:27 HET2: A expands to B C, B to C, and C doesn't expand to anything by default. 03:19:01 saikat_ [n=saikat@72-254-85-78.client.stsn.net] has joined #lisp 03:19:35 and you could use ASSOC instead of FIND now that I think of it. 03:19:53 -!- dto` [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has quit [Read error: 110 (Connection timed out)] 03:20:25 p0a: thanks for your effort 03:20:43 p0a: but my "problem" is that i am not trying to parse s-expressions 03:20:53 -!- saikat_ [n=saikat@72-254-85-78.client.stsn.net] has quit [Client Quit] 03:21:55 HET2: yes, you want to "code" a context free grammar. 03:22:26 I'm not sure what "coding" a grammar may mean, but it's certainly not parsing (or you would have used the verb to parse, I'd guess). 03:23:40 pjb: i also said "never mind" :) 03:24:07 as you wish. 03:24:52 thanks though 03:25:11 LL(1) 03:25:29 mcspiff [n=user@hlfxns01bbg-142068078172.dhcp-dynamic.ns.aliant.net] has joined #lisp 03:25:35 HET2: I don't understand your problem explain to me why this is not what you're looking for 03:27:01 p0a: i am afraid i will have to think more about my problem to be able to ask a meaningful question 03:27:52 HET2: per chance, do you want to _parse_ a string according to some context-free grammar? 03:27:52 -!- moocow [n=new@mail.fredcanhelp.com] has quit [Remote closed the connection] 03:29:07 pjb: ultimately, yes 03:29:39 If you can find a grammar for your language that is in the LL(1) form, then you can easily write a recursive-decent parser. 03:30:12 err i know 03:30:47 I'm reading more about CFG and I realized it's more than what I've originally thought it was. so I can now see why my code is not sufficient 03:30:53 In this case, it's easy to implement a parser without using something like cl-yacc. 03:31:30 legumbre [n=user@r190-135-36-20.dialup.adsl.anteldata.net.uy] has joined #lisp 03:32:12 I think P Norvig has written a CFG at the first chapter of his book PAIP. He wrote an utility that generates semantically valid english sentences with CFG syntax 03:32:47 paip? 03:32:53 minion: PAIP? 03:32:54 PAIP: Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp by Peter Norvig. http://www.cliki.net/PAIP 03:33:01 thanks 03:35:48 pjb: i kind of like your quadruple approach 03:36:33 it's not an approach it's a definition 03:37:23 illuminati1113 [n=user@pool-71-114-64-62.washdc.dsl-w.verizon.net] has joined #lisp 03:37:49 p0a: his advice to represent the sets of the quadruple as lists is an approach 03:39:21 Sorry I thought you were referring to "cfg is 4-tuple" 03:39:22 HET2: then you define some function to abstract it away: (defstruct (grammar (:type list)) terminals non-terminals productions start-symbol) (defstruct (production (:type list)) lhs rhs) 03:39:32 I have to go, bye 03:39:34 -!- p0a [n=user@athedsl-381559.home.otenet.gr] has quit ["bye"] 03:40:16 -!- amblerc [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has quit [Read error: 110 (Connection timed out)] 03:40:24 pjb: yeah 03:40:34 (make-grammar :terminals '(integer + - * / \( \) ) ... :productions (list (make-production :lhs 'expression :rhs '(factor * expression)) ...)) 03:40:36 i also like tha paip book - i need to obtain a hardcopy of that 03:41:52 HET2: to learn everything about grammars and parsing the indicated book is the Dragon Book. 03:41:52 vmCodes [n=vmCodes@c-76-121-83-217.hsd1.wa.comcast.net] has joined #lisp 03:42:49 minion: CPTT? 03:42:50 CPTT: is the Dragon Book "Compiler Principles Techniques and Tools", Aho et al. http://dragonbook.stanford.edu/ 03:43:28 pjb: i believe i own that 03:47:58 so what's the most commonly used compiler? 03:48:03 anfairch` [n=user@c-24-16-32-126.hsd1.wa.comcast.net] has joined #lisp 03:48:23 Ralith: hard to say. I use almost all of them, depending on the circumstances. 03:48:26 O.o 03:48:28 why? 03:48:44 Ralith: so you've already completed your application? You're ready to deploy? 03:49:05 What kind of application is it? 03:49:37 no, I'm toying around with the idea of learning common lisp, and am little bit intimidated by the massive variety of compilers, each apparently with their own additional language features supported 03:50:16 No, as far as language features are concerned, they pretty all implement exactly the same language, as specified by the ANSI standard. 03:50:19 Ralith: they all support common lisp. 03:50:22 -!- xinming_ is now known as xinming 03:50:36 ok, that's good to hear. 03:50:41 There are some specific libraries or API, but generally you can find portability libraries to paper over these differences. 03:50:54 I'm hoping to find a good place to start, environment-wise. I've already got SBCL and GNU clisp on my system. 03:50:57 (eg for threads, you'd use bordeaux-threads instead of the the implementation specific API). 03:51:06 Ralith: I recommend sticking up with SBCL for now 03:51:08 That's my two favorites. 03:51:20 I find I get better debugging informations with clisp. 03:51:35 eventually CCL on win32/win64/ppc/Mac 03:52:00 good debug info is good, I suppose 03:52:13 *Ralith* sets up slime 03:52:31 Ralith: on the other hand, slime+sbcl is a common setup. 03:52:55 well, it's a one line config file tweak, so I won't sweat it. 03:53:09 You'll probably have less problems with SBCL than with clisp 03:53:10 while we're at it, any tips on a good place to start learning? Perhaps a parallel to real world haskell? 03:53:35 http://www.cliki.net/Education 03:53:42 darkwolfzx [n=kvirc@149.171.235.4] has joined #lisp 03:53:45 kk 03:53:47 Ralith: have you gone through PCL already? 03:53:50 -!- darkwolfzx [n=kvirc@149.171.235.4] has left #lisp 03:54:05 p_l: not unless I managed to miss the bit where that acronym was defined. 03:54:33 minion: pcl? 03:54:34 pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005). 03:54:50 Ralith: perhaps some pattern emerges? 03:54:53 that sounds like a RWH-parallel to me. 03:54:56 pjb: huh? 03:55:32 minion is a bot who knows a lot about lisp... 03:55:47 yes, I can see that. 03:56:24 jlf`` [n=user@209.204.171.101] has joined #lisp 03:59:29 mattrepl [n=mattrepl@208-45-247-237.dia.static.qwest.net] has joined #lisp 03:59:36 p_l: this book looks pretty nice, thanks :) 04:05:05 *p_l* notices that AllegroCL apparently supports quite a lot of C++ in its FFI 04:05:50 ooh, cool! 04:06:18 Ralith: it's cool when you have money for it :P 04:06:23 ...awwww. 04:07:12 *p_l* found that yes, he can access Allegro CL in university. But he can't find the classrooms from which you can access the servers on which acl is installed 04:08:36 sykopomp [n=sykopomp@unaffiliated/sykopomp] has joined #lisp 04:09:02 DarkRavin [n=thedarkr@adsl-4-43-193.bhm.bellsouth.net] has joined #lisp 04:09:21 -!- DarkRavin [n=thedarkr@adsl-4-43-193.bhm.bellsouth.net] has quit [Read error: 104 (Connection reset by peer)] 04:13:28 -!- jlf` [n=user@unaffiliated/jlf] has quit [Read error: 110 (Connection timed out)] 04:14:50 p_l, I'm surprised you're just now finding that out 04:18:34 manic12: about ACL being available at university, or about ACL's FFI having very good support for C++? 04:18:40 -!- anfairch` [n=user@c-24-16-32-126.hsd1.wa.comcast.net] has quit [Read error: 110 (Connection timed out)] 04:18:44 c++ 04:19:23 well, I already knew that it was pretty good - this comment was called by me seeing notes concerning support for template classes 04:19:41 i'm sure half the people here are sick of me yappering away about allegro, swig, and C++ 04:19:49 :) 04:20:16 Well, Allegro is outside my financial means, so I haven't really checked it out 04:23:11 -!- vmCodes [n=vmCodes@c-76-121-83-217.hsd1.wa.comcast.net] has left #lisp 04:25:21 DarkRavin [n=thedarkr@adsl-4-43-193.bhm.bellsouth.net] has joined #lisp 04:25:35 -!- DarkRavin [n=thedarkr@adsl-4-43-193.bhm.bellsouth.net] has quit [Read error: 104 (Connection reset by peer)] 04:26:25 plage [n=user@83.224.64.17] has joined #lisp 04:26:29 Good morning 04:27:23 -!- Jasko2 [n=tjasko@c-98-235-105-148.hsd1.pa.comcast.net] has quit [Read error: 60 (Operation timed out)] 04:38:47 -!- jthing [n=jthing@212.251.244.254] has left #lisp 04:39:57 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 04:40:42 Phoodus [i=foo@ip68-231-38-131.ph.ph.cox.net] has joined #lisp 04:40:49 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [] 04:41:06 pjb: re the pipes, thanks for the response 04:41:13 We're wanting to be crossplatform, so windows IPC isn't appropriate 04:41:29 The writer is blocking on sending just a few dozen bytes 04:41:36 the Erlang writer that is 04:42:24 just didn't know if there were any gotchas hitting our simple use case, especially in missing setting some stream configuration or something, but like you said it should work as is 04:45:23 _stern_ [n=seelenqu@pD9E453E6.dip.t-dialin.net] has joined #lisp 04:47:48 -!- mattrepl [n=mattrepl@208-45-247-237.dia.static.qwest.net] has quit [] 04:50:06 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 04:50:24 -!- bruceb3 [n=user@136.187.233.220.exetel.com.au] has quit [Read error: 104 (Connection reset by peer)] 04:50:35 bruceb3 [n=user@136.187.233.220.exetel.com.au] has joined #lisp 04:50:41 -!- bruceb3 [n=user@136.187.233.220.exetel.com.au] has quit [Remote closed the connection] 04:53:14 Phoodus: wouldn't IPC over tcp socket be better then? 04:54:29 we want something simple :-P 04:54:42 just reading & writing stdio seems to be the easiest option 04:54:51 and Erlang is set up to launch things like that 04:55:21 I managed somehow in the last version not to deal with this, but I need to check to see if a form is complete (as in for "read") but I need to turn off side-effects (reader macros) etc while i do it, anybody remember how? 04:59:12 if I set *read-eval* to nil it gets mad when it encounters a reader macro 04:59:22 but i think that is what I'm looking for 05:01:06 read-suppress looks interesting too 05:02:56 -!- |stern| [n=seelenqu@pD9E4434B.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 05:07:30 ltriant [n=ltriant@202.136.38.162] has joined #lisp 05:08:47 coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has joined #lisp 05:10:30 asm` [n=asm@70-58-17-248.hlrn.qwest.net] has joined #lisp 05:14:40 Vicfred [n=Vicfred@189.143.104.249] has joined #lisp 05:16:14 -!- sykopomp [n=sykopomp@unaffiliated/sykopomp] has quit [Read error: 60 (Operation timed out)] 05:17:09 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 05:22:41 -!- dnm_ [n=dnm@78.sub-75-193-97.myvzw.com] has quit [Read error: 60 (Operation timed out)] 05:25:02 dnm_ [n=dnm@14.sub-75-197-61.myvzw.com] has joined #lisp 05:28:24 The-Kenny [n=moritz@p5087A33A.dip.t-dialin.net] has joined #lisp 05:32:10 -!- fisxoj [n=fisxoj@ool-45767be8.dyn.optonline.net] has quit ["Ex-Chat"] 05:34:35 The-Kenn1 [n=moritz@p5087A33A.dip.t-dialin.net] has joined #lisp 05:38:42 -!- The-Kenny [n=moritz@p5087A33A.dip.t-dialin.net] has quit [Read error: 60 (Operation timed out)] 05:42:24 -!- A_anekos is now known as anekos 05:42:25 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 05:51:39 -!- npoektop [n=user@85.202.112.90] has quit [Read error: 110 (Connection timed out)] 05:52:09 xinming_ [n=hyy@125.109.242.64] has joined #lisp 05:53:25 -!- The-Kenn1 [n=moritz@p5087A33A.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 05:54:11 ocnzhao [n=hgsghrnj@122.159.58.200] has joined #lisp 05:56:56 -!- Vicfred [n=Vicfred@189.143.104.249] has quit [Read error: 54 (Connection reset by peer)] 05:57:04 -!- dnm_ [n=dnm@14.sub-75-197-61.myvzw.com] has quit [Client Quit] 05:59:11 -!- mcspiff [n=user@hlfxns01bbg-142068078172.dhcp-dynamic.ns.aliant.net] has quit [Read error: 110 (Connection timed out)] 06:02:56 antgree1 [n=Anthony@CPE0014bf0b631a-CM001e6b1858fa.cpe.net.cable.rogers.com] has joined #lisp 06:04:03 BrianRice [n=water@c-98-225-51-246.hsd1.wa.comcast.net] has joined #lisp 06:06:08 antgreen [n=Anthony@CPE0014bf0b631a-CM001e6b1858fa.cpe.net.cable.rogers.com] has joined #lisp 06:09:30 -!- xinming [n=hyy@125.109.246.50] has quit [Read error: 110 (Connection timed out)] 06:13:27 dys` [n=andreas@p5B31605A.dip.t-dialin.net] has joined #lisp 06:15:04 -!- ocnzhao [n=hgsghrnj@122.159.58.200] has left #lisp 06:19:25 -!- dys [n=andreas@p5B3144E6.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 06:23:08 -!- antgree1 [n=Anthony@CPE0014bf0b631a-CM001e6b1858fa.cpe.net.cable.rogers.com] has quit [Read error: 110 (Connection timed out)] 06:25:12 -!- coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has quit [Remote closed the connection] 06:28:01 I'm working through Practical Common Lisp, and the debugger buffer popped up by my system slime when I call an undefined function only gives me the 'ABORT' option rather than the numerous options such as 'TRY-AGAIN,' 'RETURN-VALUE,' 'USE-VALUE,' and others that PCL lists from the slime install in the lispbox environment it recommends. 06:29:29 Ralith: different lisp systems give different restarts. Also, you might have triggered a different response than the one in PCL 06:30:34 hard to do things differently when you're just evaling (some-undefined-func) 06:30:58 oh well. those looked useful :/ 06:31:14 hmmm... typing (unknown-func) into REPL gives me three restarts 06:31:24 I'm using SBCL as you suggested 06:31:36 RETRY, ABORT, TERMINATE-THREAD <--- that's what I get 06:31:44 Vicfred [n=Vicfred@189.143.104.249] has joined #lisp 06:33:14 not here. 06:33:22 SBCL 1.0.25 06:33:30 how is your slime configured? Are you using slime-repl? 06:33:41 slime-repl? 06:33:57 I'm just using whatever the default setup is from the package I installed 06:34:30 Ralith: this being? Lisp in a Box? 06:34:39 no, a standard emacs install plus slime. 06:35:04 how is your slime configured? Just (slime-setup) or something fancier (pun intended) 06:35:39 -!- anekos is now known as A_anekos 06:35:41 gemelen [n=shelta@shpd-78-36-164-133.static.vologda.ru] has joined #lisp 06:36:01 the former 06:36:25 alright, then you have your slime sligthly misconfigured (especially for someone just starting) 06:36:45 no config is misconfig? 06:36:52 okay then. 06:37:07 so, what's notmisconfig? 06:37:07 you should have at least (slime-setup ('slime-fancy)) 06:37:12 oo, fancy 06:37:17 that explains the pun 06:37:24 yeah :D 06:37:53 Invalid function: (quote slime-fancy) 06:38:03 sorry, '(slime-fancy) 06:38:05 typo 06:38:33 ah, that prompt is already more promising. 06:38:44 yep, got all three restarts now 06:39:02 still, shame I don't have all those others. 06:39:44 p_l pasted "My SLIME config" at http://paste.lisp.org/display/81103 06:40:12 schme [n=marcus@c83-249-82-162.bredband.comhem.se] has joined #lisp 06:41:57 Vichfret [n=Vicfred@189.143.101.132] has joined #lisp 06:42:08 ty for the paste 06:42:11 -!- Vicfred [n=Vicfred@189.143.104.249] has quit [Read error: 104 (Connection reset by peer)] 06:42:19 ejs1 [n=eugen@242-29-178-94.pool.ukrtel.net] has joined #lisp 06:45:55 leon [n=leon@157.159.c10008-a77.dsl-dynamic.vsi.ru] has joined #lisp 06:46:41 -!- leon [n=leon@157.159.c10008-a77.dsl-dynamic.vsi.ru] has quit [Client Quit] 06:49:18 vy [n=user@88.231.234.194] has joined #lisp 06:49:30 -!- plage [n=user@83.224.64.17] has left #lisp 06:49:51 dmitry_vk [n=dmitry_v@89.232.126.96] has joined #lisp 06:50:02 -!- dmitry_vk [n=dmitry_v@89.232.126.96] has left #lisp 06:50:30 Hrmm. I'm so close to a nice elegant solution... 06:51:01 MrSpec [n=NoOne@82.177.125.6] has joined #lisp 06:51:16 hello 06:51:55 I'm using loop with collecting in a recursive function. Now have it working perfectly, save the result is a list of lists (not surprisingly). So, for example, (((no yes) (no) yes no (no (yes no)))). 06:52:23 What I want is to either collect that as (no yes no yes no no yes no), or convert the existing list to that. Anyone? 06:54:14 aja: I cannot comment without seeing the actual code. OTOH, you can implement your own FLATTEN-LIST function. 06:55:41 vy: Yeah, I have one around here somewhere. Was hoping that LOOP had some sort of mapcan version of collecting. 06:56:03 aja: It does, see NCONC driective. 06:56:31 vy: See -- there you go. Gives me a place to look. 06:57:32 Heh. Should have just tried it. Sigh. gigamonkey's book to the rescue. Yet again. 06:57:42 vy: Thanks. That's what I needed. 07:00:01 g'day #lisp 07:02:18 schme: good day 07:04:03 -!- illuminati1113 [n=user@pool-71-114-64-62.washdc.dsl-w.verizon.net] has quit [Remote closed the connection] 07:07:14 *schme* is back to trying to get sbcl to cooperate with jack. 07:07:16 the pain 07:23:20 spradnyesh [n=pradyus@117.192.5.141] has joined #lisp 07:23:26 -!- spradnyesh [n=pradyus@117.192.5.141] has left #lisp 07:24:57 lhz [n=shrekz@c-b9aa72d5.021-158-73746f34.cust.bredbandsbolaget.se] has joined #lisp 07:26:45 -!- sohail [n=Sohail@unaffiliated/sohail] has quit [Read error: 60 (Operation timed out)] 07:37:02 Jarvellis [n=jarv@dsl-217-155-101-22.zen.co.uk] has joined #lisp 07:37:25 -!- gemelen [n=shelta@shpd-78-36-164-133.static.vologda.ru] has quit [Read error: 145 (Connection timed out)] 07:38:19 plage [n=user@83.224.64.17] has joined #lisp 07:39:24 hello schme 07:39:28 what's up? 07:43:16 sbcl and jack is up 07:44:13 apparently I don't know jack 07:46:00 eheheh (: 07:47:56 asm- [n=asm@70-58-20-107.hlrn.qwest.net] has joined #lisp 07:49:25 -!- asm- [n=asm@70-58-20-107.hlrn.qwest.net] has left #lisp 07:53:57 dalton [n=lhugbj@189-19-118-119.dsl.telesp.net.br] has joined #lisp 07:54:14 -!- ejs1 [n=eugen@242-29-178-94.pool.ukrtel.net] has quit ["This computer has gone to sleep"] 07:57:01 schme: is the jack callback a lisp function ? 08:01:57 Tahoma italic would look good if I could figure out how to antialias the bitmap glyphs 08:02:46 -!- asm` [n=asm@70-58-17-248.hlrn.qwest.net] has quit [Read error: 110 (Connection timed out)] 08:03:00 <_3b> either draw them with alpha, or draw them big and resample? 08:04:39 *manic12* is looking for the path of least resistance 08:04:55 <_3b> how do you draw them now? 08:05:55 I build them with wglUseFontBitmaps, but I think I have a kwd arg to switch to use filled font outlines 08:06:33 that sounds unportable 08:06:38 I suggest freetype 08:07:26 I'll cross the portability bridge when i have a good enough reason 08:07:34 like $$ 08:07:36 portability encourages good design 08:07:46 not necessarily 08:07:49 and, if you're doing commercial work, can be an incredible PR boon. 08:08:45 tcr [n=tcr@host145.natpool.mwn.de] has joined #lisp 08:08:51 besides, when all is said and done, freetype does beautiful font rendering. 08:09:02 Sikander [n=soemraws@ip98-185-236-17.sb.sd.cox.net] has joined #lisp 08:09:29 there was some lib to render TTF fonts using freetype directly to openGL 08:10:15 -!- Vichfret [n=Vicfred@189.143.101.132] has quit [Connection timed out] 08:10:17 I'm wanting to get this font called Pragmata, but the designer wants an arm and a leg 08:11:21 Ralith: It does? 08:11:30 plage: it does! 08:11:57 manic12: Or just use terminus for fre ... 08:12:01 *free 08:12:15 Ralith: Glad to hear that. 08:12:21 ? 08:13:06 p_l: did you mean ftgl? 08:13:14 Sikander: probably 08:13:28 I just had a look on freshmeat; there seem to be multiple 08:14:14 you know, portability is fine and dandy and all, but I would have basically nothing done if I had to be portable at this point 08:15:07 Aankhen`` [n=heysquid@122.163.100.126] has joined #lisp 08:17:07 manic12: then you must be exercising an incredible amount of effort towards avoiding portability O.o 08:17:27 unless you're writing a driver or something 08:17:37 which seems unlikely, given that this is #lisp and that you're using GL 08:19:03 "I'm going to write crappy code until someone pays me to do otherwise!" "Well, that sure encourages me to get out my checkbook ..." 08:19:18 there are so many things that tie me to this platform right now that I'm just not going to worry about it until the demo is done 08:19:39 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [Remote closed the connection] 08:19:47 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 08:19:47 aja, non-portable code /= crappy code 08:20:12 and yet, the two seem to intersect very reliably. 08:20:31 give some examples 08:20:34 <_3b> yeah, because we all know reusing existing libs = crappy code, right? 08:21:19 if by 'existing libs' you mean 'the OS-provided functions,' ok 08:22:02 i'm not going to spend all my f*#$ing time getting the swig module for cffi going just to try out this solid modeler 08:22:29 solid modeler? 08:24:01 you think that because I'm calling microsoft functions i must be writing shitty code 08:24:41 no, I think because you're not bothering to use a standard, portable mechanism that there is evidence to support the idea that you may not be paying much attention to good practice. 08:25:05 there are no standard portable mechanisms for this crap yet 08:25:13 oops i called it crap 08:25:15 what crap is 'this crap'? 08:25:23 or not-crap, as the case may be 08:25:23 COM 08:25:24 if it doesn't make sense to make the app portable, and you have all the tools you need on the required platform, why write portable code? 08:25:28 is an example 08:25:51 Ralith: Or maybe because getting it delivered first on a platform that his customer might want is more important than pie-in-the-sky. Plus having specialized functions for platforms pays 08:25:55 Sikander: only in very few cases does that not make sense. 08:25:56 why should I write portable COM code?? 08:26:26 Well, I do recall some COM support in linux... :P 08:26:26 p_l: that's a case of sacrificing good practice for profit. It's not necessarily a dumb thing to do, but that's still what it is. 08:26:42 should I port autodesk's & dassault's products to linux while I am not busy? 08:26:47 I don't know what manic12 is working on, though... so I better stay out of this discussion :) 08:27:08 I was trying to find out, but it didn't go anywhere 08:27:19 so I suppose it's a bit abstract anyway 08:27:31 -!- pstickne [n=pstickne@c-24-21-76-57.hsd1.wa.comcast.net] has quit [Read error: 110 (Connection timed out)] 08:27:41 I just made a possibly tenuous analogy, and it got all weird. Now I feel dirty... 08:27:49 all my stuff is specific to the Allegro x64 platform 08:28:06 so what? 08:28:30 when I get some money to port it to something else I will just port it to a lisp os 08:29:00 manic12: You are exhibiting a rather surprising degree of defensiveness about this, despite considerable evidence that no-one else cares all that much. Perhaps you should examine your own feeling about this issue more closely. 08:29:17 Ralith: actually, best practice wrt portability is not necessarily writing for "standards" 08:29:19 linux is a joke anyway, if I have to use unix then I have a freebsd server that I only reboot twice a year 08:29:56 aja: I was told that my code is crap 08:29:58 p_l: sure, but it certainly advises against using OS-specific stuff when there's no reason to. 08:30:04 manic12: nobody said any such thing. 08:30:16 Ralith: Except that this area is certainly one where it pays off 08:30:26 p_l: I still don't know what area this area is. 08:30:44 aja eluded to it 08:30:57 Ralith: if there's no reason to use OS-specific stuff unless it makes your job easier *at this moment* and other platforms are not targeted now, what's the harm? 08:31:29 Ralith, if it matters it's solid modeling and knowledge based engineering stuff 08:31:32 manic12: No. You were exposed to an analogy, intended to point out that one of your statements implied a belief that was questionable. The adjective in question was chosen to illustrate the disconnect clearly. Perhaps you misinterpreted it. 08:31:34 Sikander: long-term maintainability and even future porting efforts, presumably 08:31:35 Ralith: 3D graphics 08:32:08 Ralith: Actually, for long term maintainability on Win32/64, he should have dropped OpenGL altogether 08:32:11 windows x64 is ubiquitous enough at this point for me to target that 08:32:13 p_l: although I'm not entirely familiar with lisp's issues in that context, my own experience dictates that it's quite practical to do 3D graphics portably. 08:32:19 p_l: debatable. 08:32:33 Ralith: OpenGL is supported only through emulation in NT6.x 08:32:48 emulation or various weird tricks 08:32:53 unless you've got hardware, which it's pretty safe to assume everyone does. 08:32:53 <_3b> OpenGL isn't even supported properly in XP :/ 08:33:10 <_3b> unless it is intel hardware, which covers a large part of some markets 08:33:22 <_3b> in which case you get almost unuseable GL drivcers 08:33:31 almost unusable? 08:33:38 unless you're talking about intel, that's not quite the case. 08:33:40 Ralith: NT6.x by default works in 3D accelerated mode - that is, your OpenGL context doesn't have place to run, because the hardware is already running a Direct3D pipeline 08:33:41 the nvidia driver works fine for me 08:33:53 <_3b> Ralith: right, intel 08:34:07 p_l: hm, I see your point. 08:34:51 Ralith: Also, NT6.x dropped "directly draw to graphic memory" model of GDI and switched to something closer to X11 crossed with NeWS 08:34:52 that's just a bit evil. 08:36:08 Ralith: Seems less broken than what freedesktop.org tries to make out of X11 08:36:53 well, at least they're *trying* to fix the OGL-context-in-composited-environment issue. 08:37:42 Ralith: Xft2 is a not so recent, but beautiful example, of how fucked up X world became 08:37:53 X has always been fucked up :P 08:38:04 and has improved quite a bit of late as a whole. 08:38:46 -!- ejs [n=eugen@242-29-178-94.pool.ukrtel.net] has quit [Read error: 110 (Connection timed out)] 08:40:15 Ralith: just to be fucked up more 08:40:21 huh? 08:40:34 though it's more of implementation issue than design 08:40:53 it's modular, more reliable, can autoconfig successfully on many platforms, has better handling of input... 08:41:09 xrandr is pretty nice these days too 08:41:12 ... DON'T... MENTION... X.ORG... INPUT HANDLING... TO ME.... 08:41:25 Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has joined #lisp 08:41:38 I said it's *better*, not good :P 08:41:59 Ralith: in my case it went to worse 08:41:59 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 08:42:18 how so? 08:42:36 What once was good, monolithic, *predictable* system became something that fails suddenly 08:42:48 and is intertwined with other stuff 08:44:06 Basically, X.Org since 1.5, if compiled for Linux (and afaik it has problems supporting much outside linux ever since move to autotools), will decide that you don't have any input devices if you don't have fuckton of crap running on your system 08:44:44 -!- dv_ [n=dv@85-127-114-96.dynamic.xdsl-line.inode.at] has quit ["Verlassend"] 08:44:48 how is it possible for to maintain portability in new applications with only one developer and a limited amount of time? 08:45:41 I hate the way it handles input now, through hal 08:46:17 I used to be able to put ctrl:swapcaps but now that won't work any more if I unplug and replug a keyboard in my laptop 08:46:21 Sikander: Then imagine restarting X after upgrade to "stable" release and suddenly finding that you have NO INPUT at all 08:46:38 p_l: that's... not good... 08:46:52 Sikander: Yeah. And it was laptop and I didn't have anything to ssh into it 08:47:02 d'oh! 08:47:50 Well, they're messing around too much with X 08:47:54 thanks Quux I had links installed and my "ISP" didn't want me to relogin into my account (which doesn't work in links) 08:48:34 The good thing about X, though, is running remote X apps. 08:48:43 IMO works better than VNC 08:48:48 lhz: I would *like* the jack callbacks to be lisp functions, but that seems impossible. 08:49:43 *manic12* is trying to "let it go" 08:50:42 It would be even better if they standardize some GUI protocol so that the host and client only exchange, say, a wxglade xml file, so that the gui drawing is handled locally 08:51:30 Sikander: NeWS and NextSTEP did something like that (except NextSTEP didn't use client-server model, afaik) 08:51:33 someone here once told a noob that (eval `(defclass is the right way to define dynamic classes because mop "isn't portable" 08:51:43 p_l: I know, that was great 08:51:45 manic12: ... WTF? 08:52:19 i know I should just let it go 08:52:43 I mean, I'm basically a noob, but ... but because of sitting here, I learned that calling eval is something you *really* don't want. And that MOP is great 08:53:13 but the whole argument that portability = good and platform specific = bad has no logic behind it at all 08:53:18 Sikander: You might be interested in Octopus, they did some network-gui-toolkit 08:53:30 -!- ltriant [n=ltriant@202.136.38.162] has quit ["Get MacIrssi - http://www.sysctl.co.uk/projects/macirssi/"] 08:53:40 Sikander: And you can actually drive it from lisp, using Octopus as terminal 08:53:50 manic12: that's what most people call a straw man argument :P 08:53:58 p_l: woo, sounds good, I'll have a look. Thanks 08:54:42 Ralith: why do they call it that? 08:55:07 Sikander: It runs on Inferno, an embedded system based on Plan9 concepts, with all code being managed. It's very small, lean and portable (well, embedded stuff - it had to be), and thus supports 9p2000 for IPC 08:55:12 *RPC 08:55:17 manic12: because it is presenting a flawed argument as if it is the other parties' position when that is not the case, then pointing out the flaws in said argument. 08:55:49 Davidbrcz [n=david@nsc.ciup.fr] has joined #lisp 08:56:17 Ralith: did I miss something? 08:56:41 manic12: yes. Every single time I or someone else stated that portability is often but not always a desirable goal. 08:57:26 for that matter, anything can be taken to excessive extremes even outside of special cases. 08:58:34 although, come to think of it, one could argue that the logical maximum extent of portability is writing a document clearly describing the design and function of a program is the absolute most portable form, and that's nearly the same thing as saying "you should document your code." 08:58:43 Is USOCKET broken again? I cannot successfully install SPLIT-SEQUENCE dependency of USOCKET via ASDF. (It's another discussion topic to argue about the necessity of SPLIT-SEQUENCE in USOCKET.) 08:59:03 Ralith: obiously it would be just peachy if this stuff ran on everything, but I am a man of limited resources at the moment and took offense to aja eluding that I was doing something crappy 08:59:09 ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has joined #lisp 08:59:36 manic12: oh, I guess aja did kind of say that. Forgot about that :x 08:59:56 <3 /lastlog 09:00:16 I've been programming straight since february and I'm not even 1/4 done with this demo which I need to have done at the latest by december 09:00:28 what *is* it, anyway? 09:00:36 manic12: IMO you should just use the right tools for the right job. If that means not cross-platform, no problems there. 09:00:37 hell of a project for a demo. 09:01:14 I'm behind schedule, I feel like shit from working too much and somebody tells me I'm not fucking contributing to their fucking plan 09:01:29 manic12: What's the project? 09:01:29 -!- Sikander [n=soemraws@ip98-185-236-17.sb.sd.cox.net] has quit [Read error: 104 (Connection reset by peer)] 09:01:42 Sikander [n=soemraws@ip98-185-236-17.sb.sd.cox.net] has joined #lisp 09:01:52 I have taken the solid modeler SMLib and swigged it into Allegro 09:02:10 I have written an opengl lisp listener 09:02:30 I have a collection of com tools for interfacing with other CAD systems 09:02:54 and I have written a kbe engine, which I am getting read to write the geometric primitves for 09:03:31 what I am writing now is just the test harness 09:03:57 I'm waiting on izware to send me a 64 bit Mirai to deploy it as a plugin 09:04:49 jmbr [n=jmbr@229.32.220.87.dynamic.jazztel.es] has joined #lisp 09:05:00 and I am no longer manic, I am actually more distraught from all the bugs 09:05:53 manic12: In your own code or in that of others? 09:06:03 people with the checkbooks in this case do not know and do not care that i am using wgl 09:06:13 in my own code mostly 09:06:47 because the people with the checkbooks are mechanical engineers and not software engineers 09:07:26 manic12: beware the ones with compilers... 09:07:57 though I'm pretty sure AutoLISP still is a major selling point for many older die-hards in CAD 09:08:02 p_l: you lost me 09:08:23 manic12: mechanical engineers wanting to run code on your system :) 09:08:37 it gets delivered with the compiler 09:08:44 nice 09:08:53 it's a KBE system 09:08:57 p_l: You're correct about the autolisp. 09:08:59 that's the whole point 09:09:38 schme: you know, I might actually have a small, unpaid job (for family) writing some AutoLISP code 09:10:14 p_l: Having worked with autocad + the autolisp for some years I can safely say "you poor thing" (: 09:10:17 even though common lisp is orders of magnitude better than autolisp, the name "lisp" in mechanical engineering should lend some credance to this concept 09:10:45 p_l: don't write in autolisp!! 09:10:55 use Allegro and COM to talk to autocad 09:11:00 comparing autolisp to common lisp is, in my eyes anyway, much like comparing bash scripting to uuh.. any "real" programming language (: 09:11:11 schme: Well, I might just as well code it in Common Lisp. As long as it will allow for AutoCAD <-> ANSYS conversion 09:11:27 as latest ANSYS dropped AutoCAD import/export 09:11:51 p_l: what is this whole project all about exactly 09:11:53 though I might as well make my father learn one of the supported CADs 09:11:53 hmmm.. no idea there. 09:12:00 (: 09:12:44 i got ragged on last week by a honda engineer for not having meshing code yet 09:13:04 manic12: my father, when it comes to CAD, is a long-time AutoCAD user. He also uses ANSYS (structural modeling/simulation and CFX). Latest ANSYS version dropped import/export support for AutoCAD, leaving afaik CATIA and Unigraphics and some other 09:13:20 Are there any equivalents of SB-EXT:STRING-TO-OCTETS in CCL? 09:13:29 too bad he's not paying 09:14:02 that is something I could bid competatively on 09:15:05 I have a FEM hack of my own btw 09:15:14 -!- benny [n=benny@i577A2846.versanet.de] has quit ["rcirc on GNU Emacs 23.0.93.1"] 09:15:17 it analyzes trusses 09:15:38 manic12: unfortunately, he is basically a one-man shop, so there's no budget for consultants (especially given pay cuts in his main job, new "workstation" and my dorm bills...) 09:16:06 such is life, eh? 09:16:25 I would much rather be writing actual mechanical engineering code 09:16:54 but no one has a system that is worth a crap for a reasonable price 09:17:22 manic12: this may or may not be at all relevant to your interests, but have you ever taken a look at BRL-CAD? 09:17:33 manic12: Well, I might get a paying job with my father if he gets back into research and gets funding 09:17:35 so I'm sitting here working on this hopefully less-sucky version of my GL Lisp listener 09:18:05 not if I get funding first :) 09:18:45 i have heard of it 09:18:54 it's not Lisp is it? 09:19:09 heh. That job would be writing super-parallel code for CFD simulation on GPGPU :) 09:20:44 I don't think BRL CAD supports KBE with the flexibility of common Lisp, but I could be wrong totally 09:21:27 my policy is that if somebody comes up with something that I think is better for the long run I will use it 09:21:51 p_l do you sleep btw? 09:22:11 manic12: sometimes. My sleep schedule got shot to hell 09:22:28 *p_l* pours another cup of coffee 09:22:28 -!- envi^home [n=envi@220.121.234.156] has quit [Read error: 104 (Connection reset by peer)] 09:22:36 i've been sleeping like 5am to noon, it's bad 09:22:50 my usual sleep pattern lately is 0300 -> 1200 09:23:20 *_3b* sleeps from 'whenever i get sleepy' to 'whenever i wake up' 09:23:47 gemelen [n=shelta@shpd-78-36-164-133.static.vologda.ru] has joined #lisp 09:24:26 _3b: luxury 09:24:44 envi^home [n=envi@220.121.234.156] has joined #lisp 09:26:28 it doesn't say what BRL cad is written in 09:27:05 but i don't think they were thinking along the lines of symbolics when they started it 09:27:08 it's written in C with a very weird structure 09:27:29 as in it uses Unix style directly - small apps, scripts etc. 09:27:59 this economy sux 09:28:13 I'm happy that I have time to develop 09:28:27 but there are no prospective customers yet 09:28:55 _3b, I always wake up before I /should/ wake up, even when I have no alarm set. Any advice there? 09:29:21 tic: brick to head? 09:29:30 <_3b> redefine 'should' to wnever you actually do wake up :p (or else go back to sleep) 09:29:34 drugs from dr 09:29:44 p_l, I am not quite sure I'll like the :after-method on that function... 09:29:57 _3b, yeah, 'cept I can't sleep. zombie mode. oh well. 09:30:11 tic: ever tried running yourself down? 09:30:32 p_l, every running yourself down as in hard physical exercise? 09:30:50 tic: keeping yourself awake for few days so that you pass out 09:31:01 *manic12* needs some hard physical exercise 09:31:14 p_l, it's not as much a problem of "not being able to sleep" as "not being able to sleep long enough". 09:31:46 tic: do you take any sleeping drugs? How much coffee? 09:32:09 p_l, nope, and no caffeine after 13. 09:32:53 well, I guess you could try using various kinds of tricks regarding REM sleep or Lucid dreaming, but I'm not sure if it will work 09:34:08 one of them which my friend has tried was to set alarm clock earlier than normal, so that it would wake him up when his in stage 2 sleep, after REM, and another alarm when he *has* to wake up 09:34:39 the first alarm being kind of insurance against having an alarm go off while he was in REM sleepo 09:34:43 *sleep 09:38:35 tic: unfortunately sleep is even less documented than other parts of our system - mother nature got lazy when it came to writing docs 09:38:50 p_l, *nod* 09:39:25 so far, one of the more plausible theories is that REM sleep is our brain running GC... 09:39:34 Yeah, I like that theory. 09:39:53 tic: there's some experimental evidence 09:40:07 Argh. No sleep and heat makes tic a grumpy boy. Time to get my wind machine. 09:40:48 *p_l* has "implement on-line defrag for LTM" in his todo, somewhere after "hook up brain to AI" 09:42:58 p_l: very weird structure? 09:43:09 -!- A_anekos is now known as anekos 09:43:19 -!- pfhaust [n=mike@c-71-227-167-254.hsd1.wa.comcast.net] has quit [] 09:44:21 manic12: BRL-CAD is notable for, among other things, the degree to which it's designed with the Unix philosophy in mind, as p_l says. MOre specifically, this means that it is designed from the ground up with the intention to make it extremely convenient to use various parts of its functionality from any manner of external application. 09:44:49 Ralith: compared to tightly-integrated cads, like AutoCAD that I had seen since I was ... hmm... 5yo? 09:44:49 everything's encapsulated in modular libraries, etc. 09:45:04 p_l: compared to anything. 09:45:15 it's the most Unixy program I've seen, bar shell utilities. 09:45:42 Ralith: have you ever worked with Plan9? It out-unixes unix :) 09:46:01 nah, I tend to stick to at least somewhat well-supported systems. 09:46:12 I don't much enjoy porting every little thing I want to use :P 09:46:24 have played with Haiku some, though; fun looking system. 09:46:30 "unixy" does not necessarily stand for "good" around here 09:47:01 tcr: Didn't mean to suggest that it did, but in this case it makes for a very nice design. 09:47:05 highly reusable. 09:47:34 tcr: Plan 9 got created because of lack of consistency in Unix - hell, it's a world where FFI wouldn't be necessary most of the time! :D 09:47:41 combined with a proven and powerful solid modeling codebase, and licensed BSDish (iirc) it's very unique. 09:47:58 I've never worked with plan9, but really liked the philosophy 09:48:11 that said, the only modeling tools built on top of it kind of suck right now. 09:48:29 Ralith: And someone got the grand idea of introducing C++ 09:48:32 that is, they're very hard to learn. But this is #lisp, so I trust there's room for the benefit of the doubt 09:49:30 -!- mrsolo [n=mrsolo@adsl-68-126-188-239.dsl.pltn13.pacbell.net] has quit [Read error: 60 (Operation timed out)] 09:51:29 manic12: other notable stuff: highly active development, vast array of import/export tools, mature codebase. 09:51:55 Ralith: and being one of the oldest kids on the block, I guess.... 09:52:02 thus mature. 09:52:29 being actively maintained for that long gives lots of opportunities to work things out. 09:53:35 anyway, being designed with development in mind (albet in C), it might be of significant interest. 09:54:04 *Ralith* heads off for the night 09:55:12 -!- AllNight^afk [n=nobody@ai-core.demon.co.uk] has quit [Read error: 113 (No route to host)] 09:57:47 Joreji [n=user@42-104.eduroam.RWTH-Aachen.DE] has joined #lisp 10:00:04 How can I specify in an asdf .asd file that my systems depends on another (e.g. cl-opengl)? 10:01:06 Joreji: Use :depends-on ("cl-opengl") 10:01:22 Ah so easy. Thanks! 10:01:56 Joreji: Eh, yeah, without the "Use" part of course... 10:02:40 Yup. 10:05:47 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #lisp 10:05:52 nego [n=nego@c-67-173-168-255.hsd1.il.comcast.net] has joined #lisp 10:10:03 ehu`: here? 10:10:05 I'm currently looking at some example code from McCLIM; is the interactor pane application-wide, or can you only operate on objects in the frame where the pane is located? 10:11:34 Or is it generally not possible or bad form to use multiple windows (frames) with McCLIM? 10:14:45 -!- ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has quit [Remote closed the connection] 10:14:52 ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has joined #lisp 10:15:09 tcr: herep 10:17:30 -!- Sikander [n=soemraws@ip98-185-236-17.sb.sd.cox.net] has quit ["Leaving"] 10:19:39 -!- dalton [n=lhugbj@189-19-118-119.dsl.telesp.net.br] has quit [Read error: 110 (Connection timed out)] 10:20:41 npoektop [n=user@85.202.112.90] has joined #lisp 10:21:40 trebor_home [n=user@dslb-084-059-019-011.pools.arcor-ip.net] has joined #lisp 10:25:05 -!- Phoodus [i=foo@ip68-231-38-131.ph.ph.cox.net] has quit [Read error: 54 (Connection reset by peer)] 10:27:56 Nshag [i=user@Mix-Orleans-106-1-215.w193-248.abo.wanadoo.fr] has joined #lisp 10:28:07 -!- ia [n=ia@89.169.189.230] has quit [Read error: 110 (Connection timed out)] 10:29:07 ia [n=ia@89.169.189.230] has joined #lisp 10:29:22 hrgh [n=ulf@h-85-24-219-170.NA.cust.bahnhof.se] has joined #lisp 10:31:13 is there some neat way to break out of two nested loops, e.g. (dotimes (i m) (dotimes (j n) (break-out-of-outermost-dotimes)))? 10:32:27 clhs return-from 10:32:27 http://www.lispworks.com/reference/HyperSpec/Body/s_ret_fr.htm 10:34:17 thanks 10:38:28 antoni` [n=user@48.pool85-53-12.dynamic.orange.es] has joined #lisp 10:39:35 athos [n=philipp@92.250.250.68] has joined #lisp 10:40:09 schoppenhauer [n=css@unaffiliated/schoppenhauer] has joined #lisp 10:43:38 -!- echo-area [n=user@nat/yahoo/x-3fdf065e9fae976c] has left #lisp 10:44:57 ignas [n=ignas@ctv-79-132-160-221.vinita.lt] has joined #lisp 10:46:22 ehu`: still here? 10:46:24 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 10:46:27 ehu`: (ext:make-thread (lambda () (format t "~¤t-thread = ~S~%" (ext:current-thread))) :name "FOO") 10:46:41 tcr: yup. 10:46:46 ehu`: The thunk to make-thread is not executed within the new thread 10:47:26 wow! I'll have a look immediately. 10:47:32 Odin- [n=sbkhh@adsl-2-92.du.snerpa.is] has joined #lisp 10:47:37 I also found one of the reasons for slow file compilation. 10:47:47 I need to find out what to do about it though. 10:48:20 tcr: do you have c-l.net access? (an account?) 10:49:08 Yes, trittweiler 10:50:07 dbalcer [i=dbalcer@151.82.6.139] has joined #lisp 10:50:13 -!- dbalcer [i=dbalcer@151.82.6.139] has left #lisp 10:53:11 -!- sellout [n=greg@c-24-128-50-176.hsd1.ma.comcast.net] has quit [Read error: 110 (Connection timed out)] 10:54:24 ok. you could file some of these issues in our Trac; I won't be able to forget then. 10:55:09 the thread thing is major showstopper. I'm trying to debug it but my java-fu is pathetically weak. 10:55:46 with this bug fixed, I can make slime use threads on abcl. 10:56:07 -!- segv_ [n=mb@p4FC1D645.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 10:56:25 ok. looking. 10:56:32 segv_ [n=mb@p4FC1ACCD.dip.t-dialin.net] has joined #lisp 11:05:06 tcr: I might have found the issue. 11:05:08 testing now. 11:06:26 how can i create a copy of a multidimensional array? 11:06:37 copy-seq only seems to work for single-dimensional arrays 11:08:32 hrgh: adjust-array is required to copy arrays, but you probably do not want to use that directly. 11:08:45 hrgh: Use, or at least copy, alexandria's copy-array 11:10:05 Is the :metaclass option inherited in subsequent classes? 11:10:13 subclasses* 11:10:23 -!- trebor_home [n=user@dslb-084-059-019-011.pools.arcor-ip.net] has quit [Remote closed the connection] 11:11:15 s/array/vector/. i'm only interested in copying vectors. 11:11:29 does that make it easier? 11:12:14 hrgh: vectors are sequences, so you can copy-seq on them 11:13:13 elias` [n=me@resnet-pat-254.ucs.ed.ac.uk] has joined #lisp 11:13:53 sellout [n=greg@c-24-128-50-176.hsd1.ma.comcast.net] has joined #lisp 11:14:39 oh, wait, i somehow thought what i got from (make-array) with multiple dimension arguments was a "multidimensional vector", but there's probably no such thing :/ 11:18:32 -!- dys` is now known as dys 11:18:56 tcr: where can i find it? is it the 'copy-array' found at http://lemonodor.com/archives/000100.html ? 11:20:19 nha [n=prefect@137-64.105-92.cust.bluewin.ch] has joined #lisp 11:21:42 ocnzhao [n=hgsghrnj@122.159.58.200] has joined #lisp 11:21:55 tcr: it's actually running it in the right thread, but it's reporting the wrong one. 11:22:04 -!- ocnzhao [n=hgsghrnj@122.159.58.200] has left #lisp 11:23:15 hrgh: common-lisp.net/project/alexandria/ 11:25:14 -!- kpreid [n=kpreid@cpe-67-249-58-190.twcny.res.rr.com] has quit [] 11:25:40 kpreid [n=kpreid@cpe-67-249-58-190.twcny.res.rr.com] has joined #lisp 11:25:48 ehu`: Ok, the code in question uses (ext:current-thread) as a key in a hash-table. So in this case, it's like another thread is running. Did you commit a fix already? 11:26:25 I'm cleaning up my fix and will commit shortly. (~ 15 minutes) 11:26:38 ok 11:26:55 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit ["+++ killed by SIGSEGV +++"] 11:32:04 tcr: Rittweiler, is that spelled correctly? 11:32:57 *ehu`* finds tcr's clnet account name and confirms the spelling 11:33:54 yes 11:34:14 -!- antoni` [n=user@48.pool85-53-12.dynamic.orange.es] has quit [Remote closed the connection] 11:35:56 committed 11:37:32 -!- HET2 [i=diman@xover.htu.tuwien.ac.at] has quit ["This computer has gone to sleep"] 11:38:43 daniel [i=daniel@unaffiliated/daniel] has joined #lisp 11:38:54 -!- athos [n=philipp@92.250.250.68] has quit ["leaving"] 11:40:31 a-s [n=user@92.85.204.10] has joined #lisp 11:49:43 does that help? 11:50:26 Yes, perfectly 11:50:57 Do you have to return errors, or can you throw an exception which will then translated to a Lisp error? 11:51:20 I see lots of if (arg instanceOf ...) .... else return error(...) 11:51:45 -!- wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 11:54:09 -!- tttsssttt [n=pussycat@topol.nat.praha12.net] has quit [Read error: 104 (Connection reset by peer)] 11:54:22 tttsssttt [n=pussycat@topol.nat.praha12.net] has joined #lisp 11:54:48 -!- daniel_ [i=daniel@unaffiliated/daniel] has quit [Read error: 110 (Connection timed out)] 11:56:00 wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has joined #lisp 12:02:53 testsan [n=testsan@p2056-ipbf4403marunouchi.tokyo.ocn.ne.jp] has joined #lisp 12:05:05 the return error() creates a Lisp condition which is thrown as an error. 12:05:30 Java exceptions don't automatically get converted, although I do have code to do that in specified place. 12:05:32 places. 12:07:20 Well if that was the case, you could introduce check_for_... functions which would be more readable 12:08:39 mattrepl [n=mattrepl@208-45-247-237.dia.static.qwest.net] has joined #lisp 12:10:01 -!- mattrepl [n=mattrepl@208-45-247-237.dia.static.qwest.net] has quit [Client Quit] 12:10:07 yea, we have some of those, but I don't think they're used everywhere. 12:10:31 we have checkEnvironment, checkSymbol and some others. 12:10:36 lemme look where they are. 12:11:19 Lisp.java it seems. 12:13:23 Davse_Bamse [n=davse@4306ds4-soeb.0.fullrate.dk] has joined #lisp 12:13:40 Could you take a look at SLEEP in LispThread.java please? 12:14:10 the ARG is casted to a DoubleFloat, and then its multiplyBy method is invoked 12:14:36 if the arg is not a DoubleFloat, but a String, I guess the default method in LispObject gets executed which returns a type_error 12:16:34 jao [n=jao@194.Red-88-15-114.dynamicIP.rima-tde.net] has joined #lisp 12:18:03 LostMonarch [n=roby@host159-179-dynamic.53-82-r.retail.telecomitalia.it] has joined #lisp 12:19:11 blbrown [n=Berlin@71.236.25.127] has joined #lisp 12:20:54 mcspiff [n=user@hlfxns01bbg-142068078172.dhcp-dynamic.ns.aliant.net] has joined #lisp 12:21:10 unfortunately not: 12:21:32 if the object is not a DoubleFloat or derivative, you get a class cast exception. 12:21:35 I'll change that. 12:21:51 well an appropriate sldb buffer is opened 12:22:11 mstevens [n=mstevens@zazen.etla.org] has joined #lisp 12:23:04 ehu`: if you change the code, please factor out the code that converts the argument to sleep (a "lisp timeout") to a long ("java timeout") 12:24:18 ferada [n=user@e179239001.adsl.alicedsl.de] has joined #lisp 12:26:21 np. you want it available from the lisp wold? 12:26:26 world? 12:26:45 -!- tseug [n=tseug3@cpe-70-112-21-137.austin.res.rr.com] has quit [Read error: 110 (Connection timed out)] 12:26:50 nope from java 12:27:12 basically just a public static long ...., perhaps in LispThread 12:27:19 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 12:27:29 seems the appropriate place. 12:29:51 -!- testsan [n=testsan@p2056-ipbf4403marunouchi.tokyo.ocn.ne.jp] has left #lisp 12:30:26 tcr: I misunderstood the code. 12:30:52 the argument can be any number 12:31:37 hmmm does anyone have a good use case for CLOS's eql specializers? 12:31:51 dto3 [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has joined #lisp 12:33:06 providing a string will indeed trigger the default case in LispObject 12:33:20 mcspiff: (defmethod foo-using-package ((package (eql (find-package :my-package))) args..) ...) 12:33:31 ehu`: But what then? 12:33:31 mcspiff: singleton pattern. 12:33:50 tcr: it'll raise a lisp error 12:34:22 tcr: the type_error function is a never returning function. 12:34:27 oh ok 12:34:34 hmmm both those work for me, thanks 12:34:36 it will delegate execution to the ERROR function. 12:34:40 good to know 12:35:03 which may throw a ConditionThrowable, which are generally used for non-local transfer of control. 12:36:40 ehu`: Can't you then make a generic checkType?, or is the latter argument of instanceof not evaluated? 12:42:52 -!- LostMonarch [n=roby@host159-179-dynamic.53-82-r.retail.telecomitalia.it] has quit ["raise RuntimeError"] 12:43:02 I don't think it's evaluated, no. 12:43:21 Corun [n=Corun@94-194-31-231.zone8.bethere.co.uk] has joined #lisp 12:44:48 but that should not be a problem: we write our own bytecode anyway :-) 12:46:03 I gotta cook dinner. Would be nice if you could commit the timeout refactoring. I'll need that after dinner. 12:46:06 -!- dto3 is now known as dto` 12:49:05 karvus [n=thomas@ti511110a080-0924.bb.online.no] has joined #lisp 12:49:19 x. 12:49:21 k. 12:52:50 "N-Way Split really fast goto-driven FSM" <--- Is the sound of that enough to give heartattack to GOTO-haters? 12:56:05 klausi [n=klausi@port-92-193-70-54.dynamic.qsc.de] has joined #lisp 13:02:20 the flying spaghetti monster is omnipresent, why would it be goto-driven? 13:04:44 Are there some utility functions in common lisp for working on keyword lists like: (:name "Joreji" :channel "#lisp") ? I'd like to check whether a given keyword has been specified and if so, what its value is. 13:05:02 Joreji: these are property lists. 13:05:06 Joreji: check out getf and destructuring-bind 13:05:10 clhs getf 13:05:11 http://www.lispworks.com/reference/HyperSpec/Body/f_getf.htm 13:05:12 clhs getf 13:05:12 http://www.lispworks.com/reference/HyperSpec/Body/f_getf.htm 13:05:18 hah 13:05:21 pjb: damn so close ;-) 13:05:50 Cool, thanks guys! 13:09:01 nh_ [n=prefect@137-64.105-92.cust.bluewin.ch] has joined #lisp 13:09:01 -!- nha [n=prefect@137-64.105-92.cust.bluewin.ch] has quit [Read error: 104 (Connection reset by peer)] 13:10:13 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 13:11:39 -!- elias` [n=me@unaffiliated/elias/x-342423] has quit [Read error: 145 (Connection timed out)] 13:11:43 Good afternoon! 13:12:30 antifuchs: I'm going to play with a FSM generator, generating C code for a tight FastCGI switch. I wish to see the look on the face of someone reading that code :D 13:12:44 tcr: I feel SLEEP is incorrectly implemented atm. I'll redo later. 13:12:44 (-: 13:13:28 antifuchs: Remind me, push buttons are outside the command loop in CLIM, right? 13:13:56 I believe they are 13:14:01 -!- jao [n=jao@194.Red-88-15-114.dynamicIP.rima-tde.net] has quit [Read error: 110 (Connection timed out)] 13:14:05 should be governed by the toolkit's event loop 13:14:12 antifuchs: And is that for good reasons, because the spec says so, or something else? 13:15:37 johanbev [n=johanbev@230.80-203-45.nextgentel.com] has joined #lisp 13:15:50 the spec explicitly doesn't define the exact UI (and by that I believe it means the ui presented to the user as well as the programmer) 13:17:05 but I think it would be insanity to assume otherwise (in fact, a few of the franz clim examples break if buttons are pushed outside of the command-loop parameters they were tested with; I never had the hear to fix those) 13:17:18 "the heart" 13:18:18 tcr: hehe. I don't really think the upperbound we have is really a practical limitation. 13:18:29 so, I'll leave it at that for now. 13:21:04 antifuchs: are you saying it would be a good idea to turn push buttons into presentations? 13:21:18 antifuchs: and thus have them obey the context of the command loop? 13:21:36 no, I'm saying you should make sure your push buttons work in any command loop state (or disable them if the cmdloop is in an incompatible state) 13:22:23 antifuchs: I see. But what about the problem that if you invoke a command from a push button, you have to call the redisplay yourself. This will also require locks and such. 13:22:32 true 13:22:51 I think this is why it has only callbacks, and isn't tied into the command processor 13:23:08 hmm 13:23:43 I think it would be nice if a push button could stand for any presentation type, so that it could be used to supply arguments to commands as well. 13:23:58 hm, that would be neat 13:24:02 And if it were synchronized with the command loop, no locks would be required. 13:24:06 may be possible already, depending on backend 13:24:18 see lichtblau's tabs that act as presentations 13:24:35 antifuchs: Ah, yes, I didn't think of the existence of "smart" backends. 13:24:35 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #lisp 13:26:32 antifuchs: now that I think about it, this is probably the main reason for buttons NOT being synchronized with the command loop. 13:30:27 -!- nh_ is now known as nha 13:30:57 jao [n=jao@95.Red-83-36-223.dynamicIP.rima-tde.net] has joined #lisp 13:30:57 -!- nha is now known as Guest49115 13:32:23 hmm, there are no subclasses of immediate-sheet-input-mixin. I thought that would be why gadgets are not synchronized. Not so, apparently. 13:32:26 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 13:33:30 -!- Guest49115 is now known as nha 13:33:57 -!- ace4016 [i=ace4016@cpe-76-168-248-118.socal.res.rr.com] has quit ["When there's nothing left to burn, you have to set yourself on fire."] 13:39:00 -!- danlei [n=user@pD9E2F826.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 13:42:33 -!- jao [n=jao@95.Red-83-36-223.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 13:44:10 sohail [n=Sohail@unaffiliated/sohail] has joined #lisp 13:48:34 -!- mstevens [n=mstevens@zazen.etla.org] has quit ["leaving"] 13:50:46 jao [n=jao@95.Red-83-36-223.dynamicIP.rima-tde.net] has joined #lisp 13:51:56 fvw [n=sdfpme@113.77.207.0] has joined #lisp 13:52:35 Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has joined #lisp 13:53:12 ThomasI [n=thomas@unaffiliated/thomasi] has joined #lisp 13:54:16 im poking around some of the examples from AMOP, using sbcl... the text suggests that (make-instance 'standard-class :name 'a-name ...) should make a named class (that is, (find-class 'a-name) should return the metaobject. But under sbcl it does not find the class. Is there anyway to create a "named class" under sbcl other than defclass? 13:55:05 mcspiff: setf find-class 13:55:29 (in additioning to naming the class) 13:56:04 awesome. I really do love the symetry setf provides, but it takes a while to look for it. if that makes sense 13:57:28 -!- pchrist [n=spirit@gentoo/developer/pchrist] has quit ["leaving"] 13:57:38 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 13:58:15 pchrist [n=spirit@gentoo/developer/pchrist] has joined #lisp 14:04:35 -!- mgr [n=mgr@psychonaut.psychlotron.de] has quit [Read error: 110 (Connection timed out)] 14:09:18 Jasko [n=tjasko@c-98-235-105-148.hsd1.pa.comcast.net] has joined #lisp 14:21:54 mgr [n=mgr@psychonaut.psychlotron.de] has joined #lisp 14:22:57 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #lisp 14:32:13 kami- [n=user@unaffiliated/kami-] has joined #lisp 14:32:15 hello 14:35:00 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 14:37:02 -!- drafael [n=tapio@ip-118-90-133-5.xdsl.xnet.co.nz] has quit ["Leaving."] 14:38:22 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 14:38:26 Can I force class finalization somehow? 14:38:49 Yes. 14:39:24 kpreid: How :?) 14:39:46 it's in the MOP with an obvious name, I don't recall exactly 14:39:58 finalize-inheritance, perhaps 14:40:26 Ah ok. Thanks. 14:40:41 sb-mop:finalize-inheritance 14:40:46 err, drop the package there 14:42:05 (finalize-inhertance (find-class 'myclass)) doesn't seem to help :/ 14:42:27 Could it be it does not finalize the class under some circumstances? 14:43:12 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Remote closed the connection] 14:43:23 ordinarily, you shouldn't need to use it. Why are you needing this? What is the particular error? Are you doing other MOP stuff? 14:43:53 -!- fvw [n=sdfpme@113.77.207.0] has quit [Remote closed the connection] 14:46:02 puchacz [n=puchacz@87.194.5.99] has joined #lisp 14:48:20 nyef [n=nyef@vcwl1-61.daktel.net] has joined #lisp 14:48:26 G'morning all. 14:48:28 I'm calling class-slots on a superclass inside a macro. And class-slots throws an error telling me the class I call it on is not yet finalized. However, class-slots is called from a asdf component which depends on the superclass and the superclass is exported. 14:49:28 Joreji: A class often isn't "finalized" (not the same as the GC term of the same name) until either an instance is created or it is explicitly finalized (there's a function for it). 14:51:40 Hm. So (progn (defclass A ()) (defclass B (A))) could always fail? 14:51:41 -!- legumbre [n=user@r190-135-36-20.dialup.adsl.anteldata.net.uy] has quit [Read error: 54 (Connection reset by peer)] 14:52:00 No. 14:52:03 ... if B does some class-slot magick, that is. 14:52:26 You'd need to be more specific. 14:53:00 -!- puchacz [n=puchacz@87.194.5.99] has quit [Remote closed the connection] 14:53:12 *nyef* sighs. 14:53:18 It'd be nice if specbot had an amop database. 14:53:33 Samy [n=sbahra@c-76-21-209-249.hsd1.dc.comcast.net] has joined #lisp 14:53:37 legumbre [n=user@r190-135-60-191.dialup.adsl.anteldata.net.uy] has joined #lisp 14:53:40 Anyway, have a look for a function "finalize-inheritance". 14:53:45 nyef: Hmm, yeah that example was kinda bad. But I guess I understand. 14:53:46 And "class-finalized-p". 14:54:21 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #lisp 14:54:58 -!- sbahra [n=sbahra@c-76-21-209-249.hsd1.dc.comcast.net] has quit [Read error: 110 (Connection timed out)] 14:55:07 tombom [i=tombom@wikipedia/Tombomp] has joined #lisp 14:57:58 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Client Quit] 14:59:01 -!- Joreji [n=user@42-104.eduroam.RWTH-Aachen.DE] has quit [Remote closed the connection] 15:00:19 hi, still me with a basic question :) 15:00:22 I' 15:00:26 m playing with cl-cairo2 15:00:38 but using cl-cairo2:something is tedious 15:00:47 I'd like to have a package nickname like 'cairo' 15:01:02 is there a way to add a nickname to the package ? 15:01:24 You could, or you could "just" add :cl-cairo2 to the :use clause of your defpackage and refer to the cl-cairo2 symbols without a prefix. 15:01:39 (You -are- using your own package to work in, right?) 15:01:53 yep 15:02:22 but if I do a (use-package), it will import all the content of cl-cairo2 in my own package, nope ? 15:02:57 It might, I never use use-package. 15:03:04 is there something like (use-package :cl-cairo2 :nickname :cairo) ? 15:03:13 No, there isn't. 15:03:35 I should mail to the cl-cairo2 author to ask him if he could add a nickname 15:03:45 but it's a pity there's no simple way for that 15:04:00 If you're willing to hack the cl-cairo source, it's a matter of just finding the defpackage form and adding a nickname to it. 15:04:29 yep but I don't like to make local changes to a package I didn't write 15:05:07 There -is- a way to add nicknames to a package, but I'm not sure how and I'm told there are a few tricky bits to it. Were I to try and figure it out, I'd start by looking up RENAME-PACKAGE. 15:05:33 ok ok 15:05:33 You might also try creating a "cairo" package and having it use cl-cairo2 and just re-export all the symbols. 15:05:35 thank you 15:05:44 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 15:06:13 That could be done with a macrolet that builds the defpackage form and uses do-external-symbols to obtain the list of symbols to export. 15:06:41 rjack [n=rjack@adsl-ull-119-129.51-151.net24.it] has joined #lisp 15:06:51 And I think that's about the entirety of the technical side of the solution space. 15:07:39 And, as I said, I think there's a utility function in some library that I don't use (possibly alexandria) to add a nickname to an existing package. 15:07:54 sykopomp [n=sykopomp@unaffiliated/sykopomp] has joined #lisp 15:08:07 sepult [n=sepult@xdsl-87-78-27-181.netcologne.de] has joined #lisp 15:08:21 coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has joined #lisp 15:10:17 blackened` [n=blackene@89.102.208.138] has joined #lisp 15:11:34 There is a function read-line-as-list in Lisp, but if I've already read string, is it possible to convert it to list ? 15:12:01 What's "Lisp" here? 15:12:20 language ;) 15:12:41 No I mean what dialect are you talking of 15:12:56 Common Lisp 15:13:08 I don't think there's a function read-line-as-list then 15:13:10 Adamant [n=Adamant@c-76-29-188-22.hsd1.ga.comcast.net] has joined #lisp 15:13:10 SBCL 15:13:48 oh, my mistake :/ 15:13:49 MrSpec: (coerce (read-line) 'list) 15:14:13 MrSpec: split-sequence, although it isn't built in. 15:14:23 ah, yeah. 15:14:28 ferada` [n=user@g224148049.adsl.alicedsl.de] has joined #lisp 15:14:47 thx pjb 15:14:48 -!- ferada` [n=user@g224148049.adsl.alicedsl.de] has quit [Client Quit] 15:15:44 -!- ferada [n=user@e179239001.adsl.alicedsl.de] has quit [Read error: 60 (Operation timed out)] 15:17:49 -!- Odin- [n=sbkhh@adsl-2-92.du.snerpa.is] has quit ["Am I missing an eyebrow?"] 15:19:11 tcr: committed 15:19:28 if i want to add an option to a slot definition..beyond the standard ones, what part of the MOP should i be looking at? 15:20:14 ehu`: I did it myself, and sent a patch to the mailing list. It has not come through yet 15:22:49 ok. could you have a look at what I did? If it isn't good enough, I'll commit your version. 15:23:13 danlei [n=user@pD9E2EEBA.dip.t-dialin.net] has joined #lisp 15:23:33 sorry about that. 15:23:55 I just refactored out what was in sleep, left it unchanged 15:24:49 milanj [n=milan@93.87.151.204] has joined #lisp 15:25:36 seems reasonable 15:25:57 -!- jao [n=jao@95.Red-83-36-223.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 15:26:39 ok. can I leave it that way then? 15:27:20 Sure, I'll post an adapted patch 15:27:37 -!- schoppenhauer [n=css@unaffiliated/schoppenhauer] has quit [Read error: 110 (Connection timed out)] 15:27:51 -!- vy [n=user@88.231.234.194] has quit [Remote closed the connection] 15:27:53 Joreji [n=user@42-104.eduroam.RWTH-Aachen.DE] has joined #lisp 15:30:08 tcr pasted "gates for abcl" at http://paste.lisp.org/display/81113 15:30:30 ehu`: I'll send the patch also to the mailing list once my original patch came through 15:31:24 ok. 15:32:40 ehu`: Is there a way to get at the local variables of a frame? 15:33:23 tcr: no, we need to come up with a way to do that, but atm, there isn't. 15:33:34 -!- Corun [n=Corun@94-194-31-231.zone8.bethere.co.uk] has quit ["Leaving..."] 15:33:51 -!- Orest_ [n=orest@p4FC463F0.dip.t-dialin.net] has quit [Operation timed out] 15:38:15 smithzv [n=smithzv@c-67-173-240-139.hsd1.co.comcast.net] has joined #lisp 15:39:11 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 15:39:22 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 15:41:42 rca [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has joined #lisp 15:44:09 -!- sykopomp [n=sykopomp@unaffiliated/sykopomp] has quit [Read error: 110 (Connection timed out)] 15:45:21 -!- rca [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has quit [Client Quit] 15:45:57 amblerc [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has joined #lisp 15:45:59 rca 15:46:04 -!- amblerc is now known as rca 15:46:40 Orest_ [n=orest@p4FC443FE.dip.t-dialin.net] has joined #lisp 15:50:24 -!- rca [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has quit [Read error: 104 (Connection reset by peer)] 15:50:31 ehu`: Do you know of cases where recompilation does not work? 15:51:10 rca [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has joined #lisp 15:52:37 -!- rca [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has quit [Client Quit] 15:55:38 -!- kidd2 [n=kidd@82.Red-79-150-114.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 15:56:02 amblerc [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has joined #lisp 15:56:25 kidd2 [n=kidd@82.Red-79-150-114.dynamicIP.rima-tde.net] has joined #lisp 15:56:32 -!- rjack [n=rjack@adsl-ull-119-129.51-151.net24.it] has quit ["leaving"] 15:59:46 -!- mcspiff [n=user@hlfxns01bbg-142068078172.dhcp-dynamic.ns.aliant.net] has quit [Read error: 110 (Connection timed out)] 16:00:26 alinp [n=alinp@89.137.98.94] has joined #lisp 16:00:36 joachifm [n=joachim@bjo1-1x-dhcp011.studby.uio.no] has joined #lisp 16:01:07 Lectus [n=Frederic@189.105.107.32] has joined #lisp 16:04:50 -!- Ppjet6_ is now known as Ppjet6 16:10:05 AllNight^ [n=nobody@ai-core.demon.co.uk] has joined #lisp 16:10:50 hi - has anyone here set up slime on debian? 16:11:09 I'm trying to do that now following the instructions in the manual.... but there appears to be no slime-repl command 16:11:15 Oh, right. -That's- how I was polling events. (process-event *display* :handler #'list). 16:12:08 <_3b> AllNight^: for best results, use slime from CVS, and instructions from the cvs checkout (or let clbuild deal with it) 16:12:36 I have _3b - I just got the latest CVS checkout 16:12:39 Corun [n=Corun@94-194-31-231.zone8.bethere.co.uk] has joined #lisp 16:13:29 -!- xinming_ is now known as xinming 16:13:31 AllNight^: does your .emacs include a slime-setup command? I heard the repl became an optional component 16:13:40 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 16:13:44 -!- plutonas [n=plutonas@c-83-233-152-13.cust.bredband2.com] has quit [Read error: 113 (No route to host)] 16:13:55 <_3b> AllNight^: next step is to paste what you are trying on lisppaste 16:14:05 <_3b> (or at least explain it in more detail) 16:14:29 yes kpreid 16:14:42 what's lisppaste? 16:14:46 lisppaste: url? 16:14:46 To use the lisppaste bot, visit http://paste.lisp.org/new/lisp and enter your paste. 16:14:51 *AllNight^* fairly new to channel :) 16:14:56 ty :) 16:15:45 tcr: I'm not aware of any. 16:15:56 AllNight^ pasted "slime problem" at http://paste.lisp.org/display/81115 16:16:35 that's the stuff I just evaluated in a scratch buffer - right after fetching the code from CVS 16:16:36 <_3b> (slime-setup '(slime-fancy slime-tramp slime-asdf)) 16:17:17 -!- aja [n=aja@S01060018f3ab066e.ed.shawcable.net] has quit [Client Quit] 16:17:48 ah! that seems to give me a repl :) 16:18:20 stassats [n=stassats@wikipedia/stassats] has joined #lisp 16:19:55 -!- karvus [n=thomas@ti511110a080-0924.bb.online.no] has quit [Read error: 104 (Connection reset by peer)] 16:20:13 ty _3b :) 16:20:17 karvus [n=thomas@ti511110a080-0924.bb.online.no] has joined #lisp 16:20:43 elias` [n=me@resnet-nat-406.ucs.ed.ac.uk] has joined #lisp 16:23:16 gigamonkey [n=user@adsl-76-254-16-215.dsl.pltn13.sbcglobal.net] has joined #lisp 16:30:59 -!- sepult [n=sepult@xdsl-87-78-27-181.netcologne.de] has quit ["leaving"] 16:32:57 -!- envi^home [n=envi@220.121.234.156] has quit ["Leaving"] 16:41:09 wneo [n=wesley@124.125.212.77] has joined #lisp 16:41:56 -!- alinp [n=alinp@89.137.98.94] has quit [] 16:51:23 -!- anekos is now known as A_anekos 16:54:21 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 16:55:47 xan [n=xan@9.Red-83-42-12.dynamicIP.rima-tde.net] has joined #lisp 16:57:03 -!- plage [n=user@83.224.64.17] has left #lisp 16:58:48 Adamant [n=Adamant@c-76-29-188-22.hsd1.ga.comcast.net] has joined #lisp 16:59:27 Are there any docs anywhere about migraing from very old hunchentoot to bright, shiny 1.0 hunchentoot? 17:01:31 there's a mailing list post that says "read the new docs" 17:01:33 that seems to be all 17:01:53 mmmm. 17:02:10 but edi has carelessly leaked a few intentional changes in later posts, though 17:02:34 that clos accessors are now always method names without a * postfix 17:02:45 and that convenience functions do have that * appended 17:03:30 I found that choice a bit odd. 17:03:40 Why give the convenience functions the ugly names? 17:03:45 Or am I missing something? 17:03:55 yeah; I am not a fan of that, either 17:04:07 but it's a convention and as such can be debated to no end (: 17:04:19 he made his decision, and I'm happy that it's consistent at least (: 17:07:20 sepult [n=sepult@xdsl-87-78-27-181.netcologne.de] has joined #lisp 17:09:29 Has it been debated--I'm curious what the arguments in favor were? 17:09:32 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 17:09:44 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 17:10:00 I don't recall any debate, but I haven't been following the tbnl list a lot before ht 1.0 was released 17:11:02 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Read error: 110 (Connection timed out)] 17:16:34 -!- npoektop [n=user@85.202.112.90] has quit [Read error: 110 (Connection timed out)] 17:18:07 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 17:18:47 gigamonkey: there was some debate on the list recently 17:19:01 *rsynnott* is sticking woth 0.15.7 for now :) 17:19:36 divz [n=divz@117.98.2.108] has joined #lisp 17:24:09 memet [n=memet@204-225-123-132.xdsl.convoke.net] has joined #lisp 17:24:28 Has anyone used Allegro Webactions successfully with SBCL? 17:25:30 Hmmmm. Anyone know how to get Hunchentoot 1.0 to drop me in the debugger on a Lisp error? 17:26:24 tseug [n=tseug3@cpe-70-112-21-137.austin.res.rr.com] has joined #lisp 17:27:00 athos [n=philipp@92.250.250.68] has joined #lisp 17:28:37 gigamonkey: I use http://common-lisp.net/pipermail/tbnl-devel/2009-April/004688.html 17:29:05 gigamonkey: you can leave out process-connection if you don't need to debug connection problems. 17:29:10 ejs [n=eugen@91-116-112-92.pool.ukrtel.net] has joined #lisp 17:29:35 (stuff like random disconnects will trigger the debugger if you use this) 17:30:28 Cool. 17:30:34 hm, i wonder why there isn't something built-in 17:30:54 stassats: I suppose because the next version will have it (: 17:30:58 Having the following problem when visiting a page served by webactions (but not a page served by plain aserve): 1-aserve-worker: 05/27/09 - 20:44:59 - processing clp file "/home/memet/pages/index.html" got error The value NIL 17:30:58 is not of type 17:30:58 FUNCTION. 17:30:58 1-aserve-worker: 05/27/09 - 20:44:59 - while processing command "GET /testing/home HTTP/1.1" 17:30:59 got error The slot NET.ASERVE::OBJECTS is unbound in the object #. 17:31:06 because that question is quiet frequent 17:31:09 anyone have any idea about this? or how I would go about investigating? 17:31:12 quite 17:31:47 Are most hunchentoot users moving to the brave new 1.0 world? 17:32:34 *stassats* uses hunchentoot only for two pages, and is too lazy read new documentation 17:32:44 I never really entered the pre-1.0 world, so the choice is easy (: 17:32:55 -!- joachifm [n=joachim@bjo1-1x-dhcp011.studby.uio.no] has quit [Client Quit] 17:33:14 *rsynnott* really couldn't be bothered to move right now 17:34:13 -!- wneo [n=wesley@124.125.212.77] has left #lisp 17:34:30 -!- coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has quit [Remote closed the connection] 17:35:20 Grrr. write-sequence on a chunga:chunked-io-stream is blowing chunks. 17:35:33 stassats` [n=stassats@wikipedia/stassats] has joined #lisp 17:35:44 #\< doesn't match array element type of #(0 0 0 0 0 ..) 17:36:20 and i'd better wait till 1.0.1 or something, because there were some problems 17:36:22 trivial-gray-streams is calling REPLACE #(0 0 0 ...) " jup. you need to make a flexi-stream from the chunked binary stream 17:36:36 or any other character stream, afaik 17:36:54 antifuchs: uh, okay. But I don't think I'm making the stream. 17:36:56 Let me look. 17:37:28 gigamonkey: do you have a reasonably recent flexi-streams and chunga? 17:37:43 rsynnott: should have. Just downloaded them this morning. 17:38:11 Do I need to wrap the stream returned by HUNCHENTOOT:SEND-HEADERS 17:38:12 ? 17:39:06 wouldn't have thought so 17:39:26 yes, you do 17:39:26 though I barely ever use the streams directly, and have never used this new version at all 17:39:35 you get a binary stream from that 17:39:52 Grrr. 17:40:01 *gigamonkey* glares and hunchentoot 1.0 17:40:06 s/and/at/ 17:41:41 jao [n=jao@190.Red-81-32-179.dynamicIP.rima-tde.net] has joined #lisp 17:42:03 that change's time has been long coming (: 17:42:47 -!- dto` [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has quit [Remote closed the connection] 17:43:36 Which change? 17:43:45 the binary stream one 17:43:51 Why not just return a bivalent stream? 17:44:21 because that would require you to use flexi-streams (and they're inefficient, according to the people who defend babel) (: 17:44:22 I.e. is there some reason not to just always return a flexi-stream? 17:44:48 I see. So if you just want to, say, dump a JPEG down the stream you don't want to bother with the flexi-stream? 17:44:54 But any time you're sending text you need one? 17:44:56 that, too 17:44:59 that's right 17:46:25 And you *can* use a flexi-stream for both, right? It's just not as efficient when all you're sending is octets. 17:46:40 I think that's correct 17:46:49 Is babel actually somehow related. Or was that just some snark directed at bable folks? 17:46:55 (I've used f-s only for char streams) 17:47:04 nope, it's another encoding library 17:47:10 and I believe it offers streams, as well 17:47:19 might be cool, though I've never used it 17:47:35 So in theory one could use Babel to wrap the send-headers stream instead of using flexi-stream? 17:47:50 *gigamonkey* gets his simple web site working under Hunchentoot 1.0 and celebrates 17:48:53 yeah, using the babel-streams library, that would be a sensible thing to do 17:49:17 I think that choice is a very cool thing; also, that sending binary data isn't tied to using a potentially slow bivalent stream 17:49:47 this change might have been made for a company in the airline industry (-; 17:50:00 Yeah. Though maybe it should work the other way--you get a bivalent stream by default but then you can pull out the underlying binary stream if you really want it. 17:50:23 Most stuff a web server serves up, after all, is text. 17:50:30 For appropriate values of 'most'. 17:51:15 -!- Lectus [n=Frederic@189.105.107.32] has left #lisp 17:51:45 -!- stassats [n=stassats@wikipedia/stassats] has quit [Read error: 110 (Connection timed out)] 17:51:53 -!- memet [n=memet@204-225-123-132.xdsl.convoke.net] has quit [] 17:52:59 Anyone here knows how the BKNR template handler works? 17:53:37 Joreji: h4ns should; but he's not been around lately 17:54:36 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 17:55:17 antifuchs: Ah ok thanks. 18:00:05 Has the prospect of using a doubly-linked list as the central data structure in lisp (here, I'll use `lisp' to mean lisps in general) been explored at all? 18:00:41 yeah, for kill-rings in emacsen (: 18:01:15 antifuchs: Anywhere else? ;) 18:01:35 that's the one example where I came into contact with them 18:02:18 Maybe I don't see some blatant pathology with using a doubly-linked list. Well, they're not quite as elegant. 18:02:48 <_3b> seems like lack of structure sharing would make them less useful 18:03:22 And "cons cells" would be 1.5× larger than the singly linked list cell. 18:03:49 _3b: Do you mean that cells are more..."disjoint"? 18:03:53 common-lisp has a sequence type that abstracts over lists, arrays & vectors 18:04:13 I dont know if you could extend it with another sequence type - but you can do most anything in lisp 18:04:28 <_3b> no i mean you can't do something like (let ((*foo* (cons 'stuff *foo*))) ...) 18:04:29 Quadrescence: structure sharing means that any one cons cell can be part of many other lists. 18:04:46 in cons cells with back links, that's not possible anymore 18:05:38 antifuchs: e.g., you have a "nested" structure---with doubly linked lists, (A B C) can no longer be written (A . (B . (C . NIL)))? 18:05:45 Hmmm. Is there some trick to sharing streams between threads in CCL? 18:06:15 Quadrescence: (let* ((x (list 1 2 3)) (y (cons 0 x))) ...) 18:06:23 -!- tombom [i=tombom@wikipedia/Tombomp] has quit [Read error: 54 (Connection reset by peer)] 18:08:12 gigamonkey: there is http://ccl.clozure.com/manual/chapter9.1.html#Additional-Open-Keywords 18:08:39 stassats`: Yup. Just found that. Thanks. 18:08:47 run-program has :sharing too 18:08:58 I guess I was thinking about the possibility of using doubly linked lists simply because some algorithms have a better asymptotic time complexity sans having to have some "special" implementation. 18:09:56 if there's a benefit for your algorithm, you can use them, of course (: 18:10:28 mcclim has a doubly-linked list in its goatee kill-ring implementation (get it while it's still there (-:) 18:10:50 -!- bdowning [n=bdowning@mnementh.lavos.net] has quit [Read error: 110 (Connection timed out)] 18:11:07 Hahah. Unfortunately, I couldn't get mcclim to work. :( 18:11:20 just grab the file, I meant (-: 18:11:31 antifuchs: I know, but still. :) 18:12:26 -!- ThomasI [n=thomas@unaffiliated/thomasi] has quit ["Bye Bye!"] 18:15:07 leon` [n=leon@99.7.32.95.c10008-a53.dsl-dynamic.vsi.ru] has joined #lisp 18:15:35 -!- amblerc [n=user@24-180-81-97.dhcp.bycy.mi.charter.com] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 18:18:18 fusss [n=chatzill@ip70-179-113-121.dc.dc.cox.net] has joined #lisp 18:18:35 greetings 18:18:45 antifuchs: so what does cause all these random connection breaks? 18:18:58 gigamonkey: I think a lot of that is just you hitting "stop" (: 18:19:14 or maybe the browser terminating a connection: keep-alive connection 18:19:26 prematurely or not, I don't know 18:19:30 That's what I'd figure. But I just did a test where I reloaded a page and did nothing. 18:19:39 After about 30 seconds the debugger pops up. 18:20:10 if you're annoyed by them, you can just leave out the process-connection method, and it'll debug only errors you get inside the handlers 18:20:20 Yeah. I'm just curious what's going on. 18:20:32 probably the connection: keep-alive closing thing, then 18:20:54 I'm not sure, though. it's different if I use safari and firefox, so might be a browser behavior thing 18:21:39 What is the reason behind case insensitivity in CL, and uppercase being the "canonical" form? Purely historical reasons? 18:21:47 Quadrescence: yup. 18:21:56 Plus probably changing fashion. 18:22:20 There are people who consider case insensitivity a feature. And those who consider it a bug. 18:22:36 or a mode 18:22:39 Plus, as someone will no doubt soon leap in to point out, CL is not actually case insensitive. 18:22:50 Vicfred [n=Vicfred@201.102.74.136] has joined #lisp 18:23:06 It just acts like it most of the time. 18:24:01 -!- Vicfred [n=Vicfred@201.102.74.136] has quit [SendQ exceeded] 18:24:05 it's all "I'm not sensitive at all! *sniff*" 18:24:26 Vicfred [n=Vicfred@201.102.74.136] has joined #lisp 18:24:34 antifuchs: I'm using firefox. I wonder if it's something to do with the browser holding a connection open for a while for pipelining and then closing it after some timeout. 18:24:50 that's highly plausible 18:25:14 JAS415 [n=jon@c-24-34-16-25.hsd1.ma.comcast.net] has joined #lisp 18:25:20 parodyof` [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 18:25:23 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Read error: 60 (Operation timed out)] 18:25:26 gigamonkey: well, it's better than pascal's "symbols are case-insensitive and 10 letter long" ;P 18:25:58 -!- Vicfred [n=Vicfred@201.102.74.136] has quit [SendQ exceeded] 18:26:27 Vicfred [n=Vicfred@201.102.74.136] has joined #lisp 18:26:58 I worked with a guy once who had been at Oracle. In parts of their code base to comply with old-C's length restrictions and lack of a package system they had crazy coding standards where two chars were used for essentially the 'package' and then another char for something else so you had three characters left for the 'name' of your function. 18:27:29 gigamonkey: semantic hungarian notation 18:28:12 -!- JAS415 [n=jon@c-24-34-16-25.hsd1.ma.comcast.net] has left #lisp 18:28:13 -!- Vicfred [n=Vicfred@201.102.74.136] has quit [SendQ exceeded] 18:28:15 NLib is sort of like that 18:28:31 A_vecdot 18:28:33 I think it's somethnig to do with keepalive, yep 18:28:41 Vicfred [n=Vicfred@201.102.74.136] has joined #lisp 18:28:48 (you never see it running behind a proxy, only with direct connections) 18:29:13 Because the proxy keeps one connection open forever or because it never does? 18:29:19 (Just curious.) 18:29:24 hmmm.... is there even such a thing as pascal standard? I wonder if they changed official limit for symbols from "has to fit into 60 bit unsigned integer" 18:29:36 gigamonkey: because browsers won't use keepalive over proxy, by default 18:29:52 *p_l* has his FF configured to always pipeline, even over proxy 18:29:52 -!- Aankhen`` [n=heysquid@122.163.100.126] has quit ["Log this!"] 18:30:27 -!- Vicfred [n=Vicfred@201.102.74.136] has quit [SendQ exceeded] 18:30:30 I think rsynnott was talking about the other kind of proxy--the kind the browser doesn't know about. 18:30:55 Vicfred [n=Vicfred@201.102.74.136] has joined #lisp 18:31:07 gigamonkey: well, reverse proxies usually refuse pipelining, I think 18:32:25 gigamonkey: the shame is not that they used legacy-compatible naming, but that they didn't implement a pre-processor to do it automatically! 18:32:44 -!- Vicfred [n=Vicfred@201.102.74.136] has quit [SendQ exceeded] 18:32:57 -!- parodyof` [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Read error: 104 (Connection reset by peer)] 18:33:05 gigamonkey: Right. I surely didn't mean "truly" case sensitive, just that most symbols ar---I don't need to explain. You understood what I meant. :) 18:33:07 Vicfred [n=Vicfred@201.102.74.136] has joined #lisp 18:33:08 tombom [i=tombom@wikipedia/Tombomp] has joined #lisp 18:35:22 p_l: Of course there's a pascal standard! It's just... everybody ignores it because it's so useless. 18:35:30 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Read error: 104 (Connection reset by peer)] 18:36:06 *gigamonkey`* pulls his PASCAL User Manual and Report off the shelf 18:36:16 "ISO Pascal Standard" it says. 18:36:19 nyef: actually there are several pascal standards. ISO pascal is not useless. 18:36:46 -!- Vicfred [n=Vicfred@201.102.74.136] has quit [Client Quit] 18:36:47 Heh. 18:36:48 And anyways, like CL, standards are made to define the common core. 18:36:54 hefner [n=hefner@scatterbrain.cbp.pitt.edu] has joined #lisp 18:37:44 The problem with pascal standards is not that they're useless, but that pascal is irrelevant, now that Modula-2 and Modula-3 exist. All you can do in pascal or C or C++ can be done better in Modula-2 or Modula-3. 18:38:25 But these languages are even less popular than CL :-) 18:38:30 and then there's Oberon 18:39:02 Which is the Wirth's LispMachine :-) 18:39:31 pjb: That would be the operating system Oberon. There's also the form of language 18:39:52 One of the interviewees for my book said Wirth missed a trick by abandoning the Pascal brand. Modula-2 should have been Pascal 2.0 or whatever. 18:40:13 Oberon, just the name, makes me think of a really, really large, very very old, very very needs-freon-to-stay-cool machine. 18:40:23 object pascal still sees some use, I think 18:40:48 (whatever borland is calling itself these days is now muttering about a massively updated object pascal, too) 18:40:54 rsynnott: well since NeXT takeover of Apple, Object Pascal is not use much there anyways... 18:41:18 no, apple's gone very much obj-c 18:41:40 NeXT imposed very much Objective-C to Apple. 18:41:45 "technically". 18:42:13 pjb: they'd have to replace the whole system they bought in the first place if they wanted something different than ObjC 18:42:29 Of course. 18:42:30 and good thing they didn't. It's OSX single redeeming feature in my eyes :P 18:42:44 But this is exactly what they're doing, reimplementing the Core in C. 18:42:52 CoreFoundation. 18:43:32 ... eh... 18:45:53 ikki [i=erick@189.228.208.246] has joined #lisp 18:46:15 -!- leon` [n=leon@99.7.32.95.c10008-a53.dsl-dynamic.vsi.ru] has left #lisp 18:46:37 ya know, Opera tries so hard to be fast, it caches even local pages; making editing html and css effin impossible 18:47:02 slash_ [n=Unknown@p5DD1D386.dip.t-dialin.net] has joined #lisp 18:47:03 I think that's optional 18:47:06 -!- karvus [n=thomas@ti511110a080-0924.bb.online.no] has quit [Read error: 110 (Connection timed out)] 18:47:15 illuminati1113 [n=user@pool-71-114-64-62.washdc.dsl-w.verizon.net] has joined #lisp 18:47:46 everything in opera is optional, including non-stupidity; look for the option right now 18:48:03 *hefner* never understood web caching. Firefox! You use hundreds of megabytes of ram for a cache, claim to want even more, but when I hit "Back", you still spend seconds waiting on the network. 18:49:26 hefner: i think because FF does a HEAD message to get the timestamp to see if it has changed since. why doesn't it cache the previous head result? 18:49:27 it was always my understanding that firefox's massive memory expansion was more leakage than caching 18:49:44 rsynnott: it is leakage 18:49:47 fusss: well, because it's obeying the rules 18:49:47 perhaps I have bought into their propaganda, then. 18:50:02 it is not meant to just give you the page from cache unless cache control allows it to do so 18:50:20 yeah, well, that's dumb. that has always been dumb. 18:50:34 hefner: it'd break webapps if they did it the other way 18:50:38 even the HTTP spec says that's dumb, last time I read it. 18:50:58 (well-designed webapps will use cache control correctly to allow people to 'back' to static pages without reloading) 18:52:31 well-designed webapps are downloadable 18:52:52 -!- jao [n=jao@190.Red-81-32-179.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 18:52:56 fusss: well designed webapps don't ? :D 18:53:38 *p_l* doesn't really like webapps 18:53:54 I believe this became a problem particularly because of the widespread use of GET for destructive operations 18:54:13 which is BAD AND WRONG, theoretically, but extremely common 18:54:21 testo [n=testo@81-233-151-247-no82.business.telia.com] has joined #lisp 18:54:40 rsynnott: because you can't expect anything other than GET and POST to work... 18:54:42 GET /foo/update/variable/value; don't get anymore RESTful 18:55:42 fusss: during my work with rails I had seen how restful stuff had to resolve to encoding "real" request type as variable, due to to proper requests not working 18:56:01 p_l: yep, advice always was to use post for all destructive ops 18:56:59 rsynnott: proper REST was for POST for updates/creation afaik (or maybe there was a CREATE call?), DELETE (or REMOVE, i can't remember) for deletion etc... 18:57:27 fwiw i'm launching my very own web app tonight at 12AM, to some fanfare, and i hope to bloody god i never have to do it again; at least the website/graphics/information-architecturing/bread-crumbs/static-vs-dynamic-content/CSS/js side of it. 18:57:31 I dunno about REST 18:57:45 I'm talking about back in the day when POST/GET was all that there was :) 18:57:54 fusss: what is the webapp? :) 18:57:56 then you had Web2.0-beloved Safari I think not supporting anything other than GET and POST or proxy/firewalls that barfed when something tried using more advanced functions of HTTP1.1 :D 18:58:12 rsynnott: app(s). advertising network for the middle-east 18:58:15 *rsynnott* still does not quite know what REST is meant to mean 18:58:23 fusss: ah, good luck 18:59:31 thanks; now do you know how to make tabs attached to the content div in IE? it works on all others, but in IE, there is gapping cut in the middle where the container div's background shows through. of course, without resorting to javascript ;-( 18:59:40 rsynnott: Representational State Transfer, apparently 18:59:52 and the operations were GET, PUT, POST, DELETE 19:00:58 "Implementation is hampered by limited support for HTTP PUT and DELETE in popular development platforms. For example, in the LAMP platform, support for PUT must be added as a module." 19:01:31 pstickne [n=pstickne@c-24-21-76-57.hsd1.wa.comcast.net] has joined #lisp 19:02:08 Man it helps to logged into the right machine when you're tailing log files. 19:02:56 :-P 19:03:15 splitvt, for more tail -f's than you care for 19:05:14 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [] 19:05:34 gigamonkey`: ha.. i do that a lot 19:05:54 benny [n=benny@i577A199B.versanet.de] has joined #lisp 19:06:18 This one was especially dumb. tail -f ... eh? Oh, ssh'd to wrong box. exit. tail -f ... eh, WTF? Oh, *another* wrong box. exit again. 19:06:40 later 19:06:41 -!- fusss [n=chatzill@ip70-179-113-121.dc.dc.cox.net] has quit ["ChatZilla 0.9.84 [Firefox 3.0.10/2009042316]"] 19:06:56 gigamonkey`: change settings so that log files are named after hostnames? 19:08:55 p_l: yes. Or PS1 to be more obvious. 19:09:47 gigamonkey`: I've done both of those and still found myself on the wrong box looking at the wrong logs. 19:10:15 yeah. 19:10:23 sometimes the ol' coconut just doesn't operate at full efficiency :) 19:10:49 drewc: speaking of which, on my VPS, if I want to change my hostname I just change /etc/hostname? 19:11:16 Ragnaroek [i=54a65a49@gateway/web/ajax/mibbit.com/x-908bb1edb01fc3e8] has joined #lisp 19:12:30 drewc: you missed it yesterday when a distraught stoner was here expressing his major depression 19:13:33 HET2 [i=diman@xover.htu.tuwien.ac.at] has joined #lisp 19:13:49 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 19:17:55 ejs1 [n=eugen@91-116-112-92.pool.ukrtel.net] has joined #lisp 19:20:01 -!- Corun is now known as Corun|away 19:20:38 gigamonkey`: i _think_ so .. it's set somewhere in the init scripts, and i'm not sure from where, but /etc/hostname seems like a good spot. I'll check, hold 19:20:53 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 19:21:04 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 19:21:38 _JFT_ [n=_JFT_@modemcable183.11-202-24.mc.videotron.ca] has joined #lisp 19:22:01 gigamonkey`: ya, /etc/init.d/hostname.sh sets it from /etc/hostname, you're good to go. 19:22:17 manic12: sounds like ... fun? 19:22:29 no 19:22:46 tombom_ [i=tombom@wikipedia/Tombomp] has joined #lisp 19:23:21 i guess that's life though, even in cyber space 19:23:36 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 19:24:09 bdowning [n=bdowning@mnementh.lavos.net] has joined #lisp 19:24:32 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 19:25:24 if it wasn't so nice out I would start hacking 19:25:30 going to go outside soon 19:26:44 creating/updating/maintaining a view seems to be the hardest part of this listener 19:27:02 cp2 [n=will@unaffiliated/cp2] has joined #lisp 19:27:16 one really well designed tagbody should handle it though 19:27:26 hi 19:27:33 lo 19:28:40 im trying to install flexi-streams via asdf-install, using the tarball on weitz.de. however its failing because 'component "flexi-streams" not found' (im assuming its because there is no flexi-streams.lisp in the tarball, just util.lisp) 19:28:45 im using sbcl + slime, whats wrong? 19:29:02 search for flexi streams on google 19:29:04 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 19:29:11 i have been, not much help 19:29:14 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 19:29:28 i don't know about asdf install, but that's what i would do 19:29:36 cp2: FWIW, I just installed flexi-streams today via the old school method of downloading and unpacking the tar.gz 19:29:52 cp2: grab the tarball, push the directory containing flexi-streams.asd into your asdf:*central-registry* and do (asdf:oos 'asdf:load-op :flexi-streams 19:29:59 are flexistreams like flexichains but streams? 19:30:04 nope 19:30:08 Good guess though. 19:30:12 gigamonkey: thats pretty much what i didnt want to have to do 19:30:13 They're bivalent streams. 19:30:17 but i guess i have to 19:30:33 oh, but definitely worth checking out 19:30:34 cp2: using ASDF-Install is pretty much what I don't want to do ;-) 19:30:40 cp2: in the time you spent here asking, i could have download and installed it 10 times... 19:30:57 sometimes not wanting to do something is actually quite a bad thing. 19:31:05 drewc: heh 19:31:19 drewc: its not so much wanting to do it, i just wanted to know if there was a fix (for future reference) 19:31:28 edi writes really good stuff 19:31:29 i have no problem really with doing it manually, just wondering 19:31:37 I bet I could install 100 flexi-streams ... 19:31:37 cp2: the fix is not to use asdf-install. 19:31:38 tc-rucho [n=tc-rucho@unaffiliated/tc-rucho] has joined #lisp 19:31:43 gigamonkey`: :D 19:31:48 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 19:31:57 minion: tell cp2 about clbuild 19:31:58 cp2: have a look at clbuild: clbuild [common-lisp.net] is a shell script helping with the download, compilation, and invocation of Common Lisp applications. http://www.cliki.net/clbuild 19:32:14 right. 19:33:31 cp2: that's just opinion though .. there are people who use and support asdf-install. I'm just not one of them. 19:33:41 I wonder if the folks who are doing the hg/git integration are going to pull darcs in too. 19:33:48 drewc: i thought so =P 19:34:28 cp2: then again ... my opinion does hold a little weight around these parts, especially with regards to resources i control.. 19:34:45 *drewc* could kill asdf-install with a keystroke! 19:34:52 do it! do it! 19:34:58 user__ [n=user@p57A7CE24.dip.t-dialin.net] has joined #lisp 19:34:59 *gigamonkey* is an instigator 19:35:04 hah 19:35:06 heheh 19:35:17 drewc: by breaking cliki? 19:35:23 gigamonkey: it would piss off Xach .. he 'likes' asdf-install. 19:35:30 rsynnott: by fixing cliki! :P 19:35:48 drewc: remove all asdf-install links! :D 19:36:10 p_l: no, remove the asdf-install handler from the arandeida instance ;) 19:36:19 or, asdf-install to clbuild gateway! 19:37:09 Holy cannoli! You're still running arandeida?! 19:37:10 which provides snapshots? good idea, no need to install n version control systems 19:37:20 i actually have new cliki engine almost ready to go... and i have to add asdf-install support to it before it can replace the one on cliki.net. that angers me a little. 19:37:21 fe[nl]ix [n=algidus@88-149-211-76.dynamic.ngi.it] has joined #lisp 19:37:42 What is this 'new cliki engine' of which you speak? 19:37:47 araneida, rather 19:37:49 gigamonkey: hell ... tech.coop runs non-threaded non-unicode 0.8.14 sbcl ;) 19:37:55 New better CL wiki software? 19:38:24 gigamonkey: yeah... http://cliki.tech.coop:8888/ is the running version that will become wiki.alu.org as soon as i say go 19:38:26 ugh, all this mucking about with asdf-install made me forget what i was trying to install in the first place 19:38:26 ... is, per chance, streamtech the company fusss works for? 19:39:02 Jeez man, catch up. I just upgraded codersatwork.com to Hunchentoot 1.0 when I should really be finishing the darn book. 19:39:10 oh, written in ucw? :) 19:39:15 *drewc* does not like hunchentoot 19:39:27 *gigamonkey* got a bit cranky with it during the conversion. 19:39:30 drewc: why? 19:39:31 rsynnott: yeah, it's a ucw-cliki called ucliki :) 19:39:32 -!- ikki [i=erick@189.228.208.246] has quit [Read error: 104 (Connection reset by peer)] 19:39:40 -!- tombom [i=tombom@wikipedia/Tombomp] has quit [Read error: 110 (Connection timed out)] 19:39:41 -!- tombom_ is now known as tombom 19:40:02 gigamonkey: flexi-streams and threads-only. 19:40:05 Adamant [n=Adamant@c-76-29-188-22.hsd1.ga.comcast.net] has joined #lisp 19:40:09 gigamonkey: it's also a bit 'heavy' 19:40:21 Ah. Well, as I discovered today, you don't have to use flexi-streams anymore. 19:40:41 Threads only, I can live with. 19:41:45 gigamonkey: well ... i've been using the internal UCW httpd server for some 3 years in production.. i don't see why i should add TBNL just to use the http portions of it :) 19:42:09 hello 19:42:15 fe[nl]ix: hey! 19:42:29 *p_l* will probably work on event-only, C, full of gotos fastcgi server... it would be interesting to see how much of it could be ported into CL 19:42:42 I'm trying to do some speedtests and I'm wondering if anyone has a good article how to "optimize" your code in lisp 19:43:20 hello. I've been willing to use some graphic lib on CL, I don't care if it's cairo, opengl.. whatever. I just want something that let's me plot my data. I've been trying to get cl-opengl running but it failed to compile on SBCL 1.0.23. So did cl-cairo2. cl-sdl compiled ok, but it's not working the way it should (or maybe I'm screwing up pretty bad here). Any tip, hint is welcome 19:43:39 PissedNumlock: http://www.lrde.epita.fr/dload/papers/verna.06.imecs.pdf 19:43:48 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 19:43:54 drewc: makes sense. 19:43:56 PissedNumlock: I'd start with a ton of declarations (playing around with disassemble shows how much difference they make) 19:44:14 thx danlei 19:44:16 PissedNumlock: M-x slime-profile, find your hotspots, crank up the (optimize) setting for what you want, change your algo's, and finally think of adding some declarations 19:44:21 p_l: no 19:44:24 p_l: why fastcgi? 19:44:38 p_l: goto jail 19:44:41 p_l: declarations are often the wrong thing to do 19:44:54 drewc: If declarations are of obvious kind (i.e. you know 100% what kind of types to deal with etc)? 19:45:28 <_3b> sbcl checks type declarations, so they can slow things down if used in teh wrong place 19:45:41 p_l: at (safety >0) or so, SBCL treats declarations as assertions.. 19:46:01 rsynnott: I was thinking of applying what I'll learn working on the network layer to httpd - the client is interested in kind of "L7 fastcgi switch" 19:46:30 <_3b> places where that matters tend to be good candidates for inlining anyway though, in which case the caller's declarations should be good enough 19:46:49 p_l: what you do is look at the compiler notes and your profiler output, and insert declarations only where they makes sense. 19:46:57 Right. I stand corrected :) 19:47:10 *p_l* just played around with declarations, optimize etc. and dissasemble 19:47:28 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 19:47:29 p_l: in many cases that technique is counter-productive. 19:47:59 -!- Ragnaroek [i=54a65a49@gateway/web/ajax/mibbit.com/x-908bb1edb01fc3e8] has quit ["http://www.mibbit.com ajax IRC Client"] 19:48:06 ok. It was interesting to see how the code changed, though :) 19:48:09 -!- Corun|away is now known as Corun 19:48:13 p_l: especially if you haven't completely profiled for hotspots ;) 19:48:27 p_l: indeed, dissasemble is very cool :) 19:49:00 Allegro has a feature you can ask it to tell you about it's type inference. 19:49:23 any cl-opengl devel arround? 19:49:23 as for declarations... I was intending to use them in some of the code I have in mind exactly for the assertions (possibly adding a simple way to disable them, I guess) 19:49:24 That's useful when adding type declarations--you can see where you need them and whether the ones you've added are helping. 19:49:36 Dunno if SBCL or CCL have anything similar. 19:50:58 tc-rucho: cl-cairo2 works here, on sbcl 1.0.28.70 x86-64 19:51:20 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 19:51:20 gigamonkey: sbcl, when you ram up on the optimize declarations, prints very useful optimization notes regarding its inferred types 19:51:25 p_l: did you install it using asdf-install? 19:51:31 ramp up* 19:51:47 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 19:51:48 tc-rucho: clbuild 19:52:21 p_l: oh :S I'm not aware of that *checking* 19:52:21 well, to be exact, I manually added it to clbuild 19:52:29 minion: tell tc-rucho about clbuild 19:52:30 tc-rucho: please see clbuild: clbuild [common-lisp.net] is a shell script helping with the download, compilation, and invocation of Common Lisp applications. http://www.cliki.net/clbuild 19:54:04 p_l pasted "clbuild/my-projects for cl-cairo2" at http://paste.lisp.org/display/81128 19:54:20 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 19:54:36 doesn't have deps, though - I haven't bothered setting deps, so you need to install all of those projects after adding them to clbuild 19:55:05 mind you, haven't tested it yet - I know it compiles correctly :) 19:55:11 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 19:56:39 plage [n=user@83.224.64.17] has joined #lisp 19:56:42 Good evening. 19:56:52 Good evening, plage. 19:57:24 p_l: well, at least it compiles correctly. That's a good thing to start with. I'm going to update a lot of stuff, starting with sbcl, then stumpwm, then clbuild and whatever I need to do to get that f*ck working :D 19:57:43 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 19:57:51 p_l: it's frustrating to see a lib I need failing to compile 19:58:00 *p_l* wonders if he can integrate CommonQt with cl-cairo2 and cl-2d 19:58:08 -!- testo [n=testo@81-233-151-247-no82.business.telia.com] has left #lisp 19:58:33 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 19:58:49 hello plage :) 19:59:34 klausi_ [n=klausi@port-92-193-70-54.dynamic.qsc.de] has joined #lisp 19:59:55 cp2: btw, apropos goto: I'm making a Finite State Machine as main logic, autogenerated from FSM description into very tight goto-based code. :> 20:01:29 cavesnow [n=cavesnow@utente8Timpano.sns.it] has joined #lisp 20:01:58 hey fe[nl]ix, back home? 20:03:06 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:03:46 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 20:04:51 Hrm. Phone call from some dude in the UK who's also been screwed by a company. What are the odds. :-) 20:05:37 plage: I arrived 30 minutes ago 20:05:54 tic: We all get screwed by some company on a daily basis just by going to the grocery store. 20:06:16 fe[nl]ix: Ah, good. We are leaving Milan tomorrow morning. 20:06:20 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:06:49 plage, not in the ballpark of 4k EUR though? 20:07:00 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 20:07:07 not on a daily basis no, but over the year, surely. 20:08:16 tic: in what sense "screwed"? 20:08:26 Hun [n=hun@pd956be5d.dip0.t-ipconnect.de] has joined #lisp 20:08:46 slackaholic [i=1000@187-25-138-51.3g.claro.net.br] has joined #lisp 20:08:53 -!- abeaumont [n=abeaumon@84.76.48.250] has quit [Read error: 110 (Connection timed out)] 20:09:33 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:10:08 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 20:10:24 p_l, doing contract work without getting paid. they did do some heavy bank scam (25mil EUR), too, so I wasn't the only one. see http://mikael.jansson.be/log/and-justice-for-all 20:11:33 -!- a-s [n=user@92.85.204.10] has quit [Remote closed the connection] 20:11:43 a-s [n=user@92.85.204.10] has joined #lisp 20:11:58 tic: wow... 20:12:03 tic: 4k hurts. that sounds like about what I lost when a US customer didn't pay on time a couple years back, just from inflation. 20:12:23 antifuchs, hoh, wow. that's some inflation for you! (funny, but I guess it still sucked) 20:12:54 well, actually it was just the $ dropping like crazy 20:12:56 p_l, no biggie. apparently they have their re-trial now, and that guy who called me is going to expose some "sensitive work" to the media around the trial. will be interesting to see. 20:13:08 tic: You did the right thing to put it on a web server. 20:13:40 it makes it cheaper for europe and the rest of the world to buy american goods 20:14:08 -!- ejs1 [n=eugen@91-116-112-92.pool.ukrtel.net] has quit ["This computer has gone to sleep"] 20:14:08 plage, I hope so. they're scum. 20:14:55 i had a dream that we were melting down change here because the government had gone bankrupt and it's worth more as metal 20:15:20 on topic.. backends for mcclim was discussed here a while ago? anyone taking up an ncurses backend, by chance? :-) 20:15:53 tic: not sure I want to touch the terminal backend gilbert started a couple years back (: 20:15:59 but that would be the place to start 20:16:10 I looked at it. 20:16:24 from time to time I wonder how to deal with the rat. 20:16:38 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 20:17:03 there are VTs that pass through mouse clicks 20:17:19 best to look at how midnight commander and others do it 20:17:39 yeah, gdm and such. maybe there's an interface in ncurses; haven't looked at it. 20:17:48 -!- klausi [n=klausi@port-92-193-70-54.dynamic.qsc.de] has quit [Read error: 110 (Connection timed out)] 20:19:12 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:19:39 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 20:20:16 -!- Joreji [n=user@42-104.eduroam.RWTH-Aachen.DE] has quit [No route to host] 20:21:10 afk - going back to dorm and hopefully getting some sleep 20:23:43 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:24:43 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 20:29:46 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:30:11 R0b0t1 [n=Sid@unaffiliated/r0b0t1] has joined #lisp 20:30:51 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 20:30:59 Hello, I'm a bit new to lisp... How might I go about looping through and checking if a string contains any key in a hash table, and if it does, do something (like increment a counter). 20:31:45 -!- derekv [i=w8ur3fif@c-76-112-240-178.hsd1.mi.comcast.net] has quit [Read error: 60 (Operation timed out)] 20:32:04 Or would I be better off with something besides a hash table? 20:32:07 R0b0t1: strings don't contain keys. They contain characters. 20:32:14 R0b0t1: so you should precise your meaning. 20:32:19 Well, I know... 20:32:21 Gimme a sec. 20:32:24 derekv [i=o5hallvc@c-76-112-240-178.hsd1.mi.comcast.net] has joined #lisp 20:32:31 a string? really? (let ((counter 0)) (dotimes (i (length string) counter) (when (gethash (char string i) table) (incf counter)))) 20:32:50 I want to search a string of characters to see if any substring of those characters is a key for an element of a hashtable 20:33:00 Although using a different data structure might be better... 20:33:14 R0b0t1: How about a trie, instead of a hash table? Good for prefixes. 20:33:20 Ok. So you first have to generate all the substrings of a string. 20:33:24 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:33:43 unless your hash table is huge, you might want to check all current keys for whether they're present in your string 20:33:47 In particular, by using a trie you don't need to consider all substrings of the string: just all suffixes of it. 20:34:21 Well, unless the string is small. What is small? 20:34:25 I'm assuming lisp has a trie type/structure? 20:34:29 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 20:34:35 R0b0t1: there are libraries. 20:34:43 Well, the string I'm considering would be a sentence, really, delimited by spaces. 20:34:48 I would be checking words of the string. 20:34:57 well, that's a really very different problem 20:35:06 if you're looking only for whole words, not part of words 20:35:19 Hopefully it makes it much simpler? 20:35:25 that means the problem is "split string, then lookup in table" because you have your boundaries defined already 20:35:51 You said "any substring" 20:36:01 "ny su" is a substring of "any substring", for example. So we thought you had a much more complicated problem. 20:36:06 Hmm... I see. 20:36:23 splitting on words, on the other hand, will depend on how you want to treat punctuation 20:36:46 Split at spaces, ignore any punctuation. 20:36:56 try cl-ppcre for dealing with that, then just loop over your produced list of words 20:37:05 So in the above, "spaces," might be split out, but remove the ",". 20:37:42 -!- ejs [n=eugen@91-116-112-92.pool.ukrtel.net] has quit [Read error: 110 (Connection timed out)] 20:38:33 GrayShade [i=GrayShad@79.117.188.210] has joined #lisp 20:38:38 can I put a reader macro on (? 20:39:02 jmbr_ [n=jmbr@243.32.220.87.dynamic.jazztel.es] has joined #lisp 20:39:32 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:39:37 GrayShade: Sure. The only thing you can't redefine is number syntax and ":" 20:40:13 so, in theory, I could keep a stack of the parsed s-expressions and have access to the parent ones? 20:40:25 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 20:40:52 mmm...sort of 20:40:56 :) 20:41:06 s/parsed/read/ 20:41:16 iceknight [n=iceknigh@nas-12-053.dialup.farlep.net] has joined #lisp 20:41:25 you have no way of distinguishing the case where a reader macro or #. calls READ on something which is not the same input 20:42:09 that's normal/fine, I guess 20:42:24 then go ahead! 20:42:35 you can use read-delimited-list to handle )s 20:43:19 I was just curious, I've never saw anyone doing this (not that I've looked at too much LISP code) 20:43:26 Lisp* 20:43:44 thanks :) 20:44:59 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:45:34 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 20:47:01 -!- athos [n=philipp@92.250.250.68] has quit [Remote closed the connection] 20:47:21 athos [n=philipp@92.250.250.68] has joined #lisp 20:47:52 -!- AllNight^ [n=nobody@ai-core.demon.co.uk] has quit [Read error: 110 (Connection timed out)] 20:48:07 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 20:52:51 -!- jmbr [n=jmbr@229.32.220.87.dynamic.jazztel.es] has quit [Read error: 110 (Connection timed out)] 20:52:55 -!- Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has quit [Read error: 113 (No route to host)] 20:54:53 Xach [n=xach@unnamed.xach.com] has joined #lisp 20:56:33 hello, sbcl friends. I am trying to use sb-sprof on mac os x leopard intel and it does not seem to be profiling what i want to profile. if i use (with-profiling ...) it reports 0 samples. if i use start-profiling/stop-profiling it displays only slime/swank calls. do you know what i might be doing wrong? 20:56:33 Xach, memo from kpreid: silly planet lisp idea: have the authors' sparklines show non-lisp (category filtered out) posts, distinctly, so as to distinguish no-activity from nonlisp-activity 20:56:50 -!- xan [n=xan@9.Red-83-42-12.dynamicIP.rima-tde.net] has quit [Read error: 110 (Connection timed out)] 20:57:38 *Xach* makes a note 20:57:52 (the hard part is making it uncluttered) 20:58:11 I think unexpected 0-samples is a bit of known sprof flakiness 20:58:40 and you should just try again. But please continue to assume there's a better idea... 20:58:58 -!- GrayShade [i=GrayShad@79.117.188.210] has quit [] 20:59:07 when i tried it earlier, sbcl crashed with something like "interrupt already pending", so updated to HEAD 20:59:19 now it runs without crashing, but doesn't produce what i need 20:59:21 -!- cavesnow [n=cavesnow@utente8Timpano.sns.it] has quit [Connection reset by peer] 20:59:42 cavesnow [n=cavesnow@utente8Timpano.sns.it] has joined #lisp 21:00:19 <_3b> Xach: any opinion on API for radial and multi-stop gradients in vecto? 21:01:25 mejja [n=user@c-87bae555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #lisp 21:01:34 -!- cavesnow [n=cavesnow@utente8Timpano.sns.it] has quit [Read error: 54 (Connection reset by peer)] 21:01:43 _3b: i'm not sure. i think last time i thought about it, i liked the incremental building of a gradient, rather than sticking it all into a single call. 21:01:51 cavesnow [n=cavesnow@utente8Timpano.sns.it] has joined #lisp 21:02:20 *Xach* is currently trying to speed up vecto/cl-vectors for a special case, but is being thwarted by profiling 21:03:00 <_3b> looked like a few well placed inlines could help a bunch with gradients at least 21:03:33 i'm having problems with plain old drawing & stroking 21:05:46 http://xach.com/img/cl-animation.gif took 7 seconds to draw 21:05:50 <_3b> lerp and imult i think it was, looks like they might affect normal drawing too 21:06:15 <_3b> are you using clip masks? 21:07:14 nope. 21:07:15 Xach: looks very nice 21:08:28 thanks. i want to make a generator for wigflip, but i want it to make them very quickly. 21:08:57 here's a sort of abstract question (not lisp specific). If creating a polymorphic library for different types of collections (aka containers,aka ets,whatever), would it ever make sense that a container have a "stack" interface (push and pop operations make sense), but not be addressable (you can not uniquely refer to individual elements) 21:09:21 I don't suppose there are any music loving linux and threaded sbcl users here interested in testing my audio code by playing with the mp3 player example? 21:10:37 derekv: when you have a stack, on don't go inside it. You can only push and pop it. At most you can get the top element, but it's actually equivalent to (let ((top (pop stack))) (values top (push top stack))) 21:10:39 yakman_ [n=bot@94-194-134-155.zone8.bethere.co.uk] has joined #lisp 21:11:03 hello yakman_ 21:11:10 hello there 21:11:44 hefner: i'm interested 21:12:50 <_3b> Xach: also, any opinion on making a bunch of the vecto API generic functions so it could support other backends for drawing? 21:13:08 pjb, yea I see what your saying. Because pop is a destructive operation... 21:14:43 -!- Davse_Bamse [n=davse@4306ds4-soeb.0.fullrate.dk] has quit ["leaving"] 21:14:45 -!- schme [n=marcus@c83-249-82-162.bredband.comhem.se] has quit [Read error: 113 (No route to host)] 21:14:53 stassats`: http://vintage-digital.com/hefner/hacks/mixalot-test-1.tar.gz 21:15:14 -!- tombom [i=tombom@wikipedia/Tombomp] has quit ["Peace and Protection 4.22.2"] 21:15:22 once you symlink the three systems so asdf can find them, there's a "mixalot/examples/shuffletron.sh" that should Just Work. It expects you have rlwrap installed, though. 21:16:37 -!- cavesnow [n=cavesnow@utente8Timpano.sns.it] has quit [Remote closed the connection] 21:16:53 derekv: not necessarily. You can implement a purely functionnal stack adt. 21:17:05 cavesnow [n=cavesnow@utente8Timpano.sns.it] has joined #lisp 21:17:33 I was thinking about different collection types in terms of ordering theory, which makes it look like a stack should be linearly orderable, which in turn seems to imply that you can map elements to integers, thus it is addressable 21:18:49 *nyef* notes that there are some stack implementations where you can only access the top two elements directly. 21:19:12 -!- blbrown [n=Berlin@71.236.25.127] has quit ["Ex-Chat"] 21:19:28 pjb with a functional stack, you could pop n-1 times then get the top, thus making it addressable. but i think you helped me answer my question. push/pop operations shouldn't imply the existance of an get_nth type operation 21:19:44 Well, you can always pop from one stack and push on another one, repeatitively, until you get the nth item, and push back to the original stack. 21:19:44 duh, scanning 30k files wasn't a good idea 21:19:58 it should only take a few seconds. 21:20:07 (that's why I disabled id3 scanning by default, though) 21:20:09 derekv: so the question is whether it's feasible in O(1) with a given implementation. 21:20:13 ... through nfs 21:20:16 hahaha 21:20:19 -!- lhz [n=shrekz@c-b9aa72d5.021-158-73746f34.cust.bredbandsbolaget.se] has quit ["Leaving"] 21:20:42 -!- gigamonkey [n=user@adsl-76-254-16-215.dsl.pltn13.sbcglobal.net] has quit [Remote closed the connection] 21:20:49 gigamonkey [n=user@adsl-76-254-16-215.dsl.pltn13.sbcglobal.net] has joined #lisp 21:21:19 pjb, i wasn't concerned with that for this exercise, just wanted to map out a different possible categorization for collections on my own 21:21:52 so long as it can be done in finite time with finite memory 21:22:53 hefner: seems to work 21:23:02 prxq [n=mommer@g228078003.adsl.alicedsl.de] has joined #lisp 21:23:11 hi 21:23:14 stassats`: cool. can you figure out how to use it? 21:23:49 well, i typed help and read what it said 21:24:32 so I guess in my context it is addressable, but from a practical standpoint it is not a great idea 21:24:40 stassats`: cool, thanks. 21:25:08 and i miss stop command 21:25:48 (first thing i did to stop awful sound from laptop dynamics was stop, then pause) 21:25:49 heh. pause isn't good enough for you? 21:25:57 kejsaren [n=kejsaren@91.95.25.111] has joined #lisp 21:26:26 it's not intuitive 21:26:30 (given how braindead alsa is, there really ought to be a stop command that will release the sound device and kill the mixer) 21:26:50 Odin- [n=sbkhh@adsl-2-92.du.snerpa.is] has joined #lisp 21:27:05 hefner: alias stop=reboot 21:27:27 in mpd, which i'm using, stop and pause have different semantics 21:27:35 -!- slackaholic [i=1000@187-25-138-51.3g.claro.net.br] has left #lisp 21:28:03 at least I'm consistent, by not having a "play" command either. 21:29:00 N is implicit for play N 21:29:17 -!- R0b0t1 [n=Sid@unaffiliated/r0b0t1] has left #lisp 21:30:36 *stassats`* wants for a long time to refine his music work-flow 21:30:57 or listen-flow 21:32:19 plutonas [n=plutonas@c-83-233-152-13.cust.bredband2.com] has joined #lisp 21:32:53 same here (fancy that). 21:35:40 -!- MrSpec [n=NoOne@82.177.125.6] has quit [Remote closed the connection] 21:37:34 -!- _JFT_ [n=_JFT_@modemcable183.11-202-24.mc.videotron.ca] has quit [] 21:42:22 _3b: i would like to do exactly that 21:42:38 _3b: every time i've started to work on it, i ran out of time and moved on to something else 21:43:28 <_3b> yeah, don't know if i'll end up having time or not either :) 21:44:13 -!- Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has quit [Remote closed the connection] 21:44:31 <_3b> hacked enough to attach vecto to the swf stuff i'm working on, but not really sure if the places i picked to make generic are good or not 21:44:49 -!- athos [n=philipp@92.250.250.68] has quit [Remote closed the connection] 21:45:20 athos [n=philipp@92.250.250.68] has joined #lisp 21:45:50 _3b: i'd like to at least support PDF output too 21:49:32 Jacob_H [n=jacob@92.4.222.238] has joined #lisp 21:53:10 -!- rdd [n=user@c83-250-157-93.bredband.comhem.se] has quit [Read error: 54 (Connection reset by peer)] 21:54:57 schoppenhauer [n=css@unaffiliated/schoppenhauer] has joined #lisp 21:55:07 -!- ztzg [n=dash@dslb-084-057-007-159.pools.arcor-ip.net] has quit [Read error: 104 (Connection reset by peer)] 21:56:29 -!- kejsaren [n=kejsaren@91.95.25.111] has quit [Read error: 110 (Connection timed out)] 21:58:51 rdd [n=user@c83-250-157-93.bredband.comhem.se] has joined #lisp 22:04:10 -!- schoppenhauer [n=css@unaffiliated/schoppenhauer] has quit [Remote closed the connection] 22:05:46 -!- nha [n=prefect@137-64.105-92.cust.bluewin.ch] has quit [Read error: 104 (Connection reset by peer)] 22:10:33 -!- user__ [n=user@p57A7CE24.dip.t-dialin.net] has quit ["leaving"] 22:11:44 merimus [n=merimus@c-67-171-83-6.hsd1.pa.comcast.net] has joined #lisp 22:14:59 -!- merimus [n=merimus@c-67-171-83-6.hsd1.pa.comcast.net] has quit [] 22:18:53 -!- mejja [n=user@c-87bae555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 22:19:22 -!- Davidbrcz [n=david@nsc.ciup.fr] has quit ["Ex-Chat"] 22:23:39 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 22:25:01 iv made an ircbot which has an !eval command that evaluates expressions, sometimes some unkind people make it evaluate an infinate loop. 22:25:04 now i was thinking of somehoe causing eval to timeout after X seconds 22:25:17 yakman_: you didn't see that coming? 22:25:20 i did 22:25:30 but im just thinking about ways to counter it 22:25:31 wait till someone makes it evaluate rm -rf $HOME 22:25:38 it runs on another account 22:25:42 specially made for it 22:25:45 with no sudo 22:25:59 I hope it's chrooted 22:26:19 nope 22:26:30 then it's a serious security risk still 22:26:37 ok 22:26:40 Is user code allowed to send arbitrary text to the channel? 22:26:46 yes 22:26:48 you may want to look at geordi, which does something similar for C++, and is very secure 22:26:50 potential for flooding too 22:26:59 written in haskell 22:27:04 so apart from starting another thread, any ideas on how to make eval timeout? 22:27:10 Indeed. Have you considered the possibility of a !eval quine? 22:27:13 see geordi's design. 22:27:34 in it, Eelis has addressed all the obvious issues and quite a few nonobvious ones too 22:28:02 you might even be able to just s/g++/sbcl/ or whatever and replace the prelude and get a working setup. 22:28:56 so it would run in another sbcl 22:29:12 that's really the only way to guarantee any significant amount of security 22:29:19 afaik anyway 22:29:29 note that geordi's approach is linux-specific 22:29:32 won't even work on other unixes. 22:30:08 (it attaches to the compiler's and, afterwards, produced executable's process and intercepts syscalls) 22:30:11 yakman_: get interested in MAC systems for Linux 22:30:20 (or other OS, whatever you are running) 22:30:36 ok 22:30:38 I personally recommend TOMOYO, it's quite nice and easy to configure, compared to SELinux 22:30:53 -!- gemelen [n=shelta@shpd-78-36-164-133.static.vologda.ru] has quit ["I wish the toaster to be happy, too."] 22:30:58 those are good, but I've been told that they're not sufficient for securing the execution of arbitrary code 22:31:03 you really have to lock things down tight. 22:31:17 Ralith: TOMOYO allows you to choose even which syscalls you can call 22:31:23 oh nice! 22:31:46 I was trying to clone geordi more portably a while back, and my eventual design was going to be to run everything in a VM which has its memory/disk state reset after every execution 22:31:52 you guys are mad if you even trust your kernel. putting the sandbox in virtualized operating system instance is the minimum sane requirement. 22:32:09 but there was some concern about code being able to break out of the VM, and I never even got the VMs to work properly anyway 22:32:19 and iirc they added support for permissions on ioctl() 22:32:21 hefner: You really trust your virtualizer that much? >:-) 22:32:28 heh. 22:33:01 of course, one does have to remember that the code is limited to the length of an IRC message 22:33:10 but it's probably best to assume that that's no limitation. 22:33:31 its not, to a determined person 22:33:37 exactly. 22:33:47 (defvar) some stuff then eval or something like that 22:33:54 As the evalbot will inevitably be repurposed for a web interface, limits are hardly limits. 22:33:58 hooray! consensus reached! conversation complete! 22:34:08 consensus? 22:34:14 that it's ultimately insecure no matter how you do it? 22:34:54 The only way to secure a unix box is to turn it off and bury it in reinforced concrete. 22:35:05 that doesn't secure it against nukes. 22:35:08 Ralith: and that's not a joke 22:35:13 unfortunately 22:35:14 or meteroites 22:35:14 hmmm, it seems you can only control select group of syscalls now, but you can sanitize argv[] and defer some decisions to special, separate processes (like whether exec() should succeed) 22:35:34 Ralith: Are you really going to be able to recover data from a system after it's been through that? 22:35:45 yakman_: don't be too discouraged, though; it's been *ages* since anyone's managed to exploid geordi. 22:36:03 nah im afriad i already am 22:36:05 nyef: exactly; it's vulnerable to a nuke-based DoS. 22:36:12 exploit* 22:36:20 the only used by my friends, who i trust enough not to rm -fr * 22:36:35 *p_l* is gonna pester TOMOYO devs for syscall policy 22:36:36 but as a joke they make infinate loop 22:36:46 rtra_ [n=user@unaffiliated/rtra] has joined #lisp 22:37:51 yakman_: well, if you really do trust your users (which you probably shouldn't), you could probably just launch the eval in another thread, and kill it in N seconds or something. 22:38:05 yeah ok 22:38:07 Ralith: Umm... -What- service? It's completely enclosed in reinforced concrete! 22:38:08 perfect security is for people who, well, whatever. :-) 22:38:21 keep in mind that if you have a specific trusted set of users, you'll need an authentication mechanism to prevent others from abusing it 22:38:23 nyef well i know banks have servers in bunkers or something 22:38:28 nyef: the service of having data to be restored from. 22:38:29 There's no power and no connectivity. 22:38:37 Ralith i got the auth method 22:38:42 well, it checks only irc nicks 22:38:51 i suppose i could make them login first or something like that.. 22:38:51 And no way to get at it physically. 22:38:51 you could check that they're logged in to nickserv 22:39:06 a bit flimsy, but probably enough for practical purposes 22:39:55 perhaps the power could be provided by a nuclear reactor 22:40:02 connectivity is harder though.. 22:40:17 just extract energy from a radiation source, like sattelites do 22:40:19 even so, it could be cracked or ddosed through its connectivness 22:40:20 yakman_: As soon as you have connectivity you have insecurity. 22:40:23 yeah 22:40:26 simple and reliable 22:40:31 and can be buried with it 22:40:38 'course, you'll need cooling 22:40:40 dont satellites get it from the sun? 22:40:42 which is a vulnerable part 22:40:46 solar panels 22:40:46 The point is that it's -off- and can't be got at. 22:40:46 yakman_: use a blackhole for power source 22:40:50 yakman_: only the ones which hang around. 22:40:52 yakman_: depends how far they fly 22:41:13 probably sould have said probes, or something 22:41:18 i think the voyagers had nuclear reactors 22:41:44 -!- AntiSpamMeta [n=MetaBot@unaffiliated/afterdeath/bot/antispambot] has quit [Remote closed the connection] 22:41:54 hmm 22:42:03 not exactly the reactors we would use 22:42:06 cooling is the real problem. 22:42:07 these had no moving parts 22:42:25 yeah 22:42:35 ... Of course they had moving parts. 22:42:40 parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 22:42:46 nyef i think the power source didnt 22:42:52 it was a thermocople 22:43:03 *nyef* points out that heat -is- motion. 22:43:05 uses heat from plutonium and cold from outer space to create a DC 22:43:11 AntiSpamMeta [n=MetaBot@unaffiliated/afterdeath/bot/antispambot] has joined #lisp 22:43:22 you know what i mean.. 22:43:29 Ralith: Actually, they had good enough cooling that they had too heat it up... :P 22:43:42 pulsejet engines have no moving parts, even though they get hot.. 22:43:46 p_l: yeah, but they weren't buried in reinforced concrete. 22:43:50 and they didn't have to be nukeproof 22:43:56 And this is entirely missing the point, which is that the computer -wouldn't be running-. 22:44:12 ah ok 22:44:17 it might as well not exist 22:44:30 Precisely! 22:44:31 unless you're storing files, in which case just store the harddrive 22:44:31 -!- AntiSpamMeta [n=MetaBot@unaffiliated/afterdeath/bot/antispambot] has quit [Remote closed the connection] 22:44:56 Why bother storing them if you're never going to be able to get them back? 22:45:24 the only reason i can think of is some kind of time capsule 22:45:31 That can't be opened? 22:45:45 if you want to make it impossible to get back, why not just nuke it yourself? 22:45:48 AntiSpamMeta [n=MetaBot@unaffiliated/afterdeath/bot/antispambot] has joined #lisp 22:45:55 possibly technology will advance enough in 9000 years to be able to open concrete 22:46:10 and hopefully people still know how to read the file formats... 22:46:15 Joreji [n=user@42-104.eduroam.RWTH-Aachen.DE] has joined #lisp 22:46:33 Won't the disk have degaussed by then? 22:46:33 Plastic would have degraded if you store CDs... 22:46:35 ThomasI [n=thomas@unaffiliated/thomasi] has joined #lisp 22:46:55 And this conversation started out silly and only got worse. 22:46:57 nickel-alloy discs should be ok 22:47:12 sane convos aren't any fun anyway 22:47:19 yeah 22:47:26 i got bored of my evalbot already 22:47:32 lets talk about space 22:47:43 *yakman_* hides before *offtopic* 22:47:50 parodyof` [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has joined #lisp 22:48:26 you should see what its like in ##chemistry ,they are always talking about marijuana... 22:49:27 Ask them about cough syrup instead? 22:49:29 rosetta disk promises 10,000 years 22:50:07 rosetta disk sounds intresting 22:50:33 god i love wikipedia.. 22:50:39 -!- rtra [n=user@unaffiliated/rtra] has quit [Connection timed out] 22:50:44 -!- parodyof` [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Remote closed the connection] 22:53:07 -!- ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has quit [Read error: 110 (Connection timed out)] 22:53:11 MrSpec [n=NoOne@82.177.125.6] has joined #lisp 22:55:31 elderk [n=zk@122-57-254-205.jetstream.xtra.co.nz] has joined #lisp 22:56:43 -!- elderk [n=zk@122-57-254-205.jetstream.xtra.co.nz] has left #lisp 22:57:20 -!- Jacob_H [n=jacob@92.4.222.238] has quit [Read error: 110 (Connection timed out)] 22:58:43 dandersen [n=dkcl@metabug/dandersen] has joined #lisp 23:01:33 -!- parodyoflanguage [n=user@keholmes.oregonrd-wifi-1261.amplex.net] has quit [Read error: 110 (Connection timed out)] 23:04:38 yakman_: and frank hates you for it =p 23:04:46 -!- dandersen [n=dkcl@metabug/dandersen] has quit ["leaving"] 23:04:59 well i dont know who frank is 23:05:07 so idc 23:05:09 yes you do 23:05:11 frank_ 23:05:16 oh 23:05:20 i know who cp2 is as well.. 23:05:23 aka c|p 23:05:26 just realised now 23:05:28 hah 23:06:23 oh yes i remember frank's views on wikipedia 23:07:14 hey voyager isnt that far.. 23:07:24 i thought it would take weeks for messages to go 23:07:31 but the round trip time is about 30 hours 23:07:51 coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has joined #lisp 23:08:30 -!- Xach [n=xach@unnamed.xach.com] has left #lisp 23:08:49 yakman_: no propulsion = stays here. 23:08:56 whatever the speed. 23:09:10 for all practical purposes. 23:09:13 propulsion is only needed to accelerate 23:09:20 My point. 23:09:43 i dont quite understand it 23:10:04 Without continuous acceleration, there's no way to reach any significant percentage of lightspeed. 23:10:22 yeah thats no problem 23:10:22 unless you pray for it of course 23:10:24 pjb: !relative 23:10:38 i was talking about the time it takes for messages to go to voyager and back 23:10:47 that depends on mostly on distance from earth 23:16:20 -!- slash_ [n=Unknown@p5DD1D386.dip.t-dialin.net] has quit [Client Quit] 23:18:13 npoektop [n=user@85.202.112.90] has joined #lisp 23:19:03 can I return more than 1 value from function without putting values to list ? 23:19:31 MrSpec: yes. 23:19:33 clhs values 23:19:33 http://www.lispworks.com/reference/HyperSpec/Body/a_values.htm 23:20:28 thx :) 23:20:55 -!- jmbr_ [n=jmbr@243.32.220.87.dynamic.jazztel.es] has quit [Read error: 110 (Connection timed out)] 23:20:57 slyrus_ [n=slyrus@adsl-68-121-172-169.dsl.pltn13.pacbell.net] has joined #lisp 23:26:51 -!- Hun [n=hun@pd956be5d.dip0.t-ipconnect.de] has quit [Remote closed the connection] 23:27:59 Phoodus [i=foo@ip68-231-38-131.ph.ph.cox.net] has joined #lisp 23:33:14 I take it this is not supposed to happen http://codepad.org/o1NC0p6I 23:33:59 (fresh install of sbcl 1.0.28 with (asdf-install:install 'mcclim) entered) 23:36:55 install flexichain first? 23:39:28 -!- elias` [n=me@unaffiliated/elias/x-342423] has quit ["leaving"] 23:41:28 stassats`: Oh. I wasn't sure if it downloaded it already, then found it to be the wrong version. 23:41:38 -!- Odin- [n=sbkhh@adsl-2-92.du.snerpa.is] has quit [] 23:41:40 Is there a way to automatically get unresolved dependencies? 23:42:20 Quadrescence: why not clbuild? :D 23:42:33 asdf was slightly broken recently with respect to component's versions 23:43:13 stassats`: someone pushed for changes in versioning support? 23:43:37 how come sbcl got more popular then cmucl ? 23:43:51 yakman_: because sbcl can be modified easily from sbcl. 23:43:58 p_l: asdf supports versions since i don't know when 23:44:03 ? 23:44:08 yakman_: the generation process of cmucl is much more complicated. 23:44:17 yakman_: it's the same reason why unix got popular. 23:44:18 stassats`: yes, but there was talk on modifying find-system to support versioned loads 23:44:23 ok then 23:44:56 -!- Samy is now known as sbahra 23:44:59 as in having several different versions on disk and making asdf load the correct one... 23:45:58 p_l: I am not very familiar with asdf or clbuild, to be honest. 23:47:23 ianmcorvidae|alt [n=ianmcorv@fsf/member/ianmcorvidae] has joined #lisp 23:47:32 slackaholic [i=1000@187-25-138-51.3g.claro.net.br] has joined #lisp 23:56:34 -!- slackaholic [i=1000@187-25-138-51.3g.claro.net.br] has quit [Remote closed the connection] 23:57:12 -!- MrSpec [n=NoOne@82.177.125.6] has quit ["BB!"] 23:58:24 -!- hrgh [n=ulf@h-85-24-219-170.NA.cust.bahnhof.se] has quit [Read error: 110 (Connection timed out)] 23:58:56 ianmcorv1dae|alt [n=ianmcorv@ip70-162-184-138.ph.ph.cox.net] has joined #lisp 23:59:11 Erm, how about this error? http://codepad.org/fqtBdSjk