00:05:00 -!- chessguy [n=chessguy@pool-173-79-200-142.washdc.fios.verizon.net] has quit ["Leaving"] 00:23:25 mark` [n=user@74.196.9.26] has joined #lisp 00:24:11 -!- buggarag` [n=user@xdsl-87-78-72-49.netcologne.de] has quit [Remote closed the connection] 00:25:09 etoxam [n=eldragon@84.79.67.254] has joined #lisp 00:25:33 -!- etoxam [n=eldragon@84.79.67.254] has quit [Read error: 104 (Connection reset by peer)] 00:26:15 -!- amnesiac [n=amnesiac@p3m/member/Amnesiac] has quit ["Leaving"] 00:30:57 maxote [n=eldragon@84.79.67.254] has joined #lisp 00:31:33 -!- Odin- [n=sbkhh@157-157-15-43.dsl.dynamic.simnet.is] has quit [] 00:36:03 b4|hraban [n=b4@a83-163-41-120.adsl.xs4all.nl] has joined #lisp 00:37:42 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 00:38:10 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 00:38:29 pkhuong_ [n=pkhuong@modemcable110.189-201-24.mc.videotron.ca] has joined #lisp 00:41:36 cadabra [n=cadabra@17.224.12.65] has joined #lisp 00:42:33 dysinger [n=tim@71.216.13.30] has joined #lisp 00:43:38 -!- lemoinem [n=swoog@modemcable110.189-201-24.mc.videotron.ca] has quit [Nick collision from services.] 00:43:41 sellout [n=greg@c-24-128-50-176.hsd1.ma.comcast.net] has joined #lisp 00:43:51 lemoinem [n=swoog@modemcable110.189-201-24.mc.videotron.ca] has joined #lisp 00:43:51 -!- c|mell [n=cmell@p29047-ipngn401marunouchi.tokyo.ocn.ne.jp] has quit [Read error: 110 (Connection timed out)] 00:50:43 -!- sohail [n=Sohail@unaffiliated/sohail] has quit [Connection reset by peer] 00:50:58 _sohail_ [n=Sohail@d207-81-121-15.bchsia.telus.net] has joined #lisp 00:51:00 -!- _sohail_ [n=Sohail@d207-81-121-15.bchsia.telus.net] has quit [Read error: 104 (Connection reset by peer)] 00:52:11 sohail [n=Sohail@d207-81-121-15.bchsia.telus.net] has joined #lisp 00:54:56 -!- pkhuong [n=pkhuong@modemcable110.189-201-24.mc.videotron.ca] has quit [Read error: 113 (No route to host)] 01:02:23 -!- ia [n=ia@89.169.189.230] has quit [Read error: 110 (Connection timed out)] 01:03:33 ia [n=ia@89.169.189.230] has joined #lisp 01:06:24 -!- schoppenhauer [n=css@unaffiliated/schoppenhauer] has quit [Remote closed the connection] 01:09:16 araujo [n=araujo@gentoo/developer/araujo] has joined #lisp 01:09:37 _sohail_ [n=Sohail@d207-81-121-15.bchsia.telus.net] has joined #lisp 01:10:01 -!- sohail [n=Sohail@unaffiliated/sohail] has quit [Remote closed the connection] 01:14:17 -!- _sohail_ [n=Sohail@d207-81-121-15.bchsia.telus.net] has quit [Client Quit] 01:14:39 _sohail_ [n=Sohail@d207-81-121-15.bchsia.telus.net] has joined #lisp 01:15:33 -!- danlei` [n=user@pD9E2E99D.dip.t-dialin.net] has quit [Remote closed the connection] 01:16:01 -!- attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has quit [Read error: 60 (Operation timed out)] 01:16:19 coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has joined #lisp 01:18:22 fusss [n=chatzill@ip70-179-113-121.dc.dc.cox.net] has joined #lisp 01:19:17 -!- Corun [n=Corun@94-194-29-31.zone8.bethere.co.uk] has quit ["Bye!"] 01:19:36 -!- The-Kenny [n=moritz@p5087EC54.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 01:19:58 anyone here ever use cl-terrace? 01:20:13 Corun [n=Corun@94-194-29-31.zone8.bethere.co.uk] has joined #lisp 01:20:43 -!- mark` [n=user@74.196.9.26] has quit [Remote closed the connection] 01:21:48 mark` [n=user@74.196.9.26] has joined #lisp 01:26:13 chessguy_work [n=chessguy@pool-173-79-200-142.washdc.fios.verizon.net] has joined #lisp 01:27:41 -!- chessguy_work is now known as chessguy 01:30:39 -!- Edward__ [i=Ed@AAubervilliers-154-1-41-16.w90-3.abo.wanadoo.fr] has quit ["« La POO c'est bien beau, mais en C au moins on va droit au but. »"] 01:31:17 fusss: no, but I don't see really strange things it is supposed to do, so perhaps you can pose your question? 01:31:28 -!- fusss [n=chatzill@ip70-179-113-121.dc.dc.cox.net] has quit [Operation timed out] 01:34:03 fusss [n=chatzill@ip70-179-113-121.dc.dc.cox.net] has joined #lisp 01:34:11 Vutral [n=vutral@nathan.66h.42h.de] has joined #lisp 01:40:08 -!- dialtone [n=dialtone@adsl-99-136-101-166.dsl.pltn13.sbcglobal.net] has quit [Read error: 60 (Operation timed out)] 01:40:40 -!- fvw [n=sdfpme@113.77.206.120] has quit [Remote closed the connection] 01:45:12 -!- blackened` [n=blackene@ip-89-102-208-138.karneval.cz] has quit [] 01:46:41 -!- legumbre_ is now known as legumbre 01:46:57 syamajala [n=syamajal@c-75-68-104-47.hsd1.ma.comcast.net] has joined #lisp 01:53:11 moocow [n=new@64.151.208.1] has joined #lisp 01:56:35 -!- dysinger [n=tim@71.216.13.30] has quit [] 01:57:08 -!- syamajala [n=syamajal@c-75-68-104-47.hsd1.ma.comcast.net] has quit ["Leaving..."] 02:03:55 -!- chessguy [n=chessguy@pool-173-79-200-142.washdc.fios.verizon.net] has quit ["Leaving"] 02:04:16 -!- saikat [n=saikat@adsl-75-36-155-135.dsl.pltn13.sbcglobal.net] has quit [] 02:04:36 -!- mark` [n=user@74.196.9.26] has quit [Remote closed the connection] 02:05:39 -!- fusss [n=chatzill@ip70-179-113-121.dc.dc.cox.net] has quit ["ChatZilla 0.9.84 [Firefox 3.0.10/2009042316]"] 02:09:42 -!- HET2 [i=diman@xover.htu.tuwien.ac.at] has quit ["This computer has gone to sleep"] 02:14:03 cpc26 [n=cpc26@72.170.156.242] has joined #lisp 02:14:04 hefner pasted "play an mp3" at http://paste.lisp.org/display/80627 02:16:22 -!- Axioplase_ is now known as Axioplase 02:18:48 -!- cadabra [n=cadabra@17.224.12.65] has quit [Remote closed the connection] 02:19:14 -!- cpc26 [n=cpc26@72.170.156.242] has quit [Client Quit] 02:19:29 cpc26 [n=cpc26@72.170.156.242] has joined #lisp 02:21:06 ace4016 [i=ace4016@cpe-76-168-248-118.socal.res.rr.com] has joined #lisp 02:23:48 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #lisp 02:24:35 -!- Corun [n=Corun@94-194-29-31.zone8.bethere.co.uk] has quit [Read error: 60 (Operation timed out)] 02:30:03 -!- mrsolo [n=mrsolo@nat/yahoo/x-da6e0b00fbbd29b1] has quit ["Leaving"] 02:32:55 chavo_ [n=user@c-66-41-11-10.hsd1.mn.comcast.net] has joined #lisp 02:33:13 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Remote closed the connection] 02:33:53 -!- chavo_ [n=user@c-66-41-11-10.hsd1.mn.comcast.net] has quit [Remote closed the connection] 02:38:51 Corun [n=Corun@94-194-29-31.zone8.bethere.co.uk] has joined #lisp 02:43:27 fvw [n=sdfpme@113.77.206.120] has joined #lisp 02:43:54 -!- dreish [n=dreish@minus.dreish.org] has quit [] 02:46:59 saikat [n=saikat@adsl-68-127-162-42.dsl.pltn13.pacbell.net] has joined #lisp 02:51:29 saikat_ [n=saikat@adsl-68-127-162-42.dsl.pltn13.pacbell.net] has joined #lisp 02:52:18 ThomasI [n=thomas@unaffiliated/thomasi] has joined #lisp 02:55:10 -!- saikat [n=saikat@adsl-68-127-162-42.dsl.pltn13.pacbell.net] has quit [Read error: 60 (Operation timed out)] 02:55:50 -!- fvw is now known as fwm 02:56:17 -!- fwm is now known as fvm 02:56:38 -!- fvm is now known as fvwm 02:57:06 -!- fvwm is now known as fvw 02:57:27 -!- fvw [n=sdfpme@113.77.206.120] has left #lisp 02:58:30 seejay [n=seejay@unaffiliated/seejay] has joined #lisp 02:58:58 spradnyesh [n=pradyus@nat/yahoo/x-62cedad32adcdfb8] has joined #lisp 02:59:32 -!- pinterface [n=pinterfa@knvl-static-09-0024.dsl.iowatelecom.net] has left #lisp 02:59:52 -!- abeaumont [n=abeaumon@84.76.48.250] has quit [Read error: 110 (Connection timed out)] 03:10:42 sexybaaron [n=sexybaar@c-68-42-43-61.hsd1.nm.comcast.net] has joined #lisp 03:14:43 -!- ikki [n=ikki@201.155.75.146] has quit ["Leaving"] 03:15:03 -!- mqt [n=tran@caledonia.rh.rit.edu] has quit ["Leaving."] 03:18:19 -!- ssttss [i=stepnem@173-19-7-99.client.mchsi.com] has quit [Read error: 60 (Operation timed out)] 03:19:28 mugrido [n=mugrido@adsl-76-199-8-109.dsl.chmpil.sbcglobal.net] has joined #lisp 03:21:52 ssttss [i=stepnem@173-19-7-99.client.mchsi.com] has joined #lisp 03:21:54 mrsolo [n=mrsolo@adsl-68-126-185-123.dsl.pltn13.pacbell.net] has joined #lisp 03:25:04 -!- mattrepl [n=mattrepl@c-76-104-2-182.hsd1.va.comcast.net] has quit [] 03:30:19 -!- b4|hraban [n=b4@a83-163-41-120.adsl.xs4all.nl] has quit ["Leaving"] 03:38:54 -!- mrsolo [n=mrsolo@adsl-68-126-185-123.dsl.pltn13.pacbell.net] has quit [Read error: 104 (Connection reset by peer)] 03:50:55 mrsolo [n=mrsolo@adsl-68-126-185-123.dsl.pltn13.pacbell.net] has joined #lisp 03:53:12 kmcorbett1 [n=Keith@c-76-119-215-57.hsd1.ma.comcast.net] has joined #lisp 03:54:21 tmh [n=thomas@pdpc/supporter/sustaining/tmh] has joined #lisp 03:54:27 Greetings. 03:54:28 -!- cpc26 [n=cpc26@72.170.156.242] has quit [Read error: 104 (Connection reset by peer)] 03:54:45 cpc26 [n=cpc26@72.170.156.242] has joined #lisp 03:57:32 hefner: shouldn't that be speakerboxxx? 03:58:28 -!- mugrido [n=mugrido@adsl-76-199-8-109.dsl.chmpil.sbcglobal.net] has quit ["Leaving"] 03:58:52 slyrus: they call me Mr. Ravoli 04:00:21 -!- mrsolo [n=mrsolo@adsl-68-126-185-123.dsl.pltn13.pacbell.net] has quit [Operation timed out] 04:03:16 -!- ThomasI [n=thomas@unaffiliated/thomasi] has quit [Remote closed the connection] 04:05:19 |stern| [n=seelenqu@pD9E43E3E.dip.t-dialin.net] has joined #lisp 04:11:27 -!- kmcorbett [n=Keith@c-76-119-215-57.hsd1.ma.comcast.net] has quit [Read error: 110 (Connection timed out)] 04:14:40 slyrus: I can save that for the version that plays video. 04:15:36 mrsolo [n=mrsolo@adsl-68-126-185-123.dsl.pltn13.pacbell.net] has joined #lisp 04:18:15 -!- benny` is now known as benny 04:19:28 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 04:23:32 -!- seelenquell [n=seelenqu@pD9E43E9C.dip.t-dialin.net] has quit [Read error: 101 (Network is unreachable)] 04:24:11 -!- Corun [n=Corun@94-194-29-31.zone8.bethere.co.uk] has quit ["Leaving..."] 04:29:05 -!- kmcorbett1 [n=Keith@c-76-119-215-57.hsd1.ma.comcast.net] has quit ["Leaving."] 04:29:12 jlf [n=user@netblock-208-127-247-67.dslextreme.com] has joined #lisp 04:31:04 sunwukong [n=vukung@ortros.den.rcast.u-tokyo.ac.jp] has joined #lisp 04:39:58 What's a good Lisp implementation? 04:40:03 for Mac OSX 04:40:41 SBCL, CCL 04:41:20 And it's absolutely necessary to have in order to use Lisp? 04:41:47 is that a riddle? 04:41:55 tseug: ... erm, you need an implementation of the language if you want to use it in practice... 04:41:58 no, any other lisp implementation would work as well 04:42:29 CCL is probably the best option for OSX, I guess 04:42:35 caoliver [n=oliver@75-134-208-20.dhcp.trcy.mi.charter.com] has joined #lisp 04:42:36 k, thanks. 04:42:46 as it's kind of its main environment 04:43:24 is there a link? 04:43:37 p_l: that depends on your definition of best, IYAM 04:43:38 can GCL be substituted? 04:43:52 why? 04:44:34 tseug: not really... it was kind of slow on catching up with standards :D 04:44:51 CCL is free, rgiht? 04:44:54 tight* 04:44:54 yes 04:44:58 right!! * 04:45:38 when I type ccl lisp on google, it gives me suggestions for gcl lisp.. 04:45:51 tseug: input Clozure Common Lisp 04:46:17 minion: tell tseug about ccl 04:46:17 tseug: have a look at ccl: OpenMCL is now called Clozure Common Lisp (CCL). http://www.cliki.net/ccl 04:46:26 OK 04:47:08 -!- mrsolo [n=mrsolo@adsl-68-126-185-123.dsl.pltn13.pacbell.net] has quit [Success] 04:47:12 and while your at it, check out SBCL 04:47:14 while I had some short run-in with GCL, outside of Maxima I have never seen it used in anger... 04:47:50 slyrus: can you elaborate? OSX isn't my environment (and isn't going to be, if I have my say) 04:48:04 jmbr [n=jmbr@180.32.220.87.dynamic.jazztel.es] has joined #lisp 04:48:53 p_l: SBCL has some nice features compared to CCL. The compiler is slower, but, at least the last time I measured, which was some time ago, the compiled code from SBCL was much faster 04:49:12 especially for doing various arithmetic type things 04:49:34 slyrus: right, I ran into some differences between CCL and SBCL, but I guess CCL has superior integration with OSX 04:51:02 though I ran into them with something you usually don't pick at the beginning (well, unless you are going for Web apps...) 04:51:45 What was it? 04:52:19 Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has joined #lisp 04:52:32 caoliver: threading 04:52:52 which caused problems with weblocks 04:53:32 since that, I managed to get SBCL running on target machine, thanks to lichtblau's patches 04:54:09 -!- sexybaaron [n=sexybaar@c-68-42-43-61.hsd1.nm.comcast.net] has quit [Client Quit] 04:54:32 though it means currently that I'm stuck with 1.0.12.42 for time being :) 04:57:22 gigamonkey [n=user@adsl-99-24-222-251.dsl.pltn13.sbcglobal.net] has joined #lisp 05:02:33 mrsolo [n=mrsolo@adsl-68-126-185-123.dsl.pltn13.pacbell.net] has joined #lisp 05:04:06 Is there a lisp library for using pipes to communicate with an external process? I think LTK can do it, but I was wondering if there is an independent library. 05:07:05 Good morning. 05:07:13 Morning, beach. 05:09:11 nikodemus [n=nikodemu@cs181129202.pp.htv.fi] has joined #lisp 05:10:03 brandelune_ [n=suzume@pl241.nas933.takamatsu.nttpc.ne.jp] has joined #lisp 05:10:08 -!- pkhuong_ is now known as pkhuong 05:11:13 Is emacs aqua considered a lisp implementation? 05:11:40 tseug: not for purposes of this channel. 05:11:59 Like all emacsen it has an implementation of Emacs Lisp (elisp) in it. 05:12:25 But elisp is not useful outside of Emacs itself. 05:12:45 in this channel, "lisp" is considered a short form of "common lisp" 05:12:59 hefner: there might be a difference on x86oids; I'm not sure SAP get the same LEA-friendly treatment as arrays. 05:13:12 gigamonkey: Not true! Multics Emacs is written in Maclisp. 05:13:36 beach: Well, that's not elisp, then is it? 05:13:46 Nope. 05:14:02 what about ITS Editor MACros ? :P 05:14:15 and TOPS-20 one, as well :P 05:14:48 I don't think TECO counts as a Lisp implementation either. :-PP 05:15:10 pkhuong: well, just so it's something reasonable inlined and not function calls with boxed results. doing the same thing through CFFI's mem-ref functions, you're probably lucky if you can move around a few megabytes per second. 05:15:46 gigamonkey: but it's an enjoyable way to screw with someone's mind (can't help it, I read how C is pure functional today :D) 05:15:53 ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has joined #lisp 05:16:12 hefner: oh yeah, definitely decent. 05:21:54 -!- coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has quit ["Leaving..."] 05:23:45 mqt [n=tran@caledonia.rh.rit.edu] has joined #lisp 05:24:34 fusss [n=chatzill@ip70-179-113-121.dc.dc.cox.net] has joined #lisp 05:24:51 -!- brandelune [n=suzume@pl357.nas934.takamatsu.nttpc.ne.jp] has quit [Read error: 110 (Connection timed out)] 05:25:22 -!- ASau [n=user@193.138.70.52] has quit ["Off!"] 05:25:52 -!- moocow [n=new@64.151.208.1] has quit [Read error: 113 (No route to host)] 05:26:00 *fusss* is both heavily imbibed and under-whelmed by django.this might be a good time for pytonistas to hide from him. 05:26:46 fusss: write macros for python and blow pythonists' minds 05:27:06 moocow [n=new@64.151.208.1] has joined #lisp 05:27:23 i can't believe those idiots got that much publicity mileage out of django. what a kludge! 05:27:43 ok, not a kludge, but it's just *obvious* code 05:28:23 django is the world's most popular boiler-plate code 05:28:31 well, django was designed by a group that simply wanted to have something that worked the way they wanted it to work... hype-minded people are bad no matter what 05:29:26 Frameworks: for people who like that sort of thing, that's the sort of thing they like. 05:30:05 -!- sunwukong [n=vukung@ortros.den.rcast.u-tokyo.ac.jp] has quit ["bye"] 05:30:12 *p_l* had only a very short run-in with django - fortunately I got the info that all that would be needed would be a module for the wiki... 05:30:38 still, moinmoin could have a better parser... 05:30:43 it really shouldn't merit the many book titles it has .. (oh wait, i have seen books on wireshark and IDA Pro, i guess some people just like to publish their improved READMEs and HOWTOs) 05:31:22 Most web developers don't have much programming experience. 05:31:35 jthing: oh please don't remind me... 05:31:38 So they like things simple. 05:31:47 Like pHP. 05:31:54 exactly 05:32:13 Just a lot of obvious glue 05:32:24 still, I'll take good framework in a language like Ruby/Python/C (even assembler) over pure PHP 05:32:35 django is utterly laughable. if the weblocks maintainers took a weekend off to write a manual, it would be hailed as the Next Big Thing. Weblocks is an application platform. django? not so much. 05:33:30 fusss: it was written by journalists to deal with in-house problems 05:34:24 riiiight, and i was stupid enough to think i could glean some engineering insight from the hype 05:34:54 ahahahahahahahahahahahahahahaha*coughcough*hahahahahaha 05:35:26 try rails, next time. Maybe you will have better luck 05:35:39 not rails, get merb (aka Rails 3 :3) 05:35:47 i could have spent the last 5 hours joining a cult and meeting interesting people. django has been teh suck :-( 05:35:53 *hefner* still thinks it would be cool to write a twitter clone in C, with no database and distributed nonsense, and see how fast you could make it go 05:36:06 hefner: remember to use static linkage 05:36:21 and whole program optimization/pgo :D 05:36:37 make sure to store all the data purely in ram 05:37:00 hefner: dude, we're clocking 1000 request/second out of a hunchentoot acceptor with epoll FFI. default install does 32 requests per second for same file size :-) 05:37:19 moocow: mmap? :D 05:37:26 heh 05:37:32 fusss: what app server is that? 05:37:32 persistency! 05:37:50 my ad network, custom in house niceness 05:37:59 fuss: really! What is opoll FFI? 05:38:04 epoll 05:38:17 fusss: written in lisp i presume? 05:38:24 yes 05:38:34 iolib 05:38:38 fusss: that seems impressive, though I'm not sure what the theoretical peak is. 05:38:40 jthing: man 7 epoll 05:38:43 sweet 05:39:14 hunchentoot, iolib, osicat, bordeaux-threads and usocket. honest to good yobo-lib goodness, biyatch! ;-) 05:39:55 and i wondered why it was so slow... what was the main culprit, fusss? 05:40:09 fusss: you work for ITA too? 05:40:11 hefner: our theoretical peak is the linode bandwidth upper-limit :-/ 05:40:55 ehu`: jaliys, launching June 1st, partnering with rateb; sponsored by Emirite Airlines atm, more coming aboard. 05:41:30 With a 1000 requests per second the web pages for PrimeTrader could be written in CL... 05:41:31 interesting. competition then. 05:41:40 -!- Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has quit [Remote closed the connection] 05:41:56 fusss: it is cool you are doing all of this in lisp 05:41:57 love that 05:42:03 sbcl? 05:42:22 ehu`: i pretty much every high-profile lisper you can think of. everybody here got an offer from me at some point. haven't found any ITA'ers willing to talk :-) 05:42:23 moocow: with that performance it must be. 05:42:36 1000 requests per second is impressive for anything that doesn't serve small static content 05:42:55 moocow: standardized on 1.0.19 05:43:10 well thats just awesome really cool 05:43:14 wishing you guys all the success 05:43:23 thanks 05:44:15 fuss: Do us a favor and write a paper on how you did it. 05:44:27 that would be cool indeed 05:45:50 jthing: i had several ways to improve it, but the final input came from someone else lars nostdal and zach beane recommended ways to improve it. lars sent me some code, and the rest is just some common sense stuff you can find in the ht manual (i.e. avoid the gray-stream bottle neck; ht goes through two layers of them for all textual i/o) 05:46:23 fusss: collecting those tidbits into one coherent whole would be nice 05:46:40 guaqua: yeah? hmmmm 05:48:13 particularly if it can be used as propaganda in the war against the grim, thrice buffered and transcoded future 05:49:12 fuss: Yes, I figured out the gray streams were holding it back. 05:49:36 aja [n=aja@S01060018f3ab066e.ed.shawcable.net] has joined #lisp 05:50:23 hefner: you forgot about XML 05:50:58 our grim, thrice buffered and transcoded, xtensibly marked-up future. 05:51:33 heh 05:51:46 where progress is measured by the number of layers of VMs and JIT you've built into the system 05:52:51 hefner: Well, we had to do SOMETHING about Moore's law. Otherwise computers would be too fast. 05:53:13 that's true. and when I'm feeling nostalgic for my 486, I'll rewrite all my code in Python. 05:53:28 hefner: 3D desktops on Linux fullfill a similar purpose. 05:54:02 Nshag [i=user@Mix-Orleans-106-2-177.w193-248.abo.wanadoo.fr] has joined #lisp 05:54:03 great tourist attraction, though. 05:54:53 How hard would it be in SBCL to write some Lisp code that generates arbitrary machine code and then executes it? 05:55:06 anyone tried pmode.asm code on a recent machine? I have some ancient assembly tutorials on how to take a PC from real-mode to protected mode, and, unless I'm wrong, since have changed since the 486? 05:55:16 gigamonkey: trivial. 05:55:34 "pmode.asm" is a fairly famous tutorial from geezer's website on OS dev 05:55:53 -!- tsuru` [n=user@c-69-245-36-64.hsd1.tn.comcast.net] has quit [Read error: 110 (Connection timed out)] 05:56:03 fusss: nothing changed in that, I guess. Though if you want to play with paging, it did change a little (not enough to stop old code from running, mostly adding new stuff) 05:56:14 hefner: cool. What's the basic entry point? 05:56:21 fusss: and well, if you can, jump directly to x86-64 05:57:17 gigamonkey: once you've made the pages executable, you can just call in with the FFI. 05:57:17 *aja* is reminded of the salad days of self-optimizing code 05:57:23 hefner: i was thinking the same thing. how hard is it to generate arbitrary machine code and then execute it in sbcl? i.e. shell-code; i know sbcl doesn't use ELF file format, so there is no need to set executable bit on pages, etc. 05:57:36 athos [n=philipp@92.250.250.68] has joined #lisp 05:58:27 maybe gigamonkey didn't mean entirely at run time, in which case I should shut up and defer to some SBCL hacker. 05:58:36 hefner: Actually I did. 05:58:58 hefner: come'on, don't let us down. google it, we will wait. 05:58:59 I was thinking of things like genetic algorithms/genetic programming with machine code. 05:59:17 sounds dangerous. 05:59:34 well, suitably contstrained machine code. 06:00:07 gigamonkey: assemblers are basically just translation tables 06:00:13 p_l: what is the authoritative text on "x86" nowadays? i know agner fog takes care of the opt stuff, what about systems programming? sandpile hasn't been updated for a while ;-S 06:00:31 fusss: cpu manuals? 06:00:40 jthing: do you aim for inscrutability in your comments? 06:00:46 jthing: agreed, but can you execute what you have just generated? at run time? in the same process? 06:02:09 -!- aja [n=aja@S01060018f3ab066e.ed.shawcable.net] has quit [Read error: 104 (Connection reset by peer)] 06:02:09 fuss: you could by tapping into the function table, I would think 06:02:19 hefner: so is there some easy way to make an array of (unsigned-byte 8) or (unsigned-byte 64) or something to a page that can be made executable and then jumped to? 06:02:28 bah. allegro's suggestions for image manip are swig to imagemagick??? 06:03:01 i guess i need a thumbnail generating demo for ch-image 06:03:07 fusss: I'm keeping myself away from bare x86 assembly. I've got enough madness from learning MMIX so that I can implement it 06:03:09 <_3b> do you need to flush the caches before executing newly generated code on x86/x86_64? 06:03:16 _3b: better do that 06:03:19 *cmm* enjoyed the "C is purely functional" article 06:03:31 cmm: yeah, it's an awesome one :D 06:04:07 gigamonkey: Corman Common Lisp has a inline assemby facillity and the source code for that is freely available 06:05:00 good morning 06:05:01 aja [n=aja@S01060018f3ab066e.ed.shawcable.net] has joined #lisp 06:05:08 _3b: while most of the time x86 tries to emulate behaviour of 8086, it fails to keep it in many places. Write like for a risc and probably you can avoid all problems... 06:05:17 gigamonkey: I'd guess the easiest thing is to mmap a new page and copy your code into it. 06:07:29 <_3b> p_l: yeah, i think the place i saw that problem before was a 68000 series chip of some sort, just wondered if it applied to more recent stuff too 06:08:05 _3b: I heard that everything 486 and later was allergic to tight, self-modifying loops 06:08:12 "I believe that's called the Disk Monad which, coupled with the RAM Monad, makes cpp an incredibly powerful, purely functional language." 06:08:17 _3b: I've got an M68K assembler written in Lisp around here somewhere ... 06:08:19 har 06:08:33 <_3b> i guess with the popularity of JIT these days, there actually is some reason to have the I and D caches know about each other, but i don't do much at that level these days :) 06:09:05 now I wish I was on x86, because I've never hacked any shellcode on x86-64 and, however trivial the difference might be, it's putting me off. 06:10:07 what are you on now? 06:10:16 semyon421 [n=semyon@217.67.122.44] has joined #lisp 06:10:17 x86-64, of course. 06:10:51 *gigamonkey* languishes on an old PPC mac. 06:10:51 p_i: self modifying loops and pipelines don't go well together 06:11:08 jthing: Yeah, I know. It still doesn't reach the level of alpha :P 06:11:26 gigamonkey: Heh. I have one in a place of honour as well. 06:11:41 *p_l* just loves that quote from linux/Documentation/memory-barriers.txt ^_^ 06:11:47 i have only used laptops in the last 6-8 years, and i will have to wait for x86-64 i guess 06:12:05 fusss: what kind of laptop you have now?? 06:12:08 <_3b> jthing: self modifying loops combine even worse with separate data and instruction caches, if modifying one doesn't affect the other :) 06:12:10 p_i: worse with DEP protection on it causes the program to abort 06:12:30 *hefner* keeps it real on the pentium M laptop, will probably buy another one of this one dies too 06:12:38 thinkpads only T61, R51 and an X something 06:12:50 jthing: erm, if a page is both writable and executable, DEP doesn't have anything to say... 06:13:21 fusss: all of them have 64bit models, check the cpu model (Core 2 has it) 06:13:45 i'm strictly on Ms mate 06:13:52 p_i: well I was just thinking of a problem I had with AllegroCL a while back. (long since fixed) 06:15:25 DEP in hw is just bit 61 (iirc) in pagetable entry getting a meaning of "executable/non executable" 06:15:43 alright, nite folks! zzZZZ 06:15:43 -!- fusss [n=chatzill@ip70-179-113-121.dc.dc.cox.net] has quit ["ChatZilla 0.9.84 [Firefox 3.0.10/2009042316]"] 06:16:34 I'm also out. Goodnight. 06:16:38 emulated DEP is usually done with segments, afaik 06:16:42 gigamonkey: night 06:17:46 fvw [n=sdfpme@113.77.206.120] has joined #lisp 06:17:51 p_l: the segment base / mirrored pages trick? that blew my mind when I learned it. 06:18:39 jobf [n=jbf@c80-216-238-151.bredband.comhem.se] has joined #lisp 06:18:45 possibly - I never delved in it too much, though I wonder why the hell pagetables didn't have executable permission bit while much older segments had it... 06:20:55 the systems I'm interested in don't have MMU-less profile defined and have rwx perms on pagetables (and only paging) :D 06:21:55 I think it's a little more complicated than that, but I'd have to stare at the manual. IIRC, it isn't that there's an executable bit in the segment descriptor, just that there's separate descriptors for code and data, and you can make them non-overlapping. 06:22:20 yeh, nighttime for me too 06:22:54 -!- caoliver [n=oliver@75-134-208-20.dhcp.trcy.mi.charter.com] has left #lisp 06:23:09 -!- gigamonkey [n=user@adsl-99-24-222-251.dsl.pltn13.sbcglobal.net] has quit [Read error: 60 (Operation timed out)] 06:23:34 hefner: there's executable bit, afaik 06:24:04 the code/data thing afaik was related to 16bit addressing 06:25:18 in 32bit mode you could afaik set a completely custom set of at least 20? segments, up to 4G each 06:25:34 derekv [n=derekv@76.112.240.178] has joined #lisp 06:26:38 that PaX trick was to split the 4 GB virtual address space in two, where one got all the pages, and the other got only the executable pages, and set the segmentation up with different offsets for code in data so that it appeared consistent, but non-executable pages weren't mapped in the code half of the address space 06:27:15 that would work 06:27:46 I prefer bit61 ;-) 06:29:20 it is a wonderfully cunning trick, in the sense of fully emulating arbitrary NX bits on pages without actually having one. 06:30:22 splittist [n=dmurray@117-125.2-85.cust.bluewin.ch] has joined #lisp 06:30:25 morning 06:33:28 -!- jmbr [n=jmbr@180.32.220.87.dynamic.jazztel.es] has quit [Remote closed the connection] 06:34:09 oh, thank god, nasm has gained x86-64 support. I figured it was abandoned and doomed to rot. 06:35:03 well, MMIX seems to get it's VM design from Alpha - 4 segments, constant sized pages, rwx permissions 06:38:35 ASau [n=user@host9-231-msk.microtest.ru] has joined #lisp 06:39:48 pity it doesn't support different sizes of pages in single virtual space, though 06:40:11 That feature's coming in MMMIX 06:40:43 lol 06:40:55 MMMIX will probably be a quantum computer ;-) 06:46:10 dialtone [n=dialtone@adsl-71-138-130-18.dsl.pltn13.pacbell.net] has joined #lisp 06:47:28 mvilleneuve [n=mvillene@ABordeaux-253-1-119-58.w86-201.abo.wanadoo.fr] has joined #lisp 06:50:26 Davse_Bamse [n=davse@90.184.205.169] has joined #lisp 06:50:38 good morning 06:50:47 *hefner* is amused to observe nasm assembles "syscall" correctly to 0F 05, while ndisasm disassembles it as "loadall286" 06:50:53 hello mvilleneuve 06:54:53 on the topic of mmix, anyone care to speculate on the nature of ISBN 9780201038040 ? :) 06:56:53 derekv: in what sense? 06:58:29 -!- tmh [n=thomas@pdpc/supporter/sustaining/tmh] has left #lisp 06:58:37 I don't know that much about how ISBNs work in practice. But various sources have it labeled as "Art of Computer Programming" (most) or "Art of Computer Programming Vol 4" (a few), with a publication set in the near future 06:58:51 You may speculate on what that means. 06:59:14 I know that before Vol4 is supposed to be published, a new edition of Vol 1-3 is to be published 06:59:58 derekv: Oh...that. TAOCP Vol 4 (which will likely comprise several volumes) has a number of excerpts in publication. Knuth calls them Fasicles. There are, to my knowledge, 4 Fasclies in publication (I have them). 07:00:30 p_l, I hadn't heard that. But I'm not really surprised. 07:01:02 derekv: The 4 comprise a very good chunk of Chapter 7, and are already nearly as thick as one of the other 3 full volumes. 07:01:19 derekv: Vol4 is supposed to have all examples in MMIX, and thus Vol1-3 were supposed to get updated to account for that 07:01:28 Oh, so volume four is to be much larger 07:01:38 schme [n=marcus@c83-249-81-1.bredband.comhem.se] has joined #lisp 07:01:46 derekv: Chapter 7 == "Combinatorial Searching" if you care. 07:02:02 derekv: Yes, it will comprise several physical volumes, one suspects. 07:02:09 I can't imagine how big Vol7 might be, or whatever number the final volume will get 07:02:36 we'll have to keep him alive somehow 07:02:56 blandest [n=blandest@softhouse.is.ew.ro] has joined #lisp 07:03:28 yeah, that's what I fear 07:04:14 derekv: Ah. In preface of Fascicle 0 he says he expects it to be 4 physical volumes (4A, 4B, 4C) 07:04:32 derekv: Errr. Three 07:04:47 And, he feels this is near finished? 07:05:46 derekv: I believe it is the final volume(s). He expects it to take many more years. 07:06:14 derekv: Assuming he doesn't get distracted again, of course. A Knuth digression can span decades. 07:06:20 -!- fvw [n=sdfpme@113.77.206.120] has quit ["leaving"] 07:06:33 aja, oh. I read on his site (or somewhere) about his plans for the next two volumes after 4 07:06:38 it's supposed to finish with book on operating systems, IIRC. That, or compilers. I no longer know 07:06:56 Compilers certainly are going to be included 07:07:08 p_l: derekv: You very well might be right. Perhaps I'm just thinking he'll be done the Algorithms stuff ... 07:07:15 p_l, last one was compilers, thats all I remember. Cause I want to read that one , and also because that is what started the entire project 07:07:26 it started with him wanting to write a book on compilers 07:08:08 aja, yea I think he said volume 4 was the completion of the basic stuff, and the rest were "special topics" 07:08:10 derekv: Heh. Yeah. And TeX started with him being disappointed with the galleys for the book. 07:08:20 I know 07:08:33 hefner pasted "x86-64 code execution example" at http://paste.lisp.org/display/80633 07:08:33 He deserves to be immortal, imo 07:08:34 -!- nikodemus [n=nikodemu@cs181129202.pp.htv.fi] has quit [Read error: 104 (Connection reset by peer)] 07:08:37 I think he wrote something about "I wanted to show how to arrive at compilers from the lowest level" 07:08:47 nikodemus [n=nikodemu@cs181129202.pp.htv.fi] has joined #lisp 07:08:56 he could be the scribe of all computing science 07:09:00 ..took longer than it should have, as usual. 07:09:59 -!- brandelune_ [n=suzume@pl241.nas933.takamatsu.nttpc.ne.jp] has quit [] 07:10:38 minion, memo for gigamonkey: I wrote an example of generating code in memory and running it, at http://paste.lisp.org/display/80633 07:10:39 Remembered. I'll tell gigamonkey when he/she/it next speaks. 07:10:39 derekv: I hope he doesn't digress into distributed computing *before* finishing current lineup... 07:11:01 hefner: a bit of parsing, writing the code to files and you've got your nasm replacement! 07:11:21 -!- Phoodus [i=foo@ip68-231-38-131.ph.ph.cox.net] has quit [Read error: 104 (Connection reset by peer)] 07:12:44 attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has joined #lisp 07:12:45 I'm impressed that I could work the shellcode out without crashing my lisp (a couple memory faults before I thought to fix the stack, but nothing fatal) 07:13:19 and the faulting address was handily printed in *inferior-lisp*, so I could figure out which instruction it was :) 07:15:27 heh, nice random mishmash of cffi and alien. 07:17:23 Aankhen`` [n=heysquid@122.162.166.58] has joined #lisp 07:20:08 hefner: yeah, that is a bit disturbing :) 07:21:26 frontiers [n=jackb@ti0151a340-dhcp0479.bb.online.no] has joined #lisp 07:21:45 -!- Aankhen`` [n=heysquid@122.162.166.58] has quit [Client Quit] 07:23:07 Aankhen`` [n=heysquid@122.162.158.237] has joined #lisp 07:25:20 -!- cpc26 [n=cpc26@72.170.156.242] has quit [Read error: 104 (Connection reset by peer)] 07:26:53 wanting to rename the speakerbox package to sir-mix-a-lot is probably a sign I should rest. 07:27:10 lol 07:28:04 juicydouble: 07:28:09 -!- frontier1 [n=jackb@ti0151a340-dhcp0479.bb.online.no] has quit [Read error: 60 (Operation timed out)] 07:28:58 pstickne [n=pstickne@c-24-21-76-57.hsd1.wa.comcast.net] has joined #lisp 07:32:32 aerique [i=euqirea@xs2.xs4all.nl] has joined #lisp 07:33:10 legumbre_ [n=user@r190-135-28-209.dialup.adsl.anteldata.net.uy] has joined #lisp 07:33:31 cpc26 [n=cpc26@72.170.156.242] has joined #lisp 07:35:12 phytovor [n=doxtor@cpe-92-37-16-188.dynamic.amis.net] has joined #lisp 07:35:50 -!- cpc26 [n=cpc26@72.170.156.242] has quit [Read error: 54 (Connection reset by peer)] 07:36:35 cpc26 [n=cpc26@72.170.156.242] has joined #lisp 07:37:12 chuckler [n=user@117.192.132.167] has joined #lisp 07:37:48 -!- blandest [n=blandest@softhouse.is.ew.ro] has quit ["Leaving."] 07:37:59 blandest [n=blandest@softhouse.is.ew.ro] has joined #lisp 07:40:23 alinp [n=alinp@86.122.9.2] has joined #lisp 07:50:21 chuckler1 [n=fa@117.192.132.167] has joined #lisp 07:50:26 -!- chuckler [n=user@117.192.132.167] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 07:50:53 -!- legumbre [n=user@r190-135-43-167.dialup.adsl.anteldata.net.uy] has quit [Read error: 110 (Connection timed out)] 07:51:17 -!- fe[nl]ix [n=algidus@88-149-211-251.dynamic.ngi.it] has quit ["Valete!"] 07:51:27 anyone here know what this error is : Symbol "CREATE-REPL" not found in the SWANK package. 07:52:39 -!- sohum [n=sohum@unaffiliated/sohum] has left #lisp 07:52:53 either your swank is too old, or it wasn't loaded properly 07:53:18 where can i get the latest version of swank-loader.lisp 07:53:54 posix gettimeofday 07:53:54 http://www.opengroup.org/onlinepubs/007908799/xsh/gettimeofday.html 07:54:09 everything comes with slime 07:56:11 ah then i *am* loading latest cvs version of swank-loader.lisp 07:56:21 i can start a swank server at 4005 through sbcl 07:56:37 but when i try to doa slime-connect i get the above error 07:56:42 fe[nl]ix [n=algidus@88-149-211-251.dynamic.ngi.it] has joined #lisp 07:56:54 vy [n=user@213.139.194.186] has joined #lisp 07:58:22 -!- doxtor [n=doxtor@unaffiliated/mitja] has quit [No route to host] 08:01:35 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 08:03:12 Krystof: do i sense doubt re GET-TIME-OF-DAY? 08:05:20 how can I remove a certain member of a list permanently? 08:06:19 I think it might also be worth providing an sb-posix:gettimeofday so that people can write posix programs 08:06:38 "If tzp is not a null pointer, the behaviour is unspecified." 08:06:51 but I don't know 08:07:24 -!- kami- [n=user@193.218.18.18] has quit [Remote closed the connection] 08:08:18 <_3b> chuckler1: make sure you aren't accidentally running some other swank (particularly if you have let a linux distro install slime at some point) 08:08:52 _3b: swank starts correctly when i try to load it 08:09:26 netstat shows swank running at 4005 08:09:26 -!- konr [n=konrad@201.82.132.33] has quit [Read error: 110 (Connection timed out)] 08:09:37 <_3b> chuckler1: right, i mean make sure it is the right one 08:09:52 ah think it could bea faulty sbcl? 08:10:09 can i asdf-install create-repl? 08:10:15 <_3b> chuckler1: actually my guess is clc if you use a linux of some sort 08:10:18 Symbol "CREATE-REPL" not found in the SWANK package. 08:10:22 is the error 08:10:38 <_3b> not the error, scroll up and see if it says anything about loading or compiling files 08:10:41 nah me using sbcl. i compiled it by hand 08:10:46 k 08:10:52 will do a pastie 08:11:01 can i redirect ouput? 08:11:03 chuckler1: do you have an apt-get'ed slime? 08:11:15 minion: tell chuckler1 about lisppast 08:11:15 Sorry, I couldn't find anything in the database for ``lisppast''. 08:11:16 minion: tell chuckler1 about lisppaste 08:11:17 To use the lisppaste bot, visit http://paste.lisp.org/new/lisp and enter your paste. 08:11:19 ah this is a gentoo system on which i am trying 08:11:38 <_3b> do you use the lisp overlay (or whatever it is that installs things sanely) 08:11:39 Spyderco [n=nash@194.45.110.65] has joined #lisp 08:11:51 gentoo installs something sanely? /duck 08:11:58 no i got sbcl source and compiled it 08:12:03 and slime? 08:12:04 and latest slime checkout 08:12:06 cvs 08:12:22 i cannot seem to doa load-file from emacs 08:12:47 <_3b> how did you load swank? 08:15:12 chuckler pasted "sbcl+slime error" at http://paste.lisp.org/display/80636 08:15:14 klausi [n=klausi@port-92-193-31-13.dynamic.qsc.de] has joined #lisp 08:15:33 check pastie 08:15:35 yes 08:15:59 you indeed use sbcl from gentoo 08:16:41 yes 08:16:45 and swank from gentoo too 08:16:49 yes 08:16:58 i have loaded it. sorry i should have been more clear. 08:17:19 would it be better if i remove by unmerging and install from source? 08:17:43 you either install everything from gentoo, or everything by hand 08:18:16 Spyderco2 [n=nash@194.45.110.65] has joined #lisp 08:18:27 -!- Spyderco [n=nash@194.45.110.65] has quit [Read error: 104 (Connection reset by peer)] 08:18:38 i'd install everything from source, but i just don't how well gentoo's lisp overlay is 08:18:43 stassats`: 08:19:05 stassats`: hmm i'll remove everything and try again. 08:20:14 nikodemus pasted "fairly minimal slime setup" at http://paste.lisp.org/display/80637 08:20:43 possibly you don't have the slime contrib, which are actually required for sane operation 08:21:05 go to your slime checkout, and do "cvs co contrib" 08:21:10 create-repl is in swank.lisp, though called from slime-repl 08:21:31 so i suppose, contribs are in place, but swank is old 08:22:01 I have an object which is a list of lists and I am trying to remove on of these lists using remove and setf but the change just won't happen. What am I doing wrong? 08:22:10 jdz [n=jdz@85.254.211.133] has joined #lisp 08:22:11 s/on/one 08:23:21 remove isn't destructive, delete is 08:23:21 <_3b> my understanding is that there are 2 ways to install lisp stuff in gentoo, but only 1 is good... don't know anything about gentoo though, so i'd suggest clbuild or install by hand :) 08:23:41 ok, time to go -- bbl 08:23:42 -!- nikodemus [n=nikodemu@cs181129202.pp.htv.fi] has quit ["Leaving"] 08:23:46 though you need to setf after delete too 08:24:05 gentoo people should be used to compiling everything themselves... 08:24:06 <_3b> chuckler1: might also try #gentoo-lisp (i think that is what it is called) 08:24:21 is it possible to delete output written to *standard-output* with #'format, etc. ? 08:24:38 stassats`: thx will try 08:24:50 the good thing about gentoo is that one gets all the header files for all packages that get installed 08:25:04 I want to display the progress of some operation in percentage 08:25:14 jdz: i get the same with slackware 08:25:15 blandest: you cannot delete anything that has been output 08:25:31 stassats`: I tried using delete too 08:25:46 with the same results 08:25:50 blandest: but you can use #\linefeed character (i think that's the right one) 08:26:20 jdz: some programs written in C are able to do this (git, for example), I thought maybe this could be done using ffi 08:26:32 stassats`: well, gentoo has "way more" packages (they import things from debian i think) 08:26:35 jdz: thanks, I'll try that 08:26:50 jdz: you can use curses 08:26:54 or something similar 08:26:59 no need 08:27:09 if all your output is on a single line, you can stick with linefeed 08:28:03 hmm i need sbcl to compile sbcl . i just unmerged my gnetoo specific installs. i already have the source for sbcl-1.0.28 08:28:17 so how do i do this? 08:28:17 (char-name #\Linefeed) => "Newline" 08:28:34 chuckler1: download binary from www.sbcl.org? 08:28:36 chuckler1: the lisp overlay is quite good. I'd advise you to try it first 08:28:52 well, you want the (code-char 13) for the trick 08:29:10 fe[nl]ix: noted 08:30:02 chuckler1: I maintain the CL packages in the overlay. if you encounter problems, there's #gentoo-lisp 08:30:28 jdz: so this is implementation dependent 08:30:44 fe[nl]ix: i already have the git repo 08:30:44 jdz: your solution works with clisp (on Windows). It does not work with SLIME + CCL, but that's another thing 08:30:47 stassats`: no, if you use (code-char 13) and unixoids 08:31:04 fe[nl]ix: is ther a how to on using the gentoo-lisp overlay? 08:31:20 blandest: well, have you tried running git, or whatever you had as example, in emacs? 08:31:32 -!- Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has quit [Read error: 113 (No route to host)] 08:32:03 ccl also works (without SLIME) 08:32:38 blandest: you must understand that it's the terminal which interprets the special character (carriage return) 08:32:50 chuckler1: just uninstall all CL libraries you've installed from portage, then you can install them from the overlay 08:33:16 -!- fe[nl]ix [n=algidus@88-149-211-251.dynamic.ngi.it] has quit ["Valete!"] 08:33:28 jdz: I agree, it does not make sense to work with SLIME (out of the box) 08:33:37 blandest: what? 08:34:02 imho it does not make sense to not work with slime, but i think you meant something else... 08:34:17 in SLIME it displays ^M instead of going to the beginning of the line 08:34:45 it's not slime that displays it, but emacs 08:35:36 blandest: and the reason is that emacs does not interpret that character as terminal emulators do 08:36:36 I think that eshell works with git, but I'll have to check that 08:37:31 -!- loxs [n=loxs@77-85-168-58.btc-net.bg] has quit [Remote closed the connection] 08:37:32 blandest: and i also hope you understand that there can be a mode in emacs which adds the capability to interpret that character, rigght? 08:37:54 i don't know whether there is. 08:38:06 of course 08:38:39 maybe SLIME could be changed to do that ? 08:38:51 Athas [n=athas@192.38.109.188] has joined #lisp 08:38:51 why? 08:38:58 so you don't see all the output? 08:39:22 if you want that behaviour, you should set it manually. the usual way to do it in emacs is via minor modes. 08:39:24 -!- aja [n=aja@S01060018f3ab066e.ed.shawcable.net] has quit [Client Quit] 08:39:48 I guess you are right :) 08:39:50 what i want to say is that it is in no way related to slime 08:40:06 -!- xan is now known as xan-afk 08:40:56 Ragnaroek [i=54a6570b@gateway/web/ajax/mibbit.com/x-c04f6e1b29c13d92] has joined #lisp 08:42:25 gemelen [n=shelta@shpd-78-36-165-97.static.vologda.ru] has joined #lisp 08:42:54 This is what I wanted to do: (loop for i upto 100 do (format t "~D %~C" i (code-char 13)) (sleep 0.1)) 08:43:17 Why doesn't the function member work when I want to check if a list is a member of a list of lists? 08:43:33 because it uses EQL 08:44:15 what should I use instead? 08:44:38 clhs member 08:44:39 http://www.lispworks.com/reference/HyperSpec/Body/a_member.htm 08:44:41 equal 08:44:54 WormBe: use the :test keyword to member. 08:45:06 thanks 08:47:20 klausi_ [n=klausi@port-92-193-31-13.dynamic.qsc.de] has joined #lisp 08:49:38 i have a binary sbcl and the source. how do i ensure make.sh finds the binary sbcl along wiht the core? 08:49:51 SBCL_HOME 08:50:30 -!- jobf [n=jbf@c80-216-238-151.bredband.comhem.se] has quit [Read error: 60 (Operation timed out)] 08:50:54 ./make.sh path-to-sbcl --core path-to-core 08:51:36 antoszka [n=antoszka@unaffiliated/antoszka] has joined #lisp 08:53:07 -!- bdowning [n=bdowning@mnementh.lavos.net] has quit [Remote closed the connection] 08:53:21 bdowning [n=bdowning@mnementh.lavos.net] has joined #lisp 08:55:36 -!- bdowning [n=bdowning@mnementh.lavos.net] has quit [Client Quit] 08:55:37 timor [n=martin@w4716.dip.tu-dresden.de] has joined #lisp 08:55:50 bdowning [n=bdowning@mnementh.lavos.net] has joined #lisp 08:56:31 -!- timor [n=martin@w4716.dip.tu-dresden.de] has left #lisp 08:58:06 -!- Athas [n=athas@192.38.109.188] has quit [Read error: 104 (Connection reset by peer)] 08:58:17 Athas [n=athas@192.38.109.188] has joined #lisp 08:59:10 -!- klausi [n=klausi@port-92-193-31-13.dynamic.qsc.de] has quit [Read error: 110 (Connection timed out)] 08:59:58 -!- Athas [n=athas@192.38.109.188] has left #lisp 09:10:08 klausi [n=klausi@port-92-193-110-183.dynamic.qsc.de] has joined #lisp 09:11:42 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["The funniest things in my life are truth and absurdity."] 09:19:16 ignas [n=ignas@78.59.166.221] has joined #lisp 09:24:07 -!- athos [n=philipp@92.250.250.68] has quit ["leaving"] 09:24:11 -!- _sohail_ [n=Sohail@d207-81-121-15.bchsia.telus.net] has quit [Read error: 113 (No route to host)] 09:24:52 When trying commonqt on a different machine I get: "Error opening shared object [..]/libcommonqt.so" and "/libcommonqt.so: undefined symbol: qt_Smoke." 09:24:59 is this a known error? 09:25:06 did I forget to install something? 09:25:37 thijso: did you copy all required libs? 09:26:56 hhmm.. wait.. I had an error compiling commonqt because it complained about not finding -lsmokeqt, so I removed that (as I recalled this being a later addition, and it worked for me without on a different machine) 09:26:59 -!- klausi_ [n=klausi@port-92-193-31-13.dynamic.qsc.de] has quit [Read error: 110 (Connection timed out)] 09:27:03 but I'm guessing that's the problem... 09:27:24 so then the question becomes, what do I need to not get that compile error anymore? ;) 09:29:01 hmm... simple as installing libsmokeqt4-2 in addition to the -dev package of that... duh! 09:30:10 But, right... now I'm at the same place I was last night on a different machine, because my lisp dies on me with an error code of 139 and no other messages when I try to use a QFileDialog... 09:30:23 anyone here able to help me debug that? 09:30:46 I'd be glad even to know how to get more debugging info out of commonqt, or lisp itself... 09:30:51 139 is the code of some signal 09:31:30 139 - 128 = 11 09:31:38 segfault? :) 09:31:42 hmm.. inferior-lisp shows a little more than on the other machine.. 09:31:46 easy, right :) 09:31:51 yeah, it's a segmentation fault 09:32:05 and it says: Received signal 11 in non-lisp thread 1091189072, resignalling to a lisp thread. 09:32:15 and then: Continuing with fingers crossed. 09:32:22 and then it segfaults... 09:32:39 well then it's what it says: there's a segfault in foreign code 09:32:46 hmm.. ok 09:32:57 that's a start, then... 09:33:04 if i understand it correctly. not done much foreign stuff, especially lately. 09:33:38 I think I'm just not correctly translating the qt code to use it in commonqt... 09:34:00 anyone ever used a qt4 file dialog in commonqt by any chance? ;) 09:34:25 well, might be you are not passing a foreign pointer, but instead a lisp object containing the pointer, to the foreign code, or somesuch. 09:34:49 chris2 [n=chris@p5B16AAAA.dip0.t-ipconnect.de] has joined #lisp 09:34:51 jdz: that sounds possible, yes... 09:35:02 *thijso* back to re-reading the commonqt examples... 09:40:38 konr [n=konrad@201.82.132.33] has joined #lisp 09:40:43 -!- klausi [n=klausi@port-92-193-110-183.dynamic.qsc.de] has quit ["Leaving"] 09:41:43 -!- pstickne [n=pstickne@c-24-21-76-57.hsd1.wa.comcast.net] has quit [Read error: 110 (Connection timed out)] 09:43:23 sepult [n=user@xdsl-87-78-72-83.netcologne.de] has joined #lisp 09:44:22 _8david [n=user@port-212-202-18-15.dynamic.qsc.de] has joined #lisp 09:44:28 fvw [n=sdfpme@113.77.206.120] has joined #lisp 09:44:29 doxtor [n=doxtor@unaffiliated/mitja] has joined #lisp 09:44:43 <_8david> thijso: haven't used the qt4 file dialog yet, but if you paste your code to lisppaste, I could try it 09:48:25 *_8david* is currently trying to draw sugiyama-style layered graphs in lisp, without going through graphviz 09:48:28 <_8david> http://www.lichteblau.com/tmp/sugiyama.png 09:49:20 thank god I'm not the only person for whom qt4 mysteriously refuses to use decent fonts at the moment. 09:51:55 *hefner* now wonders if settling on two 16-bit signed samples packed in one unsigned-byte 32 was really the greatest representation to use 09:52:20 thijso pasted "QFileDialog with commonqt" at http://paste.lisp.org/display/80644 09:53:19 I get the output from the format function with "entered: get-xml-files-directory~%~A~%" ... but then lisp dies on me 09:56:07 the output from that format is this, btw: entered: get-xml-files-directory 09:56:09 # 09:56:10 <_8david> crashes and burns for me, too 09:56:23 ok, so I'm doing something wrong, I guess.. 09:57:19 If I replace 'instance' in that call to QFileDialog I get a "No applicable method getOpenFileName found ...' 09:57:36 While the qt4 docs say that should be legal... 09:58:20 I mean if I replace 'instance' with 0 09:58:24 i.e. no parent... 09:59:32 fredbard [n=fredMobi@admin161-204.hampshire.edu] has joined #lisp 10:00:04 <_8david> I wonder whether that thing uses QThreads (which CommonQt doesn't support yet). 10:00:26 possible I think... 10:00:33 -!- phytovor [n=doxtor@unaffiliated/mitja] has quit [Read error: 113 (No route to host)] 10:00:34 is there a way to find out? 10:02:40 Yuuhi [i=benni@p5483D1B3.dip.t-dialin.net] has joined #lisp 10:04:18 g'day #lisp 10:04:37 SandGorgon [n=user@122.160.140.244] has joined #lisp 10:05:54 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #lisp 10:06:48 elias` [n=me@resnet-pat-254.ucs.ed.ac.uk] has joined #lisp 10:07:41 <_8david> Interesting. Works perfectly with CCL for me, just not with SBCL. 10:08:20 -!- SandGorgon [n=user@122.160.140.244] has quit [Read error: 104 (Connection reset by peer)] 10:08:41 <_8david> thijso: don't know. Add assertions before every callback into Lisp to check which thread we're in? But it's really a stab in the dark at this point. 10:09:17 -!- sepult [n=user@xdsl-87-78-72-83.netcologne.de] has quit [Remote closed the connection] 10:09:29 <_8david> thijso: Anyway, I find it a little reassuring that it works with CCL, and I'm off for a computerless weekend now. Sorry I can't be of more help right now. 10:10:40 buggarage [n=user@xdsl-87-78-72-83.netcologne.de] has joined #lisp 10:12:37 chuckler annotated #80636 "sbcl+alime error" at http://paste.lisp.org/display/80636#1 10:13:03 -!- _8david [n=user@port-212-202-18-15.dynamic.qsc.de] has left #lisp 10:13:47 chuckler [n=fa@117.192.141.16] has joined #lisp 10:15:11 stassats`: i tried compiling with the path specified.. i get chucked into a low level debugger though... http://paste.lisp.org/display/80636#1 any suggestions? 10:15:47 _8david: no problem... thanks for the help so far... 10:15:55 -!- seejay [n=seejay@unaffiliated/seejay] has quit [Read error: 104 (Connection reset by peer)] 10:17:04 stassats`: i tried compiling with the path specified.. i get chucked into a low level debugger though... http://paste.lisp.org/display/80636#1 any suggestions? 10:18:14 -!- dv_ [n=dv@85-127-115-93.dynamic.xdsl-line.inode.at] has quit ["Verlassend"] 10:20:22 does sbcl compile wihout threads by default? 10:21:48 chuckler: Yes. 10:23:35 schme: thx 10:23:50 -!- chuckler1 [n=fa@117.192.132.167] has quit [No route to host] 10:23:52 -!- Axioplase is now known as Axioplase_ 10:24:16 chuckler: it doesn't like that core 10:25:15 and you can't use sbcl to compile from the same tree 10:25:19 ah 10:25:24 oh k makes sense now. 10:25:34 i gotta get a different version eh? 10:25:54 no, just binary in one place and source in another 10:26:09 because it will overwrite it in the process of compiling 10:26:09 -!- jrockway [n=jrockway@stonepath.jrock.us] has quit [Read error: 60 (Operation timed out)] 10:26:12 jrockway [n=jrockway@stonepath.jrock.us] has joined #lisp 10:26:37 -!- fvw [n=sdfpme@113.77.206.120] has quit ["leaving"] 10:26:59 hmm that is what i did 10:27:04 the binary was ina differnt place 10:27:17 binary and core were in a different folder from the source 10:27:22 SandGorgon [n=user@122.160.140.244] has joined #lisp 10:28:52 fvw [n=sdfpme@113.77.206.120] has joined #lisp 10:30:30 the same sbcl starts up fine without the make.sh lines before it 10:30:40 rjack [n=rjack@adsl-ull-6-39.51-151.net24.it] has joined #lisp 10:35:20 -!- ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has quit [Read error: 110 (Connection timed out)] 10:37:53 chuckler: try make.sh "sbcl --core core" 10:37:55 with qoutes 10:39:07 k 10:39:23 ruediger [n=ruediger@62-47-155-12.adsl.highway.telekom.at] has joined #lisp 10:39:39 stassats`: compiling :) 10:40:02 brill [n=brill@0x573863d4.hrnqu2.dynamic.dsl.tele.dk] has joined #lisp 10:40:05 ah one learns again. 10:40:18 fe[nl]ix [n=algidus@89.202.147.22] has joined #lisp 10:40:36 is funny: my best friend is getting married in two hours.. but all i can think of is getting sbcl with slime working 10:40:54 hello 10:41:01 i must be a terrible person 10:41:07 hello 10:41:16 maybe... 10:42:08 -!- authentic [n=authenti@85-127-20-51.dynamic.xdsl-line.inode.at] has quit [Read error: 104 (Connection reset by peer)] 10:42:38 chuckler: good that's not you marrying 10:42:55 -!- fvw [n=sdfpme@113.77.206.120] has quit [Remote closed the connection] 10:43:29 heh 10:43:57 yeah.. my girlfriend is right here complaining about isntalling moving a blog on her vps heh.. 10:44:09 movable type* 10:47:34 stassats`: ah starting nicely 10:50:27 good, now you can hack some lisp and forget about marriage 10:53:28 jophish [n=jophish@80-47-236-51.lond-th.dynamic.dial.as9105.com] has joined #lisp 10:53:38 Odin- [n=sbkhh@adsl-2-92.du.snerpa.is] has joined #lisp 10:57:49 heh 10:58:48 _8david: gone already, probably? 10:59:16 he's not in the channel, at least 10:59:18 Anybody else able to give me pointers on how I would go about getting poppler-qt4 stuff working through commonqt? 10:59:19 -!- dto [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has quit [Read error: 110 (Connection timed out)] 10:59:46 thijso: by awesome hacking on commonqt 10:59:47 stassats`: yeah, he said he was off for a computerless weekend... god knows why you'd want to do that... ;) 10:59:57 p_l: right... 11:00:06 no only if I were an awesome hacker... 11:00:12 s/no/now/ 11:00:52 thijso: i had such weekends, i even switched off my phone 11:02:40 thijso: some people like to torture themselves. But actually, it might be a good idea 11:03:57 madnificent, stassats` ... yeah, I'm jk 11:04:10 thijso: try hacking at it, who knows, maybe you'll get something out of it (experience? :D) 11:04:46 *stassats`* once had two computerless months 11:05:10 p_l: yeah, I'm doing that... but I'm coming in rather clean, so any pointers in the right direction would be appreciated... on the other hand, it doesn't seem as if a lot of people are using commonqt, so I probably need to look myself 11:05:21 (short of bugging _8david) 11:05:39 stassats`: what happened? 11:05:49 madnificent: vacation! 11:06:10 -!- Spyderco2 [n=nash@194.45.110.65] has quit [Read error: 104 (Connection reset by peer)] 11:06:23 Spyderco [n=nash@194.45.110.65] has joined #lisp 11:07:37 is there some easy way to figure out what happens exactly when when you define a CLOS-class. I'm looking at what happens when, but for some reason I can't get an overview in my head from http://www.lisp.org/mop/dictionary.html I want to automatically introduce slots, superclasses and accessors based on external information 11:08:15 macroexpand defclass form? 11:08:49 So I thought it'd be the easiest way to create an around-method for ensure-class-using-class, but apparantly I can't call call-next-method from within there (perhaps I tried too much). 11:09:19 -!- saikat_ [n=saikat@adsl-68-127-162-42.dsl.pltn13.pacbell.net] has quit [Read error: 60 (Operation timed out)] 11:09:24 -!- ace4016 [i=ace4016@cpe-76-168-248-118.socal.res.rr.com] has quit ["night"] 11:09:25 But in any case, I lost the overview of the MOP in my head... I want that overview :) 11:09:26 thijso: the thing is, commonqt right now binds only to qtsmoke 11:09:45 thijso: and the method it uses can only be used against other smoke libraries 11:09:46 -!- SandGorgon [n=user@122.160.140.244] has quit [Read error: 54 (Connection reset by peer)] 11:10:12 stassats`: that's quite obvious, I need to know what is called when within the MOP in order to define the class etc (defclass calls ensure-class which calls ensure-class-using-class) 11:10:18 jobf [n=jbf@c80-216-238-151.bredband.comhem.se] has joined #lisp 11:15:43 klausi [n=klausi@port-92-193-110-183.dynamic.qsc.de] has joined #lisp 11:20:08 -!- klausi [n=klausi@port-92-193-110-183.dynamic.qsc.de] has quit [Client Quit] 11:20:49 schoppenhauer [n=css@unaffiliated/schoppenhauer] has joined #lisp 11:21:54 mrsolo_ [n=mrsolo@adsl-68-126-185-123.dsl.pltn13.pacbell.net] has joined #lisp 11:23:22 frobar [n=ulf@85.8.5.196.static.se.wasadata.net] has joined #lisp 11:23:34 antoni [n=user@53.pool85-53-23.dynamic.orange.es] has joined #lisp 11:24:35 joachifm [n=joachim@193.157.244.127] has joined #lisp 11:26:18 i'm implementing a simple state machine using (loop (case mode (state-1 ...) (state-2 ...) ...)). whenever i change the state, i want to go to the next iteration of the loop. what's a good way to do this that always works even if you happen to be inside some nested loop? 11:27:03 jollygood [n=jollygoo@129.71.215.161] has joined #lisp 11:27:46 what about goto? 11:28:16 no such thing in my lisp reference :/ 11:28:25 clhs go 11:28:26 http://www.lispworks.com/reference/HyperSpec/Body/s_go.htm 11:29:14 you can also use blocks, or throw/catch 11:29:14 SandGorgon [n=user@122.160.140.244] has joined #lisp 11:29:16 clhs block 11:29:16 http://www.lispworks.com/reference/HyperSpec/Body/s_block.htm 11:29:19 clhs catch 11:29:19 http://www.lispworks.com/reference/HyperSpec/Body/s_catch.htm 11:31:03 dlowe [n=dlowe@c-24-91-154-83.hsd1.ma.comcast.net] has joined #lisp 11:32:21 -!- spradnyesh [n=pradyus@nat/yahoo/x-62cedad32adcdfb8] has left #lisp 11:32:39 is there something like a named continue in lisp, that allows you to continue with the next iteration of a named loop? 11:33:34 -!- jophish [n=jophish@80-47-236-51.lond-th.dynamic.dial.as9105.com] has quit [Read error: 110 (Connection timed out)] 11:33:47 frobar: throw an error and provide a restart 'continue' ? 11:34:09 these suggestions are getting nuttier 11:34:10 fiveop [n=fiveop@pD9E6B33C.dip.t-dialin.net] has joined #lisp 11:34:19 using catch/throw for flow control feels kinda ugly though :/ 11:34:40 frobar: tagbody, return-from 11:34:49 frobar: I think I built a state machine once... it wasn't that complicated 11:35:27 if your state machine has a fixed initial state, lose the loop and the case, and write it with tagbody and go 11:35:35 danlei [n=user@pD9E2E99D.dip.t-dialin.net] has joined #lisp 11:36:04 hefner: hmm, that could work 11:37:12 for every package I download with ASDF, I can't get its gpg signature. is this... normal? 11:37:24 yes 11:37:40 and you are downloading with asdf-install, not with asdf 11:38:32 *frobar* goes with hefner's suggestion 11:38:48 *hefner* aspires to someday use PROG or PROG* 11:38:59 -!- Jasko [n=tjasko@c-98-235-105-148.hsd1.pa.comcast.net] has quit ["Leaving"] 11:40:24 envi^home [n=envi@220.121.234.156] has joined #lisp 11:40:39 tritchey [n=tritchey@c-68-58-88-241.hsd1.in.comcast.net] has joined #lisp 11:40:50 dto [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has joined #lisp 11:41:29 CyberBlue [n=yong@60.26.115.73] has joined #lisp 11:42:43 *hefner* swore there was a quote from GLS along the lines of "don't ever use PROG", but can't locate it 11:47:17 -!- SandGorgon [n=user@122.160.140.244] has quit [Read error: 104 (Connection reset by peer)] 11:50:18 beach` [n=user@ABordeaux-158-1-6-227.w90-50.abo.wanadoo.fr] has joined #lisp 11:50:59 -!- sellout [n=greg@c-24-128-50-176.hsd1.ma.comcast.net] has quit [] 11:54:09 -!- beach [n=user@ABordeaux-158-1-1-172.w90-50.abo.wanadoo.fr] has quit [Nick collision from services.] 11:54:12 -!- beach` is now known as beach 11:54:20 The-Kenny [n=moritz@p5087F3C8.dip.t-dialin.net] has joined #lisp 11:54:23 -!- schoppenhauer [n=css@unaffiliated/schoppenhauer] has quit [Remote closed the connection] 11:59:44 -!- CyberBlue [n=yong@60.26.115.73] has quit ["Leaving"] 11:59:46 -!- alinp [n=alinp@86.122.9.2] has quit [Read error: 60 (Operation timed out)] 11:59:53 klausi [n=klausi@port-92-193-37-164.dynamic.qsc.de] has joined #lisp 12:00:07 -!- |stern| is now known as seelenquell 12:01:01 beach` [n=user@ABordeaux-158-1-133-152.w90-60.abo.wanadoo.fr] has joined #lisp 12:02:41 -!- brill [n=brill@0x573863d4.hrnqu2.dynamic.dsl.tele.dk] has quit ["Lost terminal"] 12:02:49 -!- frobar [n=ulf@85.8.5.196.static.se.wasadata.net] has quit [Read error: 110 (Connection timed out)] 12:03:27 beach`` [n=user@ABordeaux-158-1-89-235.w86-201.abo.wanadoo.fr] has joined #lisp 12:04:19 Jasko [n=tjasko@209.74.44.225] has joined #lisp 12:06:02 -!- antoni [n=user@53.pool85-53-23.dynamic.orange.es] has quit [Remote closed the connection] 12:06:27 SandGorgon [n=user@122.160.140.244] has joined #lisp 12:06:30 ThomasI [n=thomas@unaffiliated/thomasi] has joined #lisp 12:11:44 alinp [n=alinp@86.122.9.2] has joined #lisp 12:13:03 CyberBlue [n=yong@60.26.115.73] has joined #lisp 12:13:23 jophish [n=jophish@80-47-236-51.lond-th.dynamic.dial.as9105.com] has joined #lisp 12:14:25 Phoodus [i=foo@ip68-231-38-131.ph.ph.cox.net] has joined #lisp 12:15:39 -!- beach [n=user@ABordeaux-158-1-6-227.w90-50.abo.wanadoo.fr] has quit [Nick collision from services.] 12:15:42 -!- beach`` is now known as beach 12:17:16 jao [n=jao@8.Red-83-33-180.dynamicIP.rima-tde.net] has joined #lisp 12:17:25 Foofie [n=innocent@86.80-203-225.nextgentel.com] has joined #lisp 12:21:12 *michaelw* wonders why all the PROG hating... 12:21:56 Zenton` [n=user@212.166.192.129] has joined #lisp 12:22:07 -!- beach` [n=user@ABordeaux-158-1-133-152.w90-60.abo.wanadoo.fr] has quit [Read error: 110 (Connection timed out)] 12:22:18 -!- Zenton [n=user@212.166.192.129] has quit [Read error: 104 (Connection reset by peer)] 12:27:49 -!- tseug [n=tseug3@cpe-70-112-21-137.austin.res.rr.com] has quit [Read error: 110 (Connection timed out)] 12:29:56 -!- Fufie [n=innocent@86.80-203-225.nextgentel.com] has quit [Read error: 110 (Connection timed out)] 12:30:52 sellout [n=greg@guest-fw.dc4.itasoftware.com] has joined #lisp 12:31:18 -!- fe[nl]ix [n=algidus@89.202.147.22] has quit ["Valete!"] 12:31:37 I'm constantly running into the problem of wanting to apply a function/macro to the elements of a list instead of the list itself. In the first case, I can use reduce, but in the latter, I end up using cons and eval or writing another macro do glue everything... Should I change my programming style? Is there some reference on lisp style to avoid getting into these problems? 12:31:50 LiamH [n=none@common-lisp.net] has joined #lisp 12:32:06 blackened` [n=blackene@ip-89-102-208-138.karneval.cz] has joined #lisp 12:32:41 existentialmonk [n=carcdr@64-252-149-27.adsl.snet.net] has joined #lisp 12:34:44 -!- klausi [n=klausi@port-92-193-37-164.dynamic.qsc.de] has quit ["Leaving"] 12:34:55 konr: wrap the macro in a function. 12:35:01 konr: why don't you use #'mapcar and wrap the macro call into an anonymous function ? 12:35:05 :) 12:36:34 blandest: because the macro is usually much more expansive, in my case - I'm using them to login into different sites and then run the body arguments 12:38:45 Corun [n=Corun@94-194-29-31.zone8.bethere.co.uk] has joined #lisp 12:38:57 carbocalm [n=user@64.40.185.82] has joined #lisp 12:39:06 konr: I couldn't understand that. 12:39:14 just wondering if first class macros would solve your problem ? 12:39:36 novaburst [i=nova@sourcemage/mage/novaburst] has joined #lisp 12:40:41 silenius [n=jl@yian-ho03.nir.cronon.NET] has joined #lisp 12:43:15 konr, why are macros involved? The object of a macro is to introduce a new miniature language embedded in Lisp. Macros don't perform operations on data at run-time. 12:43:45 -!- SandGorgon [n=user@122.160.140.244] has quit [Read error: 104 (Connection reset by peer)] 12:44:50 kuwabara pasted "works with clisp, but compilation error with sbcl 1.0.18" at http://paste.lisp.org/display/80650 12:44:54 -!- Ragnaroek [i=54a6570b@gateway/web/ajax/mibbit.com/x-c04f6e1b29c13d92] has quit ["http://www.mibbit.com ajax IRC Client"] 12:44:56 Riastradh: the macro modifies every function call to insert an extra keyword argument 12:45:10 `Every function call'? 12:45:24 Riastradh: inside it 12:45:26 konr: any reason a dynamic variable wouldnt work instead? 12:45:46 Can you show some code demonstrating what this macro does, and then explain what the data are that you are trying to operate upon using REDUCE and whatnot? 12:46:25 kuwabara: I don't think that's legal syntax. 12:46:52 kuwabara: try "for i from 0" 12:47:59 beach` [n=user@ABordeaux-158-1-126-254.w90-60.abo.wanadoo.fr] has joined #lisp 12:48:11 -!- beach [n=user@ABordeaux-158-1-89-235.w86-201.abo.wanadoo.fr] has quit [Nick collision from services.] 12:48:14 -!- beach` is now known as beach 12:49:49 beach, blandest: thanks. Indeed, it seems that at least one subclause is mandatory. 12:51:15 -!- dlowe [n=dlowe@c-24-91-154-83.hsd1.ma.comcast.net] has quit ["Leaving."] 12:52:12 Riastradh: ok, the code would be like (logged-as ("foo" "bar") (delete-thread 'baz 500) (new-mod-thread 'baz :message "hi")) -> besides "logging in", the macro modifies the function within to add a :cookies keyword. I have some functions that generates lists of these calls, like (delete-threads 1 2 3 4 5) generates many (delete-thread)s, but it seems I cannot use reduce to put them into (logged-as) because it is a macro 12:53:00 Sorry, what does `logging in' mean, and what function (call?) does the macro modify? What is the expansion of the LOGGED-AS macro? 12:58:19 Is there a way to declaim that a function will exist ? Or any other mecanism so that 2 functions mutually recursive compile without a warning on sbcl ? 12:58:58 use compile-file, it won't complain 12:59:01 kuwabara: if they are in the same compilation unit, sbcl will not warn 13:00:01 Riastradh: it makes an HTTP request with the given user and password, and the macro modifies the functions within. Take a look at the expansion: http://pastebin.com/m46b6d25d 13:00:43 michaelw: hmm. loading a progn containing the 2 defun still gives a warning on the first that the 2nd is undefined. 13:00:44 konr, why don't you introduce a dynamic variable, say *COOKIE-JAR*, which LOGGED-AS binds to a cookie jar, and then forget about modifying function calls? 13:02:20 (with-compilation-unit () (defun foo () (bar)) (defun bar () (foo))) 13:02:35 stassats`: ok, thanks ! 13:02:55 SandGorgon [n=user@122.160.140.244] has joined #lisp 13:03:10 but if in files, compile-file is enough 13:03:14 just PROGN is fine, too. 13:04:16 ok, so: compile-file for a file, and with-compilation-unit for an eval. michaelw: in which case does progn work ? 13:04:59 progn will work with c-f, but there is no reason to use progn at the top-level 13:05:16 stassats`: macro expansion 13:05:24 -!- Spyderco [n=nash@194.45.110.65] has quit [Read error: 54 (Connection reset by peer)] 13:05:33 i meant directly 13:05:38 Spyderco [n=nash@194.45.110.65] has joined #lisp 13:06:18 -!- arbscht [n=arbscht@unaffiliated/arbscht] has quit [Read error: 110 (Connection timed out)] 13:06:25 -!- SandGorgon [n=user@122.160.140.244] has quit [Read error: 104 (Connection reset by peer)] 13:09:15 arbscht [n=arbscht@unaffiliated/arbscht] has joined #lisp 13:11:57 jmbr [n=jmbr@219.33.220.87.dynamic.jazztel.es] has joined #lisp 13:12:36 Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has joined #lisp 13:14:00 fe[nl]ix [n=algidus@89.202.147.22] has joined #lisp 13:15:08 -!- hugod [n=hugod@bas1-montreal50-1279632405.dsl.bell.ca] has quit [] 13:18:53 -!- Davse_Bamse [n=davse@90.184.205.169] has quit ["leaving"] 13:20:44 tcr [n=tcr@host145.natpool.mwn.de] has joined #lisp 13:24:37 buggarag` [n=user@xdsl-87-78-28-92.netcologne.de] has joined #lisp 13:24:45 -!- buggarag` [n=user@xdsl-87-78-28-92.netcologne.de] has quit [Read error: 104 (Connection reset by peer)] 13:25:15 SandGorgon [n=user@122.160.140.244] has joined #lisp 13:26:19 rsynnott_ [i=rsynnott@spoon.netsoc.tcd.ie] has joined #lisp 13:27:02 -!- rsynnott [i=rsynnott@spoon.netsoc.tcd.ie] has quit [Read error: 104 (Connection reset by peer)] 13:28:40 jsoft [n=Administ@unaffiliated/jsoft] has joined #lisp 13:29:54 Just noticed I have a .sbcl-history file, however it's empty. Is there a way, to keep my linedit (or readline) history in this file between sessions? 13:30:34 s.y,.y. 13:35:58 My version of linedit never created such a file. Are you sure it was not created by something else ? 13:36:31 -!- buggarage [n=user@xdsl-87-78-72-83.netcologne.de] has quit [Nick collision from services.] 13:36:33 Dunno, just noticed it's there.. 13:36:35 antoszka: did you perhaps ever run "rlwrap sbcl"? 13:36:40 -!- danlei [n=user@pD9E2E99D.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 13:36:44 kpreid: Yeah, that's possible. 13:36:49 well, that would create .sbcl_history, not .sbcl-history 13:37:14 So there's no way to preserve linedit history between sessions? 13:37:15 -rw------- 1 antoni antoni 0 2009-03-22 02:30 .sbcl-history 13:37:23 With a - in my case. 13:37:58 It's got the same date as my linedit .sbclrc so I presume it's creation could be related. 13:38:16 -!- SandGorgon [n=user@122.160.140.244] has quit [Remote closed the connection] 13:39:09 Jasko2 [n=tjasko@75-149-33-105-SFBA.hfc.comcastbusiness.net] has joined #lisp 13:39:17 Still, probably it comes from the sb-readline experiments. 13:39:19 nvm 13:39:56 buggarage [n=user@xdsl-87-78-28-92.netcologne.de] has joined #lisp 13:42:53 -!- prip [n=_prip@host134-123-dynamic.32-79-r.retail.telecomitalia.it] has quit [Read error: 110 (Connection timed out)] 13:43:13 prip [n=_prip@host13-135-dynamic.43-79-r.retail.telecomitalia.it] has joined #lisp 13:45:08 LostMonarch [n=roby@host215-20-dynamic.48-82-r.retail.telecomitalia.it] has joined #lisp 13:45:28 bombshelter13_ [n=greg@toronto-gw.adsl.erx01.mtlcnds.ext.distributel.net] has joined #lisp 13:45:36 -!- Jasko [n=tjasko@209.74.44.225] has quit [Read error: 54 (Connection reset by peer)] 13:45:37 -!- Spyderco [n=nash@194.45.110.65] has quit [Read error: 54 (Connection reset by peer)] 13:45:49 Jasko3 [n=tjasko@209.74.44.225] has joined #lisp 13:45:49 Spyderco [n=nash@194.45.110.65] has joined #lisp 13:47:58 -!- jsoft [n=Administ@unaffiliated/jsoft] has quit ["leaving"] 13:51:02 _sohail_ [n=Sohail@d207-81-121-15.bchsia.telus.net] has joined #lisp 13:53:57 hugod [n=hugod@modemcable086.138-70-69.static.videotron.ca] has joined #lisp 14:00:40 -!- CyberBlue [n=yong@60.26.115.73] has quit ["Leaving"] 14:01:00 HET2 [i=diman@xover.htu.tuwien.ac.at] has joined #lisp 14:02:23 nikodemus [n=nikodemu@cs181129202.pp.htv.fi] has joined #lisp 14:03:52 -!- Jasko2 [n=tjasko@75-149-33-105-SFBA.hfc.comcastbusiness.net] has quit [Read error: 110 (Connection timed out)] 14:08:44 i finally had a chance to demo sbcl for my brother, who is a ruby and java hacker mainly 14:09:03 Jabberwockey [n=jens@port-13667.pppoe.wtnet.de] has joined #lisp 14:09:06 nikodemus: and did he see the point? 14:09:15 i wasn't selling :) 14:09:24 just showing him what it is that i work on 14:10:09 he was clearly impressed with slime and the level of interactive development afforded -- adding commands to a running clim app, restarts, etc 14:10:56 -!- jlf [n=user@netblock-208-127-247-67.dslextreme.com] has quit [Read error: 110 (Connection timed out)] 14:11:03 nikodemus: ruby has irb, so adding commands is possible there too (et restarts are sweet) 14:11:37 he made a very good point, though. eg. the sbcl webpage doesn't answer questions "why lisp - why common lisp - why sbcl?" 14:12:05 lisp needs marketeers? 14:12:45 Doesn't it? 14:13:10 -!- The-Kenny [n=moritz@p5087F3C8.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 14:14:28 of course it does .. more people able to work full time on lisp stuff == win 14:14:29 not necessarily marketeers, but making things easier to find about and understand would be a win 14:14:47 on that note: 14:14:59 i was quite taken with those three questions, really. because they are a good set 14:15:15 "why lisp?" PCL has a chapter 14:16:15 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit ["+++ killed by SIGSEGV +++"] 14:17:55 I may somewhat choose (that is to say, if I can convince the person I'm working with) what language I'll be doing my summer holiday job in. The other guy is a full-time ITer there, yet he has started from virtually no knowledge (as in: he doesn't know OO and is (or at least has been) working soulely with php and microsoft things (primarily Visual Basic)). The goal is to write some software that has to run on linux. Therefore I can 14:17:55 basically choose how we're going to tackle it. I'd really love to do this in lisp, but this guy *must* be able to extend the application. Can you get someone to know lisp, the way an application has been built and general unix within one month? 14:18:08 antoszka [n=antoszka@unaffiliated/antoszka] has joined #lisp 14:18:32 stassats`: succesfull lisp has a fairly decent chapter about it too 14:19:06 anyway, sbcl's site need to answer only "why sbcl?" 14:20:31 willb [n=wibenton@173-18-243-255.client.mchsi.com] has joined #lisp 14:20:35 i disagree. there's space there for at least pointers to answers for the other two questions... 14:21:43 yes, i meant directly, with links to PCL and whatever 14:24:39 stassats`: i'm not sure i agree, actually. i'm not sure it is a reasonable assumption that someone looking at sbcl has already chosen lisp and common lisp in particular 14:25:25 It occurs to me that a valid enterprisey reason for choosing lisp is that there have always been, and are likely to always be, lisp programmers (if not many of them). Good luck finding Delphi programmers in 1975 and 2015... 14:26:09 my time machine is broken atm, so 1975 is not a problem 14:26:26 -!- jobf [n=jbf@c80-216-238-151.bredband.comhem.se] has quit [Read error: 60 (Operation timed out)] 14:26:29 fvw [n=sdfpme@113.77.206.120] has joined #lisp 14:27:07 milanj [n=milan@79.101.204.52] has joined #lisp 14:29:48 nyef [n=nyef@65-125-125-98.dia.static.qwest.net] has joined #lisp 14:30:47 -!- fvw [n=sdfpme@113.77.206.120] has quit [Client Quit] 14:31:10 fvw [n=sdfpme@113.77.206.120] has joined #lisp 14:31:36 -!- fvw [n=sdfpme@113.77.206.120] has quit [Client Quit] 14:31:56 vasa [n=vasa@80.94.234.105] has joined #lisp 14:34:21 sh10151 [n=user@132.174.145.156] has joined #lisp 14:35:37 madnificent: if you can get him to understand the structure of the program, the implementation language isn't that important insofar as extending it goes. 14:35:54 just make sure that the architecture is flexible enough to be extended. :) 14:36:02 timor [n=martin@w4850.dip.tu-dresden.de] has joined #lisp 14:36:05 -!- timor [n=martin@w4850.dip.tu-dresden.de] has left #lisp 14:37:09 tombom [i=tombom@wikipedia/Tombomp] has joined #lisp 14:37:39 Fade: do you think he'll be able to understand lisp-code (if only enough to get himself out of problems in the way he used to do it (that will be basic clos and some lispy things like basic loop)) in that time? 14:38:08 as he doesn't know OO now, I think CLOS will not come as a surprise to him. it's quite natural 14:38:29 if he's bright, the syntax for lisp is quite succinct. 14:38:34 so, i'd say yes. 14:38:54 if he's resistant in any way, it's a non-starter. 14:39:58 Fade: sure, nothing beats `destructuring-bind' for succinctness ... except maybe , 14:40:00 :-D 14:40:38 heh 14:41:07 well, if he's a visual basic user, the near absence of signifigant syntax in lisp is going to seriously reset his margins in a major way. 14:41:40 but if he's a neophyte, then he should pick up lisp quickly. 14:42:07 most of the entry pains wrt lisp are caused by people bringing their algol baggage with them. 14:43:35 -!- ASau [n=user@host9-231-msk.microtest.ru] has quit ["Off!"] 14:45:02 Fade: yeah, that's why I think lisp might be viable. (explicitly not saying he is dumb here, as I honoustly don't think he is) He is not the most adventurous type, which somewhat scaring me 14:45:13 I'm going to propose it later, thanks 14:45:35 what's the problem domain 14:45:36 ? 14:46:25 eno__ [n=eno@adsl-70-137-161-71.dsl.snfc21.sbcglobal.net] has joined #lisp 14:46:49 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 104 (Connection reset by peer)] 14:47:41 a system that registers the exact packages for a set of production-lines from production to customer-sale. Clients (which are customers like you and me) can place orders, so that needs to be included as well. 14:48:18 -!- rsynnott_ is now known as rsynnott 14:48:23 I think the initial project will be connecting to what has been previously built (production-monitoring) and handle everything that has to do with customers. In any case: as much as we can do within the given time 14:49:02 that's a big application for a one month project. 14:49:11 lisp is probably a good technical choice. 14:49:15 yeah 14:49:45 you'll likely get much more accomplished than a team of commercial ERP consultants 14:50:20 will need some smarter-than-average programmers though 14:50:33 it is a big project, yet we have a working prototype and I know the way the company works rather well... I'm not forced to get it done in the month, but then the other it-er must be able to finish it on his own 14:50:52 sh10151: I wonder if I can strech his mind a bit 14:51:10 so you handle the heavy lifting right away, and leave the simpler tasks for him at the end. 14:51:17 Fade is right 14:51:28 sure, the complete backend should be finished rather quickly 14:51:31 you'll have to really give him some good abstractions to use 14:51:53 considering your interest in database interaction, that shouldn't be a big deal for you. 14:51:55 the frontend will be web-based (if we can get the weighing scales to send their data through firefox) 14:51:59 for him, it'd be a lot to absorb. 14:52:05 madnificent: what implementation are you planning to use_ 14:52:13 get him to buy gigamonkey's book and read it before the project starts. 14:52:28 Fade: I've built something for validating the model btw. If you're interested 14:52:43 Fade: I could buy him one 14:52:53 nikodemus: I was thinking about sbcl 14:52:56 nikodemus: any reason? 14:52:57 *Fade* is always interested, as is the correct role of the student. ;) 14:53:24 Fade: I'll put it on github sometime this/next week, then I'll link you. It's trivial, but handy 14:53:30 mostly just curious 14:53:32 cool 14:54:13 though of course if you think existence of commercial support matters you can always point to http://sb-studio.net :) 14:55:34 -!- cpc26 [n=cpc26@72.170.156.242] has quit [Client Quit] 14:55:40 nikodemus: the requirement is: "we will not buy any licenses or use anything that can force us to buy new hardware (unless the hardware itself is broken or too slow)" 14:55:54 nikodemus: it's literally the move away from vendor lockins 14:56:18 madnificent: Lack of previous OOP contamination is going to make CLOS much easier... 14:56:23 the company isn't very big btw, there is barely support for that one ITer 14:56:26 sbcl sounds like a good fit. 14:56:33 clozure if you're running ppc hardware. 14:57:10 I can always move to another implementation if needed 14:57:54 in principle :) 14:57:56 it would be nice if it would all work on windows too (but if it doesn't it is just a server, so it can even be ran in a virtual instance somewhere) 14:58:14 well, it's been experimentally proven that large applications can be ported between implementations 14:58:17 clozure seems to have slightly better win32 support than sbcl at the moment 14:58:53 what would I use for testing? He isn't used to writing tests (I think) which I don't like 14:59:12 I've used five-am and stefil myself, but I've never done anything of this size in lisp 15:00:06 if you want to minimize accidental complexity, RT (or SB-RT) is dead simple. not fancy, but trivial to understand 15:00:21 not that 5am is hard 15:01:28 nikodemus: simple should be the best bet here, I assume 15:09:14 -!- ausente is now known as dalton 15:09:51 -!- jdz [n=jdz@85.254.211.133] has quit ["Somebody booted me"] 15:10:43 if someone is after simplicity then stefil's tests are just a bunch of defun's with some extra cruft to gather information, guide slime's debugger, etc... 15:13:24 -!- mvilleneuve [n=mvillene@ABordeaux-253-1-119-58.w86-201.abo.wanadoo.fr] has quit ["Lost terminal"] 15:13:49 dlowe [n=dlowe@ita4fw1.itasoftware.com] has joined #lisp 15:15:06 authentic [n=authenti@85-127-20-51.dynamic.xdsl-line.inode.at] has joined #lisp 15:19:17 ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has joined #lisp 15:21:30 schoppenhauer [n=css@unaffiliated/schoppenhauer] has joined #lisp 15:21:31 athos [n=philipp@92.250.250.68] has joined #lisp 15:21:50 -!- alinp [n=alinp@86.122.9.2] has left #lisp 15:26:58 attila_lendvai: not too sure if he'll use emacs right away... he has to get used to not use the mouse everywhere, so... but you've built stefil well :) 15:31:49 yeah, stefil is great 15:34:06 if you don't get him cut over to emacs, lisp will probably seem like a form of BDSM to him. 15:35:24 we used 5am before and it occurred to us several times that a test suite is just another application, only more pressure on gathering information while running and on helping debugging... so, why do all the magic the other test suites do when we have defun's and slime... 15:36:00 yeah, lisp without emacs is just mere pain 15:36:58 as i remember, my first week with emacs/slime was really tough... with all those people telling me not to rebind emacs key bindings. luckily they could only hold me back for a few days... :) 15:39:21 eno [n=eno@nslu2-linux/eno] has joined #lisp 15:39:41 -!- eno__ [n=eno@adsl-70-137-161-71.dsl.snfc21.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 15:40:41 -!- Corun is now known as Corun|away 15:42:07 Jasko2 [n=tjasko@75-149-33-105-SFBA.hfc.comcastbusiness.net] has joined #lisp 15:43:45 rebinding emacs keys is probably a good way to learn emacs. 15:44:24 ...and then i've bought a kinesis, which opened a new era of emacs key rebindings... :) 15:44:58 -!- Spyderco [n=nash@194.45.110.65] has quit [Read error: 104 (Connection reset by peer)] 15:45:03 -!- aerique [i=euqirea@xs2.xs4all.nl] has quit ["..."] 15:45:04 -!- silenius [n=jl@yian-ho03.nir.cronon.NET] has quit ["flupp"] 15:45:10 Spyderco [n=nash@194.45.110.65] has joined #lisp 15:45:25 attila_lendvai: he can use any editor, I guess... I think making him learn all those things together will simply be too much... it'll be unix, lisp, an application, and emacs then... that's way too much for a month 15:45:53 my lisp experience would have started out a lot nicer if I'd known about rlwrap 15:46:11 madnificent: emacs is not only an editor... just think of slime's inspector and debugger... 15:46:35 dlowe: linedit seems nicer than rlwrap 15:46:37 rlwrap is something like a painkiller -- not a solution 15:47:57 ...although i've heard that people are hiding away slime's features by default from newbies... :) 15:48:21 slime could really use some advanced tutorals. 15:48:49 antoszka: well, I use slime+emacs now, but it would have helped at the time 15:48:51 YAY! Finished grading the exams! 15:49:22 beach: grats 15:49:36 -!- Jasko3 [n=tjasko@209.74.44.225] has quit [Read error: 60 (Operation timed out)] 15:49:57 Thanks! 15:50:23 rread [n=rread@c-98-234-219-222.hsd1.ca.comcast.net] has joined #lisp 15:50:34 dlowe: I use both. But obviously slime is the way to go most of the time. 15:50:38 heh, it's funny to hear the other side... :) i've heard a few "yay! finished this semester"'s recently... :) 15:52:38 -!- Foofie [n=innocent@86.80-203-225.nextgentel.com] has quit [Read error: 104 (Connection reset by peer)] 15:52:59 Foofie [n=innocent@86.80-203-225.nextgentel.com] has joined #lisp 15:53:49 -!- Foofie is now known as Fufie 15:54:47 -!- Corun|away [n=Corun@94-194-29-31.zone8.bethere.co.uk] has quit ["Leaving..."] 15:56:15 -!- milanj [n=milan@79.101.204.52] has quit [Read error: 110 (Connection timed out)] 15:57:00 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Read error: 104 (Connection reset by peer)] 15:57:36 Adamant [n=Adamant@c-76-29-188-22.hsd1.ga.comcast.net] has joined #lisp 16:00:55 faux [n=user@1-1-4-21a.gkp.gbg.bostream.se] has joined #lisp 16:01:44 quit 16:01:54 -!- wgl [n=wgl@216.145.227.9] has quit [Remote closed the connection] 16:03:36 -!- fe[nl]ix [n=algidus@89.202.147.22] has quit ["Valete!"] 16:03:58 -!- rjack [n=rjack@adsl-ull-6-39.51-151.net24.it] has quit ["leaving"] 16:04:47 *madnificent* 's exam-period has yet to start 16:07:00 -!- splittist [n=dmurray@117-125.2-85.cust.bluewin.ch] has quit ["byee"] 16:10:14 mib_6yc9d730 [i=5a95ea28@gateway/web/ajax/mibbit.com/x-c840d03d17ddea58] has joined #lisp 16:10:37 -!- blandest [n=blandest@softhouse.is.ew.ro] has quit ["Leaving."] 16:11:29 -!- mib_6yc9d730 is now known as lnostdal-mibbit 16:15:04 ikki [n=ikki@201.155.75.146] has joined #lisp 16:15:07 ericklc [n=ikki@201.155.75.146] has joined #lisp 16:15:22 -!- ericklc [n=ikki@201.155.75.146] has quit [Client Quit] 16:17:06 SandGorgon [n=user@122.163.205.71] has joined #lisp 16:19:33 amnesiac [n=amnesiac@p3m/member/Amnesiac] has joined #lisp 16:20:50 -!- hugod [n=hugod@modemcable086.138-70-69.static.videotron.ca] has quit [] 16:20:53 so how many people here are academic? students, researchers, lecturers, etc. 16:20:58 clhs ftype 16:20:58 http://www.lispworks.com/reference/HyperSpec/Body/d_ftype.htm 16:22:22 |jeremiah [n=jeremiah@31.Red-213-98-123.staticIP.rima-tde.net] has joined #lisp 16:23:30 -!- lnostdal-mibbit [i=5a95ea28@gateway/web/ajax/mibbit.com/x-c840d03d17ddea58] has quit ["http://www.mibbit.com ajax IRC Client"] 16:23:48 daniel_ [i=daniel@unaffiliated/daniel] has joined #lisp 16:24:54 saikat [n=saikat@adsl-68-127-162-42.dsl.pltn13.pacbell.net] has joined #lisp 16:26:02 ironChicken: I am a student 16:26:32 *stassats`* is a bad student 16:26:39 ironChicken: beach is a professor, yvdriess is a researcher, fade is a student 16:26:48 -!- LostMonarch [n=roby@host215-20-dynamic.48-82-r.retail.telecomitalia.it] has quit ["raise RuntimeError"] 16:26:51 sykopomp: is a student too 16:27:08 and w00ps, I'm shouting everybody's name with that :( 16:27:15 ironChicken: why? 16:27:30 just saw the discussion about exams above 16:27:37 ahh 16:27:43 and give lisp's reputation as a academic language 16:27:54 s/give/given/ 16:27:56 if there's one thing I DON'T miss about college, it's exams :) 16:28:23 i'm a phd student in computer science. but my formal background is in musicology 16:28:32 i learned lisp certainly not as a student 16:28:32 rsynnott: I hate them, but I do notice that my brain can get some extreme extra activety because of it. And I start doing sports because of them etc etc 16:28:58 *nyef* is a high-school dropout. Not every lisper is an academic. 16:29:15 -!- tcr [n=tcr@host145.natpool.mwn.de] has quit ["Leaving."] 16:29:16 no, i didn't mean to apply a stereotype 16:29:17 stassats`: whilst being a student, perhaps? 16:29:29 *madnificent* likes nyef's path 16:29:31 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 16:29:44 i regularly get one of those dreams from the exam periods, or struggling to find out how to finish the last lecture so that i can get my degree finally... feels so good to wake up realizing that it's just a dream... :) 16:29:45 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 16:29:49 *stassats`* already dropped out once 16:30:27 I degree-hopped twice (if that's a term) 16:30:42 interdisciplinary 16:30:47 is the uk term 16:30:57 madnificent: yes, while being a student, but it certainly didn't help 16:31:03 nyef: with my current mindset, i'd quit my university at 3rd year... that paper is useless, and especially so in CS... 16:31:08 malcolm_reynolds [n=malc@78-86-4-156.zone2.bethere.co.uk] has joined #lisp 16:31:09 stassats`: I think I'm living your pain :P 16:31:20 *rsynnott* NEARLY switched to theoretical physics in first year 16:31:36 madnificent: pain? what pain? 16:32:26 mikesch [n=axel@xdsl-84-44-252-52.netcologne.de] has joined #lisp 16:32:44 stassats`: having to code other languages... (I assumed you were thinking about that) 16:33:23 ah, that, i didn't give much attention to that 16:33:31 Can anyone tell me if there is an equivalent to (apply fn args) when instead of applying a function, I want to apply a macro? using sbcl if that matters 16:33:43 tseug [n=tseug3@cpe-70-112-21-137.austin.res.rr.com] has joined #lisp 16:33:48 you can't apply a macro 16:34:05 you can apply a macro function, but you rarely need that 16:34:20 malcolm_reynolds: you are probably off-track... if you really needed that, then you would know how to do it (see macroexpand) 16:34:33 hmm.. the list in args only has a few elements so I guess I could manually extract them and replace it with at explicit call to the macro 16:34:34 attila_lendvai: Yeah, I try to never let my schooling interfere with my education. 16:34:41 i take it macros can call themselves recursively? 16:35:07 nikodemus` [n=nikodemu@cs181129202.pp.htv.fi] has joined #lisp 16:35:29 you don't call a macro, you expand it 16:35:42 No, the best a macro can do is expand to a form which contains a further instance of the macro to be expanded. 16:35:50 -!- nikodemus [n=nikodemu@cs181129202.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 16:36:24 okay, sure, i haven't quite got my head round the terminology etc yet. but as long as macros can contain further instances of themselves, that's what i'm looking for 16:36:29 malcolm_reynolds: macro's are operations on the code itself. It can call itself, but its generally not the way to go. (perhaps you can describe your general problem, make a paste or something like that?) 16:36:44 nyef: aroundp 16:36:50 nikodemus`: T. 16:36:53 oh, there you are :) 16:36:54 What's up? 16:37:01 https://bugs.launchpad.net/sbcl/+bug/379472 16:37:06 any guesses? 16:37:09 malcolm_reynolds: try to grasp what a macro does... use (macroexpand-1 '(my-macro with my args)) to see what would actually happen 16:37:58 hmm.. i'll try and clean up the code enough to paste. but the general deal is i am dealing with tree structures 16:38:11 i want to be able to declaratively write down the structure of my tree 16:38:47 and have a macro that takes this (sort-of)DSL into the code that needs to make every node instance, link up the pointers to parents (i need to traverse the tree up as well as down) 16:38:57 Hrm. I'm able to reproduce it. Let me look at it for a bit. 16:39:21 thanks 16:39:54 so for a tree definition of (0 :ch ((1 :rpar 4) (2 :rpar 8))) i want a root node with id zero, and two children with ids 1 and 2, with the edges weighted by 4 and 8 respectively 16:40:18 First thing that comes to mind is that we need to fix this disassembler again. FS-SEGMENT-PREFIX is an obnoxious thing to see, and it gets TIB addresses wrong when it does a lookup. 16:41:10 -!- daniel [i=daniel@unaffiliated/daniel] has quit [Read error: 110 (Connection timed out)] 16:42:07 First thing that comes to mind is that it's not entirely broken, as the image still runs after the error. 16:42:20 at each step of the recursive building, i want a macro to be expanded which accepts keyword arguments :ch (for the children of that node) and/or :rpar (resistance to parent, resistance isn't important, you can think of this as a weighted edge). 16:43:16 -!- dialtone [n=dialtone@adsl-71-138-130-18.dsl.pltn13.pacbell.net] has quit [Read error: 110 (Connection timed out)] 16:43:29 -!- ignas [n=ignas@78.59.166.221] has quit [Read error: 110 (Connection timed out)] 16:43:45 this is probably too hard to explain in text, i'll clean up my code for a paste 16:43:47 hugod [n=hugod@modemcable086.138-70-69.static.videotron.ca] has joined #lisp 16:43:53 malcolm_reynolds: You realize that a macro can do arbitrary processing on its parameters, right? 16:44:06 -!- SandGorgon [n=user@122.163.205.71] has quit [Read error: 110 (Connection timed out)] 16:44:25 yeah i know how they work but i haven't had much experience writing non-trivial ones 16:45:03 -!- ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has quit [Read error: 110 (Connection timed out)] 16:45:27 qzg [n=qzg@adsl-99-55-229-198.dsl.spfdmo.sbcglobal.net] has joined #lisp 16:45:27 malcolm_reynolds: one worthwhile trick to clarify your thinking may be to start by doing (defun my-macro (&body code) (expand-my-macro code)) 16:45:36 nikodemus`: Umm... Is this example even right? Shouldn't it return T instead of :OUT ? 16:45:58 T is in the cleanup 16:45:59 http://paste.lisp.org/display/80659 16:46:12 Oh, right, it doesn't NLX from the cleanup. My mistake. 16:47:34 I have a reasonable handle on what the code is doing, I think.. my issue is at the end where i want to expand make-tree-rec over all the elements of the list representing children 16:48:02 malcolm_reynolds: decompose it into functions that recurse on the source instead of relying on recursive expansion -- it's fine to do so, but thinking about it may be trickier 16:48:42 okay, so make-tree-rec expands another macro over that list, which then expands make-tree-rec over the elements? something like that? 16:50:17 The-Kenny [n=moritz@p5087F3C8.dip.t-dialin.net] has joined #lisp 16:52:34 ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has joined #lisp 16:54:16 bakkdoor [n=bakkdoor@xdslcm045.osnanet.de] has joined #lisp 16:55:32 nikodemus`: I'm having trouble making heads or tails of the disassembly and trace file, but... the main difference about catch/uwp on win32 is that the top SEH frame pointer at [FS:0] has to be restored during unwind, which happens in unlink-unwind-protect, and there's only one of those in the function trace. 16:56:21 -!- konr [n=konrad@201.82.132.33] has quit [Read error: 110 (Connection timed out)] 16:57:08 It's actually not unreasonable for there to be only one unlink-unwind-protect, though, given that THROW doesn't return and will take care of unlinking that inner UWP. 16:57:33 -!- Spyderco [n=nash@194.45.110.65] has quit [Connection reset by peer] 16:57:47 Spyderco [n=nash@194.45.110.65] has joined #lisp 16:58:27 -!- Spyderco [n=nash@194.45.110.65] has quit [Client Quit] 16:59:24 Spyderco [n=nash@194.45.110.65] has joined #lisp 17:00:06 I'm not a student. 17:00:31 *madnificent* wonders who he has mistaken sykopomp with 17:00:35 madnificent: I graduated a while ago. I just haven't gotten a 'real life' since getting my diploma. 17:00:41 I probably sound a lot like a student :P 17:01:20 sykopomp: What do you consider 'real life'? :) 17:01:21 nyef: i've forgotten almost all i ever know of seh :/ 17:01:22 there's also a couple of people I know from my college in this channel, and they're still students. 17:01:33 and it wasn't much to begin with 17:02:02 antoszka: I haven't found an answer to that yet. What I meant by that was really "I haven't gone out, gotten a 9-5 job, or left the area where I studied" 17:02:08 Yeah, and the backtrace and error information aren't being very informative. :-/ 17:02:41 malcolm_reynolds: not quite. think of it this way: you need to write a program that walks over the description of your tree, and returns source that builds the tree 17:02:50 yes 17:03:37 sykopomp: Neither have I. 17:03:41 sykopomp: Being 35 or so. 17:04:00 Looks like it's happening -before- either of the UWPs fire. 17:04:30 sykopomp: I'm happy freelancing, doing odd stuff here and there and beginning to learn CL. 17:04:43 So there's nothing to hurry to. 17:05:09 hmm.. i think it might be working. or at least, an expansion of (make-tree (0 :ch ((1 :rpar 2) (2 :rpar 4)))) returns a tree object 17:05:09 (Replaced both UWP recovery forms with FORMATs, neither appear until after an action is taken in the debugger.) 17:07:02 dialtone [n=dialtone@adsl-99-136-101-166.dsl.pltn13.sbcglobal.net] has joined #lisp 17:07:07 So, first, since both UWPs fire, they're both set up more-or-less correctly. 17:08:07 Second, the trace file shows that it's going through THROW rather than unwinding straght to a target frame. 17:09:09 Next, THROW works by finding the target frame, looking up the target SEH frame, and issuing an RtlUnwind. 17:09:32 So I suspect that the target SEH frame is not set up for some reason... 17:09:37 mrsolo__ [n=mrsolo@nat/yahoo/x-8f800ba48720f784] has joined #lisp 17:10:27 -!- mrsolo__ [n=mrsolo@nat/yahoo/x-8f800ba48720f784] has quit [Client Quit] 17:11:45 time to go home, laters 17:11:49 -!- nikodemus` [n=nikodemu@cs181129202.pp.htv.fi] has quit ["Leaving"] 17:12:28 -!- tseug [n=tseug3@cpe-70-112-21-137.austin.res.rr.com] has quit ["Leaving"] 17:13:04 pstickne [n=pstickne@c-24-21-76-57.hsd1.wa.comcast.net] has joined #lisp 17:13:26 Oh, hell. There's an -ordering dependency-. 17:15:27 ASau [n=user@193.138.70.52] has joined #lisp 17:15:42 ASau` [n=user@193.138.70.52] has joined #lisp 17:22:50 ruediger_ [n=ruediger@62-47-159-192.adsl.highway.telekom.at] has joined #lisp 17:22:54 -!- envi^home [n=envi@220.121.234.156] has quit [Read error: 104 (Connection reset by peer)] 17:22:56 -!- ruediger [n=ruediger@62-47-155-12.adsl.highway.telekom.at] has quit [Read error: 110 (Connection timed out)] 17:23:00 -!- tombom [i=tombom@wikipedia/Tombomp] has quit ["Peace and Protection 4.22.2"] 17:25:28 frobar [n=ulf@h-60-171.A163.priv.bahnhof.se] has joined #lisp 17:26:52 -!- bakkdoor [n=bakkdoor@xdslcm045.osnanet.de] has quit [] 17:26:55 *nyef* hopes that nikodemus can figure out how to fix the bug, given the diagnosis. 17:27:30 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #lisp 17:27:41 how can i create an independent copy of an array? 17:28:28 copy-seq? 17:28:28 -!- faux [n=user@1-1-4-21a.gkp.gbg.bostream.se] has quit [Read error: 54 (Connection reset by peer)] 17:28:39 that's only for vectors 17:28:51 hm. 17:29:22 i'm only working with vectors in this case though, so it should work 17:29:24 thanks 17:30:04 there is no copy-array. unfortunately. 17:30:59 but there is alexandria:copy-array 17:31:12 Well, actually, there is a gimmick; you can make a displaced array to the original array, then use adjust-array to un-displace it 17:31:36 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 17:31:59 that's what alexandria:copy-array does 17:32:11 good to know 17:33:02 without your comment i was trying to understand how to it works 17:33:22 Good evening. 17:34:00 good evening beach 17:34:29 Corun [n=Corun@94-194-29-31.zone8.bethere.co.uk] has joined #lisp 17:34:35 silenius [n=jl@dslb-088-073-064-038.pools.arcor-ip.net] has joined #lisp 17:35:29 Would "un-displace" be "replace"? 17:35:59 copy-array must have been one of those "hey, this might be useful! quick! remove it before these damn programmers feel entitled to it!" things 17:36:19 Why would you need to copy an array? 17:36:46 the same reason you need to copy a sequence? 17:39:56 BrianRice [n=briantri@c-98-225-51-246.hsd1.wa.comcast.net] has joined #lisp 17:42:20 nyef: in this case because i might need to restore it later 17:42:54 BrianRice-mb [n=briantri@c-98-225-51-246.hsd1.wa.comcast.net] has joined #lisp 17:44:26 Most things about arrays are really rather irritating in CL. First and foremost, #'equal. 17:45:15 what about it? 17:46:23 For conses, equal is defined recursively as the two cars being equal and the two cdrs being equal. Two arrays are equal only if they are eq, with one exception: strings and bit vectors are compared element-by-element (using eql). 17:46:38 makes no sense. 17:46:43 well, why don't you like equalp? 17:47:33 case insensitive string comparison. 17:47:34 it's case-insensitive 17:47:53 foom: EQUAL compares vectors elementwise iff they have special read syntax :-) 17:51:21 seems that there were many debates on EQUAL and EQUALP in the standardisation process 17:51:39 milanj [n=milan@91.150.119.137] has joined #lisp 17:53:18 nha [n=prefect@137-64.105-92.cust.bluewin.ch] has joined #lisp 17:53:30 -!- joachifm [n=joachim@193.157.244.127] has quit [Client Quit] 17:53:33 there were even proposal to remove them at all 17:54:26 -!- kiuma [n=kiuma@85-18-55-37.ip.fastwebnet.it] has quit ["Bye bye ppl"] 17:54:36 but if they had, would we have had user-defined hash table tests? 17:56:53 I'd be okay with not having eql or equalp and equal being sane. :) 17:57:48 I'm only ok with throwing out EQL if you also make the objects which EQUAL descends into being immutable 17:57:56 there can't be one sane equality predicate 17:57:59 every once in a while I get pissed enough that I consider making my own dialect, but then remember that I don't have enough time to actually maintain such a thing. :P 17:58:06 stassats`: true, but there can be two. 17:58:50 well, i doubt it too 17:58:55 and there are certainly different degrees of insanity. treating arrays different from cons trees is pretty far down the insane path 17:59:31 -!- pstickne [n=pstickne@c-24-21-76-57.hsd1.wa.comcast.net] has quit [Read error: 110 (Connection timed out)] 17:59:51 -!- BrianRice [n=briantri@c-98-225-51-246.hsd1.wa.comcast.net] has quit [Read error: 110 (Connection timed out)] 18:00:36 what about treating arrays and not treating structures and objects? 18:01:27 ... I think I like darcs-to-git. 18:01:39 stassats`: indeed 18:03:25 -!- BrianRice-mb is now known as BrianRice 18:05:00 user-defined types should clearly be able to defmethod equal to define their own equality predicate.. 18:05:10 -!- HET2 [i=diman@xover.htu.tuwien.ac.at] has quit ["This computer has gone to sleep"] 18:05:35 -!- xan-afk is now known as xan 18:05:55 daedra [n=simon@unaffiliated/daedra] has joined #lisp 18:06:23 ignas [n=ignas@ctv-79-132-160-221.vinita.lt] has joined #lisp 18:06:43 !wiki 18:06:59 no wiki 18:07:09 hmm is there a channel wiki? or some resource that keeps links to books/sites? 18:07:16 minion: cliki? 18:07:17 cliki: CLiki is a free collaborative hypertext (Web) authoring program, written in Common Lisp. http://www.cliki.net/cliki 18:07:22 nikodemus [n=nikodemu@cs181229041.pp.htv.fi] has joined #lisp 18:07:23 minion: books? 18:07:24 books: Lisp Books: A list of favorite Lisp books. http://www.cliki.net/Lisp%20Books 18:07:29 Hello nikodemus. 18:07:46 hi, just back for a second 18:07:56 Fair enough. 18:07:57 -!- ThomasI [n=thomas@unaffiliated/thomasi] has quit ["Bye Bye!"] 18:08:09 I posted my diagnosis of that bug. 18:08:38 Essentially, there's a stack-depth ordering dependency for SEH frames. 18:08:44 *nikodemus* reads 18:09:34 hm 18:09:48 -!- willb [n=wibenton@173-18-243-255.client.mchsi.com] has quit [Read error: 104 (Connection reset by peer)] 18:09:56 Yeah. Hm indeed. 18:09:57 can you remind me why we need to use SEH for unwinding our own frames? 18:10:07 Interop with Win32 SEH. 18:10:30 but that matters only with foreign calls, right? 18:11:03 Sortof, yes. 18:11:44 But without integration at this level we get worse graft-vs-host syndrome damage making it work. 18:12:18 what do other lisps do on windows, do you know? 18:12:20 Jasko3 [n=tjasko@209.74.44.225] has joined #lisp 18:12:29 And we need to move even closer to this model to make unwind interop work for other platforms. 18:12:47 I'm fairly sure corman lisp does approximately this (modulo their stack model). 18:12:52 unwind interopt where? 18:13:09 Linux, Windows x64, OSX, you name it. 18:13:28 you lost me 18:13:30 Win32 is the -only- platform where unwind interop operats in terms of a linked list of frames on the stack. 18:13:39 what unwind interop are we missing outside win32? 18:13:47 It's also the only platform where we have any sort of unwind interop. 18:14:12 C++ exceptions, for example. Including stack object destructors. 18:14:19 oh, right 18:14:51 -!- Corun is now known as Corun|away 18:15:00 Essentially, every non-win32 platform uses a stack crawler. 18:15:28 do we want C++ unwind interop? 18:15:41 Yes. 18:15:51 We absolutely need it for Win32 and Windows x64. 18:16:01 for windows, yes 18:16:04 but elsewhere? 18:16:10 And we're going to get more and more people trying to do stuff with C++ libraries elsewhere. 18:16:14 hm 18:16:32 if i understand this correctly, the current win32 interop makes our own UWPs more expensive? 18:16:46 Yes, slightly. 18:17:05 what sort of Lisp does Abelson Sussman use in his lectures "Introduction to Lisp" ? 18:17:05 and what about interop with the new fancy qt dynamic bindings? will those catch us? 18:17:19 At the same time, we could reasonably eliminate that expense with a little work. 18:17:27 I am finding that Common Lisp doesn't have the functions he uses 18:17:35 daedra: Scheme. 18:17:41 nyef: oh ok 18:17:53 thanks 18:18:10 namely, MIT Scheme, but any other sane scheme implementation should be ok 18:18:30 Also, if we go the full unwind interop route for non-win32 platforms, we can make UWP and catch establishment cheaper at the cost of a more expensive unwind and maintaining full unwind tables. 18:18:45 would that make java style implementation where the no-NLX case doesn't cost anything extra harder or easier? 18:19:17 or are you talking about exactly that? 18:19:21 Exactly that. 18:19:25 oh, cool 18:19:36 It's not free, the cost is pushed to compile-time and unwind-time. 18:19:57 um, not quite if i understand it correctly 18:20:48 Also means cheaper variable binding, as we can fold the bindstack into the control stack, no more debug-catch-tags or the markers for unwind-to-frame-and-call-vop, etc. 18:20:50 the cleanups are also appended inline to the protected part, preceded by "pop-uwp" 18:21:20 do you have a reference or link for me to read? 18:21:22 Right, you pay a compile-time cost for maintaining accurate stack maps and restarts, etc. You pay an unwind-time cost for crawling the stack. 18:21:42 right. but normal return is cheap, which is importnat 18:21:43 Umm... Let me check what I have posted. 18:22:46 There are a couple of likely looking files in http://www.lisphacker.com/temp/article-drafts/ but they're incomplete. 18:23:04 -!- Corun|away is now known as Corun 18:24:47 hm, i was going to do dwarf stuff at some point anyways 18:27:06 nyef: how does clozure handle that? 18:27:21 Fade: I have no idea, and they might not for all I know. 18:27:31 -!- ikki [n=ikki@201.155.75.146] has quit [Read error: 113 (No route to host)] 18:27:40 *Fade* nods 18:29:38 ikki [n=ikki@201.155.75.146] has joined #lisp 18:30:27 willb [n=wibenton@173-18-243-255.client.mchsi.com] has joined #lisp 18:30:55 -!- Jasko2 [n=tjasko@75-149-33-105-SFBA.hfc.comcastbusiness.net] has quit [Read error: 110 (Connection timed out)] 18:32:04 nyef: is this a good additional place to read? http://refspecs.freestandards.org/LSB_1.3.0/gLSB/gLSB/libgcc-sman.html 18:32:12 or do you have better refs? 18:33:32 -!- mornfall [n=mornfall@kde/developer/mornfall] has quit [Read error: 110 (Connection timed out)] 18:36:27 if I have a bunch of strings I want to associate to a bunch of functions, what's the cleanest way to specify the table? Doesn't have to be speedy, just convenient. 18:37:02 a hash table 18:37:19 Right now I just have (defparameter +table+ '(("foo" foo) ("bar" bar) ...)) 18:37:41 beach: lots of (setf (gethash "foo" +table+) #'foo) doesn't sound clean or convenient :p 18:38:19 dlowe: Loop over a list then. 18:38:33 beach: Might as well just use the list, then 18:38:34 -!- Corun is now known as Corun|away 18:38:40 dlowe: much slower. 18:38:48 beach: "Doesn't have to be speedy" 18:39:02 Fine 18:40:52 though you just made me realize how to support string abbreviations in a hash table if I do need it. It's rather obvious in hindsight... 18:41:08 -!- nha [n=prefect@137-64.105-92.cust.bluewin.ch] has quit [""mv readme.txt readordie.txt ^_^" -- zordan"] 18:46:05 nyef: i'm slightly confused by your discussion of SIGNAL there 18:52:55 fe[nl]ix [n=algidus@88-149-211-251.dynamic.ngi.it] has joined #lisp 18:54:01 nikodemus: That's a good reference (the libgcc_s bit), along with the ABI documents for various sytems. 18:54:19 Oh, right, SIGNAL. 18:54:51 Some people like to use conditions for logging events rather than control flow. 18:55:06 As such, they absolutely do not want an unwind. 18:55:25 exactly 18:55:38 and handling CONDITION is just plain bad 18:55:53 pinterface [n=pinterfa@knvl-static-09-0024.dsl.iowatelecom.net] has joined #lisp 18:56:03 But can you tell me that that's not exactly what C++ does? 18:56:30 consider this: callback calls CLOS, CLOS decides to compile something, compiler signals a code deletion note, C++ sees it and unwinds 18:56:33 oops! 18:56:37 -!- Corun|away is now known as Corun 18:57:17 So? These are the semantics of C++. 18:57:56 that kind of interop makes the interopt pretty pointless, imo -- since it makes calling back into lisp very very brittle 18:58:06 i'm pretty sure we cannot let foreign frames make the decision to unwind or not for lisp conditions 18:58:37 So now you need a condition type to allow Lisp to raise exceptions for C++. 18:58:55 right, which doesn't seem to onerous to me 18:59:04 Fair enough. 19:00:12 oops, getting late 19:00:15 good night 19:00:17 -!- nikodemus [n=nikodemu@cs181229041.pp.htv.fi] has quit ["Leaving"] 19:01:29 pstickne [n=pstickne@c-24-21-76-57.hsd1.wa.comcast.net] has joined #lisp 19:03:35 -!- toro` [n=nonamme@cpe-74-64-125-220.nyc.res.rr.com] has quit [Read error: 113 (No route to host)] 19:04:00 -!- Aankhen`` [n=heysquid@122.162.158.237] has quit ["Log this!"] 19:07:09 -!- jao [n=jao@8.Red-83-33-180.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 19:08:15 clhs sequence 19:08:15 http://www.lispworks.com/reference/HyperSpec/Body/t_seq.htm 19:09:11 -!- milanj [n=milan@91.150.119.137] has quit [Read error: 110 (Connection timed out)] 19:09:18 ... sequence type specifiers can't be further specified for element type? 19:09:26 Ragnaroek [i=54a6570b@gateway/web/ajax/mibbit.com/x-5762458d6a600121] has joined #lisp 19:09:54 HET2 [i=diman@xover.htu.tuwien.ac.at] has joined #lisp 19:10:07 Hrm. Same problem with list. 19:10:10 list can't 19:10:19 dreish [n=dreish@minus.dreish.org] has joined #lisp 19:10:37 Damn. 19:13:37 Can't even declare a proper-list-of-element-type type without an explicit length. 19:13:40 willb1 [n=wibenton@173-18-243-255.client.mchsi.com] has joined #lisp 19:13:55 Also doesn't help with user-defined sequences. 19:14:29 -!- mikesch [n=axel@xdsl-84-44-252-52.netcologne.de] has quit [] 19:14:38 -!- HET2 [i=diman@xover.htu.tuwien.ac.at] has quit [Client Quit] 19:14:56 the rational being that it's hard to type check lists? 19:15:25 Bogus. 19:16:06 and there's no real lists, just cons cells 19:16:53 Still bogus. 19:17:24 how do you propose to overcome this? 19:17:40 The problem with the deftype is that it must be fully expandable, which thus requires a length limit. 19:18:39 I don't need to overcome this, it'd just be nicer if I could. 19:20:02 For some reason, some functions I'm using don't even check that they have the right number and types of arguments, and the compiler doesn't know enough to complain at the call site... But it's all macro-generated functions, so I should be able to tweak the macro a bit, but some of the arguments have a declared type of SEQUENCE, even though the element type is known. 19:20:03 i can only think of each cons having type-tag 19:20:43 But even if I can't get full checking, any improvement is good. 19:22:12 milanj [n=milan@93.86.56.245] has joined #lisp 19:27:32 why with each call to sb-kernel:dynamic-usage the returned number increases? 19:27:34 -!- willb [n=wibenton@173-18-243-255.client.mchsi.com] has quit [Read error: 113 (No route to host)] 19:28:18 not with exactly each, but no other functions are called in between 19:28:47 perhaps, that's because of REPL 19:30:03 -!- chris2 [n=chris@p5B16AAAA.dip0.t-ipconnect.de] has quit ["Leaving"] 19:30:03 -!- stassats` [n=stassats@wikipedia/stassats] has quit [Read error: 104 (Connection reset by peer)] 19:30:39 ivank [i=ivan@93-97-51-193.zone5.bethere.co.uk] has joined #lisp 19:31:21 what do i need to install for :RE to be usable? 19:31:54 stassats` [n=stassats@wikipedia/stassats] has joined #lisp 19:32:00 getting an error asdf-installing hunchentoot because of it 19:32:15 -!- jollygood [n=jollygoo@129.71.215.161] has quit [Client Quit] 19:32:22 don't use asdf-install? 19:32:45 and in its place use? 19:33:11 slash_ [n=Unknown@p4FF0B7AF.dip.t-dialin.net] has joined #lisp 19:33:15 what's :re ? 19:33:27 ivank: clbuild? 19:33:32 fe[nl]ix: this is what im asking 19:34:25 stassats`: trying to install weblocks, and that suggest adsf-install. how is clbuild better? 19:34:48 it works more often? 19:35:04 ivank: the main weblocks site suggests clbuild i believe 19:35:18 i wrote a tutorial on doing it with asdf-install, but it's a pain, and i ended up switching to clbuild 19:35:44 nyef: so how about extending sbcl to have a typed list type? 19:36:09 ... The SBCL type system scares me. 19:36:14 ivank: you might be looking at the old weblocks site - the latest installation instructions are at http://weblocks.viridian-project.de/installation 19:36:34 though if you really want to use ASDF, the link to the tutorial is at the bottom of that page 19:36:34 ah, google gives a different site as it's first listing 19:36:45 -!- Nshag [i=user@Mix-Orleans-106-2-177.w193-248.abo.wanadoo.fr] has quit [Remote closed the connection] 19:36:46 Besides, as I said, I don't need it. Right now the situation I have is so bad that even the minimum of declarations (to sequence) would help immensely. 19:36:55 yeah, google hasn't quite caught on yet =) 19:37:22 Davidbrcz [n=david@ANantes-151-1-63-41.w81-250.abo.wanadoo.fr] has joined #lisp 19:37:23 legumbre [n=user@r190-135-6-201.dialup.adsl.anteldata.net.uy] has joined #lisp 19:37:39 for me google points to cl.net, and cl.net points to viridian-project 19:37:46 does clbuild also install stuff into ~/.sbcl/site? 19:37:54 -!- attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has quit [Read error: 113 (No route to host)] 19:38:02 not by default 19:38:06 ivank: you can specify where to install with clbuild, but by default no 19:38:08 ivank: no, clbuild installs everything in its own directory 19:38:14 HET2 [i=diman@xover.htu.tuwien.ac.at] has joined #lisp 19:38:22 stassats`: thats true, but in the same font as the rest of the text i wasn't going reading 19:42:14 so what is asdf, beside just the homerow? 19:42:25 minion: asdf? 19:42:25 asdf: asdf is Another System Definition Facility. http://www.cliki.net/asdf 19:42:34 ah 19:42:42 ivank: asdf-install is not the same as asdf btw. clbuild uses asdf too 19:43:21 so if i start sbcl, it can get at the modules installed by clbuild automagically? 19:43:39 ivank: no, you run ./clbuild lisp or ./clbuild slime 19:43:52 ah 19:44:00 ivank: clearly, from within the clbuild directory (or you call the clbuild command from somewhere else ;)) 19:44:19 but it can be done, with magic in .emacs i guess 19:44:37 you can change .sbclrc accordingly 19:45:13 ivank: though it doesn't use .sbclrc by default 19:46:16 but yes, i have a sample .emacs you can use to load it in emacs if you are using slime (not sure what else you would be using =) 19:46:36 -!- HET2 [i=diman@xover.htu.tuwien.ac.at] has quit ["This computer has gone to sleep"] 19:46:55 but clbuild also can generate the slime configuration for you 19:47:13 ivank: running clbuild slime will launch emacs for you 19:47:13 the FAQ at http://common-lisp.net/project/clbuild/ is actually very good 19:47:41 -!- willb1 [n=wibenton@173-18-243-255.client.mchsi.com] has quit [Read error: 104 (Connection reset by peer)] 19:47:48 Zenton`` [n=user@80.29.234.169] has joined #lisp 19:47:59 saikat: ya, got the emacs config from that 19:48:16 madnificent: yup, but i usually have emacs running beforehand anyhow 19:49:13 xuanwu [i=xuanwu@140-182-170-148.dhcp-bl.indiana.edu] has joined #lisp 19:50:14 how come darcs is so prevelant? just a community preference or is there a technical reason? 19:50:39 could I get a lambda expression by funcall a lambda expression with incomplete arguments? guess not? 19:51:10 partial application? 19:51:10 -!- jthing [n=jthing@212.251.244.254] has quit [Read error: 54 (Connection reset by peer)] 19:51:21 ivank: because people needed something better than cvs/svn, and darcs was probably the first to enter as usable replacement? 19:51:22 ivank: I think it was just an early good enough dvcs that other people started using, so others install it to be able to fetch/update.., so others use it... 19:51:46 there is "partial application"? 19:52:06 interesting 19:52:10 there is no implicit partial application in CL. you can write a function of course 19:52:20 it's often misnamed CURRY 19:52:27 jthing [n=jthing@212.251.244.254] has joined #lisp 19:52:59 -!- legumbre_ [n=user@r190-135-28-209.dialup.adsl.anteldata.net.uy] has quit [Success] 19:53:06 oh I saw the name just now. I'll go check. Thanks! 19:57:37 kinnetica [n=kinnetic@208-58-64-106.c3-0.129-ubr4.lnh-129.md.cable.rcn.com] has joined #lisp 19:58:48 -!- kpreid [n=kpreid@cpe-67-249-58-190.twcny.res.rr.com] has quit [] 19:59:17 kpreid [n=kpreid@cpe-67-249-58-190.twcny.res.rr.com] has joined #lisp 19:59:42 -!- sh10151 [n=user@132.174.145.156] has quit [Read error: 104 (Connection reset by peer)] 19:59:53 sh10151 [n=user@132-174-145-156.ip.oclc.org] has joined #lisp 20:01:45 Mmm... curry. I wonder if there's an indian restaurant anywhere near here? 20:01:57 konr [n=konrad@201.82.132.33] has joined #lisp 20:02:12 thanks for reminding me of curry...that's the taste of tonight's soup! 20:03:06 brnhck [n=hrk@acurwa004091.adsl.ppp.infoweb.ne.jp] has joined #lisp 20:03:56 jmbr_ [n=jmbr@78.33.220.87.dynamic.jazztel.es] has joined #lisp 20:04:36 is there a way to look inside proceedures like "+" 20:04:38 ? 20:04:58 clhs disassemble 20:04:58 http://www.lispworks.com/reference/HyperSpec/Body/f_disass.htm 20:05:10 Hrm. Only false positives. Now I'm disappointed. 20:05:16 -!- konr [n=konrad@201.82.132.33] has quit [Remote closed the connection] 20:05:28 willb1 [n=wibenton@173-18-243-255.client.mchsi.com] has joined #lisp 20:05:50 konr [n=konrad@201.82.132.33] has joined #lisp 20:05:53 -!- jmbr [n=jmbr@219.33.220.87.dynamic.jazztel.es] has quit [Read error: 60 (Operation timed out)] 20:06:01 sexybaaron [n=sexybaar@c-68-42-43-61.hsd1.nm.comcast.net] has joined #lisp 20:09:27 wow... not sure what I'm looking at here, but it seems a bit lisp-gut like 20:10:04 is (DISASSEMBLE +) the right call to return the procedure definition of +? 20:10:31 (disassemble '+) 20:10:31 I've tried it out, and got convincing output 20:10:50 antoni [n=user@208.pool85-53-21.dynamic.orange.es] has joined #lisp 20:11:26 stassats`: in gnu clisp 2.47 I get output only without the quote 20:12:20 but in sbcl I get output only with the quote... 20:12:58 and a LOT more output than clisp 20:12:59 daedra: (DISASSEMBLE +) has nothing to do with the function + 20:13:31 clhs + 20:13:31 http://www.lispworks.com/reference/HyperSpec/Body/a_pl.htm 20:13:33 kpreid: ok 20:13:42 see the second link 20:19:31 daedra: you're asking to disassemble the value of + (which is a repl variable) 20:19:47 -!- semyon421 [n=semyon@217.67.122.44] has quit [Read error: 104 (Connection reset by peer)] 20:22:41 -!- antoni [n=user@208.pool85-53-21.dynamic.orange.es] has quit [Read error: 104 (Connection reset by peer)] 20:22:44 -!- sellout [n=greg@guest-fw.dc4.itasoftware.com] has quit [] 20:23:55 -!- thom_logn [n=thom@pool-173-51-224-238.lsanca.fios.verizon.net] has quit ["This computer has gone to sleep"] 20:26:53 -!- kinnetica [n=kinnetic@208-58-64-106.c3-0.129-ubr4.lnh-129.md.cable.rcn.com] has quit [] 20:27:19 -!- daedra [n=simon@unaffiliated/daedra] has left #lisp 20:29:10 -!- novaburst [i=nova@sourcemage/mage/novaburst] has quit ["leaving"] 20:30:13 tmh [n=thomas@pdpc/supporter/sustaining/tmh] has joined #lisp 20:30:19 Greetings. 20:30:54 kinnetica [n=kinnetic@208-58-64-106.c3-0.129-ubr4.lnh-129.md.cable.rcn.com] has joined #lisp 20:34:04 -!- silenius [n=jl@dslb-088-073-064-038.pools.arcor-ip.net] has quit ["Leaving"] 20:34:25 'llo tmh 20:34:59 projections_ [n=projecti@88.235.101.2] has joined #lisp 20:36:25 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 20:36:32 Hey madnificent, quiet in here, everyone must have gone home for the weekend. 20:36:48 everyone is hacking lisp 20:36:48 -!- sh10151 [n=user@132-174-145-156.ip.oclc.org] has quit [Remote closed the connection] 20:36:59 -!- projections [n=projecti@88.235.101.2] has quit [Read error: 110 (Connection timed out)] 20:37:03 that's right :) 20:37:52 tmh: reading some school books here. I didn't go home yet :) 20:38:12 -!- Jasko3 [n=tjasko@209.74.44.225] has quit [Read error: 110 (Connection timed out)] 20:39:04 is there a holiday in your country? 20:39:26 Ragnaroek: in mine: yesterday there was one 20:39:27 Ragnaroek: Monday is Memorial Day. 20:39:30 thom_logn [n=thom@pool-173-51-224-238.lsanca.fios.verizon.net] has joined #lisp 20:40:20 ah, your from the US of A 20:40:35 are you from germany madnificent 20:40:36 *stassats`* managed to output memory usage in slime's header line 20:40:44 oh crap, it's now on every buffer 20:40:50 Ragnaroek: you're close, but no (are you?) 20:40:57 yes 20:41:10 then it's swiss or austria, isn't it 20:41:24 Ragnaroek: closer: it's belgium 20:42:16 ah, that's even closer to where i live in germany then swiss or austria 20:42:42 DeusExPikachu [n=DeusExPi@pool-173-58-94-2.lsanca.fios.verizon.net] has joined #lisp 20:43:06 in germany the holiday is called Christi Himmelfahrt 20:43:12 how is it called in belgium 20:43:46 Ragnaroek: ah, its the same one here. It translates to Onze Heer Hemelvaart (but in all honousty, I needed the german wording in order to remember what it was here) 20:44:10 always something religious... so mane holidays for so little reason 20:44:38 year, but we should be glad to have so many 20:44:51 I don't really notice a difference 20:44:59 the only thing that changes is that the shops are closed 20:45:03 poor US people have so less holidays :( 20:45:39 yesterday was fathers day in germany -> many more drunk people 20:47:25 -!- kinnetica [n=kinnetic@208-58-64-106.c3-0.129-ubr4.lnh-129.md.cable.rcn.com] has quit [] 20:47:33 yesterday was a holiday, so today we had to deliver a project at the univ. That's what I dislike about it. Whenever they can give you a task, there so no meaning whatsoever in holidays 20:48:07 if it would be a free day to write some code, or do something fun, I could -perhaps- like the idea 20:49:44 damn, i screwed everything 20:49:51 -!- stassats` [n=stassats@wikipedia/stassats] has quit [Remote closed the connection] 20:49:52 -!- cmm [n=cmm@bzq-82-81-55-73.red.bezeqint.net] has quit [Remote closed the connection] 20:50:05 cmm [n=cmm@bzq-82-81-55-73.red.bezeqint.net] has joined #lisp 20:50:31 -!- nyef [n=nyef@65-125-125-98.dia.static.qwest.net] has quit ["Leaving the office... maybe."] 20:50:46 stassats [n=stassats@wikipedia/stassats] has joined #lisp 20:51:06 have to go, bye 20:51:11 -!- Ragnaroek [i=54a6570b@gateway/web/ajax/mibbit.com/x-5762458d6a600121] has quit ["http://www.mibbit.com ajax IRC Client"] 20:52:03 HET2 [i=diman@xover.htu.tuwien.ac.at] has joined #lisp 20:52:55 Jasko [n=tjasko@c-98-235-105-148.hsd1.pa.comcast.net] has joined #lisp 20:53:26 -!- Davidbrcz [n=david@ANantes-151-1-63-41.w81-250.abo.wanadoo.fr] has quit ["Ex-Chat"] 20:53:44 Jasko2 [n=tjasko@75-149-33-105-SFBA.hfc.comcastbusiness.net] has joined #lisp 20:54:03 sphex [n=nobody@modemcable185.138-56-74.mc.videotron.ca] has joined #lisp 20:59:17 I've been reading some more of Practical CL. I've noticed that sometimes a macro calls a function that emits code, and at other times calls a macro that emits code. Can someone care to explain the reasoning process for choosing between the two? At the moment, the only difference I can see is the function version hides code during the macroexpansion of the final macro, otherwise, the outcome seems the same. 21:00:05 -!- malcolm_reynolds [n=malc@78-86-4-156.zone2.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 21:00:12 -!- Spyderco [n=nash@194.45.110.65] has quit [Read error: 54 (Connection reset by peer)] 21:00:18 DeusExPikachu: because sometimes the act of creating the macro body is too much work to be expressed concisely with out the use of some further abstraction 21:01:06 the code for the helper macro or function is identical though? 21:01:23 -!- dlowe [n=dlowe@ita4fw1.itasoftware.com] has quit ["Leaving."] 21:02:37 DeusExPikachu: do you have a specific example? 21:02:41 DeusExPikachu: both systems can be coded. Putting it in a function can make it easier to understand. You must throw it back at the macro to ensure that the generated code will be evaluated) 21:02:46 alper45 [n=qamikaz@88.249.167.182] has joined #lisp 21:02:51 *madnificent* is paren-addicted 21:03:42 -!- alper45 [n=qamikaz@88.249.167.182] has quit [Remote closed the connection] 21:03:44 madnificent, how is it easier to understand when the code is identical, is it in the macroexpansion of the final macro that you are referring? 21:04:14 malcolm_reynolds [n=malc@78-86-4-156.zone2.bethere.co.uk] has joined #lisp 21:05:02 -!- thom_logn [n=thom@pool-173-51-224-238.lsanca.fios.verizon.net] has quit ["This computer has gone to sleep"] 21:05:11 -!- bobbysmith007 [n=russ@one.firewall.gnv.acceleration.net] has quit [Read error: 104 (Connection reset by peer)] 21:05:12 also bobbysmith007, please keep in mind I am referring to a macro that calls a helper macro or helper function. Not just a macro vs fun 21:05:46 DeusExPikachu: sometimes writing functions to manipulate the code, makes it easier to grasp (as functions have a clear meaning, they can't do anything especially strange). In some cases it will probably be just a preference 21:05:59 I see, thank you 21:06:47 DeusExPikachu: the resulting code will be the same, if both 'give/expand to' the same values. (something in my mind wants to think about this, so perhaps there is something strange with it) 21:06:52 you have the same difference, as in the normal code, sometimes you can a macro, and sometimes you can use a function 21:07:06 alper45 [n=qamikaz@88.249.167.182] has joined #lisp 21:08:02 sellout [n=greg@c-24-128-50-176.hsd1.ma.comcast.net] has joined #lisp 21:08:44 sometimes you can use both, in that case, i think macro would be preferred, since you don't need eval-when 21:08:51 -!- slash_ [n=Unknown@p4FF0B7AF.dip.t-dialin.net] has quit [Remote closed the connection] 21:09:05 slash_ [n=Unknown@p4FF0B7AF.dip.t-dialin.net] has joined #lisp 21:11:03 -!- Jasko [n=tjasko@c-98-235-105-148.hsd1.pa.comcast.net] has quit [Read error: 110 (Connection timed out)] 21:11:48 stassats, I think there are more differences in normal code, for instance, a function that calls (getf blah blah) vs a macro that does the same, the macro can be wrapped around a setf whereas the function can not. In my question, they are both emitting code so after they are used by the final macro, the result is the same. 21:11:59 alper_ [n=qamikaz@88.249.167.182] has joined #lisp 21:12:49 -!- proq [n=user@unaffiliated/proqesi] has quit [Remote closed the connection] 21:13:17 because setf is itself a macro 21:13:29 -!- alper45 [n=qamikaz@88.249.167.182] has quit [Read error: 104 (Connection reset by peer)] 21:13:40 there is no difference, because body of a defmacro is a "normal code" too 21:14:01 btw, is there a term for "normal code", that level where its like just the repl? 21:14:41 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 21:14:43 not sure if I should ask this question here, but will it be quite a workload to write the lambda function in java? 21:14:58 there is a concept of top-level 21:15:00 xuanwu: ? 21:15:17 lambda isn't a function 21:15:48 Java has something that is light a slightly restricted (and verbose) xuanwu: version of lambda: anonymous inner classes 21:15:50 -!- alper_ [n=qamikaz@88.249.167.182] has quit [Remote closed the connection] 21:16:12 alper45 [n=qamikaz@88.249.167.182] has joined #lisp 21:16:57 xuanwu: what you would do in java is something like this public interface lambda { public ReturnClass run( My args ); } and when you need to supply it: myCode( new Lambda() { public ReturnClass(My arg) { /* code be here */ return null; } }); 21:17:32 uh oh, that doesn't look pretty at all 21:18:19 proq [n=user@38.100.211.40] has joined #lisp 21:18:48 -!- alper45 [n=qamikaz@88.249.167.182] has quit [Remote closed the connection] 21:19:31 well, you can reuse the interface. and it looks better in context rather than stuffed in one line 21:19:37 xuanwu: in case you're wondering: yes it makes the most simple code look horrid (ie: (sort my-list '<) becomes sort( myList, new Comparator() { public int compare(int a, intb){ return b - a; } } ); ) 21:19:37 21:20:34 kpreid: you still need an interface for each little thing :) For each combination of values you're going to give... 21:20:40 damascenodiego [i=1000@187-25-176-254.3g.claro.net.br] has joined #lisp 21:20:54 kpreid: at least for each amount of arguments 21:21:10 -!- damascenodiego [i=1000@187-25-176-254.3g.claro.net.br] has quit [Client Quit] 21:21:33 or wait, not even that, you can allow for a varyable amount of arguments in java... if you set that to be objects, then you can use casts in order to make everything work 21:21:55 yeah, it's lousy unless you're using only a few sets of arglist/return types 21:22:16 either because you have a particular thing you're doing a lot or because you're ignoring the static type system 21:22:30 interface OneArgFunc { public Object run(Object arg); } 21:22:30 Spyderco [n=nash@194.45.110.65] has joined #lisp 21:22:38 anyway, I'll stop now 21:22:55 bleck 21:23:58 -!- WormBe [n=WormBe@adsl99-6.kln.forthnet.gr] has quit ["Lost terminal"] 21:24:17 in that case the previous example would look like this: sort( myList , new Lambda() { public Object run (Object... args) { return ((Integer) args[0]) - ((Integer) args[1]); } ); 21:24:39 -!- carbocalm [n=user@64.40.185.82] has quit [Read error: 60 (Operation timed out)] 21:24:47 Sorry if I didn't say it clearly. Actually I'm trying to do beta-reduction in java, and I thought it could be easier to "borrow" some ideas from lisp. 21:24:49 xuanwu: ^ that's going to be the closest you can get, I think. (You may be able to add generics to that, but it won't actually *do* anything in this case 21:25:07 xuanwu: just use clojure. 21:25:19 *stassats* rubs eyes 21:25:45 all that java is giving me a headache. 21:26:05 xuanwu: you should start by learning to read bytecode in that case :P (perhaps look at the introspection framework java provides... then cry and just start using lisp (really! I've been there)) 21:26:20 -!- pstickne [n=pstickne@c-24-21-76-57.hsd1.wa.comcast.net] has quit [Client Quit] 21:26:26 yes 21:26:32 sorry, ww 21:26:37 Fade: see, that's my life! I must code that stuff! this is the sweet code I get to write at the univ... other code is even more horrid ;_; 21:27:13 xuanwu: you could use ABCL and implement the reduction in Lisp. You could integrate ABCL with your program/purpose in Java. 21:27:18 i think i'd change schools. 21:27:53 or you could write it all in clojure and call it a config file for youe jar. 21:28:01 er, 'your' 21:28:37 *hefner* kinda wishes the MMX instructions just operated on GPRs on x86_64 21:28:48 *stassats* now thinks is it really useful to know how much memory lisp process eats 21:29:26 Art [n=Art@84.23.62.56] has joined #lisp 21:29:42 ehu`: yes. that's what I've tried ABCL a little but the big problem is the original lambda expressions are not in lisp, so there'll be translation to be done. 21:30:03 and I'm not sure how to do partial application yet 21:30:23 for things like lambda in lambda 21:30:53 Fade: we must work together with other students, so java it is 21:31:37 btw the project is in java so I guess I'd better not use clojure 21:31:38 ok. you could use eval() with a string argument for the code, ofcoures. 21:32:02 xuanwu: clojure is in java 21:32:16 oh? sorry don't know that. 21:32:23 stassats` [n=stassats@wikipedia/stassats] has joined #lisp 21:32:40 xuanwu: now search and be happy :) 21:33:22 search is not always happy for me, but thanks! 21:33:45 minion: clojure 21:33:46 clojure: "Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system." Clojure supports concurrent programming and run-time polymorphism among other things. http://www.cliki.net/clojure 21:34:23 -!- gemelen [n=shelta@shpd-78-36-165-97.static.vologda.ru] has quit ["I wish the toaster to be happy, too."] 21:34:30 minion: chant! 21:34:31 MORE HORRID 21:34:46 that's about clojure? 21:34:59 milanj- [n=milan@79.101.137.139] has joined #lisp 21:35:46 stassats`: minion never lies :D 21:36:18 *stassats`* hung laptop with sbcl by giving one extra trailing 0 to make-array 21:37:41 stassats`: how did that make your laptop hang? (not grasping the effect) 21:38:29 it ate all memory and became unresponsive 21:38:46 well, it responses to icmp pings, but no more 21:39:18 -!- brnhck [n=hrk@acurwa004091.adsl.ppp.infoweb.ne.jp] has quit [] 21:39:35 swap trashing, prolly 21:39:42 that must have been some huge array. 21:39:42 stassats`: ah, not a kernel crash just yet 21:40:18 waiting for OOM killer, I guess.... 21:40:22 Jasko [n=tjasko@c-98-235-105-148.hsd1.pa.comcast.net] has joined #lisp 21:40:53 Modius [n=Modius@adsl-68-92-148-17.dsl.austtx.swbell.net] has joined #lisp 21:41:23 it will response to magic sysrq key, but i won't be able to switch to console to turn everything back, probably because of intel video driver 21:41:26 sigh... 21:41:37 -!- sexybaaron [n=sexybaar@c-68-42-43-61.hsd1.nm.comcast.net] has quit [Client Quit] 21:43:52 -!- stassats [n=stassats@wikipedia/stassats] has quit [Read error: 54 (Connection reset by peer)] 21:43:59 aggieben [n=aggieben@dhcp7-57.geusnet.com] has joined #lisp 21:44:04 stassats [n=stassats@wikipedia/stassats] has joined #lisp 21:44:31 luckily, oom commenced 21:44:47 stassats`: and prolly kills everything except lisp 21:45:16 -!- LiamH [n=none@common-lisp.net] has quit ["Leaving."] 21:45:19 any xl-cmpp people around? 21:47:17 cl-xmpp? 21:47:28 yes, it's a lisp xmpp library 21:48:49 p_l: it first tried to kill emacs, then ccl, and finally it killed sbcl 21:49:06 aggieben: i used it once or twice, why are you asking? 21:49:26 -!- stassats` [n=stassats@wikipedia/stassats] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 21:50:16 -!- milanj [n=milan@93.86.56.245] has quit [Read error: 110 (Connection timed out)] 21:51:53 -!- Jasko2 [n=tjasko@75-149-33-105-SFBA.hfc.comcastbusiness.net] has quit [Read error: 110 (Connection timed out)] 21:51:56 milanj [n=milan@91.150.119.209] has joined #lisp 21:51:59 damascenodiego [i=1000@187-25-158-12.3g.claro.net.br] has joined #lisp 21:52:05 -!- damascenodiego is now known as slackaholic 21:52:23 hi folks! 21:52:26 does somebody here can tell me the function of :accessor keyword? 21:52:44 slackaholic: in the definition of a class, I assume? 21:52:54 yes 21:52:55 minion: PCL 21:52:56 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). 21:52:57 to access value with (accessor instance) and to set with (setf (accessor instance) value) 21:53:06 -!- qzg [n=qzg@adsl-99-55-229-198.dsl.spfdmo.sbcglobal.net] has quit [] 21:53:12 :accessor in a defclass slot definition causes a reader and writer generic function to be created for the slot. 21:53:28 slackaholic: in the definition of a class, it creates a reader and a writer method. in stassat's example the slot definition could've been (my-slot-name :accessor accessor) 21:53:57 s/stassat's/stassats's/ 21:54:19 Spyderco2 [n=nash@194.45.110.65] has joined #lisp 21:54:32 i see... 21:54:37 thanks guys 21:56:38 -!- mrsolo [n=mrsolo@adsl-68-126-185-123.dsl.pltn13.pacbell.net] has quit [Read error: 110 (Connection timed out)] 21:56:41 hefner: re MMX, I don't think any actual implementation needs an EMMS (: Moving data GPR <-> FPU is still slow, granted. 21:59:42 r1nu- [n=r1nu-@ppp-94-68-54-180.home.otenet.gr] has joined #lisp 21:59:46 morning 22:02:09 -!- Spyderco2 [n=nash@194.45.110.65] has quit [Client Quit] 22:02:48 Spyderco2 [n=nash@194.45.110.65] has joined #lisp 22:03:42 -!- bombshelter13_ [n=greg@toronto-gw.adsl.erx01.mtlcnds.ext.distributel.net] has quit [] 22:05:37 -!- milanj- [n=milan@79.101.137.139] has quit [Read error: 110 (Connection timed out)] 22:09:50 -!- jthing [n=jthing@212.251.244.254] has left #lisp 22:10:22 -!- Spyderco [n=nash@194.45.110.65] has quit [Read error: 110 (Connection timed out)] 22:10:57 qamikaz [n=qamikaz@88.249.167.182] has joined #lisp 22:11:30 -!- ehu` [n=chatzill@82-170-33-173.ip.telfort.nl] has quit [Read error: 110 (Connection timed out)] 22:12:15 -!- xuanwu [i=xuanwu@140-182-170-148.dhcp-bl.indiana.edu] has quit [Read error: 110 (Connection timed out)] 22:13:08 -!- prip [n=_prip@host13-135-dynamic.43-79-r.retail.telecomitalia.it] has quit [Remote closed the connection] 22:13:16 -!- willb1 [n=wibenton@173-18-243-255.client.mchsi.com] has quit [Read error: 54 (Connection reset by peer)] 22:13:41 sometime recently, lisp iolib started ranking higher on google than www.iolib.org. I wonder if that occurs for other people, or just me. 22:13:57 willb1 [n=wibenton@173-18-243-255.client.mchsi.com] has joined #lisp 22:14:14 alper45 [n=qamikaz@88.249.167.182] has joined #lisp 22:14:18 i have lisp iolib voted up 22:14:30 pinterface1 [n=pinterfa@knvl-static-09-0024.dsl.iowatelecom.net] has joined #lisp 22:14:42 -!- vasa [n=vasa@80.94.234.105] has quit ["I am not vasya, i am vasa"] 22:14:43 hefner in my search is in the same rank .. xD 22:14:51 prip [n=_prip@host13-135-dynamic.43-79-r.retail.telecomitalia.it] has joined #lisp 22:15:05 logget out, iolib.org is on the first place 22:15:21 yeah iolib too.. 22:15:27 -!- hugod [n=hugod@modemcable086.138-70-69.static.videotron.ca] has quit [] 22:15:29 spooky. I'm not even logged in. 22:15:42 :S 22:15:42 lisp iolib gives me common-lisp.net/project/iolib, iolib ranks iolib.org above the previously mentioned link 22:15:50 google is watching you! 22:15:56 hefner: perhaps a different server or region 22:15:57 hehehee 22:15:58 -!- pinterface [n=pinterfa@knvl-static-09-0024.dsl.iowatelecom.net] has quit [Nick collision from services.] 22:16:00 -!- pinterface1 is now known as pinterface 22:21:36 -!- xan is now known as xan-afk 22:22:00 Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has joined #lisp 22:22:31 bombshelter13_ [n=greg@toronto-gw.adsl.erx01.mtlcnds.ext.distributel.net] has joined #lisp 22:22:32 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 22:23:20 -!- bombshelter13_ [n=greg@toronto-gw.adsl.erx01.mtlcnds.ext.distributel.net] has quit [Client Quit] 22:23:27 -!- qamikaz [n=qamikaz@88.249.167.182] has quit [Read error: 60 (Operation timed out)] 22:24:33 the plan is working :D 22:26:08 -!- Spyderco2 [n=nash@194.45.110.65] has quit [Client Quit] 22:26:57 -!- Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has quit [Remote closed the connection] 22:29:29 kinnetica [n=kinnetic@208-58-64-106.c3-0.129-ubr4.lnh-129.md.cable.rcn.com] has joined #lisp 22:29:44 benny` [n=benny@i577A1085.versanet.de] has joined #lisp 22:29:53 -!- kinnetica [n=kinnetic@208-58-64-106.c3-0.129-ubr4.lnh-129.md.cable.rcn.com] has quit [Client Quit] 22:35:09 -!- benny [n=benny@i577A0B8F.versanet.de] has quit [Read error: 113 (No route to host)] 22:41:42 ace4016 [i=ace4016@cpe-76-168-248-118.socal.res.rr.com] has joined #lisp 22:42:14 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #lisp 22:43:35 X-Scale2 [n=email@89.180.198.110] has joined #lisp 22:44:09 -!- Art [n=Art@84.23.62.56] has quit [Remote closed the connection] 22:46:38 -!- jophish [n=jophish@80-47-236-51.lond-th.dynamic.dial.as9105.com] has quit [Read error: 104 (Connection reset by peer)] 22:48:37 -!- jlf` is now known as gort 22:49:37 -!- X-Scale [i=email@89.180.145.177] has quit [Read error: 60 (Operation timed out)] 22:55:10 -!- projections_ [n=projecti@88.235.101.2] has left #lisp 22:55:39 -!- gort is now known as jlf` 22:56:49 projections [n=projecti@88.235.101.2] has joined #lisp 23:02:36 -!- benny` is now known as benny 23:04:39 jthing [n=jthing@212.251.244.254] has joined #lisp 23:07:24 rread_ [n=rread@nat/sun/x-18627a5723e2a857] has joined #lisp 23:08:47 -!- malcolm_reynolds [n=malc@78-86-4-156.zone2.bethere.co.uk] has quit [] 23:09:04 -!- rpg [n=rpg@216.243.156.16.real-time.com] has quit [] 23:10:01 malcolm_reynolds [n=malc@78-86-4-156.zone2.bethere.co.uk] has joined #lisp 23:14:00 manic12 [n=manic12@c-76-29-88-103.hsd1.il.comcast.net] has joined #lisp 23:14:13 -!- jlf` is now known as gort` 23:14:51 _JFT_ [n=_JFT_@modemcable183.11-202-24.mc.videotron.ca] has joined #lisp 23:15:54 -!- gort` is now known as gort 23:16:06 -!- Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has quit [Read error: 113 (No route to host)] 23:16:08 -!- gort is now known as gort` 23:16:28 -!- gort` is now known as jlf` 23:17:06 -!- rread [n=rread@c-98-234-219-222.hsd1.ca.comcast.net] has quit [Read error: 110 (Connection timed out)] 23:18:09 -!- alper45 [n=qamikaz@88.249.167.182] has quit [Remote closed the connection] 23:18:10 -!- ivank [i=ivan@93-97-51-193.zone5.bethere.co.uk] has quit [Read error: 104 (Connection reset by peer)] 23:22:15 stassats: 19:30 < stassats`> but there is alexandria:copy-array 23:22:26 stassats: just noticed that copy-tree seems to copy arrays correctly 23:22:38 stassats: is this because tree is more general than array? 23:22:39 it work only on lists 23:23:23 well, copied an array for me. 23:23:31 you _think_ it did that 23:23:37 :) 23:23:42 ok 23:23:48 stassats: :D 23:24:10 copy-seq can copy a vector 23:24:25 (let ((array (make-array '(2 2)))) (eq array (copy-tree array))) => T 23:24:28 Yeah, we've discussed that previously. 23:24:31 Q.E.D. 23:24:44 That is 1 dimentional array. For multidimentional arrays, you have to roll your own. 23:25:14 for multidimentional you adjust a displaced array 23:25:24 multidimensional 23:26:05 And displace it back.. 23:27:13 I understand, that if eq gives T, than we're dealing not with a copy, but with the same object, right? 23:27:23 right 23:27:34 -!- slash_ [n=Unknown@p4FF0B7AF.dip.t-dialin.net] has quit [Client Quit] 23:27:35 -!- r1nu- [n=r1nu-@ppp-94-68-54-180.home.otenet.gr] has quit [] 23:28:45 -!- konr [n=konrad@201.82.132.33] has quit [Success] 23:28:57 (let ((array (make-array '(2 2)))) (eq array (adjust-array (make-array '(2 2) :displaced-to array) '(2 2)))) => NIL 23:28:58 something like this: (array copy) http://paste.lisp.org/display/80684 23:29:28 what is copy-seq doing there? 23:29:53 Corun_ [n=Corun@93-97-222-75.zone5.bethere.co.uk] has joined #lisp 23:30:23 copying the array. 23:30:39 how? 23:30:50 Displacement array's just have new array header's 23:31:06 (array-displacement (copy-multi-array (make-array '(2 2)))) => #(0 0 0 0) 23:31:13 -!- Corun [n=Corun@94-194-29-31.zone8.bethere.co.uk] has quit [Nick collision from services.] 23:31:15 -!- Corun_ is now known as Corun 23:31:19 so, your copy is wrong, you need to do adjust-array 23:32:38 jthing: http://common-lisp.net/project/alexandria/darcs/alexandria/arrays.lisp 23:34:56 rottcodd [n=user@ppp59-167-46-58.lns2.cbr1.internode.on.net] has joined #lisp 23:35:00 stassats: seems to work 23:35:11 It's not the same array 23:38:52 Looks like it's time to compile darcs... 23:41:13 saikat_ [n=saikat@adsl-68-127-162-42.dsl.pltn13.pacbell.net] has joined #lisp 23:42:15 Modius_ [n=Modius@adsl-70-240-12-151.dsl.austtx.swbell.net] has joined #lisp 23:42:37 Actually, not. 23:46:03 -!- Jabberwockey [n=jens@port-13667.pppoe.wtnet.de] has quit [Remote closed the connection] 23:46:35 stassats: I think you are wrong. It is clearly a copy. And since it is a entirely new array why shouln't displacement be 0? 23:47:45 you give it a non-displaced array and you are receiving a displaced array, so, it's not a good copy 23:48:32 Good enough for me. Changing values in one does not affect the other. 23:51:19 Hm.. cl-darcs spits out errors on me. Looks I'll still have to compile darcs. 23:52:26 jthing: but why would you do it that way instead of the right way? 23:54:07 CL-USER> (array-displacement *new-array*) 23:54:07 #(-8 -9 0 0 -3 -2 7 -8 -5) 23:54:07 0 23:54:29 After changing 10 values at random 23:55:05 -!- schme [n=marcus@c83-249-81-1.bredband.comhem.se] has quit [Read error: 113 (No route to host)] 23:55:14 foom: why is the other way, "the right way"? This is just another way. 23:56:02 Well, because it results in a non-displaced array, and only makes one new array object instead of 3? 23:56:33 -!- rread_ [n=rread@nat/sun/x-18627a5723e2a857] has quit [] 23:56:40 -!- ignas [n=ignas@ctv-79-132-160-221.vinita.lt] has quit [Read error: 110 (Connection timed out)] 23:56:44 foom: maybe you have a point 23:58:27 -!- saikat [n=saikat@adsl-68-127-162-42.dsl.pltn13.pacbell.net] has quit [Read error: 110 (Connection timed out)] 23:58:32 -!- Modius [n=Modius@adsl-68-92-148-17.dsl.austtx.swbell.net] has quit [Read error: 110 (Connection timed out)] 23:59:48 LiamH [n=nobody@pool-141-156-215-133.res.east.verizon.net] has joined #lisp