00:00:50 <_3b> lat_: try ./clbuld clean then try the clbuild dumpcore again 00:02:26 <_3b> s/clbuld/clbuild/ 00:03:28 rpg: how odd! 00:04:35 drewc: I have a perfectly beautiful backtrace on that blasted unix box, but for some reason the OpenSUSE install is trying to push my access to paste.lisp.org through a non-existent web proxy. Insanely frustrating. 00:05:36 lat_, the idea was to delete fasls and then rebuild mcclim anew 00:05:49 GreatPatham [n=dan@c-24-19-169-87.hsd1.wa.comcast.net] has joined #lisp 00:06:21 lat_, what _3b said 00:07:07 -!- nvoorhies [n=nvoorhie@140a.hackerdojo.com] has quit [Remote closed the connection] 00:07:26 slackjaw [n=jolyonwh@cb8faac9.atp.nicta.com.au] has joined #lisp 00:08:05 *deepfire* wonders whether the difference between images and pixmaps is gratuitious 00:09:16 rpg annotated #86522 "backtrace from error" at http://paste.lisp.org/display/86522#1 00:09:24 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [Read error: 110 (Connection timed out)] 00:10:01 nvoorhies [n=nvoorhie@140a.hackerdojo.com] has joined #lisp 00:10:45 It looks almost like it's a write to standard-error that caused SBCL to crash... 00:11:50 -!- sbahra [n=sbahra@c-68-34-110-14.hsd1.dc.comcast.net] has quit ["Leaving"] 00:11:52 <_3b> rpg: maybe set swank::*log-output* to nil before starting swank? 00:12:14 Are any of you British? 00:14:08 envi^office [i=envi@203.109.25.110] has joined #lisp 00:15:00 <_3b> rpg: and.or verify that writing to *error-output* works in your images in general 00:15:17 -!- HET2 [n=diman@cpc2-cdif3-0-0-cust803.cdif.cable.ntl.com] has quit ["This computer has gone to sleep"] 00:15:23 _3b: Thanks. Setting that to nil fixed the error writing crash, revealing that start-server is being called with bad arguments! 00:15:41 fusss [n=chatzill@115.128.34.133] has joined #lisp 00:15:49 lat annotated #86523 "Try #2" at http://paste.lisp.org/display/86523#1 00:17:54 lat_: looks to me like you need png-read but it has not been added to the list of dependencies for mcclim. 00:18:18 lat_: install png-read (not sure if it's in clbuild). If that works, file a bug report for clbuild. 00:18:20 seangrove [n=user@cpe-76-90-50-75.socal.res.rr.com] has joined #lisp 00:19:54 drewc, install png-read with clbuild? 00:20:20 <_3b> lat_: try "echo png-read get_git git://github.com/Ramarren/png-read.git >> my-projects" then ./clbuild install png-read 00:21:21 <_3b> you might also need to do ./clbuild install chipz and ./clbuild install babel 00:22:41 *_3b* wonders if clbuild can be told to install more than 1 project at once 00:23:25 <_3b> seems so, so ./clbuild install babel chipz png-read 00:23:48 _3b, doesn't it handle dependencies automatically? 00:24:04 <_3b> deepfire: only for projects it knows about 00:24:20 <_3b> deepfire: in this case, it is easier to list them by hand than tell them about them 00:24:39 *_3b* missed one though, need iterate as well 00:24:40 Thanks to everyone! 00:27:03 -!- Yuuhi [n=user@p5483D43E.dip.t-dialin.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 00:27:49 -!- kpreid [n=kpreid@209-217-212-34.northland.net] has quit [] 00:27:56 JAS415 [n=jon@ip24-250-13-137.ri.ri.cox.net] has joined #lisp 00:30:45 _3b, echo png-read get_git git://github.com/Ramarren/png-read.git >> my-projects ==> No such file or directory. 00:33:18 _3b, lat@lat-ws:~/clbuild$ ./clbuild install babel chipz png-read iterate ===> Error: cannot download unknown project png-read 00:34:27 <_3b> lat_: was that echo command all on 1 line? 00:35:15 -!- dwh [n=dwh@ppp118-208-171-218.lns10.mel4.internode.on.net] has quit [Read error: 110 (Connection timed out)] 00:35:21 _3b, yes. I tried it with and without the quotes. 00:35:31 if the file doesn't exist then create it 00:35:35 touch 00:35:53 <_3b> >> should create it, so not sure what is wrong there 00:36:21 -!- yoos [n=quassel@c-67-169-211-13.hsd1.or.comcast.net] has quit [Read error: 54 (Connection reset by peer)] 00:36:22 <_3b> open ~/clbuild/my-projects in an editor, and add the line by hand 00:36:50 <_3b> png-read get_git git://github.com/Ramarren/png-read.git 00:37:05 <_3b> and save it, and try the ./clbuild install command again 00:38:25 -!- ruediger [n=the-rued@p508B2DF5.dip.t-dialin.net] has quit ["This computer has gone to sleep"] 00:40:22 KevinFish [n=fish@c-98-208-14-225.hsd1.ca.comcast.net] has joined #lisp 00:40:35 stassats [n=stassats@wikipedia/stassats] has joined #lisp 00:43:56 -!- Symmetry- [n=thezog@host-static-92-114-165-252.moldtelecom.md] has quit [Read error: 110 (Connection timed out)] 00:46:13 Moe111 [n=Moe111@modemcable067.226-21-96.mc.videotron.ca] has joined #lisp 00:46:45 _3b, ok, worked this time. Now install McClim again? 00:47:16 <_3b> right 00:47:42 -!- mrsolo [n=mrsolo@nat/yahoo/x-ntmepxdqkeqrggow] has quit ["Leaving"] 00:50:40 dfox [n=dfox@r11jn246.net.upc.cz] has joined #lisp 00:51:20 -!- kejsaren_ [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 00:51:54 kpreid [n=kpreid@216-171-189-244.northland.net] has joined #lisp 00:52:16 -!- gigamonkey [n=user@adsl-99-184-206-106.dsl.pltn13.sbcglobal.net] has quit [Remote closed the connection] 00:52:40 stassats` [n=stassats@wikipedia/stassats] has joined #lisp 00:52:48 -!- jajcloz [n=jaj@pool-98-110-225-173.bstnma.fios.verizon.net] has quit [] 00:54:24 -!- nvoorhies [n=nvoorhie@140a.hackerdojo.com] has quit [] 00:57:08 lat annotated #86523 "Try 3" at http://paste.lisp.org/display/86523#2 00:57:47 component :RETROSPECTIFF not found, required by says it all 00:59:48 -!- slackjaw [n=jolyonwh@cb8faac9.atp.nicta.com.au] has quit ["Computer goes to sleep!"] 01:00:22 -!- slash_ [n=Unknown@p5DD1C977.dip.t-dialin.net] has quit [Client Quit] 01:02:15 coliv [n=Coliveir@69.248.128.195] has joined #lisp 01:02:18 -!- Axioplase_ is now known as Axioplase 01:05:37 slackjaw [n=jolyonwh@203.143.170.201] has joined #lisp 01:06:10 -!- aliceinwire [n=aliceinw@host59-46-dynamic.45-79-r.retail.telecomitalia.it] has quit ["Ex-Chat"] 01:06:37 manuel___ [n=manuel@pD9E6B3F3.dip.t-dialin.net] has joined #lisp 01:07:48 -!- stassats [n=stassats@wikipedia/stassats] has quit [Read error: 110 (Connection timed out)] 01:08:40 aliceinwire [n=aliceinw@host59-46-dynamic.45-79-r.retail.telecomitalia.it] has joined #lisp 01:08:51 -!- aliceinwire [n=aliceinw@host59-46-dynamic.45-79-r.retail.telecomitalia.it] has quit [Read error: 104 (Connection reset by peer)] 01:09:12 ahh .. now i remember why i don't like C. Memory faults and syntax errors abound! :) 01:09:55 aliceinwire [n=aliceinw@host59-46-dynamic.45-79-r.retail.telecomitalia.it] has joined #lisp 01:11:26 stassats`, how do I add that component? "lat@lat-ws:~/clbuild$ ./clbuild install retrospectiff ==> Error: cannot download unknown project retrospectiff 01:13:03 by hand? by adding it to clbuild? by not loading components which depends on it? 01:13:08 eno__ [n=eno@adsl-70-137-156-35.dsl.snfc21.sbcglobal.net] has joined #lisp 01:14:09 dralston [n=dralston@S010600212986cca8.va.shawcable.net] has joined #lisp 01:14:23 -!- dralston [n=dralston@S010600212986cca8.va.shawcable.net] has quit [Client Quit] 01:14:26 gigamonkey [n=user@adsl-99-184-206-106.dsl.pltn13.sbcglobal.net] has joined #lisp 01:16:01 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 145 (Connection timed out)] 01:16:20 I have the ~/clbuild/my-projects file open, but need to know what command to add there. 01:17:02 chessguy_work [n=chessguy@67-130-43-2.dia.static.qwest.net] has joined #lisp 01:17:47 -!- chessguy_work is now known as chessguy 01:18:17 lat_: try the command to get the project you want from its version control archive... just like the last one. 01:18:51 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 01:21:01 myrkraverk [n=johann@unaffiliated/myrkraverk] has joined #lisp 01:21:54 hello all 01:22:34 as I said before today, I'm coding a project for which I think lisp is ideal; but I don't really know that much of CL; so: 01:22:48 what is a good way to make a list of numbers from 0 to n? 01:23:56 -!- manuel_ [n=manuel@pD9E6F87B.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 01:24:56 -!- blackened`_ [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 01:25:08 drewc, i just tried "retrospectiff git_git://github.com/Ramarren/retrospectiff.git", but no success. 01:25:09 myrkraverk: (loop for i from 0 to n collect i) 01:25:11 (loop for i from 0 to n collect i) 01:25:21 eerie. 01:25:26 haha 01:25:29 *gigamonkey* bows to drewc. 01:25:35 gigamonkey: well, i learned from the best. 01:25:43 *drewc* bows right back 01:26:25 hmm, is there no built in factorial? 01:26:41 myrkraverk: name me a language with a built in factorial function. 01:26:52 (Not saying there isn't one. But I can't think of any.) 01:27:13 I've been called to eat. I'll be back soon. 01:27:15 gigamonkey, axiom, sage -- I believe, but they are CAS tools 01:27:50 myrkraverk: Right. So Macsyma or something (written in Lisp) presumably has one. 01:28:03 axiom is written in lisp as well, iirc 01:28:14 axiom is lisp yeah. 01:28:25 http://www.ntecs.de/old-hp/uu9r/lang/html/lisp.en.html <<< myrkraverk have a look there. 01:28:28 *gigamonkey* has to reboot X. Back in a bit. 01:28:29 ok, I'll roll my own factorial then *annoyance* ;-P 01:28:37 i'm written in lisp 01:28:43 no seriously, i'm a robot 01:28:44 -!- gigamonkey [n=user@adsl-99-184-206-106.dsl.pltn13.sbcglobal.net] has quit [Remote closed the connection] 01:29:05 drewc, thank you 01:29:32 luckily factorial is pretty easy to write in lisp 01:29:48 woah loop 01:29:49 neat 01:29:53 yes, funny though that the above linked (fact n) doesn't agree with axiom 01:30:11 funny .. but not funny ha-ha! 01:30:26 GrayMagiker [n=steve@c-76-18-86-163.hsd1.nm.comcast.net] has joined #lisp 01:30:32 -!- stassats` [n=stassats@wikipedia/stassats] has quit [Read error: 110 (Connection timed out)] 01:30:37 what does it say when it doesn't work? 01:30:46 that is, not the first one 01:30:58 oh 01:31:04 so no loop macro? 01:31:10 factorial(4) = 1 * 2 * 3 * 4 = 24 in axiom 01:31:27 the above, first implementation (iterative), gives 12 01:31:38 lol that is a problem 01:31:51 ha, that's no good at all. 01:31:51 I notice the cl-smtp site has a version of cl-smtp which is dated 2007. 01:31:59 BKNR has a modified version dated 2008 01:32:06 -!- bgs100 [n=ian@unaffiliated/bgs100] has quit [] 01:32:17 i hate that 01:32:18 does this mean the cl-smtp site is out of order? 01:32:23 when I changed 2 to one, it works correctly 01:32:26 which do I use? 01:32:42 means bknr had to change something to get it to work with what they were doing probably 01:33:04 myrkraverk: what if you change n to (1+ n) rather than change 2? 01:33:27 *drewc* is just looking at the code and guessing really... 01:33:48 Moe111: whichever works for you. 01:34:33 drewc: alright. then the BKNR versionis the one I prefer. howver I can't install it. the asdf:load-op seems to result in a circular loop 01:34:34 60, which is worse ;) 01:35:02 I'll go with the recursive one, I understand how that one works 01:35:11 merus [n=merus@pal-175-116.itap.purdue.edu] has joined #lisp 01:35:18 myrkraverk: as long as you don't need large factorials. 01:35:25 (say, larger than your stack ;)) 01:35:28 if can't you just change it from 1 to n or something 01:35:44 bgs100 [n=ian@unaffiliated/bgs100] has joined #lisp 01:35:50 bgs101 [n=ian@unaffiliated/bgs100] has joined #lisp 01:36:00 QinGW [n=wangqing@203.86.89.226] has joined #lisp 01:36:14 drewc, I only need up to 13 or 14 at most -- it's about generating all permutations, so I don't want to spend years on it ;) 01:36:21 (defun fact (n) 01:36:21 (loop for i from 1 to n 01:36:21 for fact = 1 then (* fact i) 01:36:21 finally (return fact))) 01:36:25 myrkraverk: you're fine then yeah 01:36:40 JAS415: please use lisppaste rather than flood the channel 01:36:49 ah shit 01:36:50 i can't raed 01:36:57 or spell 01:37:02 no type 01:37:06 -!- c|mell [n=cmell@p14220-ipngn1701marunouchi.tokyo.ocn.ne.jp] has quit [Read error: 113 (No route to host)] 01:37:10 -!- JAS415 [n=jon@ip24-250-13-137.ri.ri.cox.net] has left #lisp 01:37:17 JAS415, yes, I did change 2 to 1, but as I understand the recursive one better, I'd better use that one 01:37:21 -!- bgs101 [n=ian@unaffiliated/bgs100] has quit [Client Quit] 01:37:26 I don't want to use code I can't debug 01:38:20 myrkraverk: the recursive definition is pretty much textbook lisp... it just won't work with large numbers, and consumes a lot more stack space than the iterative version. I suggest you use it, as your needs are simple enough. 01:38:33 thank you 01:38:53 damn you memory fault ... WTF am i doing wrong! 01:38:55 Lobaum [n=user5442@189-19-115-222.dsl.telesp.net.br] has joined #lisp 01:39:17 Any idea why a (asdf:oos 'asdf:load-op 'cl-smtp) would result in a never ending stream of "loading system definition ... into #" ? 01:39:43 Moe111: nuke all your .fasl's and try again. 01:39:59 (i've seen that before, but not in years) 01:40:17 that might not fix it, but it's a good start when something is fishy 01:40:39 drewc: when you mean all, you mean all under sbcl/site ? or all in the package (cl-smtp) 01:40:42 -!- Lobaum is now known as I_LiKe_TutLeS 01:42:09 can't I eval expressions in .lisp files, with slime? 01:42:47 <_3b> myrkraverk: i can 01:42:57 what keybinding? 01:43:08 <_3b> M-C-x or C-x C-e 01:43:24 <_3b> or C-c C-c to compile instead of just eval 01:43:57 nice, thank you 01:44:13 -!- dalton [n=user5442@187.34.47.44] has quit [Read error: 110 (Connection timed out)] 01:47:28 gigamonkey [n=user@adsl-99-184-206-106.dsl.pltn13.sbcglobal.net] has joined #lisp 01:47:33 minion: logs 01:47:33 logs: #lisp logs are available at http://ccl.clozure.com/irc-logs/lisp/ (since 2008-09) and http://tunes.org/~nef/logs/lisp/ (since 2000) 01:51:15 is there a thing in lisp that does remove-nth-from-list-and-return-it ? 01:51:39 myrkraverk: yes. 01:51:43 (there's always). 01:51:50 haha ;) 01:52:03 Moe111: try cl-smtp first, then try them all... 01:52:07 fisxoj [n=fisxoj@149.43.118.9] has joined #lisp 01:52:23 Moe111: sbcl/site .... you're not using asdf-install are you? 01:53:39 -!- crna_ofca [n=chatzill@alpha.linux.hr] has quit ["ChatZilla 0.9.85 [Firefox 3.0.13/2009080315]"] 01:54:23 drewc: I am. why do you say that? 01:54:36 oh. I mean this: 01:55:10 I don't use asdf-install all the time. From time to time. In this case, I've downloaded and copied the fresh source version into sbcl/site then in sbcl I did an asdf:load-op 01:58:10 pjb pasted "remove-nth-and-return-it" at http://paste.lisp.org/display/86527 01:59:44 redb1ue [i=star@ppp181.108-253-207.mtl.mt.videotron.ca] has joined #lisp 01:59:54 pjb: thanks 02:00:33 dialtone_ [n=dialtone@adsl-99-136-101-166.dsl.pltn13.sbcglobal.net] has joined #lisp 02:00:51 myrkraverk: the trick is that nthcdr is not an accessor, so you have to use (cdr (nthcdr (1- n) l)). 02:01:12 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 02:01:18 I'm back, full and happy! Does anyone have any idea what line I need to put in ~/clbuild/my-projects to get retrospectiff to install? 02:01:44 <_3b> lat_: compare what you tried for retrospectiff with what you used for read-png more closely 02:01:48 -!- aliceinwire [n=aliceinw@host59-46-dynamic.45-79-r.retail.telecomitalia.it] has quit [Remote closed the connection] 02:02:15 myrkraverk: Instead of POP, we could use REPLACE, so that most of the time we don't need to rebind the list, but since we need to rebind it when removing the 0th element of (1) anyways, there's no point. 02:02:16 pjb, thank you, I'll be spending some time to study that (and catch up with lisp ;) 02:02:19 skeptomai [n=cb@c-67-170-103-113.hsd1.wa.comcast.net] has joined #lisp 02:02:22 -!- Quadrescence [n=quad@unaffiliated/quadrescence] has quit [Remote closed the connection] 02:02:50 You must use it as: (multiple-value-setq (removed list) (remove-nth-and-return-it n list)) 02:03:01 -!- dialtone [n=dialtone@unaffiliated/dialtone] has quit [Read error: 145 (Connection timed out)] 02:03:23 pjb: it should be called DELETE-NTH-AND-RETURN-IT if we're destroying list structure :) 02:03:32 Indeed, I just thought it... 02:03:43 <_3b> why not pop-nth ? 02:03:49 pjb: WTF. How does POP of CDR keep the head of the list pointing to the next cons? 02:04:09 gigamonkey: because of (1- n). 02:04:38 -!- dreish [n=dreish@minus.dreish.org] has quit [] 02:05:04 No, I think I was having a different issue. But POP is just (SETF ...) and SETF of CDR, does the right thing. Or something. 02:05:04 -!- redblue [i=star@ppp146.108-253-207.mtl.mt.videotron.ca] has quit [Connection timed out] 02:05:07 -!- chessguy [n=chessguy@67-130-43-2.dia.static.qwest.net] has quit ["Leaving"] 02:07:15 eno [n=eno@nslu2-linux/eno] has joined #lisp 02:07:27 what was the trick to use the hyperref, here? 02:07:33 -!- I_LiKe_TutLeS is now known as Hellraiser 02:07:34 clhs pop 02:07:34 http://www.lispworks.com/reference/HyperSpec/Body/m_pop.htm 02:08:33 ah, thank you 02:08:44 dys` [n=andreas@krlh-5f706e3d.pool.mediaWays.net] has joined #lisp 02:10:22 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 02:14:06 -!- redb1ue is now known as redblue 02:17:23 -!- eno__ [n=eno@adsl-70-137-156-35.dsl.snfc21.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 02:21:24 yay, I think I understand remove-nth-and-return-it 02:21:56 ;-D *dances around naked with a hat* -- do'h didn't intend to disclose that 02:22:07 lat annotated #86523 "Try #4" at http://paste.lisp.org/display/86523#3 02:22:20 -!- Pepe_ [n=ppjet@78.113.44.92] has quit [Remote closed the connection] 02:23:04 _3b, you have a sharp eye! Thanks for the help. 02:23:20 Pepe_ [n=ppjet@78.113.44.92] has joined #lisp 02:23:46 -!- dys [n=andreas@krlh-5f705684.pool.mediaWays.net] has quit [Connection timed out] 02:24:07 We are not there yet, but we are getting closer. 02:24:12 <_3b> lat_: ah, didn't notice what you used for the git url, try git://git.cyrusharmon.org/pub/git/retrospectiff.git 02:25:33 -!- Urfin [i=foobar@85.65.93.74] has quit [Read error: 148 (No route to host)] 02:26:17 is there a quick way to recompile all libraries in lib/sbcl/site ? 02:26:27 clhs floor 02:26:27 http://www.lispworks.com/reference/HyperSpec/Body/f_floorc.htm 02:34:58 -!- gigamonkey [n=user@adsl-99-184-206-106.dsl.pltn13.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 02:35:18 -!- bgs100 [n=ian@unaffiliated/bgs100] has quit [] 02:38:03 _3b, success! McClim also installed successfully. But I got this: WARNING: The following black-listed systems were skipped: mcclim-jpeg-bitmaps, mcclim-gif-bitmaps. Try --force t to include them. Is there any reason not to include them? 02:38:41 <_3b> you would probably have to install more libs if you did, or maybe they cause conflicts 02:38:58 *_3b* thought the mcclim-tiff-bitmaps was on that list too though 02:43:37 -!- carlocci [n=nes@93.37.220.176] has quit ["eventually IE will rot and die"] 02:45:46 _3b, ok, I'll not include them for now. Instead I'll try out McClim to make sure it works. Many thanks to you and to everyone else that helped me with this! #Lisp adds great value to Lisp. 02:47:47 gigamonkey [n=user@adsl-99-184-206-106.dsl.pltn13.sbcglobal.net] has joined #lisp 02:49:43 slyrus_ [n=slyrus@adsl-76-195-2-12.dsl.pltn13.sbcglobal.net] has joined #lisp 02:54:13 spradnyesh [n=pradyus@nat/yahoo/x-psmgfgccakoaensx] has joined #lisp 02:56:07 envi^home [n=envi@220.121.234.156] has joined #lisp 02:57:26 Good morning everyone! 02:58:36 Good morning, beach. Glad to see you back. 02:58:45 lat_: Thanks! 02:59:38 Morning, beach. 02:59:52 -!- saikat [n=saikat@adsl-76-233-236-102.dsl.pltn13.sbcglobal.net] has quit [] 02:59:53 -!- ikki [n=ikki@201.155.75.146] has quit [Read error: 113 (No route to host)] 03:00:00 felideon [n=user@adsl-074-186-235-232.sip.bct.bellsouth.net] has joined #lisp 03:00:20 good evening gentlemen 03:01:06 I just got McClim installed with a lot of help from _3b and others, and I'm getting ready to try it out. 03:01:35 Hi felideon. 03:03:43 how are you lat_ 03:04:58 mrsolo [n=mrsolo@68.126.191.200] has joined #lisp 03:05:18 -!- S11001001 [n=sirian@pdpc/supporter/active/S11001001] has quit ["off to mess with microsoft"] 03:06:59 felideon, fine, thanks. I'm making a lot of progress learning lisp, so I'm happy. How are you? 03:07:41 i am kind of on a lisp hiatus, but hopefully will start writing some Lisp code again. so maybe i havent been as happy as you :) 03:09:30 -!- slyrus_ [n=slyrus@adsl-76-195-2-12.dsl.pltn13.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 03:10:07 qqqqq 03:11:18 stumpwm got me there. I thought I was in a different window. :) 03:12:19 -!- Nshag [i=user@Mix-Orleans-106-4-179.w193-248.abo.wanadoo.fr] has quit [Remote closed the connection] 03:14:10 -!- seangrove [n=user@cpe-76-90-50-75.socal.res.rr.com] has quit [Remote closed the connection] 03:16:03 -!- mrsolo [n=mrsolo@68.126.191.200] has quit [Client Quit] 03:17:28 slyrus_ [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has joined #lisp 03:18:22 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 03:23:24 _mfm_ [n=mfm@c-98-239-97-203.hsd1.ca.comcast.net] has joined #lisp 03:24:52 S11001001 [n=sirian@pdpc/supporter/active/S11001001] has joined #lisp 03:26:24 stassats [n=stassats@wikipedia/stassats] has joined #lisp 03:26:56 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 03:29:43 -!- skeptomai [n=cb@c-67-170-103-113.hsd1.wa.comcast.net] has quit ["Ok, I'm outta here"] 03:32:07 mpelican [n=mcp@216.243.156.42.real-time.com] has joined #lisp 03:32:12 thom_ [n=thom@pool-173-51-164-80.lsanca.fios.verizon.net] has joined #lisp 03:35:11 slyrus [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has joined #lisp 03:39:52 felideon: what are you working with? python? 03:39:59 dwh [n=dwh@ppp118-208-171-218.lns10.mel4.internode.on.net] has joined #lisp 03:40:22 C 03:40:24 err 03:40:25 C# 03:41:06 -!- mpelican [n=mcp@216.243.156.42.real-time.com] has left #lisp 03:41:06 mpelican [n=mcp@216.243.156.42.real-time.com] has joined #lisp 03:41:23 although lately I've been doing some javascript at work :) 03:41:52 but at home i've been learning the iPhone SDK on and off 03:42:30 -!- mpelican [n=mcp@216.243.156.42.real-time.com] has quit [] 03:44:39 dmiles [n=dmiles@c-76-104-220-73.hsd1.wa.comcast.net] has joined #lisp 03:47:19 Is passing a result of (make-rectangular-tile # x y) as :ink to draw-rectangle supposed to work? 03:48:21 -!- thom_ [n=thom@pool-173-51-164-80.lsanca.fios.verizon.net] has quit ["This computer has gone to sleep"] 03:51:31 lexa_ [n=lexa_@seonet.ru] has joined #lisp 03:51:59 -!- lexa_ is now known as Guest77294 03:52:43 -!- rpg [n=rpg@216.243.156.16.real-time.com] has quit ["Leaving..."] 03:53:26 How do I "load the McCLIM compiled files that make up the McCLIM distribution"? This is necessary before one can save a core file with mcclim in it, right? 03:53:53 -!- seisatsu [n=seisatsu@adsl-99-54-11-46.dsl.pltn13.sbcglobal.net] has quit [Remote closed the connection] 03:53:54 lat_: (asdf:oos 'asdf:load-op 'mcclim)? 03:53:56 rpg [n=rpg@216.243.156.16.real-time.com] has joined #lisp 03:54:07 -!- rpg [n=rpg@216.243.156.16.real-time.com] has quit [Client Quit] 03:54:09 <_3b> lat_: clbuild dumpcore already did that for you and dumped a core 03:54:19 -!- Moe111 [n=Moe111@modemcable067.226-21-96.mc.videotron.ca] has quit [] 03:55:18 -!- gigamonkey [n=user@adsl-99-184-206-106.dsl.pltn13.sbcglobal.net] has quit [Remote closed the connection] 03:55:23 QinGW1 [n=wangqing@203.86.89.226] has joined #lisp 03:56:14 _Pb [n=Pb@75.131.194.186] has joined #lisp 03:57:50 _3b, something is still wrong. When I try to compile the examples from the McClim User's Manual, I get: The name "CLIM" does not designate any package. 03:58:09 <_3b> did you load the core? 03:58:35 jajcloz [n=jaj@pool-98-110-225-173.bstnma.fios.verizon.net] has joined #lisp 03:58:47 _3b, no. How? 03:58:52 -!- raptelan_ [n=Casey@c-68-49-132-34.hsd1.md.comcast.net] has quit ["Lost terminal"] 03:59:40 -!- fisxoj [n=fisxoj@149.43.118.9] has quit [Read error: 110 (Connection timed out)] 04:02:24 -!- dwh [n=dwh@ppp118-208-171-218.lns10.mel4.internode.on.net] has quit [Read error: 110 (Connection timed out)] 04:02:44 <_3b> lat_: not sure, do you start lisp through clbuild? 04:03:20 sepult [n=user@xdsl-87-78-129-138.netcologne.de] has joined #lisp 04:04:23 _3b, I just start emacs, then type M-x slime. 04:05:10 <_3b> what did you set inferior-lisp-program to in .emacs? 04:05:32 -!- _Pb [n=Pb@75.131.194.186] has left #lisp 04:06:12 lat_: Congratulations to getting McCLIM installed. 04:06:34 lat_: You load a different core from the normal one by saying sbcl --core 04:06:55 ace4016 [i=ace4016@cpe-76-87-84-207.socal.res.rr.com] has joined #lisp 04:07:43 lat_: I have: (setq inferior-lisp-program "/usr/local/bin/sbcl --core /usr/local/lib/sbcl/clim.core") in my .emacs. 04:08:29 _3b, (setq inferior-lisp-program "/usr/local/bin/sbcl") 04:09:02 <_3b> ok, then you could probably add --core ~/clbuild/monster.core to that as beach suggested (make sure that file exists first though) 04:10:05 -!- sohail [n=sohail@unaffiliated/sohail] has quit ["Leaving."] 04:11:49 -!- QinGW [n=wangqing@203.86.89.226] has quit [Connection timed out] 04:12:03 sohail [n=sohail@CPE001839a305c5-CM000a73a081a5.cpe.net.cable.rogers.com] has joined #lisp 04:12:05 Do I need to restart emacs for this to take effect? 04:12:22 Ok, I see, ink variants need to be directly handled by the backends. 04:12:46 <_3b> that would probably be easiest, but you could probably reevaluate it with C-x C-e or M-: and restart slime instead 04:13:23 Although using inks seems to be more orthogonal/consistent than using medium-draw-image-design. 04:13:34 <_3b> or M-C-x i guess works for elisp too 04:14:20 -!- Guest77294 is now known as lexa_ 04:14:31 -!- Buganini_ [n=buganini@security-hole.info] has quit ["leaving"] 04:14:50 -!- lexa_ is now known as Guest64800 04:16:31 beach and 04:17:11 _3b, locate find no clim.core on my harddrive. 04:17:56 Murphy's law. :) 04:17:59 lat_: Right, that's just what I called it when I did save-lisp-and-die. You should use whatever name you gave it. 04:18:11 Ok, I hoped that CLIM would automate design tiling for me. Seems I would have to draw it manually. 04:19:40 beach and _3b, what name would clbuild give it? 04:21:08 Hmm, perhaps I'm giving up hope too soon.. 04:21:20 <_3b> lat_: try ~/clbuild/monster.core 04:21:34 beach, since I don't know how to load it, I can't yet use save-lisp-and-die. 04:22:12 cads [n=max@c-24-30-105-125.hsd1.ca.comcast.net] has joined #lisp 04:24:03 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 04:24:18 -!- Guest64800 is now known as lexa_ 04:24:27 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 04:24:38 Uh, DRAW-DESIGN not implemented for tiles. 04:24:48 -!- lexa_ is now known as Guest24114 04:24:56 p0a [n=user@athedsl-375727.home.otenet.gr] has joined #lisp 04:25:10 Hello in loop how can I have a variable updating? Currently I know (loop for x = # then #) 04:25:19 But I'm looking for a more compact solution that doesn't require me to enter # twice 04:25:33 <_3b> (loop for x = #) ? 04:25:36 bigb [n=bigb@r190-64-211-230.dialup.adsl.anteldata.net.uy] has joined #lisp 04:26:11 yeah 04:26:15 that. 04:26:32 ty :-) and bye for now 04:26:33 -!- p0a [n=user@athedsl-375727.home.otenet.gr] has quit [Client Quit] 04:28:14 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [Read error: 54 (Connection reset by peer)] 04:28:40 -!- _mfm_ [n=mfm@c-98-239-97-203.hsd1.ca.comcast.net] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 04:28:50 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 04:32:20 simplechat [n=simple@unaffiliated/simplechat] has joined #lisp 04:33:18 _3b, that works! But now when I try to compile a sample mcclim file I get: Version mismatch: "2008-07" vs. "2009-09-03". Continue? (yes or no) 04:33:49 -!- Modius_ [n=Modius@24.174.112.56] has quit [Client Quit] 04:34:17 Should I continue? 04:34:23 <_3b> lat_: you might want to use the slime from clbuild also 04:35:07 <_3b> replace the slime config in .emacs with the output of ./clbuild slime-configuration 04:35:51 roninbv [n=roninbv@c-76-111-63-165.hsd1.ga.comcast.net] has joined #lisp 04:36:30 <_3b> (2008-07 to 2009-09 is probably long enough that continuing would not work well) 04:37:20 ln5 [n=ln5@h199n2c1o255.bredband.skanova.com] has joined #lisp 04:37:58 you shouldn't continue unless you know what you are doing 04:38:41 -!- Guest24114 [n=lexa_@seonet.ru] has left #lisp 04:40:39 (that's in general, even with one day difference) 04:46:26 continue? 04:46:59 p0a [n=user@athedsl-375727.home.otenet.gr] has joined #lisp 04:47:07 Hello what is the problem with this function? http://paste.lisp.org/+1URS/1 04:48:46 <_3b> you have 2 bindings of N, and might be confusing them 04:49:42 AussieSteve [n=chatzill@220-253-191-245.NSW.netspace.net.au] has joined #lisp 04:49:59 So loop.. consructs or whatever they are called, are evaluated concurrently? 04:50:01 _mfm_ [n=mfm@c-98-239-97-203.hsd1.ca.comcast.net] has joined #lisp 04:50:01 Order doesn't matter? 04:51:11 How to fix this? I tried for n = n then (car x) but that didn't work eithre 04:51:18 <_3b> no, but the scope might not be what you think it is 04:52:03 _3b: does the second n inside LOOP shadow the first n? 04:52:15 <_3b> yes 04:52:47 <_3b> but before the loop starts, so it never sees the outer one in the FOR = clauses 04:53:13 <_3b> (i'm not sure if that is reliable or undefined, LOOP leaves some stuff up to the implementation) 04:53:22 <_3b> *unspecified not undefined 04:54:20 I didn't imagine this so I was confused. but thanks again 04:55:52 _3b, done. But now I get: The name "CLIM" does not designate any package. 04:56:32 -!- p0a [n=user@athedsl-375727.home.otenet.gr] has quit ["bye"] 04:57:01 _3b, I hope you're not getting tired. We are getting closer. 04:58:11 <_3b> lat_: if you changed inferior-lisp-program to use clbuild, try replacing the lisp at the end with preloaded 04:59:41 <_3b> lat_: something like (setq inferior-lisp-program "~/clbuild/clbuild --implementation sbcl preloaded") 05:00:06 <_3b> assuming that matches what you had aside from the "preloaded" part 05:04:16 -!- stassats [n=stassats@wikipedia/stassats] has quit [Read error: 113 (No route to host)] 05:05:32 -!- dostoyevsky [i=sck@oemcomputer.oerks.de] has quit [Remote closed the connection] 05:05:37 dostoyevsky [i=sck@oemcomputer.oerks.de] has joined #lisp 05:05:44 Modius [n=Modius@24.174.112.56] has joined #lisp 05:05:53 dto` [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has joined #lisp 05:08:42 -!- bigb [n=bigb@r190-64-211-230.dialup.adsl.anteldata.net.uy] has quit [Read error: 60 (Operation timed out)] 05:09:24 is simplechat a multi-chan bot? 05:09:25 _3b, This must not be what you meant: (setq inferior-lisp-program "/usr/local/bin/sbcl --implementation preloaded /home/lat/clbuild/monster.core") 05:09:35 are these things allows here? 05:10:52 <_3b> lat_: no, either use clbuild with --implementation sbcl preloaded, or sbcl with -core ~/clbuild/monster.core, but don't mix the two :) 05:11:06 rwx [n=quassel@adsl-99-155-214-145.dsl.akrnoh.sbcglobal.net] has joined #lisp 05:11:59 fusss, ? 05:12:00 -!- existentialmonk [n=carcdr@64-148-11-244.adsl.snet.net] has quit [Read error: 104 (Connection reset by peer)] 05:12:00 wtf? 05:12:31 benny` [n=benny@i577A1B89.versanet.de] has joined #lisp 05:13:01 simplechat: i think my question was answered by the delay in your repsonse, unless the author put a (sleep 3) somewhere in there for whatever reason 05:13:36 simplechat: ubuntu-au-chat; yous aussie? 05:14:35 dwh [n=dwh@ppp118-208-171-218.lns10.mel4.internode.on.net] has joined #lisp 05:16:45 -!- legumbre_ is now known as legumbre 05:16:51 _3b, this must not be what you meant either: (setq inferior-lisp-program "~/clbuild/clbuild --implementation preloaded") 05:17:12 -!- benny [n=benny@i577A19FB.versanet.de] has quit [Nick collision from services.] 05:17:13 -!- benny` is now known as benny 05:17:43 -!- felideon [n=user@adsl-074-186-235-232.sip.bct.bellsouth.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 05:17:49 -!- sepult [n=user@xdsl-87-78-129-138.netcologne.de] has quit [Connection timed out] 05:17:53 <_3b> lat_: closer, "~/clbuild/clbuild --implementation sbcl preloaded" 05:19:34 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 05:22:21 HG` [n=HG@xdslef015.osnanet.de] has joined #lisp 05:25:17 -!- rwx [n=quassel@adsl-99-155-214-145.dsl.akrnoh.sbcglobal.net] has quit [Remote closed the connection] 05:26:22 -!- roninbv [n=roninbv@c-76-111-63-165.hsd1.ga.comcast.net] has quit ["Leaving"] 05:29:31 Davidbrcz [n=david@212-198-78-230.rev.numericable.fr] has joined #lisp 05:29:33 -!- dialtone_ [n=dialtone@unaffiliated/dialtone] has quit [Read error: 110 (Connection timed out)] 05:32:25 -!- cads [n=max@c-24-30-105-125.hsd1.ca.comcast.net] has quit [Read error: 110 (Connection timed out)] 05:36:15 xan-afk_ [n=xan@cs78225040.pp.htv.fi] has joined #lisp 05:37:21 _3b, clim is recognized now, but I'm getting: These variables are undefined: INTEGER SUPERAPP 05:37:44 -!- ASau [n=user@83.69.240.52] has quit ["off"] 05:38:40 seangrove [n=user@cpe-76-90-50-75.socal.res.rr.com] has joined #lisp 05:39:10 :>) lol. _3b, you are a very patient man. Very much appreciated! 05:39:22 fusss, yeah 05:39:32 logBot4631 [n=logBot@59.92.154.213] has joined #lisp 05:39:34 fusss, whats with the name calling though :) 05:40:49 -!- mattrepl [n=mattrepl@68.100.82.124] has quit [] 05:43:12 nvoorhies_ [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 05:43:12 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [Read error: 54 (Connection reset by peer)] 05:43:21 -!- nvoorhies_ is now known as nvoorhies 05:43:47 thom_ [n=thom@pool-173-51-164-80.lsanca.fios.verizon.net] has joined #lisp 05:46:10 so whatsup? 05:46:22 -!- Davidbrcz [n=david@212-198-78-230.rev.numericable.fr] has quit [Read error: 110 (Connection timed out)] 05:46:38 -!- fusss [n=chatzill@115.128.34.133] has quit [Read error: 104 (Connection reset by peer)] 05:48:34 -!- tsuru [n=user@c-76-22-154-126.hsd1.tn.comcast.net] has quit [Read error: 110 (Connection timed out)] 05:50:30 _3b, I'm trying to compile the example on page 9 of the user's manual. I think I found the problem---the wrong kind of apostrophes. 05:51:28 -!- ln5 [n=ln5@h199n2c1o255.bredband.skanova.com] has quit ["Leaving."] 05:52:11 ...instead of single quotes. 05:54:42 Davse_Bamse [n=davse@4306ds4-soeb.0.fullrate.dk] has joined #lisp 05:59:35 -!- xan-afk [n=xan@cs78225040.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 06:00:05 lat_, that's a pretty common problem with pasting lisp code from pdf files.. 06:00:37 _3b, that was the problem. I am now looking at the sample app displayed on my monitor! Sweet. Especially after all this work. Now I have to succeed, or else I will be letting you down. A day is a good day if it ends with success. 06:02:16 deepfire, yes. I've seen that problem before. It's really hard to spot with some fonts. 06:03:31 Soulman [n=kvirc@154.80-202-254.nextgentel.com] has joined #lisp 06:04:58 tcr [n=tcr@host146.natpool.mwn.de] has joined #lisp 06:10:20 -!- KevinFish [n=fish@c-98-208-14-225.hsd1.ca.comcast.net] has quit ["Leaving."] 06:10:58 -!- GreatPatham [n=dan@c-24-19-169-87.hsd1.wa.comcast.net] has quit [] 06:12:58 beach, are you still on? 06:16:45 aquagnu [n=aquagnu@85.118.228.172] has joined #lisp 06:17:28 cornucopic [n=r00t@202.3.77.134] has joined #lisp 06:17:39 mrSpec [n=Spec@unaffiliated/mrspec] has joined #lisp 06:17:39 -!- cornucopic [n=r00t@202.3.77.134] has quit [Read error: 54 (Connection reset by peer)] 06:17:54 hello 06:21:02 -!- xan-afk_ is now known as xan 06:21:39 beach, I'm trying to compile your dictionary program. I'm missing the :docu-app package. Did I fail to download a file? If yes, would you please post the url again? 06:22:09 -!- _mfm_ [n=mfm@c-98-239-97-203.hsd1.ca.comcast.net] has quit ["ERC Version 5.2 (IRC client for Emacs)"] 06:22:42 -!- sohail [n=sohail@unaffiliated/sohail] has quit ["Leaving."] 06:23:14 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 06:25:33 -!- Modius [n=Modius@24.174.112.56] has quit ["I'm big in Japan"] 06:30:06 Many thanks to all of you who have helped me today! 06:32:42 levy [n=levy@apn-94-44-5-209.vodafone.hu] has joined #lisp 06:32:49 cornucopic [n=r00t@202.3.77.134] has joined #lisp 06:32:59 -!- levy [n=levy@apn-94-44-5-209.vodafone.hu] has quit [Client Quit] 06:33:38 lat_: http://dept-info.labri.fr/~strandh/Vietnamese/ 06:33:48 i had it open in my browser :) 06:35:04 guaqua, thanks! 06:38:47 splittist [n=dmurray@217-115.2-85.cust.bluewin.ch] has joined #lisp 06:38:49 morning 06:39:12 ln51 [n=ln5@nordutug-gw.nordu.net] has joined #lisp 06:39:42 -!- HG` [n=HG@xdslef015.osnanet.de] has quit [Client Quit] 06:43:50 Hey, would a lisp implementation in python be of any use to anyone? 06:43:58 -!- dto [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has quit [Read error: 110 (Connection timed out)] 06:44:02 -!- dto` [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has quit [Read error: 110 (Connection timed out)] 06:44:07 freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has joined #lisp 06:44:19 Of which dialect? 06:45:11 any given :) 06:45:13 probably scheme 06:45:21 -!- grouzen [n=grouzen@91.214.124.2] has quit ["leaving"] 06:45:30 mvilleneuve [n=mvillene@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has joined #lisp 06:45:49 A clojure implementation in python would be interesting... 06:45:57 simplechat: scheme would be easier to implement 06:46:05 hmmm 06:46:19 and nicer. 06:46:22 -!- jajcloz [n=jaj@pool-98-110-225-173.bstnma.fios.verizon.net] has quit [] 06:46:40 nicer? 06:46:44 simplechat: I *think* there's both of those already (lisp in python and python in lisp) 06:46:48 Hello! I am reading Paul Graham's On Lisp now and he says that let* is usually bad to use cause it hides imperative program inside. I know lisp is multi-paradigm, but I kinda like functional programming style so I wonder if using let and let* generally breaks functional style. I usually use let and let* to remove huge repeating expressions, so code will be more readable. I don't do any side-effects to outside variables, I just assign new tempo 06:46:48 rary ones. Is it alright? 06:47:03 freiksenet: don't trust PG for style. 06:47:11 But we have schemes. Implement something new and exciting. Let a hundred flowers bloom! (Just ignore how that turned out last time...) 06:47:22 sykopomp, why? 06:47:23 good morning 06:47:38 freiksenet: his point, though, is that it's not terribly nice to have a bunch of sequential statements in let*, which I actually agree with. 06:47:45 there's better places for procedural stuff ;D 06:47:58 minion: graham crackers? 06:47:58 graham crackers: http://www.cs.northwestern.edu/academics/courses/325/readings/graham/graham-notes.html 06:48:54 just a moment, let me paste bin my code snippet 06:49:09 lisppaste: url 06:49:09 To use the lisppaste bot, visit http://paste.lisp.org/new/lisp and enter your paste. 06:49:15 use that guy 06:49:22 freiksenet: use ^^ 06:50:23 http://paste.lisp.org/display/86545 06:50:52 here, is it okay to use let* like this? if I don't use let* here I would later have to repeat all those expression ten times and my code will become 1 page long :) 06:50:55 sykopomp, links? 06:51:21 freik: Sure. 06:51:28 simplechat: to? 06:51:50 if we think in functional terms does this breaks functional style? 06:52:03 SandGorgon [n=OmNomNom@122.160.41.129] has joined #lisp 06:52:22 daniel [i=daniel@unaffiliated/daniel] has joined #lisp 06:52:45 sykopomp, the implementations :) 06:52:58 lat_: You need to load the app.asd file and then do (asdf:operate 'asdf:load-op :docu-app), then everything should work. 06:52:58 simplechat: oh 06:53:21 good morning splittist 06:53:54 simplechat: looks like it's only python-on-top-of-lisp that exists. 06:53:59 there's two, though. 06:54:09 python-on-lisp, and cl-python (which is done by a Franz guy) 06:54:21 I think somebody also tried setting up an FFI to Python, from CL 06:54:23 good morning mvilleneuve 06:54:57 sykopomp: The author of clpython does not work for Franz 06:55:24 freiksenet: I woudn't worry so much about it if I were you. Functional style is just a means, and not a goal in itself. 06:55:25 My guess his he gets his ACL license for free, or perhaps almost free, for they being affiliated with clpython 06:56:00 sykopomp, ? 06:56:02 tcr: no? I thought he was, because it's listed on github under franzinc's account. 06:56:05 simplechat: there's a good reason why people do it that way, though. Common Lisp is a compiled language, while Python is an interpreted/bytecode language, so you lose power by implementing Python in CL 06:56:16 yeah 06:56:18 sykopomp: He isn't 06:56:22 http://github.com/franzinc/cl-python/tree/master <-- source of confusion. 06:56:22 er, other way around at the end there. 06:56:28 beach - I know :) this just bugs me and I want to know :) 06:56:37 Adlai, but python has access to loads of python/C libraries 06:56:44 which lisp doesn't have 06:57:05 how stable are those python implementations btw? and what python version they represent? I'd love to have a compiled python 3k on top of CL 06:57:11 freiksenet: if you're asking for opinions -- that's way too much code to stick in a let*. However, it's also my opinion that you should find your own style :) 06:57:58 simplechat: I imagine it's just less of a nice idea to implement CL on top of python than it is to do the inverse. 06:58:03 simplechat: Then perhaps your interest should like with 'swig'. 06:58:17 er, lie. 06:58:22 freiksenet: Try to introduce intermediate functions with meaningful names 06:58:26 Adlai, what would be a good way to do it in your opinion? 06:58:31 sykopomp, how so? 06:58:37 tcr what do you mean? 06:59:05 sykopomp - it would be even slower that python then. I am not saying speed is a key nowadays, but still. 06:59:58 freiksenet: it would also probably be harder, in general, because you'd have to deal with python's bullshit to implement a fatter language :P 07:00:10 clpython caters for 2.5 07:01:21 sykopomp, true, meta-programming is not python's strong side. 07:01:47 how plausible would it be to give clpython access to CPython libraries through SWIG? 07:02:12 or is it more plausible to give it access to CL libraries? 07:02:20 As clpython is written in Lisp, it's easily hackable. For my company I hacked up a "plugin" that adds dimensional numberic literals, i.e. you can write 1.5m + 10cm. An error would be signalled for 1m² + 1m³ 07:02:22 in a way to replace C dependencies 07:05:02 -!- spradnyesh [n=pradyus@nat/yahoo/x-psmgfgccakoaensx] has quit [Remote closed the connection] 07:05:06 -!- tcr [n=tcr@host146.natpool.mwn.de] has quit ["Leaving."] 07:05:25 spradnyesh [n=pradyus@nat/yahoo/x-pznbalmmgzhriukj] has joined #lisp 07:05:56 iwaki [n=hide@PPPa470.osaka.acca.dti.ne.jp] has joined #lisp 07:06:53 -!- daniel_ [i=daniel@unaffiliated/daniel] has quit [Read error: 110 (Connection timed out)] 07:07:32 -!- beach [n=user@ABordeaux-158-1-23-136.w90-55.abo.wanadoo.fr] has left #lisp 07:10:01 isn't it: (sb-sys:sap-ref-32 (sb-sys:int-sap #x01234) 0), where 1234 comes from disassemble entry? 07:10:19 freiksenet: I guess it depends how many utilities you're willing to use... looking over that quickly, you could use awhen and a partitioning utility to make that code simpler, but it might not be worth adding the complexity of those utils. 07:12:25 What is cl's change directory command? 07:12:38 alinp [n=alinp@86.122.9.2] has joined #lisp 07:12:47 Adlai: awhen is some thirdparty library? 07:12:47 -!- redblue [i=star@ppp181.108-253-207.mtl.mt.videotron.ca] has quit [""You cannot do a kindness too soon because you never know how soon it will be too late." -RWE"] 07:13:29 freiksenet: (defmacro awhen (test &body body) `(let ((it ,test)) (when it ,@body))) 07:15:41 Adlai: macros are hard for me %) could you give an example on where would you put it in my code? 07:15:55 yes, just a sec 07:16:15 Adlai: thanks a lot. 07:16:33 freiksenet: which of those variables do you use in the end? 07:17:01 redblue [i=star@ppp036.108-253-207.mtl.mt.videotron.ca] has joined #lisp 07:17:17 prg [n=prg@ns.alusht.net] has joined #lisp 07:17:53 http://paste.lisp.org/display/86547 07:18:11 lisppaste: url? 07:18:11 To use the lisppaste bot, visit http://paste.lisp.org/new/lisp and enter your paste. 07:18:28 freiksenet: use that URL. It'll save you the trouble of notifying the channel about your paste. 07:18:31 -!- manuel___ [n=manuel@pD9E6B3F3.dip.t-dialin.net] has quit [] 07:19:02 lisppaste: http://paste.lisp.org/display/86547 07:19:05 like this? 07:19:36 freiksenet: no, do you see the URL in the message from lisppaste ? 07:19:54 Adlai: yeah 07:20:29 -!- ltriant [n=ltriant@lithium.mailguard.com.au] has quit ["Get MacIrssi - http://www.sysctl.co.uk/projects/macirssi/"] 07:20:57 weblocks looks potentially really cool --- http://weblocks.viridian-project.de/welcome 07:21:04 Adlai pasted "example" at http://paste.lisp.org/display/86548 07:21:35 Cassio [i=Cassio@151.61.94.223] has joined #lisp 07:21:40 freiksenet: this way the paste is associated with the channel, and I don't have to do anything myself. 07:22:08 aah. I see, thanks a lot. 07:23:24 Hi, emma. 07:28:12 hi 07:28:29 -!- freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has left #lisp 07:28:31 emma: having fun yet, or still boggling? 07:29:00 well im not going as fast as i would like to ideally but i think every day helps. 07:30:32 someone should've mentioned to that freik guy that the sequence functions work just fine on NIL :P 07:31:08 -!- tltstc [n=tltstc@cpe-76-168-78-251.socal.res.rr.com] has quit [Read error: 60 (Operation timed out)] 07:31:43 he left? wtF? 07:31:54 I was halfway through tidying up that example he pasted. bleh. 07:32:03 oh god. He's using PG's god-awful habit of nesting IFs 07:32:27 well, cond doesn't help you when you need to nest into the then-clause 07:32:41 I guess. 07:32:50 well, you could always flip your predicate, and then cond would work 07:32:55 anyways, goodnight #lisp 07:32:57 cond doesn't work when you need to nest into BOTH clauses 07:33:00 goodnight sykopomp 07:33:18 <_3b> it helps if the test isn't expensive/verbose 07:33:56 A combination of let and cond would sometimes be nice. 07:34:14 Zhivago: acond? 07:34:16 freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has joined #lisp 07:34:35 Adlai: oops, disconnect. Have you sent me anything? 07:34:39 From memory acond doesn't help much. 07:35:39 Something like let* with early termination. 07:35:55 freiksenet: no, but I have a few suggestions. you never use numssymb, so you can get rid of that variable by using awhen for binding the second variable 07:38:05 like remove all numsymb def and write (awhen (long expression) (apply #'multfirst it)? 07:38:15 yep 07:38:27 (long expression) would just be what you bind numssymb to right now 07:38:32 yeah. 07:38:35 thanks 07:38:41 is awhen part of CL? 07:38:47 emma, weblocks does look cool. 07:39:31 or I just define it like you wrote? 07:39:36 im going to look into that tomorrow some time. 07:40:38 freiksenet: nope, just define it like I wrote, or if you want, define AIF along similar lines and AWHEN in terms of AIF. Either way works. 07:40:53 be warned however, too much use of anaphoric macros causes blindness! 07:41:30 Adlai: my brain hurts when I read word anaphoric. I have not reached that far in on lisp yet :) 07:44:01 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [] 07:44:28 -!- bombshelter13_ [n=bombshel@76-10-149-209.dsl.teksavvy.com] has quit [Client Quit] 07:49:51 ASau [n=user@host10-231-msk.microtest.ru] has joined #lisp 07:53:23 ruediger [n=the-rued@p508B2E28.dip.t-dialin.net] has joined #lisp 07:57:30 you have terms 07:57:39 oops sorry bad console 07:57:52 s/bad/wrong/ 07:58:11 Good morning everyone! 07:59:42 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 08:02:23 -!- iwaki [n=hide@PPPa470.osaka.acca.dti.ne.jp] has quit [Read error: 104 (Connection reset by peer)] 08:06:15 hi, Dr. Nick! 08:06:24 -!- htk_ [n=htk___@188.3.227.231] has quit [Read error: 113 (No route to host)] 08:06:55 -!- freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has quit [Read error: 110 (Connection timed out)] 08:16:24 kiuma [n=kiuma@85-18-55-37.ip.fastwebnet.it] has joined #lisp 08:19:00 jdz [n=jdz@85.254.211.133] has joined #lisp 08:21:45 girzel [n=user@123.121.235.168] has joined #lisp 08:22:10 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 08:23:01 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 08:28:28 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 08:28:42 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 08:31:19 freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has joined #lisp 08:32:25 ljames [n=ln@unaffiliated/ljames] has joined #lisp 08:33:37 -!- arbscht [n=arbscht@unaffiliated/arbscht] has quit [Remote closed the connection] 08:37:35 matimago [n=user@cac94-10-88-170-236-224.fbx.proxad.net] has joined #lisp 08:37:49 legumbre_ [n=user@r190-135-14-147.dialup.adsl.anteldata.net.uy] has joined #lisp 08:39:37 -!- S11001001 [n=sirian@pdpc/supporter/active/S11001001] has left #lisp 08:39:48 cow-orker [n=foobar@80.91.36.18] has joined #lisp 08:45:03 -!- cp2 [n=will@69.163.33.38] has quit [Read error: 60 (Operation timed out)] 08:46:55 Grey_Fox [n=chatzill@ppp118-208-187-77.lns10.mel4.internode.on.net] has joined #lisp 08:49:09 arbscht [n=arbscht@60-234-133-173.bitstream.orcon.net.nz] has joined #lisp 08:49:13 -!- prg [n=prg@ns.alusht.net] has quit [Nick collision from services.] 08:49:30 prg_ [n=prg@ns.alusht.net] has joined #lisp 08:51:09 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [] 08:51:32 Can it be that the medium of a pixmap can have another pixmap as its pixmap? 08:51:46 deepfire: That doesn't make sense. 08:52:34 Zhivago, have you looked at WITH-PIXMAP-MEDIUM? 08:53:06 Ah, not X11, then -- ok. 08:54:02 -!- legumbre [n=user@r190-135-50-10.dialup.adsl.anteldata.net.uy] has quit [Read error: 110 (Connection timed out)] 08:54:47 matley [n=matley@matley.imati.cnr.it] has joined #lisp 08:56:06 W-P-M seems to be about the only place except ENGRAFT/DEGRAFT-MEDIUM which changes medium's sheet. 08:56:49 My head hurts, to be honest. The amount of not-exactly-orthogonal concepts in CLIM is mind-boggling. 08:58:28 mishoo [n=mishoo@86-124-78-239.iasi.cablelink.ro] has joined #lisp 08:58:34 hey there 08:58:45 yo mishoo 08:58:59 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 54 (Connection reset by peer)] 08:59:28 QinGW [n=wangqing@203.86.89.226] has joined #lisp 08:59:33 dear lispers, I have a quick (newbie) question: how do I do "forward function declarations", so that I don't get a warning when I have two mutually recursive functions 08:59:41 yoos [n=quassel@c-67-169-211-13.hsd1.or.comcast.net] has joined #lisp 08:59:50 -!- proq [n=user@unaffiliated/proqesi] has quit [Connection timed out] 09:01:19 -!- slackjaw [n=jolyonwh@203.143.170.201] has quit ["Computer goes to sleep!"] 09:01:40 -!- yoos [n=quassel@c-67-169-211-13.hsd1.or.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 09:01:41 mishoo: within a compilation unit (for example, a file), many lisps don't give you that warning anyway. Example: SBCL doesn't warn, but Allegro does. 09:01:41 lichtblau, memo from tcr: There are updated on named-readtables waiting for your pull. It includes some allegro-specific fixes. 09:02:19 OmniMancer [n=OmniManc@122-57-9-204.jetstream.xtra.co.nz] has joined #lisp 09:02:33 (declaim (ftype ...)) is a kind of forward declaration, but suspect that it's not the best approach in you case. 09:02:35 lichtblau: I'm using sbcl, and it warns 09:02:43 what exactly is a "compilation unit"? 09:02:50 minion: lisppaste for mishoo 09:02:51 To use the lisppaste bot, visit http://paste.lisp.org/new/lisp and enter your paste. 09:02:59 mishoo: basically, a file. 09:03:09 clhs with-compilation-unit 09:03:09 http://www.lispworks.com/reference/HyperSpec/Body/m_w_comp.htm 09:03:10 what usually causes the GC invariant lost thing in SBCL? 09:03:56 yango [n=yango@unaffiliated/yango] has joined #lisp 09:03:57 bugs 09:04:15 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 104 (Connection reset by peer)] 09:04:23 mishoo: what is your test case? Try (load (compile-file "test.lisp")) with both definitions in that file. 09:04:52 ASDF also puts everything into a compilation unit. 09:05:13 QinGW [n=wangqing@203.86.89.226] has joined #lisp 09:05:50 HG` [n=HG@xdslgi077.osnanet.de] has joined #lisp 09:06:23 hmm, interesting, it doesn't warn for this very simple test case: 09:06:25 (defvar some-condition t) 09:06:26 (defun a () (when some-condition (b))) 09:06:26 (defun b () (when some-condition (a))) 09:09:49 btw (sorry, I have tons of questions.. trying to learn lisp) -- I am using Emacs/Slime with SBCL; when "inferior-lisp" is started in Emacs and I try sbcl at the command line, I get the following weird error: 09:09:53 The class SB-PRETTY:PRETTY-STREAM was not changed, and there's no guarantee that 09:09:53 the loaded code (which expected another layout) will work. 09:10:11 and have the option to "try-recompiling" 09:10:29 just wondering if SBCL is caching some data that differs when it's invoked by SLIME vs. command line? 09:12:17 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 09:12:35 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 09:13:11 -!- arbscht [n=arbscht@unaffiliated/arbscht] has quit [Remote closed the connection] 09:15:13 -!- matimago [n=user@cac94-10-88-170-236-224.fbx.proxad.net] has quit [Read error: 104 (Connection reset by peer)] 09:16:13 tltstc [n=tltstc@cpe-76-168-78-251.socal.res.rr.com] has joined #lisp 09:17:48 matimago [n=user@cac94-10-88-170-236-224.fbx.proxad.net] has joined #lisp 09:18:09 Symmetry- [n=thezog@host-static-92-114-165-252.moldtelecom.md] has joined #lisp 09:18:21 nvntung [n=user@147.210.246.189] has joined #lisp 09:18:30 Good morning! 09:18:38 -!- logBot4631 [n=logBot@59.92.154.213] has quit [Read error: 54 (Connection reset by peer)] 09:18:44 Hi! 09:20:04 I have a function that load the font in C. I want to write it in Lisp. How can I do using CFFI or CLX or Xlib? 09:20:54 nvntung: if you want to write it in lisp, then you won't use cffi. Cffi is made to avoid having to write it in lisp... 09:21:58 Use CFFI if you want to call your C function from Lisp. 09:22:28 In CFFI, you write in lisp the equivalent of a .h 09:22:30 The function have been pasted at http://paste.lisp.org/display/86550 09:23:14 matimago: I mean that calling C functions. 09:23:16 serichsen [n=harleqin@xdsl-81-173-158-29.netcologne.de] has joined #lisp 09:23:36 arbscht [n=arbscht@unaffiliated/arbscht] has joined #lisp 09:23:49 (cffi:defcfun ("BuildFont' build-font) :void ()) (build-font) 09:23:56 See the CFFI manual. 09:24:08 minion: cffi for nvntung 09:24:09 nvntung: please see cffi: CFFI, the Common Foreign Function Interface, purports to be a portable foreign function interface for Common Lisp. http://www.cliki.net/cffi 09:24:23 -!- redblue [i=star@ppp036.108-253-207.mtl.mt.videotron.ca] has quit [""You cannot do a kindness too soon because you never know how soon it will be too late." -RWE"] 09:24:33 HET2 [n=diman@81.106.143.36] has joined #lisp 09:26:51 vyazovoi [n=vyazovoi@horrible-unlim.vpn.mgn.ru] has joined #lisp 09:26:56 redblue [i=star@ppp047.108-253-207.mtl.mt.videotron.ca] has joined #lisp 09:30:44 -!- arbscht [n=arbscht@unaffiliated/arbscht] has quit [Remote closed the connection] 09:30:58 Nshag [i=user@Mix-Orleans-106-1-159.w193-248.abo.wanadoo.fr] has joined #lisp 09:31:45 stassats [n=stassats@91.122.109.224] has joined #lisp 09:32:30 -!- vy [n=user@nbvyazici.cs.bilkent.edu.tr] has quit [Read error: 113 (No route to host)] 09:36:28 -!- lharc [n=shrek@88.131.67.194] has quit [Read error: 113 (No route to host)] 09:39:30 -!- serichse1 [n=harleqin@xdsl-81-173-157-171.netcologne.de] has quit [Read error: 110 (Connection timed out)] 09:41:46 is it non-trivial to call C++ from lisp? 09:42:04 -!- ruediger [n=the-rued@p508B2E28.dip.t-dialin.net] has quit ["Leaving"] 09:43:09 if you mean with FFI, then yes, i think. C++ has its' "name-mangling". 09:43:11 matimago: How to organize the codes? I have BuildFont() in C, and I want to use CFFI to call this function. 09:43:33 it also has no standard calling convention 09:45:05 besiria [n=user@pantou.lib.uom.gr] has joined #lisp 09:46:27 to paraphrase kmp: "Please don't assume Lisp can only interface easily with akonadi, kde, kdevplatform, khtml, ktexteditor, nepomuk, okular, phonon, plasma, qimageblitz, qsci, qt, qtscript, qttest, qtuitools, qtwebkit, qwt, solid and soprano just because these are the only C++ libraries there's a default smoke binding for." 09:47:03 mein auge1 09:47:32 cyclops-xach? 09:48:35 we need to pester the standards committee to standardise name mangling and calling conventions and ABI in general 09:48:56 -!- envi^office [i=envi@203.109.25.110] has quit ["Leaving"] 09:49:31 cp2 [n=will@69.163.33.38] has joined #lisp 09:54:56 QinGW1 [n=wangqing@203.86.89.226] has joined #lisp 09:55:03 arbscht [n=arbscht@unaffiliated/arbscht] has joined #lisp 09:55:18 -!- arbscht [n=arbscht@unaffiliated/arbscht] has quit [Remote closed the connection] 09:55:25 ManateeLazyCat [n=user@116.4.148.183] has joined #lisp 09:57:19 i would rather just see some sort of C/C++-proxy, so we don't have to fuck around with all these bindings. It really ought to be possible somehow. 09:57:47 -!- stassats [n=stassats@wikipedia/stassats] has quit [Remote closed the connection] 09:57:57 stassats [n=stassats@wikipedia/stassats] has joined #lisp 09:58:49 -!- kiuma [n=kiuma@85-18-55-37.ip.fastwebnet.it] has quit ["Bye bye ppl"] 09:58:55 is the maintainer of the archlinux package for sbcl lurking here? 09:59:01 hmmm? 09:59:12 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 60 (Operation timed out)] 09:59:32 -!- Axioplase is now known as Axioplase_ 09:59:51 that's two times he doesn't upgrade the package for the new version, so I did it, but he still need to upload it 10:00:18 and since he doesn't answer to his mail, I'm trying here, you never know :) 10:01:02 kmcorbett1 [n=Keith@c-76-119-215-57.hsd1.ma.comcast.net] has joined #lisp 10:02:01 hypno: what do you mean by a C/C++-proxy? 10:03:39 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 10:03:50 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 10:04:25 i mean a C application and a protocol ontop somehow. that way C would open and call all sorts of shit in any arbitrary library, and it would be safer for the lisp as well. 10:04:39 -!- spradnyesh [n=pradyus@nat/yahoo/x-pznbalmmgzhriukj] has left #lisp 10:05:03 Athas [n=athas@192.38.109.188] has joined #lisp 10:05:07 ah 10:05:16 you still have type issues... 10:05:18 the hard part is how do you reflect back an "weird" type, say a struct pointer? 10:05:32 you can make it opaque 10:06:11 what do you mean? 10:06:28 the actual code does not care about type 10:06:31 create a new struct which isnt a pointer from the old one? 10:07:18 when I am working with integers, is there any difference between (floor) and (truncate) ? 10:08:25 a struct pointer is the same as any other pointer you can force the lisp to treat it as opaque and not knowing what the pointer points to and use functions to deal with them 10:08:33 myrkraverk: yes. the spec explains. 10:09:01 OmniMancer: well, yes, but you still have to marshallow the data somehow. 10:09:20 myrkraverk: floor truncates towards negative infinity, truncate truncates towards zero 10:09:25 you can keep them as an apropriately sized integer 10:09:47 OmniMancer: oh, and you mean to just keep the struct around in C-space? 10:10:11 Xach, ah. yes, there are different results on negative integers 10:10:12 this is assuming that you have factory functions and don't want garbage collection and such 10:10:14 OmniMancer: ie, pretty much a table of pointers, and index in the table identifies the object? 10:10:53 arbscht [n=arbscht@60-234-133-173.bitstream.orcon.net.nz] has joined #lisp 10:10:54 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 60 (Operation timed out)] 10:11:07 How can I make the slime repl window open in the same directory as the file I'm compiling using C-c C-k? 10:11:12 no 10:11:15 Xach, and am I correct to presume they're equal on positive integers? 10:11:26 myrkraverk: seems likely to me 10:11:28 I mean take pointer keep in an integer pass integer back to function... 10:11:54 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 10:12:15 but this requires a C factory function, C accessor functions and a C destructor function 10:12:16 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 10:13:17 OmniMancer: oh, duh, but of course. yes, sounds workable. 10:13:37 htk_ [n=htk___@188.3.227.231] has joined #lisp 10:13:38 that is AFAIK the way that cffi and most ffi's deal with things 10:15:08 only problem is that you don't get garbage collection :( 10:15:36 i'm willing to trade that for easy C-lib access. :) 10:17:22 ignas [n=ignas@78.60.73.85] has joined #lisp 10:17:23 you can get garbage collection by putting the pointer in a proxy object 10:18:42 tali713 [i=tali713@c-71-195-45-159.hsd1.mn.comcast.net] has joined #lisp 10:21:15 yaroslav_h [n=yaroslav@93-120-143-62.dynamic.mts-nn.ru] has joined #lisp 10:22:29 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 10:24:38 if you have decent support from the lisp you can probably even map the struct to a structure but you need to know the interface, such as header files 10:27:46 someone clearly needs to write a library with standard implementations of write-u32 et al :) 10:27:59 -!- trebor_dki [n=user@mail.dki.tu-darmstadt.de] has quit [Remote closed the connection] 10:28:08 seemingly any lib which does binary stuff makes its own, with ldb 10:28:59 -!- arbscht [n=arbscht@unaffiliated/arbscht] has quit [Remote closed the connection] 10:30:33 write-u32? 10:34:26 arbscht [n=arbscht@unaffiliated/arbscht] has joined #lisp 10:34:46 sohail [n=sohail@CPE001839a305c5-CM000a73a081a5.cpe.net.cable.rogers.com] has joined #lisp 10:35:32 -!- sohail [n=sohail@unaffiliated/sohail] has quit [Client Quit] 10:36:23 *splittist* always liked http://www.cliki.net/Binary-types 10:37:41 Edico [n=Edico@unaffiliated/edico] has joined #lisp 10:38:09 -!- alexbobp [n=alex@adsl-75-34-100-218.dsl.austtx.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 10:39:00 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 10:40:16 clhs if 10:40:16 http://www.lispworks.com/reference/HyperSpec/Body/s_if.htm 10:42:01 dto [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has joined #lisp 10:42:50 mogunus` [n=user@173.9.7.10] has joined #lisp 10:42:56 sykopomp` [n=sykopomp@unaffiliated/sykopomp] has joined #lisp 10:43:03 schoppenhauer [n=senjak@unaffiliated/schoppenhauer] has joined #lisp 10:43:07 kmcorbett [n=Keith@c-76-119-215-57.hsd1.ma.comcast.net] has joined #lisp 10:44:04 -!- schoppenhauer [n=senjak@unaffiliated/schoppenhauer] has left #lisp 10:44:41 -!- htk_ [n=htk___@188.3.227.231] has quit [anthony.freenode.net irc.freenode.net] 10:44:41 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [anthony.freenode.net irc.freenode.net] 10:44:41 -!- kmcorbett1 [n=Keith@c-76-119-215-57.hsd1.ma.comcast.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:41 -!- besiria [n=user@pantou.lib.uom.gr] has quit [anthony.freenode.net irc.freenode.net] 10:44:41 -!- HG` [n=HG@xdslgi077.osnanet.de] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- jdz [n=jdz@85.254.211.133] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- alinp [n=alinp@86.122.9.2] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- mvilleneuve [n=mvillene@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- mrSpec [n=Spec@unaffiliated/mrspec] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Soulman [n=kvirc@154.80-202-254.nextgentel.com] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- dwh [n=dwh@ppp118-208-171-218.lns10.mel4.internode.on.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- AussieSteve [n=chatzill@220-253-191-245.NSW.netspace.net.au] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- alexsuraci [n=alex@pool-71-188-133-67.aubnin.fios.verizon.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- housel [n=user@mccarthy.opendylan.org] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- sellout [n=greg@c-24-128-50-176.hsd1.ma.comcast.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Axioplase_ [n=Axioplas@fortigate.kb.ecei.tohoku.ac.jp] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- jsnell [n=jsnell@vasara.proghammer.com] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- krappie [n=brain@mx.skitzo.org] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- setheus_ [n=setheus@pool-173-74-124-37.dllstx.fios.verizon.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- mogunus [n=user@173-9-7-10-New-England.hfc.comcastbusiness.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- carrl [n=carl@61-64-164-206-adsl-tai.STATIC.so-net.net.tw] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Orest^bnc [n=Orest@hates-script-kiddies.ath.cx] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- maxote [n=||||||||@84.79.67.254] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- aja [n=aja@unaffiliated/aja] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- holycow [n=new@69.67.174.130] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Xach [n=xach@207.5.178.18] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- jyujin [n=mdeining@vs166245.vserver.de] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- turbo24prg [n=turbo24p@mail.turbolent.com] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- acieroid [n=acieroid@ks23738.kimsufi.com] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- phadthai [i=mmondor@ginseng.pulsar-zone.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- pkhuong [n=pkhuong@modemcable238.100-176-173.mc.videotron.ca] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Soulmann [n=kae@Gatekeeper.vizrt.com] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- sykopomp [n=user@unaffiliated/sykopomp] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- cods [n=cods@tuxee.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- araujo [n=araujo@gentoo/developer/araujo] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- cmm- [n=cmm@bzq-79-182-64-42.red.bezeqint.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- ski [n=slj@c-9011e055.1149-1-64736c10.cust.bredbandsbolaget.se] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Elench [n=jarv@dsl-217-155-101-18.zen.co.uk] has quit [anthony.freenode.net irc.freenode.net] 10:45:30 htk_ [n=htk___@188.3.227.231] has joined #lisp 10:45:30 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 10:45:30 kmcorbett1 [n=Keith@c-76-119-215-57.hsd1.ma.comcast.net] has joined #lisp 10:45:30 besiria [n=user@pantou.lib.uom.gr] has joined #lisp 10:45:30 HG` [n=HG@xdslgi077.osnanet.de] has joined #lisp 10:45:30 jdz [n=jdz@85.254.211.133] has joined #lisp 10:45:30 alinp [n=alinp@86.122.9.2] has joined #lisp 10:45:30 mvilleneuve [n=mvillene@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has joined #lisp 10:45:30 mrSpec [n=Spec@unaffiliated/mrspec] has joined #lisp 10:45:30 Soulman [n=kvirc@154.80-202-254.nextgentel.com] has joined #lisp 10:45:30 dwh [n=dwh@ppp118-208-171-218.lns10.mel4.internode.on.net] has joined #lisp 10:45:30 AussieSteve [n=chatzill@220-253-191-245.NSW.netspace.net.au] has joined #lisp 10:45:30 alexsuraci [n=alex@pool-71-188-133-67.aubnin.fios.verizon.net] has joined #lisp 10:45:30 sellout [n=greg@c-24-128-50-176.hsd1.ma.comcast.net] has joined #lisp 10:45:30 housel [n=user@mccarthy.opendylan.org] has joined #lisp 10:45:30 Axioplase_ [n=Axioplas@fortigate.kb.ecei.tohoku.ac.jp] has joined #lisp 10:45:30 wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has joined #lisp 10:45:30 Elench [n=jarv@dsl-217-155-101-18.zen.co.uk] has joined #lisp 10:45:30 Soulmann [n=kae@Gatekeeper.vizrt.com] has joined #lisp 10:45:30 Adamant [n=Adamant@unaffiliated/adamant] has joined #lisp 10:45:30 pkhuong [n=pkhuong@modemcable238.100-176-173.mc.videotron.ca] has joined #lisp 10:45:30 cmm- [n=cmm@bzq-79-182-64-42.red.bezeqint.net] has joined #lisp 10:45:30 carrl [n=carl@61-64-164-206-adsl-tai.STATIC.so-net.net.tw] has joined #lisp 10:45:30 holycow [n=new@69.67.174.130] has joined #lisp 10:45:30 aja [n=aja@unaffiliated/aja] has joined #lisp 10:45:30 araujo [n=araujo@gentoo/developer/araujo] has joined #lisp 10:45:30 ski [n=slj@c-9011e055.1149-1-64736c10.cust.bredbandsbolaget.se] has joined #lisp 10:45:30 sykopomp [n=user@unaffiliated/sykopomp] has joined #lisp 10:45:30 phadthai [i=mmondor@ginseng.pulsar-zone.net] has joined #lisp 10:45:30 cods [n=cods@tuxee.net] has joined #lisp 10:45:30 Orest^bnc [n=Orest@hates-script-kiddies.ath.cx] has joined #lisp 10:45:30 setheus_ [n=setheus@pool-173-74-124-37.dllstx.fios.verizon.net] has joined #lisp 10:45:30 maxote [n=||||||||@84.79.67.254] has joined #lisp 10:45:30 krappie [n=brain@mx.skitzo.org] has joined #lisp 10:45:30 acieroid [n=acieroid@ks23738.kimsufi.com] has joined #lisp 10:45:30 jyujin [n=mdeining@vs166245.vserver.de] has joined #lisp 10:45:30 turbo24prg [n=turbo24p@mail.turbolent.com] has joined #lisp 10:45:30 jsnell [n=jsnell@vasara.proghammer.com] has joined #lisp 10:45:30 Xach [n=xach@207.5.178.18] has joined #lisp 10:45:36 -!- Xach [n=xach@207.5.178.18] has quit [Remote closed the connection] 10:45:39 spradnyesh [n=pradyus@nat/yahoo/x-hwdyspopcxdlsemh] has joined #lisp 10:45:43 -!- cmm- [n=cmm@bzq-79-182-64-42.red.bezeqint.net] has quit [Remote closed the connection] 10:45:44 Xach [n=xach@unnamed.xach.com] has joined #lisp 10:45:45 -!- wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 10:45:57 cmm [n=cmm@bzq-79-182-64-42.red.bezeqint.net] has joined #lisp 10:46:00 -!- aja [n=aja@unaffiliated/aja] has quit [Remote closed the connection] 10:46:13 -!- carrl [n=carl@61-64-164-206-adsl-tai.STATIC.so-net.net.tw] has quit [Remote closed the connection] 10:46:19 aja [n=aja@68.151.58.116] has joined #lisp 10:46:25 carrl [n=carl@61-64-164-206-adsl-tai.STATIC.so-net.net.tw] has joined #lisp 10:46:48 -!- sykopomp [n=user@unaffiliated/sykopomp] has quit [Connection reset by peer] 10:47:19 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 10:47:32 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 10:48:23 tagac [n=user@119.37.221.87.dynamic.jazztel.es] has joined #lisp 10:51:50 hmm. this was not good. when i write a bunch of input to a file, lisp do not escape " properly? 10:52:27 ie, (foo "blah blasdf asda sd perhaps you should try making your question less clear 10:53:36 heh 10:53:45 lujz [n=lujz@cpe-92-37-23-183.dynamic.amis.net] has joined #lisp 10:53:46 <_3b> or writing readably 10:54:03 ok: i have: (format file "~A" string) 10:54:43 now the variable string contains a string with quotes in it, like the tag above. 10:55:24 when i read back the file, it gets upset about: # has no external symbol with name "//POLSKIEMLYNY.PL/SQLZFEFMYKPWS.HTML" 10:55:32 <_3b> containing the whole "blah ...asdas" part? 10:55:48 hypno: if you want to use READ on it, you should use ~S 10:55:50 yes. a lot of spam bots fill in my forms with bullshit. 10:56:19 *Xach* makes a note to fill out hypno's form with #. 10:56:41 Xach: oh, thanks! i'll try that. 10:57:14 *_3b* enters #99999999999999999() into the form 10:57:32 can I access the second value of (values) without using (multiple-value-bind) ? 10:57:41 clhs values 10:57:41 http://www.lispworks.com/reference/HyperSpec/Body/a_values.htm 10:57:44 <_3b> clhs nth-value 10:57:44 http://www.lispworks.com/reference/HyperSpec/Body/m_nth_va.htm 10:57:44 myrkraverk: nth-value 10:57:47 minion: logs? 10:57:48 logs: #lisp logs are available at http://ccl.clozure.com/irc-logs/lisp/ (since 2008-09) and http://tunes.org/~nef/logs/lisp/ (since 2000) 10:57:51 thank you 10:58:50 datou [n=datou@124.205.137.161] has joined #lisp 10:59:55 -!- kmcorbett1 [n=Keith@c-76-119-215-57.hsd1.ma.comcast.net] has quit [Connection timed out] 11:01:32 _3b: How to compile, organize the codes and use CFFI to call C user-defined functions 11:01:55 have you read the CFFI manual? 11:02:16 I have already read it 11:02:18 wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has joined #lisp 11:04:06 <_3b> nvntung: not sure what you are asking, you could look at cl-opengl or cl-glfw for examples of large projects using cffi 11:04:46 lharc [n=shrek@88.131.67.194] has joined #lisp 11:05:10 are there CL ogre bindings? 11:05:23 <_3b> minion: tell OmniMancer about okra 11:05:24 OmniMancer: direct your attention towards okra: Okra provides CFFI bindings to the Ogre 3D graphics engine. http://www.cliki.net/okra 11:06:07 -!- AussieSteve [n=chatzill@220-253-191-245.NSW.netspace.net.au] has quit ["ChatZilla 0.9.85 [Firefox 3.5.2/20090729211433]"] 11:07:16 what implementations does cffi support again? 11:07:34 <_3b> cffi works on most implementations 11:08:06 XCL? 11:08:28 <_3b> ok, maybe not xcl 11:08:48 _3b: I have a C functions to load font. There are some functions that involked from Xlib.h, glx.h. If I write in Lisp, I use CFFI to call these functions, or I put my functions in header file .h and call it using CFFI. 11:08:54 do any implementations support threads on windows? 11:09:18 <_3b> OmniMancer: ccl, ecl, abcl, various commercial lisps 11:09:29 _3b: Which solution is better? 11:09:46 -!- HET2 [n=diman@81.106.143.36] has quit ["This computer has gone to sleep"] 11:09:48 xcl does too I think 11:10:00 ccl = clozure? 11:10:18 yes 11:10:37 hello,experts. I am newbie in lisp,and i use emacs as my code editor. I wender how can i format lisp code beautifully? 11:10:42 OmniMancer: xcl isn't usable yet, from what I've heard. 11:10:49 is it intended for sbcl to support threads on widows eventually? 11:10:53 minion: please tell datou about SLIME 11:10:54 datou: have a look at SLIME: SLIME is the Superior Lisp Interaction Mode for Emacs. http://www.cliki.net/SLIME 11:10:58 Eg, can i format the codes in the same line to multi-lines? I have tried Astyle and emacs's C-M-q, but it seen that they cann't do that 11:10:58 by isn't useable you mean? 11:11:16 datou: C-x h C-M-\ 11:11:21 OmniMancer: yes, they've been working on it for a while, I haven't tried to use it though. 11:11:47 <_3b> nvntung: not sure which would be better in that case 11:11:54 ok,i will try it 11:12:00 I have just built xcl today 11:12:01 OmniMancer: xcl is still under development. 11:12:05 Thank you! 11:12:08 it runs :D 11:12:18 so does GCL. 11:12:29 try it, if it works for your purposes, great. 11:12:41 gcl? oh come on 11:12:55 stassats: "it runs"... 11:13:02 do there exist any games written in lisp? 11:13:07 ... maxima 11:13:22 <_3b> OmniMancer: sbcl will probably support threads on windows eventually, but as far as i know nobody is actively working on it currently 11:13:24 (not always) 11:13:40 the dog-something game on playstation, and Abuse. 11:14:10 OmniMancer: Jak and Daxter was originally written in GOAL = Game-Oriented Assembly Lisp, and the GOAL compiler was written in CL. 11:14:47 um Abuse embeds a lisp interpreter it isn't written in lisp in the sense I mean 11:15:12 Apologies. 11:15:19 -!- aquagnu [n=aquagnu@85.118.228.172] has quit [Remote closed the connection] 11:15:47 I know about abuse, I wish I could find the interpreter source to read 11:16:04 OmniMancer, just the other month around I've seen someone release a commercial (3d) game written in Scheme for Win32 and Mac, though for unknown reasons I haven't seen a commercial game coded fully in CL(there are some that provide some lispy scripting languages, and some use it for tools). 11:16:11 <_3b> check the emacs menu under tools/games ... there you will find some games written in lisp :p 11:16:15 Why not just write a tiny lisp interpreter? 11:16:40 there's also NeuroArena 11:16:48 OmniMancer: i have seen the source, so it is available somewhere... 11:16:51 flash frontend, erlang/lisp backend 11:16:52 (sbcl) 11:17:24 from what I remember, erlang is only used to run the game instances which are totally lisp-based 11:17:24 there's also Vendetta-online 11:17:55 a1k0n used to come here befoe 11:17:58 *before 11:18:08 the source is available I mean unearthing the interpreter source in the game... 11:18:11 a bit part of vendetta was rewritten in erlang right? 11:18:34 yes 11:18:35 Geralt [n=Geralt@p5B32FB7C.dip.t-dialin.net] has joined #lisp 11:18:55 dto's game also 11:19:49 i seem to remember erlang is used for load-balancing and server-farm management, but the game code still being in lisp. 11:20:09 summary being that there is still lisp in there somewhere 11:20:29 -!- csmerlin [n=smileymy@99-31-211-124.lightspeed.sntcca.sbcglobal.net] has quit [] 11:20:34 it's always pleasant to hear that :) 11:20:53 not dead, just smells funny 11:24:14 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit [Remote closed the connection] 11:26:01 Geralt [n=Geralt@91.50.251.124] has joined #lisp 11:27:04 if there exists an Ogre 3D binding does there exist any project that uses it seriously? 11:27:43 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit [Client Quit] 11:27:56 Geralt [n=Geralt@p5B32FB7C.dip.t-dialin.net] has joined #lisp 11:27:59 <_3b> OmniMancer: i don't think the bindings are that complete yet, though i assume the intent is to use them when possible 11:27:59 OmniMancer: yes! 11:28:33 and this project is? 11:30:02 hi guys -- persistent portable mmap'd mop storage with gc, just released http://github.com/ilitirit/manardb/tree/master 11:35:35 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 11:35:48 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 11:36:28 ilitirit: sweet 11:36:36 -!- Cassio [i=Cassio@151.61.94.223] has quit [K-lined] 11:37:35 hi all 11:39:13 -!- spradnyesh [n=pradyus@nat/yahoo/x-hwdyspopcxdlsemh] has left #lisp 11:39:14 scottmaccal [n=scott@sentry3.jayschools.org] has joined #lisp 11:41:50 ilitirit: cool. And I like the sbcl comment (: 11:42:11 yeah there were some utterly awful bugs from lispworks and allegro 11:42:15 iso-8601 11:42:37 for example, using `the' in evaluated mode can cause allegro to wrongly generate errors 11:42:57 yes 11:43:02 they noticed this bug 13 years ago and have no intention of fixing it 11:43:08 -!- besiria [n=user@pantou.lib.uom.gr] has quit [Remote closed the connection] 11:43:22 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 11:43:28 nop 11:43:37 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 11:43:53 they totally fucked it up 11:44:47 ilitirit: I installed manardb with clbuild, compiles perfectly on sbcl 1.0.31 11:45:04 i'll send the clbuild lines on the ml so that it can be added 11:45:14 cheers :) 11:45:19 clbuld is cool 11:46:03 but not withot errors 11:47:59 clhs progn 11:47:59 http://www.lispworks.com/reference/HyperSpec/Body/s_progn.htm 11:48:02 I installed cl-ftgl, happpened require 'cl-ftgl 11:49:22 they got that right 11:49:47 There is no class named CL-FTGL::PATHNAME-STRING-TYPE 11:49:47 11:50:20 thrre is 11:50:37 or a function 11:52:09 "Your Kitten of Death awaits!" 11:52:10 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 11:52:24 lol 11:52:25 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 11:53:07 is there eanything for which asdf install works correctly on windows? 11:53:24 windows, works ? 11:53:37 nio 11:53:44 no 11:53:46 Some people have really strange word associations in a single sentence... 11:54:00 is it possible to make it use something other than GNU tar? 11:54:05 A window is made to be closed. 11:54:15 and a door? 11:54:18 Possibly with shades shut down for better effect. 11:54:22 Doors opened! 11:54:33 so write doors please 11:54:40 rotfl 11:54:59 and write it in CL 11:55:52 what makes asdf-install not work on windows? 11:56:45 I don't know, but it doean't 11:56:47 Notice that often asdf-install interrupts itself for lack of gpg keys. You can then tell it to continue, ignoring any lack of signature. 11:56:56 Newbies don't realize tht. 11:57:14 but it still fails miserably at the lack of tar 11:57:43 could you point me to the piece that invokes tar to extract the archive? 11:57:53 it doesn't czip 11:58:03 czip? 11:58:03 zipr 11:58:11 zipr? 11:58:13 zip 11:58:22 <_3b> nvntung: cl-ftgl loads OK here, possibly you have an old copy of cffi? 11:58:24 sorry 11:58:47 asdf-installable packages are tar.gz archives right? 11:59:06 It's always .tar.gz 11:59:31 OmniMancer: right 11:59:34 so which part of the asdf-install code is responsible for extracting that? 11:59:45 grep it 11:59:55 OmniMancer: tar 12:00:22 tar xzvf 12:00:31 how annoying would it be to make it use something else? 12:00:43 newbie question: I've got a buffer which is about 200k bytes long (made with (make-array ... :element-type 'unsigned-byte)), is there any variable I can bind to only partially view it? (show only the first n elements), or something to supress SLIME adding it to presentations (so I wouldn't have to clear the REPL's buffer afterwards)? 12:01:00 OmniMancer: it includes typing and removing some code 12:01:24 clhs *print-array* 12:01:25 http://www.lispworks.com/reference/HyperSpec/Body/v_pr_ar.htm 12:01:35 -!- ln51 [n=ln5@nordutug-gw.nordu.net] has left #lisp 12:01:38 clhs *print-length* 12:01:38 http://www.lispworks.com/reference/HyperSpec/Body/v_pr_lev.htm 12:01:48 thanks, i'll try that 12:01:50 also, :ELEMENT-TYPE UNSIGNED-BYTE is probably not what you want 12:01:58 is there a way to tell that you are on windows? 12:01:59 *print-length* 12:02:22 lichtblau, why not? i'm reading a buffer from a binary file, which i'll then process 12:02:29 sorry to late.. 12:02:33 OmniMancer: implementation dependant 12:03:00 reader specialisations? 12:03:11 i think, #+(or :windows :mswindows :win32) would do 12:03:29 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 12:03:46 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 12:03:48 ljames: unsigned-byte is any natural number. Perhaps you want (unsigned-byte 8). 12:03:50 sohail [n=sohail@CPE001839a305c5-CM000a73a081a5.cpe.net.cable.rogers.com] has joined #lisp 12:03:59 I6t would 12:04:07 oh, i see, thanks 12:04:12 unsigned-byte is most certainly upgraded to T 12:04:23 nop 12:04:51 younder is most certainly talks nonsense 12:05:07 sigh 12:05:22 silenius [n=jl@yian-ho03.nir.cronon.net] has joined #lisp 12:05:42 prxq [n=mommer@g226202012.adsl.alicedsl.de] has joined #lisp 12:05:48 a natual number is a ... not a t 12:06:06 younder: every type is a subtype of t, I think.... no? 12:06:15 yes 12:06:25 seems to work :D 12:06:31 every type 12:06:58 except nil 12:07:16 here you go again 12:07:16 nil is a type to which nothing belongs 12:07:46 nil belongs to null 12:07:49 nil is a subtype of everthing 12:08:02 stassats: bullshit 12:08:11 clhs nil 12:08:11 http://www.lispworks.com/reference/HyperSpec/Body/a_nil.htm 12:08:28 thanks 12:08:40 nil is a symbol? 12:08:47 yes 12:08:48 "The type nil is a subtype of every type." 12:09:02 true 12:09:02 the clhs has been quoted! 12:09:09 nil is an everything? 12:09:17 nil is nothing! 12:09:17 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 12:09:39 no, a subtype of every type 12:09:57 so it is an everything? that represents the lack of something of that type? 12:10:05 sigh 12:10:19 It is not everything 12:10:27 OmniMancer: nothing is "a nil". 12:10:31 -!- nvntung [n=user@147.210.246.189] has quit [Read error: 110 (Connection timed out)] 12:10:42 for no values of x is (typep x 'nil) true 12:10:51 nunb [n=user@217.133.104.225] has joined #lisp 12:11:03 not even when x itself is () 12:11:14 but (typep nil 'x) is true for anything? 12:11:16 OmniMancer: nothing can hold anything of type NIL, and anything can't be of type NIL 12:11:24 As T is the foundation of all type, nil si the closure 12:11:45 -!- freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has quit [Remote closed the connection] 12:11:55 this is philosophy according to CL. \o/ 12:11:55 the constant NIL is of type NULL 12:11:56 OmniMancer: you understand? 12:11:58 can I step through a defun with slime? 12:12:11 *Adlai* is happy because his uptime just passed one month :) 12:12:28 myrkraverk: with a debugger? 12:12:34 nil itself is a self evaluating symbol? 12:12:45 *joga* is unhappy because his uptime is too high and need for update is big 12:12:45 yes 12:12:45 Adlai: you haven't slept in a month? 12:12:54 stassats: I have, but my computer hasn't. 12:13:07 Adlai: then one month is too little 12:13:27 stassats: ok, ok, give a guy a break. I have only been using Linux since May 29th. 12:13:30 Yuuhi [i=benni@p5483D4AE.dip.t-dialin.net] has joined #lisp 12:13:49 i had uptime of sbcl more than two months 12:13:57 mee too 12:14:13 stassats: doing what? 12:14:23 hypno: hunchentoot 12:14:40 that's a good sign... it shows you're not using an old Lisp system that had to be shutdown rather than running the GC! 12:14:42 ah, ok. 12:14:55 I had probably 8 months or so of sbcl but then I restarted it about a month ago 12:15:02 stassats, yes, sort of like debug-on-entry in elisp 12:15:11 huncentoot has given me nothig but trouble 12:15:32 myrkraverk: you can put (break) and the step, if your lisp is support stepping under slime 12:15:48 and you'll probably need to set debug optimization to 2 12:15:51 I have sbcl 1.0.23, so I hope so 12:16:11 I love lisp, but not huchentot 12:16:12 should work 12:16:24 clhs break 12:16:25 http://www.lispworks.com/reference/HyperSpec/Body/f_break.htm 12:16:52 break works in sbcl 12:17:01 *OmniMancer* attempts to make sbcl's asdf-install be able to use commandline 7zip on windows 12:17:59 mattrepl [n=mattrepl@ip68-100-82-124.dc.dc.cox.net] has joined #lisp 12:18:47 myrkraverk: pressing h in the debugger will show how to step, etc. 12:18:54 thank you 12:20:50 I can't always win 12:21:26 Thatk's stassats 12:21:43 ThomasI [n=thomas@unaffiliated/thomasi] has joined #lisp 12:22:27 kami- [n=user@unaffiliated/kami-] has joined #lisp 12:22:32 hello 12:22:32 kami-, memo from attila_lendvai: i'm sick, my tonsils may need to be removed... resort to mails on the list, and levy will answer there. or catch him here... 12:23:07 lol Krystof 12:23:18 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 12:23:57 minion is a bot kami 12:24:02 -!- Davse_Bamse [n=davse@4306ds4-soeb.0.fullrate.dk] has quit ["leaving"] 12:24:19 so is younder 12:24:52 no I am a person 12:26:26 what does the namestring fucntion do? 12:26:28 kami-: What where you asking? 12:26:39 younder: thank you for the hint 12:26:42 OmniMancer: #"path" => "path" 12:26:47 #P"... 12:26:52 younder: I wasn't asking anything 12:27:13 namestring 12:27:28 k 12:28:01 Moe111 [n=Moe111@modemcable067.226-21-96.mc.videotron.ca] has joined #lisp 12:28:12 (namestring "the name") 12:28:26 try it 12:28:27 I've been searching in vain for a cl way to change directories. 12:28:48 it'll return "the name", how interesting! 12:29:01 lat_: you using slime 12:29:03 clhs *d-p-d* 12:29:03 *DEFAULT-PATHNAME-DEFAULTS*: http://www.lispworks.com/reference/HyperSpec/Body/v_defaul.htm 12:29:19 younder, yes. 12:29:20 lat_:if so ,cd 12:29:25 lat_: that's for you 12:30:04 most pathname operations are relative to *default-pathname-defaults* 12:30:24 still use ,cd 12:30:37 minion: memo for attila_lendvai: Hope you get (got ?) well soon! 12:30:37 Remembered. I'll tell attila_lendvai when he/she/it next speaks. 12:31:00 How can I make the slime repl window open in the same directory as the file I'm compiling using C-c C-k? 12:31:10 stassats: remember 12:31:19 what? 12:31:32 ,cd 12:31:57 lat_: slime inherits current directory from the buffer you start it from 12:32:34 C-X-b 12:32:38 younder, thanks. 12:33:26 stassats, interesting. Thanks 12:33:34 there's M-x slime-sync-package-and-default-directory 12:33:52 but it doesn't seem to work now for me, so wait 12:34:11 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [] 12:34:51 never worked for me 12:35:34 OmniMancer, I've attempted to make asdf-install work w/ 7z on win32 about a month ago, it mostly worked, but i ran into a possible SBCL bug related to sb-ext:run-program, i think the issue was that if you specified the :output parameter and :wait t, it would never terminate (same happened when used w/ gnu tar) 12:35:39 Slime behavior changed for me today when I updated slime. 12:35:52 that's possible 12:35:54 lat_: that is a rite of passage 12:36:04 seelenquell [n=seelenqu@pD9E45C6E.dip.t-dialin.net] has joined #lisp 12:36:21 Xach: lol 12:36:29 removing those 2 arguments would make it work, but you can't get output from it, which asdf-install needed (pathnames) 12:36:56 *OmniMancer* cries 12:37:13 Xach, so now I'm a real lisper newbie! 12:37:36 a bond forged in fire and inconvenience 12:38:08 datou_ [n=datou@124.205.137.161] has joined #lisp 12:39:44 Edward__ [n=Ed@AAubervilliers-154-1-52-63.w90-3.abo.wanadoo.fr] has joined #lisp 12:40:33 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #lisp 12:41:30 lat_: my solution to that is to never upgrade slime unless forced 12:41:54 (I hear that Snow Leopard has broken old versions of Carbon Emacs, so I may be forced once again :( ) 12:42:22 Xach: incopethence my ass 12:43:42 -!- dys` is now known as dys 12:43:48 -!- sohail [n=sohail@unaffiliated/sohail] has quit ["Leaving."] 12:44:03 sorry I misread 12:45:37 -!- lukjad007 [n=lukjadOO@unaffiliated/lukjad007] has quit [Read error: 60 (Operation timed out)] 12:45:46 younder, and stassats , thanks for the help! 12:46:18 -!- datou [n=datou@124.205.137.161] has quit [Read error: 110 (Connection timed out)] 12:46:27 -!- ManateeLazyCat [n=user@116.4.148.183] has quit [Success] 12:46:59 Good night everyone! It's late here and I'm headed to bed. 12:53:58 -!- alinp [n=alinp@86.122.9.2] has quit ["Leaving."] 12:54:22 LiamH [n=none@common-lisp.net] has joined #lisp 12:56:25 ok, i fixed slime-sync-package-and-default-directory 13:01:44 schoppenhauer [n=senjak@host137.natpool.mwn.de] has joined #lisp 13:01:53 Reav__ [n=Reaver@212.88.117.162] has joined #lisp 13:01:58 -!- schoppenhauer [n=senjak@unaffiliated/schoppenhauer] has left #lisp 13:02:17 out of curiousity, is anyone doing heavy calculations in lisp here? something like URANS/DES/LES or other turbulence models? 13:02:40 -!- coliv [n=Coliveir@69.248.128.195] has quit [Read error: 145 (Connection timed out)] 13:03:33 are these written in Fortran? 13:05:00 probably. the models are of course independant of language. StarCCM, a high-end fluid dynamics software package uses Java i think. 13:05:30 but the core math engine may very well be in something else like C, fortran or C++. 13:05:36 rpg [n=rpg@216.243.156.16.real-time.com] has joined #lisp 13:05:50 minion:logs 13:06:25 hypno: i guess that's where microoptimizations matter, so i wouldn't consider Lisp in the first place 13:06:50 minion deadp? 13:06:56 minion: logs? 13:06:56 logs: #lisp logs are available at http://ccl.clozure.com/irc-logs/lisp/ (since 2008-09) and http://tunes.org/~nef/logs/lisp/ (since 2000) 13:07:07 stassats: thanks! 13:08:12 stassats: well, they do. simulations can take months. it would still be cool to have solvers in lisp. :P 13:09:47 -!- Grey_Fox [n=chatzill@ppp118-208-187-77.lns10.mel4.internode.on.net] has quit ["ChatZilla 0.9.85 [Firefox-3.5 3.5.2/20090803142520]"] 13:10:12 lukjad007 [n=lukjadOO@unaffiliated/lukjad007] has joined #lisp 13:11:17 quek [n=read_eva@router1.gpy1.ms246.net] has joined #lisp 13:11:17 Thus the lisp-related problem lifecycle. Stage 1: we don't know how to solve it, let's use lisp. Stage 2: it's been solved, no point in using lisp. Stage 3: the solution is so well known we might as well do it in lisp. 13:12:17 4: i don't know any other languages, I'll solve it in lisp 13:12:36 Krystof: Someone will probably have nagged you about this, but the SBCL site says that 1.0.30 is the newest release. 13:14:47 sohail [n=sohail@CPE001839a305c5-CM000a73a081a5.cpe.net.cable.rogers.com] has joined #lisp 13:17:13 this sounds silly, but i have an ecase form for numbers (ecase old (40 13) (t old)) etc. 13:17:43 nunb: it's silly to use ecase and supply a T condition 13:18:03 coliv [n=Coliveir@12.15.114.194] has joined #lisp 13:18:51 dlowe: can happen under the water, e.g., in a macro expansion 13:18:55 that I'd like to convert to use strings instead, and to reverse the order, so that (a b) means "for old in b, yield a". other than going and manually converting each number to a string, is there a macro-ish way to do it? I've spent some time writing out macros.. 13:19:05 dlowe: yes, it should be just a regular case, I guess. 13:19:20 michaelw: sure, but explicitly it looks odd 13:19:42 nunb: pkhuong wrote a really nice one that's almost certainly overkill 13:19:55 nunb: your wish sounds odd 13:20:28 I've written a string-case macro myself. But it's usually nicer to do some other strategy 13:20:50 -!- sohail [n=sohail@unaffiliated/sohail] has quit ["Leaving."] 13:20:50 nunb pasted "trying to write a->b clauses." at http://paste.lisp.org/display/86555 13:20:56 nunb: yours in particular could be solved with an associative list 13:21:36 yes, I was trying to learn macros via a "scratch the itch" approach. I guess I could go back to reading PAIP or similar. 13:21:50 that's a good approach 13:25:12 dlowe: an earlier approach for the macro did return an alist, the version with cond was after. 13:25:33 nunb: no, no. use an alist and don't use a macro at all 13:26:11 You could use a nice trie :) 13:26:23 nunb: (rest (assoc "A" '(("A" (B C)) ("B" (X Y Z)) :test #'string=)) 13:26:40 Or arrange them in a binary search tree. 13:27:51 -!- cornucopic [n=r00t@202.3.77.134] has quit ["so long.."] 13:29:02 Grey_Fox [n=chatzill@ppp118-208-187-77.lns10.mel4.internode.on.net] has joined #lisp 13:29:44 I'll try those. But I actually wanted to use the macro-approach to be able to elide the double-quote chars :-) like I said, silly. 13:30:12 You can use symbols :) 13:31:39 but then, if you use symbols you could use CASE 13:31:54 And all for the price of one lousy intern ... 13:32:10 But you could use string-name to go the other way. 13:32:32 I guess you could do worse than find-string ... 13:33:42 The :key and :test arguments of the standard CL functions make them 100x more useful 13:34:05 -!- Moe111 [n=Moe111@modemcable067.226-21-96.mc.videotron.ca] has quit [] 13:34:08 dlowe: yes, absolutely. 13:34:25 dlowe: especially SUBST 13:34:47 tcr [n=tcr@host146.natpool.mwn.de] has joined #lisp 13:35:44 -!- yaroslav_h [n=yaroslav@93-120-143-62.dynamic.mts-nn.ru] has quit [Read error: 104 (Connection reset by peer)] 13:39:11 -!- rstandy` [n=rastandy@net-93-144-96-233.t2.dsl.vodafone.it] has quit [Read error: 54 (Connection reset by peer)] 13:40:57 sohail [n=sohail@CPE001839a305c5-CM000a73a081a5.cpe.net.cable.rogers.com] has joined #lisp 13:42:33 yaroslav_h [n=yaroslav@93-120-143-62.dynamic.mts-nn.ru] has joined #lisp 13:43:06 -!- sohail [n=sohail@unaffiliated/sohail] has quit [Client Quit] 13:44:46 c|mell [n=cmell@y192002.dynamic.ppp.asahi-net.or.jp] has joined #lisp 13:45:19 iwaki [n=hide@61.44.209.217] has joined #lisp 13:47:15 bye 13:47:17 -!- serichsen [n=harleqin@xdsl-81-173-158-29.netcologne.de] has quit ["leaving"] 13:49:32 -!- billstclair [n=billstcl@unaffiliated/billstclair] has quit [] 13:49:35 lichtblau: Are you available? 13:49:48 FSVO"available" 13:50:12 billstclair [n=billstcl@unaffiliated/billstclair] has joined #lisp 13:50:38 syamajala [n=syamajal@140.232.178.84] has joined #lisp 13:51:17 Did you see that I pushed updates to named-readtables? Did you update? 13:51:17 -!- sykopomp` is now known as sykopomp 13:58:01 gigamonkey [n=user@adsl-99-155-194-147.dsl.pltn13.sbcglobal.net] has joined #lisp 13:59:36 xan_ [n=xan@cs78225040.pp.htv.fi] has joined #lisp 14:00:05 froydnj [n=froydnj@gateway.codesourcery.com] has joined #lisp 14:01:38 Are there any rules on how the lambda list of a compiler macro have to relate to the lambda list of the corresponding function? 14:01:57 GreatPatham [n=dan@c-24-19-169-87.hsd1.wa.comcast.net] has joined #lisp 14:02:59 Quadrescence [n=quad@unaffiliated/quadrescence] has joined #lisp 14:05:38 -!- c|mell [n=cmell@y192002.dynamic.ppp.asahi-net.or.jp] has quit [Read error: 104 (Connection reset by peer)] 14:06:54 -!- weirdo is now known as kitten_of_death 14:07:24 kiuma [n=kiuma@host148-131-static.28-87-b.business.telecomitalia.it] has joined #lisp 14:08:51 -!- SandGorgon [n=OmNomNom@122.160.41.129] has quit [Read error: 110 (Connection timed out)] 14:10:04 -!- xan_ is now known as xan-afk 14:10:33 Is there any way to get the equivalent of load-truename from inside an init file in SBCL? 14:10:35 ltriant [n=ltriant@202.136.38.162] has joined #lisp 14:10:39 -!- kitten_of_death is now known as kitten-of-death 14:11:22 *Xach* draws a referer chart with lisp: http://xach.com/tmp/wigflip.html 14:11:52 jajcloz [n=jaj@pool-98-110-225-173.bstnma.fios.verizon.net] has joined #lisp 14:12:18 That's a lot of reddit love 14:12:55 -!- silenius [n=jl@yian-ho03.nir.cronon.net] has quit [Remote closed the connection] 14:13:10 yeah, i knew it was a lot, but i was surprised at how much it dwarfed everything else 14:13:32 (the first bit is from /r/pics and the second from /r/gaming) 14:13:46 silenius [n=jl@yian-ho03.nir.cronon.net] has joined #lisp 14:13:48 post to reddit, and the draw chart of referrers to it 14:14:16 *Xach* fixes something 14:14:51 So much for facebook and twitter taking over from google as masters of the intertubes. 14:15:32 it's because reddit started with CL :) 14:16:17 *Xach* used to get bulging stats from delicious, but they've changed the front page and it doesn't work like it used to 14:16:36 and that's only partly tongue-in-cheek. I think its CL origins attracted a lot of high-caliber people that wouldn't have ordinarily visited 14:16:51 ManateeLazyCat [n=user@116.4.148.183] has joined #lisp 14:17:26 i think i became acquainted with reddit because of #lisp 14:17:36 -!- holycow [n=new@69.67.174.130] has quit [Read error: 104 (Connection reset by peer)] 14:17:39 holycow [n=new@69.67.174.130] has joined #lisp 14:17:49 *kitten-of-death* doesn't get what "social networking" is about 14:18:00 that's because you're a weirdo. 14:18:06 Xach: heh, cool. i checked the html-code to see how you did the graphics and noted you do not end the or - there is no . is this allowed? 14:18:19 Xach: now you need to get Slashdotted so you can compare. 14:18:30 :-) 14:18:33 hypno: apparently 14:19:02 Xach: No, the black helicopters are just a bit delayed today. 14:19:03 -!- ASau [n=user@host10-231-msk.microtest.ru] has quit ["off"] 14:19:40 -!- xan [n=xan@cs78225040.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 14:20:38 Xach: weirdo as opposed to other users of obscure programming languages? ;-) 14:20:55 hypno: in html, yes. 14:21:12 rpg: kitten-of-death's usual nick is "weirdo" 14:21:32 gigamonkey pasted "Enclosing LET vs LOAD-TIME-VALUE" at http://paste.lisp.org/display/86559 14:22:29 gigamonkey: If the function is not defined at the toplevel, the arglist of the function won't be known to the compiler which can not do arglist checking for you on call sites consequently 14:22:30 pkhuong: roger that, thanks. 14:23:12 stassats: ah. showing my failure to master social networking... 14:24:19 gigamonkey: In SBCL, L-T-V can save a register since there's no need for an environment pointer 14:24:29 gigamonkey: Same for argument/return type checking etc. 14:24:39 gigamonkey: probably obvious, but I think it's worth pointing out that the most important difference is that a macro used in the function can never expand into the first form, but can expand into the second. 14:24:39 -!- datou_ [n=datou@124.205.137.161] has quit [Read error: 110 (Connection timed out)] 14:24:41 tcr: which function? 14:24:59 Ah, you mean the one wrapped in the LET. 14:25:18 pkhuong: can't sbcl infer that you don't modify your closure? 14:25:35 HET2 [n=diman@w283.engin.cf.ac.uk] has joined #lisp 14:25:59 So, it seems like there are a bunch of (maybe small) advantages to avoiding wrapping DEFUNs in LETs. Or am I misunderstanding? 14:26:28 Compile-time checking, that's a big advantage for me. But depends on the function. 14:26:36 stassats: it could. 14:26:47 gigamonkey: toplevel defuns are the common case after all. 14:27:07 pkhuong: yeah. non-toplevel defuns always give me the willies. 14:27:21 lichtblau: I'm not sure I understood your comment. 14:27:33 There's also the point that you can use the READ-ONLY flag for L-T-V, and that could involve extra smartness. 14:27:58 minion: chant 14:27:59 MORE SMARTNESS 14:28:02 -!- HET2 [n=diman@w283.engin.cf.ac.uk] has quit [Client Quit] 14:28:17 HET2 [n=diman@w283.engin.cf.ac.uk] has joined #lisp 14:28:37 lichtblau: I don't think you'll come to eclm, will you? 14:28:54 tcr: No, I'm in Florence that week. 14:29:00 (let (y) (lambda () y)) => #, (let (y) (list (lambda (x) (setf y x))(lambda () y))) => (# #) 14:29:07 how do you (sb-sys:sap-ref-32 (sb-sys:int-sap 1111) 0) on x86-64? 14:29:14 lichtblau: where ? 14:29:28 lichtblau: But HH is the florence of Gemernay, isn't it said to be? 14:31:40 The Reykjavik of the south? 14:32:08 lharc: the same way? 14:33:24 stassats: now, interestingly, (let (y) (labels ((foo ...)) #'foo)) will give you a toplevel function. 14:35:44 What's a toplevel function for you? A non-closure? 14:35:48 tcr: right. 14:36:00 simple-fun ftw 14:36:31 qidush [n=qidush@c83-252-27-42.bredband.comhem.se] has joined #lisp 14:36:33 stassats: Your example is degenerate, however, since NIL is an immediate for SBCL. Try it with y bound to (list nil). 14:36:53 pkhuong: 1111 is from disassembly: (sb-sys:sap-ref-32 (sb-sys:int-sap #x027FCE84) 0) leads to memory-fault-error 14:36:59 how can I declare types for this: (+ (car r) (cadr r)) ? SBCL is complaining that it can't decide on type 14:37:27 What do you mean? 14:37:56 (+ (the fixnum (car r)) (the fixnum (cadr r))) perhaps? 14:37:56 p_l: You can't declare the type of R, basically. You'll have to use the/truly-the on the results of car and cadr (or ideally not use lists at all) 14:38:31 fe[nl]ix: Where in Florence? Not certain. Somewhere close to the city center, I believe. 14:38:56 tcr: that works 14:39:14 lharc: well, then, there you go, that address isn't mapped (or is read-protected... perhaps) 14:39:14 pkhuong: http://paste.lisp.org/display/86561 14:39:40 p_l: (deftype list-of-length (n &optional type) (if (zerop n) `null `(cons ,type (list-of-length ,(1- n))))) 14:40:00 ikki [n=ikki@201.155.75.146] has joined #lisp 14:40:03 -!- vyazovoi [n=vyazovoi@horrible-unlim.vpn.mgn.ru] has quit [Remote closed the connection] 14:40:07 lharc: the address isn't printed completely. 14:40:08 p_l: (declare (type (list-of-length 2 fixnum) r)) 14:40:19 yaroslav_h_ [n=yaroslav@79-126-37-83.dynamic.mts-nn.ru] has joined #lisp 14:40:23 If R is really a list consisting of exactly 2 elements 14:40:59 pkhuong: ok 14:41:17 tcr: http://paste.lisp.org/display/86556#1 <--- it's for that. Just helping someone with their homework assignment (first paste was straight after waking up, so I wasn't thinking wisely...) 14:43:34 and after adding (optimize (speed 3)) to my function, I've got a ton of complaints about being unable to decide on type :) 14:43:43 Better show him the matrix way 14:44:17 ? 14:44:51 kejsaren_ [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 14:44:52 [[1,1], [1,0]]^n contains the n-th fibonacci number 14:45:05 (btw, the problem set required recursive solution) 14:45:55 Yes, you implement matrix exponentation by recursion. And by the formula that M^(2n) = (M^2)^n 14:46:38 It's probably all on wikipedia 14:47:06 and bignum multiplication with karatsuba and recursion ;) 14:48:14 carlocci [n=nes@93.37.203.67] has joined #lisp 14:48:48 -!- yaroslav_h [n=yaroslav@93-120-143-62.dynamic.mts-nn.ru] has quit [Nick collision from services.] 14:56:24 -!- girzel [n=user@123.121.235.168] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 14:58:14 kejsaren1 [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 14:59:56 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 15:01:09 -!- yaroslav_h_ is now known as yaroslav_h 15:04:02 -!- Reav__ [n=Reaver@212.88.117.162] has quit [Success] 15:07:45 nha [n=prefect@17-70.61-188.cust.bluewin.ch] has joined #lisp 15:08:26 -!- prxq [n=mommer@g226202012.adsl.alicedsl.de] has quit ["Leaving"] 15:09:44 Phaze [n=PhazeDK@0x5da32b16.cpe.ge-0-1-0-1104.soebnqu1.customer.tele.dk] has joined #lisp 15:10:14 _Trickster_ [i=Trickste@77.232.135.67] has joined #lisp 15:10:38 -!- simplechat [n=simple@unaffiliated/simplechat] has quit [Read error: 110 (Connection timed out)] 15:13:05 -!- xan-afk [n=xan@cs78225040.pp.htv.fi] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- Xach [n=xach@unnamed.xach.com] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- dfox [n=dfox@r11jn246.net.upc.cz] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- |Trickster| [i=Trickste@77.232.135.67] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- sepi [n=enigma@hcl-club.lu] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- jlf [n=user@pdpc/supporter/active/jlf] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- ve [n=a@94-193-95-252.zone7.bethere.co.uk] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- kei [n=gueorgui@gmt.su] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- Draggor [n=Draggor@216-80-120-145.alc-bsr1.chi-alc.il.static.cable.rcn.com] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- CrazyEddy [n=CrazyEdd@wrongplanet/CrazyEddy] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- Borbus [i=borbus@borbus.kicks-ass.net] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- nasloc__ [i=tim@kalug.ks.edu.tw] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- leo2007 [n=leo@smaug.linux.pwf.cam.ac.uk] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- clog [n=nef@bespin.org] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- deepfire [n=deepfire@80.92.100.69] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- jrockway [n=jrockway@stonepath.jrock.us] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- joast [n=rick@76.178.178.72] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- scode [n=scode@hyperion.scode.org] has quit [anthony.freenode.net irc.freenode.net] 15:13:20 -!- kejsaren_ [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 15:14:31 datou [n=datou@124.205.137.161] has joined #lisp 15:14:42 scode [n=scode@hyperion.scode.org] has joined #lisp 15:14:54 jrockway [n=jrockway@stonepath.jrock.us] has joined #lisp 15:14:55 xan-afk [n=xan@cs78225040.pp.htv.fi] has joined #lisp 15:15:05 jlf [n=user@pdpc/supporter/active/jlf] has joined #lisp 15:15:22 Borbus [i=borbus@borbus.kicks-ass.net] has joined #lisp 15:15:28 -!- jdz [n=jdz@85.254.211.133] has quit ["Somebody booted me"] 15:15:30 Xach [n=xach@unnamed.xach.com] has joined #lisp 15:15:30 dfox [n=dfox@r11jn246.net.upc.cz] has joined #lisp 15:15:30 |Trickster| [i=Trickste@77.232.135.67] has joined #lisp 15:15:30 sepi [n=enigma@hcl-club.lu] has joined #lisp 15:15:30 ve [n=a@94-193-95-252.zone7.bethere.co.uk] has joined #lisp 15:15:30 kei [n=gueorgui@gmt.su] has joined #lisp 15:15:30 Draggor [n=Draggor@216-80-120-145.alc-bsr1.chi-alc.il.static.cable.rcn.com] has joined #lisp 15:15:30 leo2007 [n=leo@smaug.linux.pwf.cam.ac.uk] has joined #lisp 15:15:30 clog [n=nef@bespin.org] has joined #lisp 15:15:30 deepfire [n=deepfire@80.92.100.69] has joined #lisp 15:15:30 nasloc__ [i=tim@kalug.ks.edu.tw] has joined #lisp 15:15:30 joast [n=rick@76.178.178.72] has joined #lisp 15:15:44 -!- sepi [n=enigma@hcl-club.lu] has quit [Remote closed the connection] 15:16:15 -!- Draggor [n=Draggor@216-80-120-145.alc-bsr1.chi-alc.il.static.cable.rcn.com] has quit [Connection reset by peer] 15:16:31 -!- kei [n=gueorgui@gmt.su] has quit [Connection reset by peer] 15:16:45 -!- Xach [n=xach@unnamed.xach.com] has quit [Read error: 104 (Connection reset by peer)] 15:16:56 -!- nasloc__ [i=tim@kalug.ks.edu.tw] has quit [Remote closed the connection] 15:18:19 timchen119 [i=tim@163.16.211.21] has joined #lisp 15:18:48 Anyone here? 15:19:09 yes hello 15:19:14 nope 15:19:35 this irc server node is the best. 15:19:51 Hmmm. Dunno what's wrong for Xach. 15:20:16 Xach [n=xach@unnamed.xach.com] has joined #lisp 15:20:55 -!- carrl [n=carl@61-64-164-206-adsl-tai.STATIC.so-net.net.tw] has quit [Remote closed the connection] 15:20:57 Yo Xach. 15:21:03 hello 15:21:04 CrazyEddy [n=CrazyEdd@wrongplanet/CrazyEddy] has joined #lisp 15:21:12 *Xach* is having freenode trouble today 15:21:26 Yeah. Saw your tweet. 15:21:46 sepi [n=enigma@hcl-club.lu] has joined #lisp 15:22:08 -!- mvilleneuve [n=mvillene@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has quit ["Lost terminal"] 15:22:26 -!- legumbre_ is now known as legumbre 15:24:30 *Xach* feels hip 15:25:09 -!- ManateeLazyCat [n=user@116.4.148.183] has quit [Remote closed the connection] 15:25:48 -!- GreatPatham [n=dan@c-24-19-169-87.hsd1.wa.comcast.net] has quit [] 15:26:41 ManateeLazyCat [n=user@116.4.148.183] has joined #lisp 15:27:49 *splittist* has visions of Xach with walking frame yelling at kids to get off his lawn... 15:28:06 -!- dmiles [n=dmiles@c-76-104-220-73.hsd1.wa.comcast.net] has quit [Read error: 113 (No route to host)] 15:28:56 Okay, which of you l33t hackers has got SBCL up and running on a Kindle? Spit spot! 15:29:16 carrl [n=carl@61-64-164-206-adsl-tai.STATIC.so-net.net.tw] has joined #lisp 15:29:18 *gigamonkey* has been subject to LD50 of Mary Poppins lately due to living with a three year-old. 15:29:42 http://hackaday.com/2009/09/03/ubuntu-9-04-on-kindle-2/ 15:29:42 gigamonkey: three minutes? 15:29:50 S11001001 [n=sirian@74-137-151-39.dhcp.insightbb.com] has joined #lisp 15:29:58 lichtblau, are you there? 15:30:12 -!- |Trickster| [i=Trickste@77.232.135.67] has quit [Connection timed out] 15:30:14 Elench: eh? 15:30:33 LD50 of Mary Poppins, i'd guess at about three minutes 15:30:55 Ah. 15:31:35 LD50? 15:31:56 Leathal dose, 50%. 15:32:06 Leathal dose for 50% of subjects 15:32:07 lichtblau, I was looking at rectangular tile draw-design method, and the idea is that to use cairo-driven tiling we need to have a pattern for the design 15:32:10 I.e. the amount that would kill you 50% of the time. 15:32:32 Or would kill 50% of people, depending how you like to think about your probabilities. 15:32:39 gigamonkey: what's the LD50 of 3yo? 15:32:39 ahaha 15:32:45 Normally expressed in (mass of toxin)/(mass of subject) 15:32:52 gigamonkey: you're living dangerously! 15:33:30 Nah, three-year-olds are great. Their taste in films and music tends to be somewhat limited. 15:33:47 they don't like David Lynch? 15:33:55 gigamonkey: just get him hooked on quality cinema such as Three Days of the Condor or The Sting 15:34:03 Mine probably would. We are sheltering her a bit. 15:34:32 s/him/her/ :) 15:34:33 gigamonkey: My kid's experience of Ringo Starr (Thomas the Tank Engine) pretty different from mine, but both enjoyable. 15:34:35 Not sure Three Days is going to do much for getting them to a dentist 15:35:07 show him Eraserhead 15:35:09 gigamonkey: Think of Bert as the doc of Diagnosis Murder, it pass more easily ;-) 15:35:22 true, although Tom Cruise in Mission Impossible II does buckle his seatbelt when he gets in a car 15:35:26 matimago: turns out beer helps. 15:35:40 Bad example to the toddlers! 15:35:53 -!- ManateeLazyCat [n=user@116.4.148.183] has quit [Success] 15:35:54 Davidbrcz [n=david@212-198-78-230.rev.numericable.fr] has joined #lisp 15:36:40 Actually I read something about how modeling responsible drinking is good for your kids. It's only the irresponsible binging you need to hide. 15:37:28 Draggor [n=Draggor@216-80-120-145.alc-bsr1.chi-alc.il.static.cable.rcn.com] has joined #lisp 15:37:28 this is ridiculous. I'm timing some function and I want to see how many times it calls some other function, but my samples aren't significant enough for sb-sprof. I put a print statement inside the inner function, and now the time function (this is on CCL) reports that it's allocating several hundred more bytes. 15:38:29 if you want function counts, use sb-profile 15:38:46 Adlai: sprof won't give you call counts. 15:38:57 That's not what a statistical profiler does. 15:39:11 kei [n=gueorgui@gmt.su] has joined #lisp 15:39:19 not sure if anybody read what I wrote, but I'm NOT using sb-sprof, I just stuck a print statement in the internal function. 15:39:42 we are telling you the right tool to use 15:39:47 it's just weird that a print statement makes the function allocates so much more. 15:39:52 but whatever 15:39:52 dmiles [n=dmiles@c-76-104-220-73.hsd1.wa.comcast.net] has joined #lisp 15:39:59 ryepup [n=ryepup@one.firewall.gnv.acceleration.net] has joined #lisp 15:40:29 Adlai: What's in the print statement? 15:40:39 sellout: (prin1 'X) 15:41:01 Adlai: if it involves the pretty-printer, consing is no wonder 15:41:09 ahhhh that is probably the case. 15:41:11 it may have to allocate a special pretty-printing stream etc. 15:41:26 -!- rpg [n=rpg@216.243.156.16.real-time.com] has quit [] 15:41:30 yep, it's pretty printing it. heh. 15:41:54 Use WRITE, and TERPRI 15:42:12 -!- prg_ [n=prg@ns.alusht.net] has quit ["leaving"] 15:42:14 -!- yango [n=yango@unaffiliated/yango] has quit [Remote closed the connection] 15:42:16 FORMAT may interpret the format-string at run-time 15:42:33 yango [n=yango@unaffiliated/yango] has joined #lisp 15:42:55 hmmmm, it actually still allocates the extra memory. 15:43:12 maybe it's got to do with printing to a slime buffer? 15:43:49 Yes. 15:44:07 Better is to push to the stuff to a global variable, print that outside the timing 15:44:16 -!- redblue [i=star@ppp047.108-253-207.mtl.mt.videotron.ca] has quit [Connection timed out] 15:44:41 hmm that might work. I could increment a counter. (ie, poor man's sb-profile) 15:44:45 timing in slime isn't precise, (time (sleep 5)) => 383,808 bytes consed 15:44:58 hahahah 15:47:23 Irishmanluke [n=luke@c-76-99-6-145.hsd1.pa.comcast.net] has joined #lisp 15:47:59 letexpx [n=letexpx@abo-223-141-68.bdx.modulonet.fr] has joined #lisp 15:51:00 huh, sb-sprof has a accurate call-counting profiler too. wtf was I thinking when I wrote that? 15:52:28 -!- blitz_ [n=blitz@erwin.inf.tu-dresden.de] has quit [Remote closed the connection] 15:53:16 if one accurate call-counting profile is good, two is better 15:53:23 profiler, rather 15:54:54 TMTOWTPI 15:57:26 blitz_ [n=blitz@erwin.inf.tu-dresden.de] has joined #lisp 15:57:41 ?? 15:57:54 there's more than one way to profile it. 16:00:17 oh 16:00:58 beach [n=user@ABordeaux-158-1-21-148.w90-55.abo.wanadoo.fr] has joined #lisp 16:01:07 Good evening everyone! 16:02:45 -!- letexpx [n=letexpx@abo-223-141-68.bdx.modulonet.fr] has quit [Client Quit] 16:04:31 hello beach 16:05:21 yaroslav_h_ [n=yaroslav@79-126-37-83.dynamic.mts-nn.ru] has joined #lisp 16:07:02 -!- thom_ [n=thom@pool-173-51-164-80.lsanca.fios.verizon.net] has quit ["This computer has gone to sleep"] 16:07:10 -!- sellout [n=greg@c-24-128-50-176.hsd1.ma.comcast.net] has quit [] 16:12:35 roygbiv [n=blank@pdpc/supporter/active/roygbiv] has joined #lisp 16:14:36 rpg [n=rpg@75-146-46-193-Minnesota.hfc.comcastbusiness.net] has joined #lisp 16:15:53 -!- jajcloz [n=jaj@pool-98-110-225-173.bstnma.fios.verizon.net] has quit [] 16:17:54 -!- kmcorbett [n=Keith@c-76-119-215-57.hsd1.ma.comcast.net] has left #lisp 16:19:25 is there some multiple-value I can use in a (let) or (let*) ? 16:20:01 -!- stassats [n=stassats@wikipedia/stassats] has quit [Remote closed the connection] 16:20:02 multiple-value-bind ? 16:20:05 stassats [n=stassats@wikipedia/stassats] has joined #lisp 16:20:19 will try 16:20:29 http://www.gigamonkeys.com/book/collections.html 16:20:37 -!- yaroslav_h [n=yaroslav@79-126-37-83.dynamic.mts-nn.ru] has quit [Read error: 113 (No route to host)] 16:20:53 grouzen [n=grouzen@91.214.124.2] has joined #lisp 16:23:34 (let* ((multiple-value-bind (q r) (floor 1 2))) ;does not work, of course 16:23:56 mvb is more instead of let 16:24:12 let me look at than again 16:24:17 myrkraverk: try (multiple-value-bind (q r) (floor 1 2)) 16:24:29 why are most common lisp compilers written in common lisp? 16:24:47 myrkraverk, did you read that link? it gave an example of mvb 16:25:00 OmniMancer: because most commin lisp compilers are written by people who'd rather hack common lisp than other languages. 16:25:06 dcrawford, yes, and sorry, I missed that 16:25:26 -!- yaroslav_h_ is now known as yaroslav_h 16:25:27 is it inherently easier to write them in common lisp? 16:25:35 OmniMancer, yes 16:25:48 omni: Why are most C compilers written in C? 16:25:53 -!- stassats [n=stassats@wikipedia/stassats] has quit [Read error: 60 (Operation timed out)] 16:26:04 jleija [n=jleija@user-24-214-122-46.knology.net] has joined #lisp 16:26:05 OmniMancer, see, for example, L.i.S.P book 16:26:13 OmniMancer: why are most Perl implementations written in Perl? oh wait... 16:26:14 Zhivago, because most c compiler writers don't know lisp :P 16:26:18 or the french 2nd edition 16:26:19 is there a C compiler written in Forth ? 16:26:41 there's now a perl6 written in cl 16:27:06 dcrawford: really? heh I'm surprised lispers would take the time to parse perl. 16:27:19 ewwww perl 16:27:40 Most compilers are self-hosting. 16:29:23 Adlai, http://perl.net.au/wiki/Elf (and also http://www.nntp.perl.org/group/perl.perl6.announce/2009/08/msg603.html ) 16:29:50 dcrawford: ok, ok, I pulled that statement out of my ass as a joke. I was wrong :) 16:29:53 are Elf and MiniPerl6 respectively 16:30:37 well, no one uses perl6 anyway so it's all good 16:31:50 -!- merus [n=merus@pal-175-116.itap.purdue.edu] has quit ["Leaving"] 16:31:57 port perl regex engine to CL? 16:32:14 -!- ltriant [n=ltriant@202.136.38.162] has quit ["trip!¡lite v1.03b"] 16:33:10 OmniMancer: CL-PPCRE beats the perl regex engine on some benchmarks. 16:33:15 minion: cl-ppcre, please. 16:33:17 cl-ppcre: CL-PPCRE is a portable, Perl-compatible regular expression library by Edi Weitz. http://www.cliki.net/cl-ppcre 16:33:37 *Adlai* has a cliki function in his browser but he just loves minion that much. 16:34:10 hmmm the benchmarks aren't on that page I guess. Anybody remember where they are? 16:34:23 yea but the perl regex engine does other things? 16:35:20 simplechat [n=simple@unaffiliated/simplechat] has joined #lisp 16:36:00 -!- kitten-of-death [n=sthalik@c142-5.icpnet.pl] has quit [Read error: 60 (Operation timed out)] 16:36:04 OmniMancer: not much; the point of CL-PPCRE is to be perl-compatible. 16:36:47 -!- splittist [n=dmurray@217-115.2-85.cust.bluewin.ch] has quit ["rcirc on GNU Emacs 23.1.1"] 16:37:16 -!- kiuma [n=kiuma@host148-131-static.28-87-b.business.telecomitalia.it] has quit ["Bye bye ppl"] 16:37:35 completely perl compatible? 16:37:50 down to all the optimisations that the perl regex compiler does? 16:39:15 OmniMancer: no, IIRC he fixed some stuff broken in the perl re-enging for cl-ppcre 16:39:53 OmniMancer: You're not really making sense here. The optimisations aren't part of the interface, and you were just told that its performance was competitive with that of PERL's RE engine. 16:41:33 -!- Grey_Fox [n=chatzill@ppp118-208-187-77.lns10.mel4.internode.on.net] has quit ["ChatZilla 0.9.85 [Firefox-3.5 3.5.2/20090803142520]"] 16:42:39 clhs defsetf 16:42:40 http://www.lispworks.com/reference/HyperSpec/Body/m_defset.htm 16:43:47 -!- silenius [n=jl@yian-ho03.nir.cronon.net] has quit [] 16:44:50 mikezor_ [n=mikael@c-4ae470d5.04-404-7570701.cust.bredbandsbolaget.se] has joined #lisp 16:46:10 myrkraverk: There's BIND which is a general binding tool (spirited in the same vain as LOOP is a general looping tool) 16:46:34 vane 16:46:34 tcr, thank you -- I have my code mostly under control though ;) 16:46:46 Grey_Fox [n=chatzill@ppp118-208-187-77.lns10.mel4.internode.on.net] has joined #lisp 16:46:50 myrkraverk: (It's not part of the language specification, but available from c-l.net) 16:47:01 tcr, ah ;) 16:47:35 dcrawford: Right, thanks. 16:48:45 -!- nha [n=prefect@17-70.61-188.cust.bluewin.ch] has quit [Remote closed the connection] 16:50:07 phf [n=phf@host.icnfull.com] has joined #lisp 16:50:34 -!- HET2 [n=diman@w283.engin.cf.ac.uk] has quit ["This computer has gone to sleep"] 16:53:04 -!- matley [n=matley@matley.imati.cnr.it] has quit [Read error: 60 (Operation timed out)] 16:53:21 dcrawford: vein actually 16:54:12 -!- nunb [n=user@217.133.104.225] has quit [Read error: 145 (Connection timed out)] 16:54:38 isn't setf pretty general-purpose and extensible? 16:54:45 (although not easy) 16:55:59 -!- scottmaccal [n=scott@sentry3.jayschools.org] has quit ["Leaving."] 16:56:04 sellout [n=greg@c-24-128-50-176.hsd1.ma.comcast.net] has joined #lisp 16:56:20 mrsolo [n=mrsolo@209.131.62.113] has joined #lisp 16:57:03 -!- Davidbrcz [n=david@212-198-78-230.rev.numericable.fr] has quit [Read error: 110 (Connection timed out)] 16:57:18 -!- kejsaren1 [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 16:57:30 scottmaccal [n=scott@sentry3.jayschools.org] has joined #lisp 16:57:36 -!- mikezor [n=mikael@c-4ae470d5.04-404-7570701.cust.bredbandsbolaget.se] has quit [Read error: 110 (Connection timed out)] 16:57:40 myrkraverk annotated #86527 "holding on to the list no longer neccesory" at http://paste.lisp.org/display/86527#1 16:57:47 setf is the best thing ever :D 16:58:16 what other language lets you make customised lvalues? 16:58:32 C macros :D 16:58:48 um.... 16:58:51 OmniMancer: C++, haskell (since assignment goes through a monad) 16:59:20 English? 16:59:24 C++ you can't fully customise them since they have to be built out of existing constructs 16:59:25 -!- simplechat [n=simple@unaffiliated/simplechat] has quit [Remote closed the connection] 16:59:45 OmniMancer: so do setf expanders 16:59:59 but setf better... 17:00:11 oh, I'm not disputing that 17:00:24 I'm just being a pedantic jerk about it 17:00:26 is, in general, the style of my paste above, of expecting a list of list, to be able to modify the inner one, bad? 17:02:13 myrkraverk: you want that to be a macro. 17:03:04 ah, I'm not very good at macros 17:03:26 myrkraverk: Sounds like you want (pop (nth n some-place)) 17:04:21 myrkraverk: (defmacro pop-nth (n place) `(pop (nth ,n ,place))) 17:04:37 thank you; will try 17:04:50 it's a trivial change if you want to return, as a second value, the place itself. 17:04:55 s/change/addition/ 17:04:56 No it's not 17:05:21 tcr: since it's not actually a place but a value, yes, it would be ;) 17:05:25 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit ["+++ killed by SIGSEGV +++"] 17:06:10 hmm, true, you have to beware of multiple evaluation (as usual...) 17:06:48 myrkraverk: it's generally bad style to rely on mutation, and/or to destructively modify list structure. 17:07:16 drewc, the alternative would be to continously setting my list of symbols 17:07:32 -!- Symmetry- [n=thezog@host-static-92-114-165-252.moldtelecom.md] has quit [Read error: 104 (Connection reset by peer)] 17:07:32 I'll show you the algo, as written for my delete-nth-and-return-it 17:07:40 [OT] is it just me, or is there a bit of Greenspunning in the kernel? Just looking through "Understanding The Linux Kernel", I notice that many of the data structures are linked-list type stuff... 17:07:53 maybe not a majority, but enough that I've noticed it. 17:07:59 Adlai: how is using a basic data type in any way related to greenspun's rule? 17:08:09 Adlai: implementing a linked list is hardly greenspunning 17:08:16 Symmetry- [n=thezog@host-static-92-114-165-252.moldtelecom.md] has joined #lisp 17:08:44 ok, true. It was just funny to see, because it reminded me of real examples of that. 17:08:49 -!- kami- [n=user@unaffiliated/kami-] has quit [Read error: 110 (Connection timed out)] 17:09:23 myrkraverk pasted "k-th permutation of length n" at http://paste.lisp.org/display/86569 17:09:53 Adlai: Are they really single-linked? 17:10:27 tcr: one of the examples was, and I think there were a few double linked. 17:11:20 myrkraverk: DEFUN is _not_ used to create local functions. 17:11:30 drewc, sorry 17:11:49 sepult [n=user@xdsl-87-78-121-47.netcologne.de] has joined #lisp 17:12:04 myrkraverk: use LABELS 17:12:16 clhs labels 17:12:16 http://www.lispworks.com/reference/HyperSpec/Body/s_flet_.htm 17:12:19 myrkraverk: defun expands into code which modifies a global function definition. 17:12:25 ah 17:12:31 Davse_Bamse [n=davse@4306ds4-soeb.0.fullrate.dk] has joined #lisp 17:14:55 -!- slyrus [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has quit [Remote closed the connection] 17:20:53 myrkraverk annotated #86569 "Value 2 is not of type LIST" at http://paste.lisp.org/display/86569#1 17:21:25 that version (Yes, later with the defun) is giving me an error I'm not quite getting where is; sbcl + slime 17:23:03 is defun legal when not at the top level? 17:23:25 OmniMancer: yes, of course. 17:24:08 rread_ [n=rread@c-98-234-219-222.hsd1.ca.comcast.net] has joined #lisp 17:25:52 saikat_ [n=saikat@c-98-210-13-214.hsd1.ca.comcast.net] has joined #lisp 17:27:27 I now suspect the macro pop-nth -- can't seem to get it to work ;/ 17:28:38 perhaps becouse (nth) doesn't return a "place" ? 17:28:57 thom_ [n=thom@pool-173-51-164-80.lsanca.fios.verizon.net] has joined #lisp 17:30:06 -!- rread [n=rread@nat/sun/x-mrasyobqwgtlpxsn] has quit [Read error: 145 (Connection timed out)] 17:30:06 -!- rread_ is now known as rread 17:31:00 cmm- [n=cmm@bzq-82-81-48-122.red.bezeqint.net] has joined #lisp 17:31:28 no it appears to have a setf expander... 17:31:47 is nth's indexing 0 or 1 based? 17:32:40 how about looking it up? 17:34:07 0 basede 17:34:11 -!- carrl [n=carl@61-64-164-206-adsl-tai.STATIC.so-net.net.tw] has quit [Remote closed the connection] 17:34:22 carrl [n=carl@61-64-164-206-adsl-tai.STATIC.so-net.net.tw] has joined #lisp 17:34:40 I think his code has incorrect assumptions... 17:35:48 lhz [n=shrekz@c-b9aa72d5.021-158-73746f34.cust.bredbandsbolaget.se] has joined #lisp 17:36:29 sbahra [n=sbahra@c-68-34-110-14.hsd1.dc.comcast.net] has joined #lisp 17:36:53 mine or Adlais? 17:36:57 what is pop-nth supposed to do? 17:37:14 same as delete-nth-and-return-it 17:37:35 what your macro does 17:37:37 http://paste.lisp.org/display/86527 17:37:57 is pop the nth list in the list... 17:39:01 -!- quek [n=read_eva@router1.gpy1.ms246.net] has left #lisp 17:39:06 slash_ [n=Unknown@p4FF0BDA2.dip.t-dialin.net] has joined #lisp 17:39:18 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit [Connection timed out] 17:39:33 (defmacro pop-nth (n place) `(pop (nth ,n ,place))) that: will return the thing poped from the nth list in the list place 17:39:53 yes 17:40:42 dies because it is being given a list of numbers not a list of lists... 17:40:52 I want (setf s '(a b c)) (pop-nth 1 s) to return b, and s is now '(a c) 17:41:02 Geralt [n=Geralt@p5B32C73F.dip.t-dialin.net] has joined #lisp 17:41:07 ah 17:43:16 you want something that uses nth then remove? 17:44:28 sounds like a job for nthcdr! 17:44:30 -!- cmm [n=cmm@bzq-79-182-64-42.red.bezeqint.net] has quit [Read error: 110 (Connection timed out)] 17:44:43 -!- tagac [n=user@119.37.221.87.dynamic.jazztel.es] has quit [Read error: 104 (Connection reset by peer)] 17:45:02 why not use let to get the nth then remove then return? 17:46:02 tagac [n=user@200.36.221.87.dynamic.jazztel.es] has joined #lisp 17:46:23 -!- Grey_Fox [n=chatzill@ppp118-208-187-77.lns10.mel4.internode.on.net] has quit ["ChatZilla 0.9.85 [Firefox-3.5 3.5.2/20090803142520]"] 17:46:31 ah yes 17:46:36 -!- ignas [n=ignas@78.60.73.85] has quit [Read error: 145 (Connection timed out)] 17:46:38 yes, pjb used nthcdr in his version, at http://paste.lisp.org/display/86527 and Adlai gave me that macro 17:46:54 Adlai is only a taupe belt 17:47:12 -!- dto [n=user@pool-98-118-1-212.bstnma.fios.verizon.net] has quit [Remote closed the connection] 17:47:15 just saw armpit scheme, a r5rs scheme on the metal for ARM .. including the omap3530 (cortex-a8) sweet 17:48:06 that keeps in a good naming tradition 17:48:11 *Xach* hopes someone makes Phlegm Lisp 17:48:22 what would that be? 17:48:29 Gloopy 17:48:37 problem with pjb's remove-nth-and-return-it, as that when I apply it to the 0th, the "list" I refer to, with the symbol, is not modified 17:48:45 dstatyvka [i=ejabberd@pepelaz.jabber.od.ua] has joined #lisp 17:49:17 -!- envi^home [n=envi@220.121.234.156] has quit [Read error: 104 (Connection reset by peer)] 17:49:38 that is (setf s '(a b c)) (remove-nth-and-return-it 0 s) => a, but s is still '(a b c) 17:50:07 hmm 17:50:10 Bah, why doesn't OR return multiple-values on short-circuit? 17:50:10 keeping track of the list as well, is making the code hard to read 17:50:17 also it is illegal to setf an nthcar....? 17:50:56 postamar [n=postamar@x-132-204-252-3.xtpr.umontreal.ca] has joined #lisp 17:52:07 Adlai` [n=adlai@unaffiliated/adlai] has joined #lisp 17:52:21 nthcdr I mean 17:52:28 -!- gigamonkey [n=user@adsl-99-155-194-147.dsl.pltn13.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 17:53:47 OmniMancer: the standard doesn't specify it as an accessor 17:54:02 OmniMancer: this came up recently on comp.lang.lisp but i don't remember much of the discussion 17:54:11 besides it can make things go wrong 17:54:53 sepult` [n=user@xdsl-87-78-31-246.netcologne.de] has joined #lisp 17:55:18 -!- yaroslav_h [n=yaroslav@79-126-37-83.dynamic.mts-nn.ru] has quit [Read error: 113 (No route to host)] 17:55:26 -!- sepult [n=user@xdsl-87-78-121-47.netcologne.de] has quit [Read error: 60 (Operation timed out)] 17:56:24 is there a method other than http://paste.lisp.org/+1URJ/1 - that changes the symbol list, even when given 0 ? 17:56:26 vyazovoi [n=vyazovoi@94.51.34.65] has joined #lisp 17:58:23 -!- sepult` is now known as sepult 18:00:00 that expects a list of lists? 18:00:28 Coliveira [n=Coliveir@173.12.30.65] has joined #lisp 18:01:19 myrkraverk: that can never work as a function 18:02:02 OmniMancer, yes, otherwise the 0th element isn't removed 18:02:07 why? 18:02:17 don't ask me, that's what the code does 18:02:33 in the definition above, you can try it 18:02:43 meant the why for above answer 18:03:01 as in why no work as function 18:03:23 oh, sorry 18:03:50 is because it can't modify its arguments? 18:04:07 possibly 18:04:24 a function can't modify the lexical bindings in its calling environment 18:04:42 because of call by value? 18:05:11 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Remote closed the connection] 18:05:16 ssssort of. 18:05:29 myrkraverk annotated #86569 "self contained permute" at http://paste.lisp.org/display/86569#2 18:06:03 if a function is given a list and modifies it this doesn't affect other things the list was bound to before? 18:06:40 OmniMancer: you can alter the list structure, but not the binding 18:07:03 or you can't remove the first element due to this? 18:07:10 OmniMancer: so if you pass a cons to a function, you can mess with what it points to. but you can't change the binding to nil, for example. 18:07:20 right. 18:07:21 yea 18:08:19 so rewrite as macro? 18:08:42 -!- Symmetry- [n=thezog@host-static-92-114-165-252.moldtelecom.md] has quit [Read error: 104 (Connection reset by peer)] 18:08:48 if you want to alter the binding, like POP does, it has to be a macro. 18:09:23 Symmetry- [n=thezog@host-static-92-114-165-252.moldtelecom.md] has joined #lisp 18:09:49 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Read error: 110 (Connection timed out)] 18:09:55 sepult [n=user@xdsl-87-78-31-246.netcologne.de] has joined #lisp 18:11:41 -!- rpg [n=rpg@75-146-46-193-Minnesota.hfc.comcastbusiness.net] has quit [Read error: 113 (No route to host)] 18:12:01 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 18:12:56 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Remote closed the connection] 18:13:00 -!- HG` [n=HG@xdslgi077.osnanet.de] has quit [Client Quit] 18:13:50 syamajal_ [n=syamajal@140.232.178.84] has joined #lisp 18:14:22 um myrkraverk that won't work 18:14:38 oh wait it will 18:14:54 OmniMancer, I forgot (fact) in my last paste 18:14:56 -!- Adlai` is now known as Adlai 18:15:13 -!- syamajala [n=syamajal@140.232.178.84] has quit [Read error: 104 (Connection reset by peer)] 18:15:45 and you use double indirection to make the whole list mutable 18:15:54 -!- thom_ [n=thom@pool-173-51-164-80.lsanca.fios.verizon.net] has quit ["This computer has gone to sleep"] 18:16:22 -!- roygbiv [n=blank@pdpc/supporter/active/roygbiv] has left #lisp 18:17:51 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit [Remote closed the connection] 18:19:19 -!- coliv [n=Coliveir@12.15.114.194] has quit [Read error: 110 (Connection timed out)] 18:19:43 yes, I don't know how to make a pop-nth macro (yet) 18:21:24 why does delete-nth-and-return-it return both? 18:22:01 because that's what pjbs original version did 18:22:19 It seems like it should just be called delete-nth, and return (values new-list deleted-value) 18:23:46 rpg [n=rpg@216.243.156.16] has joined #lisp 18:23:54 borism [n=boris@195.50.200.72] has joined #lisp 18:24:22 jajcloz [n=jaj@pool-98-110-225-173.bstnma.fios.verizon.net] has joined #lisp 18:25:24 sellout, that makes it messier, for the recursive (next) call, doesn't it? 18:26:04 spacebat_ [n=akhasha@ppp121-45-3-125.lns10.adl2.internode.on.net] has joined #lisp 18:26:49 anyways, I think I'll spend some time to read about macros, rather than spend more time on this now 18:26:51 thank you all 18:29:33 -!- vyazovoi [n=vyazovoi@94.51.34.65] has quit [Remote closed the connection] 18:32:00 -!- rpg [n=rpg@216.243.156.16] has quit ["Leaving..."] 18:33:58 lawful_evil [n=g@w005.z209031033.sjc-ca.dsl.cnc.net] has joined #lisp 18:34:05 http://common-lisp.net/project/closure/quickstart.html 18:34:16 # make sure your Closure and McCLIM ASD files are linked from your ASDF central registry 18:34:20 # push :rune-is-integer on your lisp's *feature* list to avoid some lingering character/integer bugs in the Closure source code 18:34:23 how do i do these 2 steps? 18:34:51 lawful_evil: I'd just use clbuild to get closure 18:34:59 clbuild? 18:35:08 minion: tell lawful_evil about clbuild 18:35:08 lawful_evil: have a look at clbuild: clbuild [common-lisp.net] is a shell script helping with the download, compilation, and invocation of Common Lisp applications. http://www.cliki.net/clbuild 18:36:55 lawful_evil: then "clbuild update closure" will download all the dependencies for you and set up the .asd files, etc. 18:37:11 slick 18:37:24 lawful_evil: and "clbuild run closure" will run it 18:37:41 Geralt [n=Geralt@91.50.199.63] has joined #lisp 18:38:25 Wow! OmniMancer is making quick progress. I regret having missed the beginning of this discussion, but he/she/it might actually be convinced fairly quickly of the advantages of using CL. 18:38:34 -!- spacebat [n=akhasha@ppp121-45-175-82.lns11.adl2.internode.on.net] has quit [Read error: 110 (Connection timed out)] 18:38:50 *OmniMancer* likes CL 18:40:10 OmniMancer: I believe that from reading the logs; yet, in the beginning it didn't seem so. Congratulations, and welcome to the world of Lisp. 18:40:35 [oh, and good evening everyone] 18:40:44 letexpx [n=letexpx@abo-223-141-68.bdx.modulonet.fr] has joined #lisp 18:40:49 I just go through phases and sometimes use other languages 18:41:07 the lack of decent windows support does not make me happy either :( 18:41:31 OmniMancer: Very few people here are mono-lingual (both concerning programming languages an natural languages actually). 18:41:51 minion: Please tell OmniMancer about CLIM 18:41:51 OmniMancer: look at CLIM: The Common Lisp Interface Manager (CLIM) is a powerful Lisp-based programming interface that provides a layered set of portable facilities for constructing user interfaces. http://www.cliki.net/CLIM 18:41:58 minion: Please tell OmniMancer about McCLIM. 18:41:59 OmniMancer: please look at McCLIM: McCLIM is Mike McDonald's Free and portable implementation of CLIM, the Common Lisp ueber-Graphics Toolkit and a Common Lisp Library. http://www.cliki.net/McCLIM 18:42:50 *OmniMancer* does not enjoy requiring an X server. 18:43:08 OmniMancer: What I like about #lisp is that the members are very rarely fanatical; and instead very well informed, very helpful, and in general just smart and knowledgeable. 18:43:32 reminds me of #emacs, at least as of few years oge 18:43:34 *ago 18:43:37 OmniMancer: There is a GTCairo backend for McCLIM if you don't like X11. 18:43:38 OmniMancer: there's a postscript backend, if you like that more... ;) (what would you like?) 18:43:46 heh 18:43:55 -!- GrayMagiker [n=steve@c-76-18-86-163.hsd1.nm.comcast.net] has quit ["Leaving"] 18:44:03 a bit hard to draw postscript to the screen in real time? 18:44:23 OmniMancer: don't tell that to the NeWS people... 18:44:29 it wasn't in the long ago age of display postscript 18:44:38 Well, it was... 18:44:45 oh ;/ 18:44:45 windows has no display postscript 18:44:48 and if it did 18:44:49 there's a reason why people don't use display postscript anymore. :) 18:44:56 ;-D 18:44:58 evil evil adobe? 18:45:07 I would still need a server for it... 18:45:19 OmniMancer: I am always surprised that there are still people using Windows. 18:45:36 *OmniMancer* likes games. 18:45:37 Well, yes, licensing costs...but also, apps could lock up your whole display by making your display run a complicated postscript program. 18:45:41 Some of us have to use Windows :'-( 18:45:47 foom: well, Quartz is not that different a technology 18:45:53 Elench: I don't believe that! 18:46:02 beach: i have to at work 18:46:05 windows are obsolete, lcd monitors and video cameras have replaced them 18:46:07 michaelw: indeed. But it got rid of the "run postscript in the windowserver" feature. :) 18:46:08 Elench: I am convinced it is a (possibly difficult) choice. 18:46:16 beach: BTW, done any hacking lately? (what happened to SICL?) 18:46:22 need to put each programs postscript in a separate VM and monitor them for CPU hogging? 18:46:28 Elench: You can change your employer. 18:46:32 beach: ok, i have to use Windows, or breach my morality and the law 18:46:57 beach: I'm trying to 18:47:01 michaelw: SICL hasn't moved for a while. I am currently considering how to spend my next academic year. 18:47:13 SICL? 18:47:26 Steele Island Common Lisp? 18:47:37 -!- Athas [n=athas@192.38.109.188] has quit [Remote closed the connection] 18:49:12 clbuild is awsome 18:49:24 what if you have no linux? 18:49:35 OmniMancer: http://dept-info.labri.fr/~strandh/sicl.pdf 18:49:52 OmniMancer, I have no linux 18:50:11 bsd? 18:50:11 OmniMancer: Just one of my projects that, because of the way my work is turning out these days, is not going anywhere in particular. 18:50:13 ;) 18:50:16 hey kmr is mailbombing we of the clsql affinity 18:50:17 no, I has solaris 18:50:28 sol10? 18:50:30 sexy 18:50:34 it is an exciting time 18:50:36 opensol bld 115 18:50:39 Im am thinking of dumping linux for sol 18:50:46 *OmniMancer* has non-posix 18:50:47 oh opensol? 18:50:50 lawful_evil, I did, and don't regret it 18:50:54 no kidding? 18:51:03 OmniMancer, get yourself a beos 18:51:07 opensol I had trouble dumping gnome tho 18:51:12 *OmniMancer* likes the beos 18:51:12 I like iceWM 18:51:16 beach: I thought you can decide more or less freely what you want to do? 18:51:21 archlinux is what I am on currently 18:51:24 *OmniMancer* wishes they would hurry up with haiku 18:51:29 *myrkraverk* too 18:51:34 -!- benny [n=benny@i577A1B89.versanet.de] has quit [Read error: 60 (Operation timed out)] 18:51:36 michaelw: Sorry to disappoint you. 18:51:43 is haiku done in forth? 18:51:51 no 18:51:55 is done in C++ 18:51:57 auroraux is ada+opensol 18:51:57 no, C++ as the original beos 18:52:20 -!- lawful_evil is now known as myrkridia 18:52:35 myrkraverk: why like sol over linux? 18:52:51 beach: what are the constraints? 18:53:27 michaelw: During the first two days of this academic year, I have three major problems and a dozen or so minor ones to solve *urgently* or my department wont work during this academic year. I'll spare you the details. 18:53:41 myrkridia, one: I have better access to kernel structures (yes, I use them occasionlly) and two, less cadt 18:54:02 beach: ah, admin overhead 18:54:21 people are hard and strange. and funding stuff sucks anyway :) 18:54:22 michaelw: Yes, and it tends to be around 1000% or so. 18:54:40 guaqua: No funding problems though. 18:54:44 Fun times. 18:54:59 tic: Yes, I enjoy every minute of it. 18:55:26 tic: [and I wish I were back at my niece's place for another party instead] 18:56:54 guaqua: We are pretty much drowning in money. It is hard to figure out how to spend it. 18:57:30 beach: give some to me 18:57:56 fe[nl]ix: Sure, no problem. Just come here as a PostDoc or whatever. 18:57:58 fund my PhD! 18:58:07 luis: Sure, just apply! 18:58:08 :-) 18:58:27 luis: Seriously, if the topic fits, there is no problem. 18:59:06 beach, yeah, I hear you. :-) 18:59:25 beach, what would be a good topic? 18:59:33 tic: Do you know realize what you missed by not coming to the spring party? 18:59:54 beach, yeah, I do! Definitely coming next year. 19:00:01 tic: I mean, I am like my niece (or the other way around), but I have more money than she does. 19:00:16 mmm, cheese. 19:02:57 More immediately (though not urgent) on-topic though, I have to come up with a Lisp programming project for my 3rd-year students. The first year I wrote a word processor for them to improve; the second year it was an information system. This year, I haven't thought about anything yet. We 3 months to come up with something. 19:03:25 make them write a game? 19:03:30 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit [Remote closed the connection] 19:03:35 beach: a better solution than the FFI-mess? :) 19:03:44 hypno: CFFI is pretty nice. 19:04:03 *OmniMancer* hugs CFFI 19:04:22 Xach: hmm, ok, i'll have a look at it. 19:04:24 -!- Buganini [n=buganini@security-hole.info] has quit [Remote closed the connection] 19:04:24 an alternative would be to port NestedVM to CL 19:04:37 NestedVM? 19:04:42 hypno: A solution to what? For my students it is out of the question to work outside CL! 19:04:49 can lisp look at a big file of text and sort through it and take out parts of interest? 19:04:54 clloader loading closure 19:04:58 emma: yes. 19:05:00 when lot of compiling 19:05:03 whew1 19:05:05 beach: hmm... See me in 4 years ;P 19:05:42 I have a file that has the output of doing /list. In /list it says the size of every channel on freenode. I want to put the numbers for the sizes of all the channels on freenode into a list. 19:06:05 is there any advantage to using a complex instead of a cons to represent a pair? I'm looking at some code someone else wrote which uses it like that, though the data represented is just a pair and doesn't exactly have much to do with complex numbers. 19:06:08 emma: Of course. Just like any other language can. 19:06:20 compile error 19:06:22 gank 19:06:26 so my function should take "chanlist.txt" and return a list that has all the channel sizes on Freenode. 19:06:38 I remember it didnt like my slime startup file or some such. 19:06:40 gaa!! 19:06:46 beach: as for a project, Wiki-like, decentralised information network? So that it has disjoint parts that have to communicate well, so they get experience of writing networked software without HTTP, as well :) 19:06:49 emma: pretty straightforward. 19:06:50 can you give me a hint about where to start looking to figure out how to make lisp do that? 19:06:57 emma: with-open-file, loop, read-line 19:07:01 like what function to loook at. 19:07:02 pcre 19:07:03 okay thanks. 19:07:12 perl compatible regular expression 19:07:23 myrkridia: and then you have two problems 19:07:27 rme [n=rme@70.104.101.220] has joined #lisp 19:07:31 p_l: The Web (in its current incarnation) gives me the hives. 19:07:44 darn my closure compile bombing 19:07:51 Geralt [n=Geralt@p5B32C73F.dip.t-dialin.net] has joined #lisp 19:07:55 *Xach* boggles at how http://www.reddit.com/r/programming/comments/9h9yg turned out 19:08:00 make students write a game? 19:08:03 beach: that's why I'm suggesting something that isn't Web-based - I was thinking more along the lines of cooperative, networked editor 19:08:36 yay for multiplayer notepad :D 19:08:47 tsuru [n=user@c-76-22-154-126.hsd1.tn.comcast.net] has joined #lisp 19:09:00 Except instead of pure text, exploit possibilities of CLIM & CL :-) 19:09:13 and maybe git-like storage? :D 19:09:15 -!- tsuru is now known as Guest83278 19:09:19 beach: so have the write a nice library for network production services, complete with distribution, guaranted error handling, searchable and a good logging format, DSL for protocol definitions, reliable and always safe hot-code swapping and finally a powerful, flexible interface to admin it all. in case of premature completion, they can move on to implement a mail and dns service. :) 19:10:03 Xach: careful what you unleash :D 19:10:04 how about make them write some kind of game? 19:10:20 Debugger entered--Lisp error: (file-error "Cannot open load file" "slime") 19:10:26 hypno: have them reuse DNS like certain other information systems :D 19:10:59 do i need to manuall create a slime load file? 19:11:03 p_l: My idea for the past two years has been to give the students a medium-sized code to read and understand, and then to improve. If you have such a code for me, then please ship it, and I'll consider having the students improve it. 19:11:06 or just symlink to something I have? 19:11:17 -!- ThomasI [n=thomas@unaffiliated/thomasi] has quit ["Bye Bye!"] 19:11:54 beach: unfortunately I don't have something like that. Maybe I'll end up as posgrad there, though :P 19:12:36 Xach: sadly, proggit isn't what it once was, and it was always a little trollish and, well, ignorant. 19:12:38 Xach: don't feel bad. reddit's been going downhill ever since they switched to python 19:12:44 haha 19:12:56 Xach: hacker news is still pretty good (so far) 19:13:09 so many tools for just one drawer 19:13:27 Xach: at least the downvotes tell the right story. 19:13:37 ljames: CL's trig function understand complex numbers (and don't understand conses) 19:14:25 Xach: my favorite comment from that reddit thread: "one person has demonstrated the ability to write these lines of code and the other has not." 19:14:27 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit [Remote closed the connection] 19:14:55 Athas [n=athas@192.38.109.188] has joined #lisp 19:15:12 reddit is infested with mindless young left wing script kitties who watch jon stewart too much 19:15:33 -!- borism [n=boris@195.50.200.72] has quit [Client Quit] 19:15:33 wow I can't get emacs and firefox and x to let me paste my error in emacs 19:15:46 normal X cut n paste fail 19:16:23 Debugger entered--Lisp error: (file-error "Cannot open load file" "slime") require(slime) eval-buffer(# nil "/root/.emacs" nil t) ; Reading at buffer position 123 19:16:58 okay admit it, which one of you is redditnoob in that thread, pulling a brucio 19:17:05 I am using clbuild to try and run closure 19:17:16 myrkridia: please avoid pasting random noise to the channel. 19:17:28 -!- Athas [n=athas@192.38.109.188] has quit [Read error: 60 (Operation timed out)] 19:17:43 X has more than one "clipboard" or cut-buffer. that retarded behaviour can be disabled somehow, but i cant for the life of me remeber how. 19:17:52 I can't use pastebin that is my startup error using clbuild to run slime, and from there to compiel and run closure.. 19:18:38 Athas [n=athas@192.38.109.188] has joined #lisp 19:19:20 hypno: Good plan, but not for me, since I know virtually nothing about netowking. 19:19:59 -!- _Trickster_ [i=Trickste@77.232.135.67] has quit [Read error: 60 (Operation timed out)] 19:20:00 (I might though at the end of this semester, because I have decided to follow the course of a colleague) 19:20:15 -!- scottmaccal [n=scott@sentry3.jayschools.org] has quit [Connection timed out] 19:20:26 michaelw, well, that would make sense if he was using it for that, but in this case it was just a simple pair of numbers used to represent opcodes 19:20:35 myrkridia: that error is from emacs trying to find slime. do you have slime installed? 19:21:43 I think it grabbed it... 19:22:11 ljames: Oh, I got that backwards, then. 19:22:12 complex number is more efficient in some cases? 19:22:25 ah maybe a problem in my .emacs , which was copied from slime site, not created by clbuild 19:22:42 OmniMancer: more efficient that what? 19:23:39 scottmaccal [n=scott@sentry3.jayschools.org] has joined #lisp 19:23:53 cons cell? 19:23:58 drewc: you made me think, and I fixed it!! you the man 19:24:10 I got smarter just being here! 19:24:19 yay 19:24:30 OmniMancer: Those are not comparable; you can do arithmetic with complex number but not with cons cells. 19:24:40 yes 19:25:04 *OmniMancer* points at stuff ljames said 19:25:16 oh 19:26:11 I'm almost finished with the documentation of named-readtables; could anyone with some time at hand go to http://common-lisp.net/~trittweiler/named-readtables.html and report any typographical, grammatical mistakes? 19:26:39 -!- S11001001 [n=sirian@pdpc/supporter/active/S11001001] has quit ["reading very important texts"] 19:26:43 -!- syamajal_ [n=syamajal@140.232.178.84] has quit [Remote closed the connection] 19:26:53 OmniMancer: If your problem involves complex numbers, use them, and then complain to the maintainers of your implementation if it is not as efficient as you expect in some cases. 19:27:06 -!- Athas [n=athas@192.38.109.188] has quit [Read error: 60 (Operation timed out)] 19:27:07 *OmniMancer* has no problem 19:27:13 beach: catch up on context, please. 19:27:20 Athas [n=athas@shop3.diku.dk] has joined #lisp 19:27:29 *OmniMancer* points at stuff ljames said again. 19:27:31 ASau [n=user@83.69.240.52] has joined #lisp 19:27:38 syamajala [n=syamajal@140.232.178.84] has joined #lisp 19:27:39 (closure:start) works!! Im on the web lisp powered!!1 19:27:45 Xach: OK, sorry. 19:27:55 well, one could do something like (mapcar #'+ '(1 2) '(1 2)) as opposed to (+ #C(1 2) #C(1 2)) though the second case is clearer and more efficient 19:30:45 I already crashed closure I rock 19:30:45 -!- Athas [n=athas@shop3.diku.dk] has quit [Remote closed the connection] 19:31:03 ljames: For the Metafont-like stuff I do with fonts and such, I use complex numbers, because it is sometimes convenient to be able to do vector addition and such in 2D. It might be harder to do stuff like that with conses, and you won't lose much flexibility by using complex numbers. 19:31:05 ljames, it's definately not clearer if they are not representing complex numbers. 19:31:12 btw, is there a library for something similar to scanf? 19:31:12 Xach: better? 19:31:57 S11001001 [n=sirian@pdpc/supporter/active/S11001001] has joined #lisp 19:32:23 myrkridia: I am not impressed by someone crashing Closure. 19:32:46 p_l: READ? 19:32:55 tcr: I saw no typo/grammar mistakes, but it is friday afternoon for me 19:33:24 p_l: honestly, ppcre does almost everything you'd need 19:34:03 ryepup: Some passages are a bit rough, but I'm quite sleepy myself 19:34:23 closure seems to work but isnt a speed demon 19:34:38 ryepup: Does it make it clear to you what it's about? 19:34:42 myrkridia: I definitely agree with that. 19:34:43 do i need to give SBCL a huge amount of ram or something for its heap? 19:34:53 -!- ASau [n=user@83.69.240.52] has quit [Read error: 104 (Connection reset by peer)] 19:34:54 would that move things along nicer 19:35:14 tcr: i'l have a good look now... very excited about named-readtables! :) 19:35:16 Coliveira__ [n=Coliveir@12.15.114.194] has joined #lisp 19:35:19 myrkridia: I suspect Closure is not optimally implemented. 19:35:38 Buganini [n=buganini@security-hole.info] has joined #lisp 19:36:36 it kinid of a pos 19:36:37 It's fairly young. And it may become considerably faster with java7 and invoke-dynamic 19:36:46 its a pos 19:36:51 I cant get anything to render 19:37:01 -!- datou [n=datou@124.205.137.161] has quit [Read error: 110 (Connection timed out)] 19:37:06 buggery 19:37:12 drewc: Wait a moment, I'll update the sources so you can send me a diff. 19:37:14 myrkridia: Please let us know if you want to become a maintainer of Closure. 19:37:37 tcr: I think the functionality and intent are pretty clear 19:37:39 tcr: do you control named-readtables project at clnet? 19:37:57 editor-hints, that is 19:37:59 rstandy [n=rastandy@net-93-144-50-90.t2.dsl.vodafone.it] has joined #lisp 19:37:59 myrkridia: It is a very neglected program that could use someone to help it out. 19:38:40 man I don't know enough lisp for that yet......It sounds rad to have a lisp broswer tho. 19:38:46 hmm 19:38:56 *drewc* has a webkit-based CL browser hack 19:39:14 much better than closure, in that it actually works for most websites :) 19:39:23 myrkridia: It is not that hard. And #lisp will be there to help you. 19:39:26 all these plays on the name closure are getting a little confusing 19:39:35 waiting for qt4.6 though, so i can access the DOM from lisp. 19:39:52 I was talking to someone in #bzr about clozure and he thought it was a lisp variant written in java 19:39:54 lisp really is powerful right? as many claim? I want to believe it is nicer than java, etc.....but there are very few lisp apps I use day to day, they seem to be mostly c, and as far as programmign goes i use mostly bash for sysadmin. 19:39:57 S11001001: Yes, I control editor-hints. I'll move everything to there on the actual release 19:40:15 tcr: I mean, it is a little confusing that the page advertises the svn repo 19:40:20 myrkridia: Sorry to hear that! 19:40:36 anyone knows how you can catch C prints in CFFI ? 19:40:40 yeah i want to get good enuf that i can throw bash back n the trash 19:40:42 I thought you had switched and went to check it out, only comparing the logs saved me from wiping out the darcs 19:40:43 beach: I was thinking more about something to deal with various "simple" matrices etc., read afaik won't fare well with data that doesn't look like Sexps :) 19:41:06 myrkridia: is Bach better than Britney Spears? 19:41:08 myrkridia: Mainly because that means you are probably wasting some 20-60% of your life with useless interactions. 19:41:09 PissedNumlock: only possible with glibc and variants that implement its FILE* hacking 19:41:19 meuh k nvm then 19:41:19 S11001001: Yes, the editor-hints page is dated. 19:41:22 just started with CFFI 19:41:34 drewc: Ok, pushed. The documentation is mostly generated from the docstrings. (The meat is in the docstring of the defpackage form in package.lisp) 19:41:44 drewc: What a question! Of course I am! 19:41:54 dlowe: I was thinking that if I have to write one myself, it would be based around CL-PPCRE and maybe split-sequence, except with ready-to use parsers for various common formats 19:41:55 I want to learn to serve web with lisp too: hunchentoot etc. 19:41:58 -!- Coliveira [n=Coliveir@173.12.30.65] has quit [Read error: 60 (Operation timed out)] 19:42:03 beach: Bach ... js bach :) 19:42:15 PissedNumlock: go and find the bits in the glibc manual about hooking into FILE* objects; assuming you are experienced with C, you can take it from there 19:42:33 From the little lisp sofar lisp seems so nice and organized and consistent......unlike bash which is random stuff I have to put on my blog to remember; like little mad fomulas. 19:42:38 myrkridia: FWIW, i use lisp for almost everything, but for sysadmin tasks i use ksh. 19:42:49 scottmaccal1 [n=scott@sentry3.jayschools.org] has joined #lisp 19:42:52 ksh93? 19:42:53 has getting commonqt into kde's source tree been looked into or at least into their documentation 19:43:01 -!- scottmaccal1 [n=scott@sentry3.jayschools.org] has quit [Read error: 104 (Connection reset by peer)] 19:43:07 scottmaccal1 [n=scott@sentry3.jayschools.org] has joined #lisp 19:43:10 http://techbase.kde.org/Development/Languages 19:43:13 p_l: I guess I didn't understand the requirements then. 19:43:14 nope S11001001 I'm not 19:43:14 drewc: everything including say web? 19:43:56 but thx for the pointer (haha :x) anyway 19:44:04 myrkridia: usually just /bin/sh if it supports 'local', but i have a few ksh93 programs.. i prefer it to perl for perl-like tasks. 19:44:09 beach: dealing with input like first row hacing array dimensions, then space separated dataset for said array and similar 19:44:10 PissedNumlock: you will have to learn quite a bit about how C APIs are designed in order to do things with them 19:44:17 myrkridia: i've been known to do a little web programming now and then ;) 19:44:20 minion: ucw? 19:44:21 ucw: UnCommon Web is a Common Lisp web application development framework. http://www.cliki.net/ucw 19:44:26 minion: lisp-on-lines? 19:44:27 lisp-on-lines: Lisp-on-lines is a web application framework built on top of ContextL and UCW and provides a unique declarative application development model. http://www.cliki.net/lisp-on-lines 19:44:51 S11001001: you could do crazier stuff: close stdout, open a pipe and connect one end to stdout(by dup2) and the other end to the terminal, then spawn a thread that reads from stdout and writes to the terminal 19:45:05 josemanuel [n=josemanu@40.0.222.87.dynamic.jazztel.es] has joined #lisp 19:45:06 -!- scottmaccal1 [n=scott@sentry3.jayschools.org] has quit [Read error: 60 (Operation timed out)] 19:45:14 fe[nl]ix: I guess, but the glibc stuff is more fun 19:45:35 tcr: what url to pull? 19:45:45 still in editor-hints? 19:45:54 phf_ [n=phf@host.icnfull.com] has joined #lisp 19:45:58 drewc: Cf head of documentation 19:46:11 S11001001: you could also replace printf and similar symbols in the runtime 19:46:26 icky 19:46:39 S11001001: less than playing around with FILE* :D 19:46:46 tcr: ha, so it is :) 19:47:17 S11001001: but it doesn't work if printf gets inlined 19:47:26 I suppose fe[nl]ix's solution is the most portable 19:48:20 when do we get uncommon lisp? 19:48:35 OmniMancer: it's called 'scheme' 19:49:20 lol 19:49:41 I like being able to call variables list :P 19:49:41 OmniMancer: "Common" comes from how CL started 19:49:46 OmniMancer: that's not a joke... see the title of the original reports on scheme ;) 19:49:47 dralston [n=dralston@S010600212986cca8.va.shawcable.net] has joined #lisp 19:50:11 and yes, it was "Scheme: an Uncommon Lisp" or something like that, right? :D 19:50:18 scottmaccal1 [n=scott@sentry3.jayschools.org] has joined #lisp 19:50:37 The Revised Revised Report on Scheme or An UnCommon Lisp :) 19:50:53 -!- scottmaccal [n=scott@sentry3.jayschools.org] has quit [Read error: 104 (Connection reset by peer)] 19:50:54 thom_logn [n=thom@pool-173-51-164-80.lsanca.fios.verizon.net] has joined #lisp 19:51:38 please note that modern common lisp is a descendant of Scheme... many make the mistake of thinking scheme is 'newer' 19:53:09 silly them 19:53:28 (though mine reasons for not starting on common lisp faster were sillier) 19:53:35 I wouldn't say "descendant" is the right word 19:53:47 so is lisp on lines as flaky as closure? 19:53:55 closure really no work for me 19:54:11 tcr: "step sibling" :) 19:54:36 myrkridia: yes, it's likely just as flakey as closure... it doesn't even try to render webpages ;) 19:54:41 myrkraverk: what's wrong with closures? 19:54:48 -!- ryepup [n=ryepup@one.firewall.gnv.acceleration.net] has left #lisp 19:54:57 tcr: scheme gave us lexical scope! :) 19:55:15 drewc: kind of. it's a descendant of very early scheme, which is very unlike r6rs or even r5rs 19:55:21 *mishoo* thinks ..oO( err, s/myrkraverk/myrkridia/ ) 19:55:27 fe[nl]ix: true :) 19:55:31 ok so am I a moron to want to learn lisp? to get inspired by paul graham? 19:55:43 like my redhat sysadmin buddies sayI am? 19:55:51 myrkridia: you might be a moron if you have to ask if you are one.... 19:56:02 I might be a redneck? 19:56:04 sysadmins, advice on programming, etc 19:56:05 myrkridia: I tend to think that no learning goes unrewarded 19:56:29 I am a sucker for the hard way: heck I use unix. 19:56:48 do what you like man, Common Lisp is really chill 19:56:59 If I do learn lisp and web, is there a chance down the road I will enjoy really a ton of fun making wbsites since i aovided crap like php? 19:57:06 myrkridia: you use unix ? 19:57:12 myrkridia: I think that if you beleive the BS Graham puts out, you might be dispointed to find out the lisp is not a magic wand to wave over specs to produce conscise code ;) 19:57:17 hard to find a unix I dont use 19:57:18 ASau [n=user@83.69.240.52] has joined #lisp 19:57:19 knowing french pays back, when reading Principes d'Implantation de Lisp et Scheme 19:57:20 [free unix] 19:57:25 like, here are some objects and classes and methods and stuff, use it if you want, no pressure 19:57:43 in CFFI when you use defctype you have to provide a base type, how do you deduce what your base type is? 19:57:50 pg is quite an evangelist 19:57:51 oh, also you can declare your variable types, you know, if you get around to it 19:57:53 myrkridia: ever used AIX ? 19:58:00 [free unix] 19:58:30 i liked AIX ... am i twisted? 19:58:39 PissedNumlock: assume that you can't actually extend the set of types that the FFI layer primitively understands 19:58:43 drewc, yes ;) 19:58:47 PissedNumlock: what is your type like? 19:58:58 then again, i liked Xenix too... shows what i know. 19:59:09 myrkraverk: you have to be twisted to be a sysadmin 19:59:14 quite a lot of int, unsigned, chars and long longs :p 19:59:15 p_l, ;) 19:59:21 myrkraverk: it's in job description 19:59:27 skeptomai [n=cb@67.40.185.246] has joined #lisp 19:59:30 I like VMS, to some extent -- that makes me a certified pervert 19:59:33 *drewc* is a part time sysadmin and agrees with p_l 19:59:37 anyone who says otherwise is lying adn/or trying to sell you something :) 19:59:41 see I envision this: a web get comes in off the wire, lisp makes a list of it, and I simply program lisp to do things based off of the list of strings......rest is simply learning all the lisp functions....and howto return html tags to the get....i can use lisp data structures for data storage, and hopefully figure a way to cache things in ram....bam done 19:59:42 *myrkraverk* is not a sysadmin 19:59:44 myrkraverk: I happen to like VMS a lot :) 19:59:51 p_l, ;) 19:59:56 PissedNumlock: well what kind of value will be passed to a function when you want to pass this object from Lisp? 20:00:05 I'm trying to make bindings for libproc S11001001 20:00:06 system administration is always waiting for stuff to break down. and then take blame for it 20:00:17 myrkraverk: though what I really like is the clustering and async architecture :) 20:00:22 Sorry, I am not familiar with that library. 20:00:29 guaqua: pre-emptive strikes are key. 20:00:30 yep, dont foget things you aren't allowed to improve, since maagers won't let you call shots 20:00:41 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 20:00:41 well, I'll find it out myself, reading through CFFI documentation 20:00:45 p_l, ah, I haven't really used that features (yet) -- mostly I've just played on deathrow 20:00:45 thx 20:00:50 drewc: sure. but if the pre-emptive action just breaks more stuff? :) 20:00:51 <----will escape sysadmin job making 100k to something better liek my won startup in under 12 months 20:00:54 (knocks wood) we have not had major system downtime in over 5 years. 20:00:59 -!- rstandy [n=rastandy@net-93-144-50-90.t2.dsl.vodafone.it] has quit [Read error: 110 (Connection timed out)] 20:01:06 PissedNumlock: I can still help you, if you point me to the type information and how it should be passed to C functions 20:01:22 <---is so stubborn will use lisp, and shove it up asse sof other admins when I sucead 20:01:44 -!- phf [n=phf@host.icnfull.com] has quit [Read error: 110 (Connection timed out)] 20:01:45 -!- scottmaccal1 [n=scott@sentry3.jayschools.org] has quit ["Leaving."] 20:01:45 myrkridia: if you slow down a bit, perhaps your spelling will improve somewhat, and it won't be quite as painful to attempt to read your text. 20:01:45 myrkridia: worst is when you get kicked out because you do too good of a job (Terry Childs, anyone? Or some poor guys who made unbreakable HA clusters and got fired because managers didn't understand the need) 20:01:47 the fine balance takes time to achieve. and the right people. but then again, no good software ever came from intermediate people :) 20:02:00 whos T childs? 20:02:24 (either) 20:02:26 cmo-0 [n=user@92.96.20.45] has joined #lisp 20:02:26 and why no lisp guys clone reddit in 200 lines and make money? 20:02:29 myrkridia: former network admin of San Francisco city. Now 14th month in jail 20:02:39 ! 20:02:42 for? 20:02:48 S11001001: http://pastebin.com/m58251576 20:02:53 myrkridia: you have an odd idea of how to make money. 20:03:00 dialtone [n=dialtone@adsl-99-136-101-166.dsl.pltn13.sbcglobal.net] has joined #lisp 20:03:01 myrkridia: apparently for following password policy :P 20:03:07 it gives you a bunch of info for a certain process id 20:03:19 and I guess that function fills in the proc_t 20:03:22 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #lisp 20:03:25 -!- Davse_Bamse [n=davse@4306ds4-soeb.0.fullrate.dk] has quit ["leaving"] 20:03:30 1) clone reddit in 200 lines 2)??? 3)profit 20:03:30 PissedNumlock: hopefully you only have to pass pointer to this to functions 20:03:42 p_l, that's retarded -- the one's who made the policy should be in jail 20:03:46 myrkridia: probably because Lisp (or anything else) ain't no silver bullet? 20:04:02 myrkridia: he didn't give up main password when asked by managers, except that password policy allowed him to give it only to certain people (plus HBB precaution) 20:04:05 yes S11001001 only input from the user will be the pid 20:04:11 myrkraverk: i suggest you spend less time reading graham and a lot more in the real world :P 20:04:14 if that was your question 20:04:51 myrkridia: the thing is, it's impossible to physically reset the passwords without taking nodes permanently offline - there's a kind of "dead man switch" in the form of wiped config on all equipment :D 20:04:55 drewc, real world? is'n that in Azeroth? 20:05:34 ,clhs line 20:05:46 clhs line 20:05:46 Sorry, I couldn't find anything for line. 20:06:47 i see something here that seems to have a 'line' operator or function. 20:07:10 (do ((line (read-line stream nil) 20:07:29 clhs do 20:07:29 http://www.lispworks.com/reference/HyperSpec/Body/m_do_do.htm 20:07:39 emma: line is a variable inside your loop 20:07:42 slyrus [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has joined #lisp 20:08:10 emma: DO is a macro (as is LOOP, which i'd prefer over DO for most uses) 20:08:53 oh okay 20:09:15 emma: macros do not necessarily follow normal evaluation rules 20:09:19 bgs100 [n=ian@unaffiliated/bgs100] has joined #lisp 20:09:27 tagbody and go are the way that they work really :P 20:09:30 okay thank you 20:09:39 otherwise, ((foo ...)) is an error :) 20:09:53 indeed 20:09:54 (save for the case where 'foo' is 'lambda') 20:09:57 let is macro? 20:10:11 is special operator? 20:10:21 to be honest, this pretty much sucks. (I'm new to lisp so I can say that :p) 20:10:47 clhs let 20:10:48 http://www.lispworks.com/reference/HyperSpec/Body/s_let_l.htm 20:11:07 OmniMancer: ask the clhs before asking the channel! 20:11:09 HET2 [n=diman@cpc2-cdif3-0-0-cust803.cdif.cable.ntl.com] has joined #lisp 20:11:19 -!- authentic [n=authenti@unaffiliated/authentic] has quit [Read error: 60 (Operation timed out)] 20:11:25 -!- josemanuel [n=josemanu@40.0.222.87.dynamic.jazztel.es] has quit ["Saliendo"] 20:11:45 authentic [n=authenti@85-127-180-93.dynamic.xdsl-line.inode.at] has joined #lisp 20:13:47 anyone here doing web apps with Lisp? 20:14:09 GreatPatham [n=dan@c-24-19-169-87.hsd1.wa.comcast.net] has joined #lisp 20:14:11 mishoo: yes, i do quite a few 20:14:24 just curious to know what are the preferred frameworks -- f.e. I played with hunchentoot and I think it's cool 20:14:54 also, what database systems are preferred? 20:15:15 i use UCW + lisp-on-lines with postgresql + relational-objects-for-lisp 20:15:34 -!- Edward__ [n=Ed@AAubervilliers-154-1-52-63.w90-3.abo.wanadoo.fr] has quit [Read error: 110 (Connection timed out)] 20:15:59 Edward__ [i=Ed@AAubervilliers-154-1-12-153.w86-212.abo.wanadoo.fr] has joined #lisp 20:16:30 i've also been using rucksack for cases where i don't want any external db dependencies 20:16:48 drewc: any "howto" or website I can read about it? 20:17:38 mishoo http://common-lisp.net/project/ucw/repos/ucw-core/doc/getting-started.txt 20:18:12 mishoo: also #ucw for help and questions 20:18:27 thanks 20:19:42 dreish [n=dreish@minus.dreish.org] has joined #lisp 20:19:50 -!- GreatPatham [n=dan@c-24-19-169-87.hsd1.wa.comcast.net] has quit [] 20:21:59 -!- letexpx [n=letexpx@abo-223-141-68.bdx.modulonet.fr] has quit [Client Quit] 20:25:01 -!- HET2 [n=diman@cpc2-cdif3-0-0-cust803.cdif.cable.ntl.com] has quit ["Leaving"] 20:29:12 On the topic of external databases, I've been looking at elephant for persistent objects. Irritatingly, it fails to preserve lists or hash tables, which are exactly what my project makes extensive use of. Are there any more complete persistence solutions? 20:30:42 I've looked at a few, but there's no confirmation or denial of similar limits. 20:30:51 dralston: rucksack FTW 20:30:54 ia__ [n=ia@89.169.161.244] has joined #lisp 20:31:17 not preserve the main datatype of the language? 20:31:19 madness 20:31:20 -!- ia__ [n=ia@89.169.161.244] has quit [Read error: 104 (Connection reset by peer)] 20:31:48 luskwater [n=luskwate@mail2.actslife.org] has joined #lisp 20:31:54 I know. I have to wonder if the author knew what Lisp stands for. :/ 20:32:10 And, thanks, I'll look into rucksack. 20:32:42 OmniMancer: object identity is hard, let's go shopping 20:33:02 but not doing lists? 20:33:30 well, arrays are simpler 20:33:31 ia__ [n=ia@89.169.161.244] has joined #lisp 20:33:53 why? 20:34:05 -!- luskwater [n=luskwate@mail2.actslife.org] has quit [Remote closed the connection] 20:34:14 -!- saikat_ [n=saikat@c-98-210-13-214.hsd1.ca.comcast.net] has quit [] 20:34:29 think about it, circularity, sharing, etc. 20:35:18 -!- Coliveira__ is now known as coliv 20:37:11 michaelw: this is why rucksack has pcons, etc. 20:37:23 you use references 20:38:06 (if we had real 'lists' other approaches might work, but we don't, we have chains of CONSes) 20:38:46 What's so difficult about making cons graphes persistent? 20:38:51 drewc: chains of conses sound like "real" lists to me ;-) 20:39:34 legumbre_ [n=user@r190-135-31-99.dialup.adsl.anteldata.net.uy] has joined #lisp 20:39:56 linked list not list? 20:40:10 mishoo: Except that chain of conses includes back pointers to some preceding cons, and also that the CDR of the last cons can be any arbitrary object. It's really a graph, not a list 20:40:15 mishoo: are symbols lists too? ;) 20:40:19 -!- dlowe [n=dlowe@ita4fw1.itasoftware.com] has quit ["Leaving."] 20:40:52 drewc: symbols were implemened as lists once... 20:41:05 Hellraiser2 [n=user5442@189-19-118-137.dsl.telesp.net.br] has joined #lisp 20:41:19 I don't know how they're implemented, but (as I started with Lisp about a week ago) I thought "damn, this is the first programming language that exposes the structure of its, well, structures" :) 20:41:22 sciendan [n=dan@69.250.212.245] has joined #lisp 20:41:25 pjb: that's true .. and they still have plists, just not in the CDR :) 20:41:44 -!- authentic [n=authenti@unaffiliated/authentic] has quit [Read error: 110 (Connection timed out)] 20:41:49 aack [n=user@a83-161-214-179.adsl.xs4all.nl] has joined #lisp 20:41:53 singly-linked lists; I learned these (with pointers in Pascal) 15 years ago 20:41:53 mishoo: i was referring more to this : (listp (find-symbol "NIL")) :) 20:42:02 mishoo: Uhm, no it doesn't. It does only for lists, and to great detriment 20:42:28 -!- ia [n=ia@89.169.161.244] has quit [Read error: 110 (Connection timed out)] 20:42:33 mishoo: Notice that you can have an introspective interface to your structures without exposing the actual implementation 20:42:54 -!- ia__ is now known as iaz 20:43:04 -!- iaz is now known as ia 20:43:13 or (type-of (make-list 0)) vs (type-of (make-list 1)) 20:43:27 (neither of which are LIST) 20:44:01 -!- legumbre [n=user@r190-135-14-147.dialup.adsl.anteldata.net.uy] has quit [Read error: 60 (Operation timed out)] 20:44:04 Geralt [n=Geralt@p5B32C73F.dip.t-dialin.net] has joined #lisp 20:44:29 why not? 20:44:41 -!- mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 20:45:23 OmniMancer: for reasons that I don't quite understand yet, the empty list is synonym with "nil" (not sure this answers the question..) 20:45:42 oh that is because nil is the emptylist :P 20:46:03 oh those two are nil and cons ? 20:46:30 OmniMancer: because there are no lists in lisp, only chains of conses 20:46:45 so then persist conses? 20:47:51 right, hence rucksacks PCONS type. 20:48:07 yay 20:48:08 -!- Hellraiser [n=user5442@189-19-115-222.dsl.telesp.net.br] has quit [Read error: 110 (Connection timed out)] 20:48:50 ok, nil is the empty list, but it's a million miles away than an empty list is represented in pretty much all other programming languages I've been through :( 20:49:11 mishoo: what is an 'empty list'? 20:49:22 drewc: [] ;-) 20:49:29 [].length == 0 20:49:33 (javascript) 20:49:44 is that a list or an array? 20:49:45 [] instanceof Array == true 20:50:05 '() 20:50:13 *mishoo* thinks ..oO( I don't care too much :) it looks like a list, it works like a list, then it must be a list :-p ) 20:50:22 (type-of (make-array 0)) ... lisp was that too 20:50:31 s/was/has 20:50:41 '() is nil? 20:50:50 or if you like syntax (length #()) 20:50:51 I know, but you can't use them the same way you use lists -- there are functions that differ 20:50:54 OmniMancer: yes, nil 20:51:12 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit ["Leaving."] 20:51:22 mishoo: the entire sequence dictionary disagrees somewhat ;) 20:52:04 OmniMancer: NIL is the empty list... but what is a list of 0 items anyway? 20:52:06 benny [n=benny@i577A1B89.versanet.de] has joined #lisp 20:52:49 (in lisp such a think can't exist, so NIL serves the purpose) 20:52:57 Geralt [n=Geralt@p5B32C73F.dip.t-dialin.net] has joined #lisp 20:53:19 *mishoo* thinks ..oO( bummer, I forgot exactly where I bite the bullet about empty lists... they seem to work now :)) ) 20:53:28 -!- Guest83278 is now known as tsuru 20:53:54 one can have an empty array, and empty hash table, an empty string... but not a real 'empty list' 20:54:15 and empty list is nothing :D 20:54:16 something like (setq foo nil) (push 1 foo) -- now foo is '(1), correct -- but there was something about this, which I forgot, that drove me nuts :-/ 20:54:38 mishoo: PUSH is a macro and modifies the binding of FOO 20:54:49 yeah, I understood why it work 20:54:53 s/work/works/ 20:54:53 Lists don't have identity. Only CONS cells have identity 20:55:07 A list is a linked-list of CONS cells 20:55:14 PUSH => (setf foo (cons 1 foo)) 20:55:18 Optimized with CDR-coding in some implementations 20:57:20 thom_ [n=thom@pool-173-51-164-80.lsanca.fios.verizon.net] has joined #lisp 21:01:27 saikat [n=saikat@adsl-76-228-82-245.dsl.pltn13.sbcglobal.net] has joined #lisp 21:01:41 merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has joined #lisp 21:02:48 Fare [n=Fare@ita4fw1.itasoftware.com] has joined #lisp 21:02:58 so how does this make it impossible to persist lists? 21:03:19 -!- Hellraiser2 is now known as ausente 21:03:36 OmniMancer, uh? 21:04:46 difficult, not impossible... 21:05:00 not really difficult 21:05:21 you just have to do proper persistence of cons cells 21:05:37 'just' 21:05:44 I remembered the shit I've been dealing with, concerning empty lists 21:06:07 -!- mattrepl [n=mattrepl@ip68-100-82-124.dc.dc.cox.net] has quit [] 21:06:16 I wanted to pass a list to some function, and that function ought to be able to push some elements to the list (I know it's not exactly "functional programming", but I needed speed) 21:06:28 well, when that list was empty, the function was unable to change the binding 21:06:44 That's due to call-by-value 21:06:54 mishoo: i doubt you needed speed... i'll bet you were prematurely optimising :) 21:07:00 perhaps I should have implemented it as a macro, but it sounded too complicated.... fortunately I found a nicer way using special variable scope 21:07:02 And the point of performance is dubious at best 21:07:10 Omg 21:07:34 drewc: I'm trying to implement a chess engine (just for the purpose of learning Lisp, actually ;-) -- but speed is absolutely essential to provide a decent play 21:07:34 dynamic scope and catering for perfomance, yow! 21:07:56 tcr: erhm, I didn't assume that dynamic scope is slow. :-) Is it? 21:08:28 mishoo: and your profiling showed that this was your bottleneck and your solution was faster? 21:08:59 nope, not really -- I just didn't know how I can modify a list that I got as a function argument, when that list was initially empty 21:09:27 mishoo: If you're on a threaded build, it's two levels of indirection 21:09:31 you use a macro :D 21:09:35 (that function is recursive, btw, it's impossible to implement as a macro) 21:09:48 You return the new list 21:09:50 mishoo: if you have a function that destructively modifies a list, have the function return the modified list. cf. DELETE, SORT, etc. 21:10:03 tcr: complicated, it has to return many things already.. :-/ 21:10:11 So use multiple-values 21:10:25 mishoo: 10's of thousands of man-hours have gone into making 'functional programming', as you call it, fast and efficient. Are you sure that your solution is faster? the GC is pretty good at what you describe, as it's how people write real programs in lisp :D 21:10:30 Or keep all the bookkeeping in one common structure 21:10:35 possibly allocated on the stack 21:11:09 my lisp is probably infinitely looping how do i break it? 21:11:15 (i'm not saying cons like it's free... but write a working solution first and profile for the hotspots) 21:11:21 is there a way in slime to stop it and just go back to a fresh repl? 21:11:26 emma: C-c C-c 21:11:33 -!- Edward__ [i=Ed@AAubervilliers-154-1-12-153.w86-212.abo.wanadoo.fr] has quit ["L'oignon fait la farce."] 21:11:34 I tried the multiple-value-bind but it seemed ugly; the version using dynamic scope is actually cleanest (talking about how code looks like) 21:11:41 emma: C-c C-c at the REPL 21:12:08 mishoo: was speed or clean looking code the goal? you're all over the place here! 21:12:27 mishoo: dynamic scope can be blessing, and pain. Sometimes both at once 21:12:27 :) 21:12:40 drewc: sorry... I guess both 21:13:10 What's the list about? What are the other return values about? 21:13:21 Sound to me like you want one common structure that represents the game state 21:13:56 thanks 21:13:58 this problem is a PITA, anyway -- if you want just google for "chess collecting the principal variation" 21:14:01 clhs do 21:14:01 http://www.lispworks.com/reference/HyperSpec/Body/m_do_do.htm 21:14:12 the solution, in C, is to pass a pointer to a structure that gets filled with moves 21:14:17 mishoo: i guess what i'm getting at is that you are making life extra hard for yourself... you know little of lisp and it's performance characteristics, but you are attempting to write code that makes use of those characteristics. 21:14:29 but I couldn't do that in Lisp (given my limited knowledge) because if I pass an empty list, I can't change it. 21:14:30 mishoo: You can do the same in Lisp. Just pass a structure. 21:14:36 mishoo: so, pass a structure! 21:14:50 yeah... need to learn more. :) 21:14:55 *mishoo* thinks ..oO( so much to do, so little time ) 21:15:21 mishoo, you can rplaca and rplacd 21:15:26 I'm not sure why you're trying yourself at such an exercise without having read a book about Lisp first. 21:15:46 rplaca does not work on nil... 21:15:47 tcr: I'm reading while doing... 21:15:51 started with PCL 21:16:24 OmniMancer, then you're not using lists properly. 21:16:33 the clhs is so hard to learn from. 21:16:42 if you want a cell to side-effect, pass along a cell to side-effect 21:16:43 not nil 21:16:59 emma: you mean the hyperspec? I think that was written for compiler compilers. 21:17:00 where is there a better reference for learning what the macros, operators, and functions do and how to use them? 21:17:10 emma: It's a specification. And actually one which is pretty clearly written. 21:17:24 emma: for macros, try On Lisp and maybe LoL 21:17:31 it's tricky to learn how do works by reading that 21:17:39 emma: PCL 21:17:40 LoL is fun hacks but very bad software engineering, I'd say 21:17:50 one can use a cons cell or a structure to box/unbox values, isn't it better style not to write this type of side-effecting function? 21:18:05 -!- Phaze [n=PhazeDK@0x5da32b16.cpe.ge-0-1-0-1104.soebnqu1.customer.tele.dk] has quit ["Leaving"] 21:18:25 ljames: Indeed, or use a real object if you go down that alley 21:18:39 *Fare* was failing to catch errors because he closed parens at the wrong place after a multiple-value-prog1 inside a let... 21:19:45 Odin- [n=sbkhh@s121-302.gardur.hi.is] has joined #lisp 21:21:29 http://paste.lisp.org/display/86582 21:21:42 Im trying to understand how the above is working. 21:22:47 sohail [n=sohail@CPE001839a305c5-CM000a73a081a5.cpe.net.cable.rogers.com] has joined #lisp 21:23:34 My hypothesis is that with-open-file takes the file, opens it and calls it stream. then (line (read-line stream nil)) is reading one line of the file and saving it to 'line'. Then the second (read-line stream nil) is advancing it one line? 21:23:53 not really sure why the (null line) is there, but maybe that is reseting what line is for its next go around. 21:24:14 it's the termination test of the loop 21:24:34 oh it's like a conditional type thing? 21:24:39 You'll understand the syntax of DO once you realize how it's a generalized FOR loop 21:24:44 if it gets to null then show line? 21:24:56 emma: read the clhs for do 21:25:00 tcr: lisp is emma's first programming language IIRC 21:25:05 yes that's right. 21:25:31 -!- jajcloz [n=jaj@pool-98-110-225-173.bstnma.fios.verizon.net] has quit [] 21:25:46 emma: can i suggest you use LOOP over DO? for simple loops, i find it much more readable, as it has an english-like syntax. 21:25:58 emma: you never even used a shell? 21:26:04 i made a couple of programs in scheme before i came to common lisp, but Im saying lisp is my first language where lisp includes scheme. 21:26:17 I use linux with the terminal but i never program in bash. 21:26:22 I disrecommend DO unless you HAVE to use it. 21:26:33 okay 21:26:38 i'll try to figure out do instead :) 21:26:41 the syntax of DO really sucks. 21:26:42 oops 21:26:44 i mean loop instead 21:26:46 -!- Elench [n=jarv@dsl-217-155-101-18.zen.co.uk] has quit [Read error: 110 (Connection timed out)] 21:27:15 emma: Here's a good loop intro. http://www.unixuser.org/~euske/doc/cl/loop.html 21:27:20 loop is easy :P at least for some things that I remember 21:28:03 emma: PCL has a lot of great material on LOOP 21:28:07 -!- phf_ [n=phf@host.icnfull.com] has quit [Read error: 113 (No route to host)] 21:28:23 Second thought, yeah, PCL is probably better. My link doesn't even include collect. :/ 21:28:26 i know at least one prominent lisper who was anti-loop until PCL came out and explained it to him :) 21:29:01 loop is the most beautiful loop facility I have ever seen 21:29:31 Seconded. Readable, and versatile. 21:29:43 yeah, loop is The Loop :-) 21:29:45 *rme* uses DO. 21:30:25 *OmniMancer* shuns 21:30:54 *drewc* quietly points out ITERATE 21:30:57 emma: this is still open in my browser (since about a week): http://www.gigamonkeys.com/book/loop-for-black-belts.html 21:31:03 *fe[nl]ix* likes DO 21:31:18 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 21:31:24 minion: ITERATE? 21:31:25 ITERATE: iterate is a lispy and extensible replacement for the :(CLHS "LOOP") macro. http://www.cliki.net/ITERATE 21:31:31 *dralston* predicts a recursive apartheid. 21:31:35 loop makes loops look like english descriptions :D 21:31:46 do you guys think there is any harm in reading the chapters of PCL out of order then? 21:31:57 Not in the least. It's what I did. :P 21:31:59 OmniMancer: ITERATE makes loops look like well written lisp :) 21:32:02 *OmniMancer* wonders what dralston believes he knows about apartheid. 21:32:11 -!- sohail [n=sohail@unaffiliated/sohail] has quit ["Leaving."] 21:32:32 emma: go for it, as long as you back up when you don't understand something. 21:32:48 *dralston* admits he really doesn't know anything about it, except that the word is South African for "separateness". 21:33:19 and a rather nasty period in history 21:33:35 and its afrikaans not South African :P 21:33:35 That as well, though I'm not well versed in it. 21:34:25 Afrikaans. then. :P 21:34:34 Whoops, I derailed it, sorry. 21:34:40 (The topic, that is.) 21:34:55 -!- tcr [n=tcr@host146.natpool.mwn.de] has quit ["Leaving."] 21:36:27 angoladon [n=heyjones@67.220.166.250] has joined #lisp 21:37:00 -!- lhz [n=shrekz@c-b9aa72d5.021-158-73746f34.cust.bredbandsbolaget.se] has quit ["Leaving"] 21:37:27 -!- LiamH [n=none@common-lisp.net] has quit ["Leaving."] 21:37:28 speaking of LOOP, I found some samples on the web that used keywords (i.e. starting with ":") 21:37:36 is there a preferred / recommended way? 21:37:41 mishoo: i prefer to use keywords as well 21:37:52 (loop for i from 1 to 10) vs (loop :for i :from 1 :to 10) 21:38:05 i think it makes the loop clauses visually distinct, and it looks more 'like lisp' 21:38:08 I prefer them as well because they're highlighted differently in emacs :) but any other reasons? 21:38:26 mishoo: they might create less symbols 21:38:29 you avoid consing new symbols in every package you use LOOP in :) 21:38:39 its a macro so as long as it never puts those symbols in the body it doesn't matter functionally wise :D 21:38:54 OmniMancer: huh? 21:39:06 drewc: speaking of worrying about optimizing prematurely... 21:39:10 drewc: OmniMancer is talking about the result 21:39:13 rme: LoL 21:39:32 it won't change how it operates so long as it never uses the symbols values 21:39:34 rme: hey, i use it for highlighting and visual distinctness :) 21:39:48 rme: however, if you like to see it with keywords, you really aren't losing any flexibility :) 21:39:57 rme: mishoo asked for 'any other reasons'.. that's one :) 21:40:09 sohail [n=sohail@CPE001839a305c5-CM000a73a081a5.cpe.net.cable.rogers.com] has joined #lisp 21:40:53 luke [n=luke@208.87.19.36] has joined #lisp 21:41:15 -!- luke [n=luke@208.87.19.36] has left #lisp 21:41:16 schoppenhauer [n=css@unaffiliated/schoppenhauer] has joined #lisp 21:41:48 OK, so no big difference, but keywords look better. :) Got it. 21:42:08 depends what you mean by look better :P but anyway 21:42:47 gonna catch some sleep folks.. nice talking to you. I've saved #lisp in Xchat so like it or not, I'll stick around. ;-) 21:42:50 what does Lock on package SB-IMPL violated when binding BACKQ-LIST as a local macro. mean? 21:43:18 it means that you rebound a function in that package 21:43:34 myrkraverk: that means you've done something horribly wrong with macrolet and and backquoted list 21:43:43 nice 21:43:45 myrkraverk, it means you're using ` where you shouldn't 21:43:57 ah, I think 21:43:58 ` expands to that at read-time 21:44:28 you may have misparenthesized your macrolet 21:44:30 i'd guess a macrolet syntax error 21:44:33 -!- dralston [n=dralston@S010600212986cca8.va.shawcable.net] has quit ["Leaving"] 21:44:47 *drewc* nodes respectfully towards Fare 21:44:55 Speaking of backquote, is there any (portable!) way to generate unquotes (comma or comma-at) within some unquoted code part of a backquote? I once tried that, but failed miserably and ended up just building said list with LIST. 21:45:07 *Fare* arcs respectfully towards drewc 21:45:26 ljames what do you mean? 21:45:45 ljames: not really, without re-writing your own backquote package 21:45:51 hmm, i'll have to find some example code, but basically i was trying to write ONCE-ONLY from PAIP using only backquote 21:45:52 (which shouldn't be THAT hard either) 21:45:56 ah 21:45:57 ljames: not sure what you're saying, but no.. #\`, #\, and #\,@ are part of the reader 21:46:23 myrkraverk annotated #86569 "macrolet instead of defmacro" at http://paste.lisp.org/display/86569#3 21:46:25 but maybe you only need to nest ` and , properly 21:46:45 rread_ [n=rread@nat/sun/x-cbzrlpsdkiduuzpu] has joined #lisp 21:46:45 drewc: don't forget ,. 21:47:07 how would I create a macrolet from that defmacro, if I'm not copying it as is? 21:47:14 ,.? 21:47:37 myrkraverk: why are you quoting the code returned from the macro? 21:47:43 Im trying to take a file with text in it, and read it, and get some numbers from it, and put those numbers in a list. 21:48:02 drewc, for the short answer: I don't know 21:48:05 emma: what do you mean by 'numbers' 21:48:21 emma: (loop :for l = (readline s nil nil) :while l :collect ...) 21:48:26 I did a /list on freenode, to get all the channels. I saved that as a file. 21:48:35 drewc, I'm just trying to work from the examples in Paul Grahams ansi common lisp book 21:48:53 In that list of freenode channels it puts the size of the channel after the channel name each time. 21:48:56 myrkraverk: well, grahams code is crap IMO, so that's half the problem :) 21:49:04 I want to get lisp to read that file and make a list of all the channel sizes. 21:49:07 drewc, ah, I see 21:49:17 emma: use cl-ppcre for simple parsing. 21:49:28 okay i will look into that. 21:49:39 Fare: by the sounds of it, split-sequence + parse-integer might be enough 21:49:47 emma: ^ 21:49:48 drewc, might be 21:50:15 (regexps being a whole can of worms i don't want emma to have to open yet) 21:50:36 (and i hate regexps) 21:50:39 :D 21:50:39 *Fare* fixes XCVB to actually BORK on error, and finds missing EVAL-WHEN's faster. 21:50:40 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit [Remote closed the connection] 21:51:09 drewc, regexp are often abused. But they have their plus side. 21:51:09 ljames pasted "ONCE-ONLY from PAIP" at http://paste.lisp.org/display/86583 21:51:54 Urfin [i=foobar@85.65.93.74.dynamic.barak-online.net] has joined #lisp 21:52:08 Can I macroexpand my permute, using the local macrolet? assuming I get it some sort of right 21:52:26 ljames: it's certainly possible... but why? just an exercise? 21:52:35 -!- rread [n=rread@c-98-234-219-222.hsd1.ca.comcast.net] has quit [Read error: 110 (Connection timed out)] 21:52:35 -!- rread_ is now known as rread 21:52:44 coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has joined #lisp 21:52:52 yes, i was curious how to do it 21:53:08 tried to do it for an hour or two, and gave up and just used LIST. 21:53:12 ljames: with some pain and sweat... nested backquotes are hairy :) 21:53:17 myrkraverk, maybe what you really need is the equivalent of PLT Scheme's (local ...) that will turn a defmacro into a macrolet... 21:53:44 myrkraverk: i though SBCL could macroexpand local macro defs... maybe via slime's C-RET 21:53:51 (could be wrong there) 21:53:55 so you develop everything with defmacro, and have them be nested automatically in the end 21:54:06 shouldn't macroexpand work for any macros? 21:55:08 Fare, maybe, or I could actually learn to use macrolet 21:55:16 -!- angoladon [n=heyjones@67.220.166.250] has left #lisp 21:55:17 not that hard 21:55:41 myrkraverk: if you can write the defmacro you can convert it to a macrolet... get it right first before optimising 21:56:02 -!- thom_ [n=thom@pool-173-51-164-80.lsanca.fios.verizon.net] has quit ["This computer has gone to sleep"] 21:56:05 drewc, I might, if I understood better what I'm doing ;) 21:56:25 myrkraverk: so, perhaps you should seek understanding. 21:56:40 drewc, I'm googling now ;0 21:56:41 ;) 21:57:47 try on simple examples first 21:58:07 myrkraverk: google is probably not the best source of info... try PCL or PAIP first 21:58:23 PAIP? 21:58:38 ok, at least I can go for PCL 21:58:56 paip is a book 21:59:12 minion: PAIP? 21:59:13 PAIP: Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp by Peter Norvig. http://www.cliki.net/PAIP 21:59:18 -!- coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has quit [Remote closed the connection] 21:59:23 (best lisp book evar) 21:59:31 rouslan [n=Rouslan@unaffiliated/rouslan] has joined #lisp 21:59:34 does gwking come here these days? 21:59:40 Geralt [n=Geralt@p5B32C73F.dip.t-dialin.net] has joined #lisp 21:59:48 coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has joined #lisp 21:59:55 Fare: haven't seem him in ages 22:00:00 -!- coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has quit [Read error: 104 (Connection reset by peer)] 22:00:13 coderdad [n=coderdad@ip72-200-214-240.ok.ok.cox.net] has joined #lisp 22:02:08 -!- mishoo [n=mishoo@86-124-78-239.iasi.cablelink.ro] has quit [Read error: 110 (Connection timed out)] 22:03:15 well, in my case, I found the stuff -- I was mis applying the parenthesis 22:03:32 *Fare* sends mail instead 22:03:59 myrkraverk, you were applying a parenthesis? But were your evaluating a space? 22:04:05 -!- postamar [n=postamar@x-132-204-252-3.xtpr.umontreal.ca] has left #lisp 22:05:12 Fare, I might understand that, if the grammar syntax was more or less correct 22:06:05 -!- slash_ [n=Unknown@p4FF0BDA2.dip.t-dialin.net] has quit [Client Quit] 22:06:13 drewc: yes, PAIP is very good, though the title is slightly mismatched, IMHO :) 22:06:32 (but so is term "Artificial Intelligence") 22:08:41 slash_ [n=Unknown@p4FF0BDA2.dip.t-dialin.net] has joined #lisp 22:12:53 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:13:08 -!- bdowning [n=bdowning@mnementh.lavos.net] has quit [Remote closed the connection] 22:13:16 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit ["Leaving."] 22:13:22 bdowning [n=bdowning@mnementh.lavos.net] has joined #lisp 22:14:53 Geralt [n=Geralt@p5B32C73F.dip.t-dialin.net] has joined #lisp 22:15:10 -!- coliv [n=Coliveir@12.15.114.194] has quit ["Leaving"] 22:16:31 yoos [n=quassel@c-67-169-211-13.hsd1.or.comcast.net] has joined #lisp 22:18:20 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit [Remote closed the connection] 22:20:06 p_l: the subtitle, OTOH, points us in the right direction :) 22:21:34 Fare: (Defun |(| () ...) (apply #'|(| ...)) :) 22:22:03 (eval '(| | ...) :) 22:22:46 *drewc* named a type specifier '|list of (or string pathname)| yesterday... too clever? 22:23:02 assuming n is less than (or equal to) 26, how do I make a list of n letters, like (a b c d e ... ) ? 22:24:00 there is no such thing as (lexically-plus-one symbol) is there? 22:24:11 ? 22:24:22 (loop for i from (char-code a) to (char-code z) collect (code-char i)) 22:24:40 sorry 22:24:46 (char-code #\a) etc 22:24:48 shouldn't those be #\a and #\z? 22:24:51 yea 22:25:29 drewc: darn, you bet me to it, and even better. (loop for i from 97 to 122 collect (code-char i)) :( 22:25:58 nonono worse!!!!! 22:26:44 97 doesn't mean much 22:26:49 but but but, what if I want symbols, and not characters? ;-) 22:26:58 i ment /his/ code was better. 22:27:17 intern them 22:27:37 make string 22:27:37 that what I meant by lexically add one to symbols (as in lexicagraphical order) 22:27:38 -!- kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has quit [Read error: 110 (Connection timed out)] 22:27:41 intern string 22:27:51 hmmmm 22:28:08 *Fare* tries to imagine his interns in string... NOT 22:28:19 if there is one for strings I think you can convert symbols to stirngs then intern them? 22:28:36 sure 22:28:44 (|a| |b| |c| |d| |e| |f| |g| ... -- can I make that a b c d ... ? 22:29:16 you are missing a quote on the list? 22:30:09 (mapcar (compose 'read-from-string 'string) (loop for i from (char-code #\a) to (char-code #\z) collect (code-char i))) => (A B C ...) 22:31:08 lnostdal, won't work if your lisp is EBCDIC! 22:31:10 -!- saikat [n=saikat@adsl-76-228-82-245.dsl.pltn13.sbcglobal.net] has quit [Read error: 54 (Connection reset by peer)] 22:31:16 myrkraverk: that is (a b c d) .. vertical bars are like quites for symbols 22:31:19 saikat [n=saikat@adsl-76-228-82-245.dsl.pltn13.sbcglobal.net] has joined #lisp 22:31:21 i've been looking at many other languages since i found cl, and most has just been depressing, but prolog/erlang actually sort of have a lispy touch to it. like a straight-jacket version of lisp, heh. 22:31:26 drewc, aha 22:31:33 myrkraverk: however, 22:31:49 (eq (intern "a") 'a) => nil under normal reader setting 22:32:09 prolog and erlang are interesting 22:32:18 both use lists of integers as strings :/ 22:32:23 (symbol-name (intern "a")) vs (symbol-name 'a) might be enlightening 22:32:26 drewc, that's ok, this is just for making permutations of length n>10 22:32:32 superjoe [n=superjoe@149-169-230-216.nat.asu.edu] has joined #lisp 22:33:05 this may sound like a silly question, but how do I coax a number into an integer? 22:33:19 if I have 8.0, but I know I want it to be an integer 22:33:34 flor? 22:33:36 floor? 22:33:43 truncate, floor, ceiling, round 22:34:13 (spank-me-and-call-me-susan number)? no, not that one 22:34:14 cool any of those will do the trick 22:34:15 thanks 22:40:10 -!- saikat [n=saikat@adsl-76-228-82-245.dsl.pltn13.sbcglobal.net] has quit [Read error: 60 (Operation timed out)] 22:43:36 ThomasI [n=thomas@unaffiliated/thomasi] has joined #lisp 22:43:38 _Pb [n=Pb@75.131.194.186] has joined #lisp 22:44:08 what does #= do? 22:44:24 -!- _Pb [n=Pb@75.131.194.186] has left #lisp 22:45:52 -!- slyrus [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has quit [Remote closed the connection] 22:46:31 -!- iwaki [n=hide@61.44.209.217] has quit [Read error: 131 (Connection reset by peer)] 22:46:49 clhs #= 22:46:49 http://www.lispworks.com/reference/HyperSpec/Body/02_dho.htm 22:47:03 OmniMancer: ask the clhs before you ask the channel! 22:47:46 raptelan [n=Casey@c-68-49-132-34.hsd1.md.comcast.net] has joined #lisp 22:47:52 (note that if you don't understand what the clhs is trying to say, you can ask the channel for clarification) 22:48:30 it's trying to say we should live in the 1980's 22:49:40 -!- htk_ [n=htk___@188.3.227.231] has quit [Remote closed the connection] 22:51:05 so the expression in the topic is a circular list? 22:52:28 the printed representation of a circular list 22:52:43 (assuming *print-circle*) 22:52:49 ah 22:53:01 so it deals with circular lists then? 22:53:05 I see no difference between (first (1 2 3 4 5)) and (car (1 2 3 4 5)) 22:53:20 there is a difference 22:53:24 nor between (rest (1 2 3 4 5)) and (cdr (1 2 3 4 5)) 22:53:29 What is it? 22:53:35 one is called first and the other car 22:53:35 emma: i do! CAR has three letters .. C A and R ... first has 4 letters... 22:53:48 htk_ [n=htk___@188.3.227.231] has joined #lisp 22:53:55 first and rest are nicer names 22:54:08 OmniMancer: not for CONSes they're not 22:54:17 for lists 22:54:21 there is no 'REST' of a cons 22:54:28 (imo) 22:54:37 is there anything wrong with using first and rest then? 22:54:37 first and seconnd? 22:54:44 no 22:54:51 emma: use FIRST and REST for lists, CAR and CDR for conses 22:54:52 use for lists 22:54:59 okay 22:55:01 emma: the difference is subtle 22:55:06 i think i understand it though. 22:55:18 but it's a matter of expressing intent rather than having any different behavior 22:55:19 if you have (1 (2 3)) then use cdr 22:55:28 ? 22:55:32 no, that a list 22:55:36 use REST 22:55:43 what's a conses then? 22:56:00 (cons 1 2) 22:56:01 (thing . thing) 22:56:09 is short form 22:56:09 okay 22:56:25 like i said, the difference is subtle, as lists are made up of conses 22:56:38 lists end in nil 22:56:38 but it matters when you are trying to express intent to the reader. 22:56:41 -!- grouzen [n=grouzen@91.214.124.2] has quit ["leaving"] 22:56:44 conses do not 22:56:49 OmniMancer: no .. proper lists end in nil. 22:56:56 indeed 22:57:02 and (cons 1 nil) is still a cons and a list. 22:57:25 improper ones use one less cons and make annoyingness 22:57:49 can you have an improper list of cons cells? 22:57:50 (listp (cons 1 1)) => T 22:57:58 ?? 22:58:18 OmniMancer: all improper lists are of cons cells... that's how lists are made. 22:58:32 I mean where the cars are conses 22:58:48 you mean a list of conses? 22:58:48 since the last one won't have the desired meaning 22:58:52 antoszka [n=antoszka@unaffiliated/antoszka] has joined #lisp 22:58:55 yes... 22:59:35 i don't know what thought process might have brought you to the idea that conses in the CAR position are somehow treated specially.... but back up! :) 22:59:53 salva [n=salva@105.11.117.91.dynamic.mundo-r.com] has joined #lisp 23:00:03 they are not 23:00:10 hello worlds 23:00:13 but if you have an improper list 23:00:35 the last list cell has the last two list values in it 23:00:50 however since the list contains conses 23:00:56 OmniMancer: you've confused me! 23:01:04 that cons extends the list 23:01:18 -!- yoos [n=quassel@c-67-169-211-13.hsd1.or.comcast.net] has quit [Read error: 54 (Connection reset by peer)] 23:01:27 OmniMancer: i think you are confused with definitions... what is the definition of a proper list? 23:01:35 ((1 . 1) (2 . 2) . (3 . 3)) 23:01:53 proper list ends in nil 23:01:59 hai 23:02:06 ((1 . 1) (2 . 2) . (3 . 3)) 23:02:09 I just started learning lisp today 23:02:13 right, so what are you asking exactly? 23:02:36 hey Irishmanluke , you've made a good choice! :) 23:02:36 that is a list of two conses a 3 and a 3 in the last cdr 23:02:49 OmniMancer: an improper list 23:02:54 *Fare* has a proper-list-p function in xcvb/utilities 23:03:10 but it is intended to have the whole last cons as the last list value 23:03:20 useful to check input from user declarations. 23:03:37 Fare: why not use the one in alexandria? 23:04:00 dunno. When I started XCVB, I didn't want to depend on alexandria. 23:04:11 Now I could do it. 23:04:20 but too late. 23:04:25 that's fair actually, in the case of xcvb which shouldn't have too many deps for bootstrapping 23:04:43 actually, unlike ASDF, XCVB can have arbitrarily many dependencies 23:04:59 OmniMancer: draw out the rest of the conses, then study as re-ask your question :) 23:05:03 without being a hurdle to anything (except ASDF-TO-XCVB, indeed) 23:05:04 s/as/and 23:05:33 -!- dmiles [n=dmiles@c-76-104-220-73.hsd1.wa.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 23:05:52 seisatsu [n=seisatsu@adsl-99-31-232-164.dsl.pltn13.sbcglobal.net] has joined #lisp 23:05:57 dmiles [n=dmiles@c-76-104-220-73.hsd1.wa.comcast.net] has joined #lisp 23:06:06 didn't pjb have a boxes-n-arrows writing bot here? 23:06:24 I know what will happen 23:06:33 OmniMancer: so what are you asking? 23:06:43 weirdo [n=sthalik@c142-5.icpnet.pl] has joined #lisp 23:06:50 I am saying you can't put a cons in the last position of an improper list 23:06:56 -!- weirdo [n=sthalik@c142-5.icpnet.pl] has quit [Read error: 54 (Connection reset by peer)] 23:07:02 it gets absorbed into the list instead 23:07:17 drewc, XCVB even uses closer-mop for some magic I use while debugging 23:07:27 Fare: i approve! :) 23:07:36 weirdo [n=sthalik@c142-5.icpnet.pl] has joined #lisp 23:07:52 OmniMancer: it depends what you mean as 'the last position in an improper list' 23:08:11 (though it has its own dispatch system for its extensible "little languages" instead of relying on CLOS) 23:08:26 in an improper list the last element is placed in the cdr of the last cons cell? 23:08:58 *Fare* was pleasantly surprised by how well xcvb's DEFINE-SIMPLE-DISPATCHER simplified my task. 23:09:12 reynard [n=alan@n11649126059.netvigator.com] has joined #lisp 23:09:52 -!- cmo-0 [n=user@92.96.20.45] has quit [Remote closed the connection] 23:10:16 -!- reynard [n=alan@n11649126059.netvigator.com] has left #lisp 23:10:19 OmniMancer: lists are made of chains of conses.. that's how they work. 23:10:29 OmniMancer, depends whom you ask. (LOOP :FOR x :IN '(1 2 3 . 4) :COLLECT x) just says the list is improper 23:11:06 the 4 is in the cdr of the cons holding the 3? 23:11:37 the last cons has 3 in its CAR and 4 in its CDR 23:11:54 it is 'holding' both 3 and 4, as a CONS has two pointers called CAR and CDR 23:11:58 now say you put conses in instead of 1 2 3 4 23:12:31 now the cons where 4 should be is not the end of the list as was intended 23:12:36 -!- Fare [n=Fare@ita4fw1.itasoftware.com] has quit ["Leaving"] 23:12:36 slyrus [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has joined #lisp 23:12:40 it is part of the list 23:12:52 This is kind of interesting. (setf x '(a b c)) (setf y '(a b c)) so x returns (a b c) and y returns (a b c) but (eq x y) returns NIL 23:13:11 OmniMancer: i think you are confusing notation with structure 23:13:12 indeed 23:13:21 you want equal or equalp 23:13:28 emma: yes, they are not the same object 23:13:28 emma: this isn't defined behavior though :) 23:13:42 emma: it is perfectly sane for EQ to return T 23:13:48 emma: use EQUAL 23:13:55 emma: don't toplevel setf without first defining the variable and using *earmuffs* 23:14:20 emma: EQ uses object equality. too bad you don't know pointers and C, it helps 23:14:40 think of LIST as an object constructor. only the same invocation of the constructor is EQ to itself 23:14:58 this isn't true (on most impls) for fixnums and (rarely) characters 23:15:10 saikat [n=saikat@adsl-76-228-82-245.dsl.pltn13.sbcglobal.net] has joined #lisp 23:15:13 nothing you are saying makes any sense to me, so i hope you are also speaking to the others. 23:15:18 emma: the file-compiler could coalesce the two quoted literals, but is not required to 23:15:23 only the same invocation is guaranteed to be eq to itself? 23:15:41 eq compares identity. 23:16:01 nipra [n=nipra@122.169.91.106] has joined #lisp 23:16:01 not names, or structure.. it's a pointer comparison. 23:16:30 so eq is only true if both objects are the same object.. meaning the same place in memory. 23:16:31 kejsaren [n=kejsaren@111.25.95.91.static.ras.siw.siwnet.net] has joined #lisp 23:16:32 fixnums are compared too probably because you get them for free so long as they are direct values 23:16:54 -!- nipra [n=nipra@122.169.91.106] has quit [Read error: 104 (Connection reset by peer)] 23:17:18 nipra [n=nipra@122.169.91.106] has joined #lisp 23:17:55 OmniMancer: fixnums are not guaranteed eq either 23:18:07 but are usually 23:18:19 do you guys know dlamkins ? 23:18:30 -!- mrSpec [n=Spec@unaffiliated/mrspec] has quit [] 23:19:01 OmniMancer: can be, sometimes, in some implementations. (setf x nil) is allowed to format your HDD, but i wouldn't rely on that behavior. 23:19:12 ?? 23:19:15 -!- nipra [n=nipra@122.169.91.106] has quit [Read error: 54 (Connection reset by peer)] 23:19:17 -!- slyrus_ [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has quit [Remote closed the connection] 23:19:30 undefined behaviour? 23:19:49 nipra [n=nipra@122.169.91.106] has joined #lisp 23:20:10 clhs eq 23:20:10 http://www.lispworks.com/reference/HyperSpec/Body/f_eq.htm 23:20:51 -!- seisatsu [n=seisatsu@adsl-99-31-232-164.dsl.pltn13.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 23:20:55 it's well defined in the case of EQ "An implementation is permitted to make ``copies'' of characters and numbers at any time. The effect is that Common Lisp makes no guarantee that eq is true even when both its arguments are ``the same thing'' if that thing is a character or number. " 23:20:55 -!- nipra [n=nipra@122.169.91.106] has quit [Connection reset by peer] 23:21:48 but is for conses? 23:22:18 eql gurantees this? 23:23:00 slyrus_ [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has joined #lisp 23:23:11 -!- tagac [n=user@200.36.221.87.dynamic.jazztel.es] has quit ["/* */"] 23:23:22 -!- syamajala [n=syamajal@140.232.178.84] has quit [Remote closed the connection] 23:23:53 eq is always T for the same cons. 23:24:41 is = always t for numerically equal values? 23:25:00 OmniMancer: ask the clhs before you ask the channel! 23:25:05 clhs = 23:25:05 http://www.lispworks.com/reference/HyperSpec/Body/f_eq_sle.htm 23:25:07 it's too bad CL didn't standardize on a definition of "fixnum" which meant "eq works". 23:25:14 That's a pretty useful property. :) 23:26:44 foom: that would make a few implementation techniques impossible, though i have trouble disagreeing with the general assertion :) 23:27:21 they could have required that = things are eq? 23:27:35 OmniMancer: no.. that would be silly and wrong. 23:28:28 OmniMancer: 1/1, 1.0 and 1 clearly need different representations, and so are clearly different objects. 23:28:58 would the implementation techniques that break be ones where fixnums are not tagged pointers? 23:29:37 OmniMancer: ABCL used to (maybe still does) cons up a new Java Integer object for each number. 23:29:58 drewc: 1/1 and 1? 23:30:06 drewc: any implementation that actually implements fixnums at all will have that property. I guess it makes things harder for implementations that don't implement fixnums. 23:30:22 foom: EQ could do something fancy, though. 23:30:27 1/1 is a Ratio holding two BigInteger 23:30:29 pkhuong: right. 23:30:34 pkhuong: e.g. it could be eql 23:30:48 pkhuong: it could... but that would ruin the point of eq IMO, which is to compare pointers :) 23:30:48 -1 thru 255 is cahced 23:30:53 no, more like it could be skipping checks when the arguments are known to be numbers. 23:31:21 so in ABCL, the *actual* fixnum range is -1 to 255 23:31:31 -!- slyrus [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has quit [Read error: 54 (Connection reset by peer)] 23:31:32 foom: yes 23:31:37 unfortunately CLHS requires fixnum be at least (signed-byte 16) :) 23:31:42 -!- slyrus_ [n=slyrus@adsl-75-36-215-216.dsl.pltn13.sbcglobal.net] has quit [Connection reset by peer] 23:31:56 foom: ABCL fails no nsi fixnum tests 23:32:16 foom: which is of interest for array indexing purposes. 23:32:17 is there a filter function? 23:32:23 superjoe: remove-if-not. 23:32:25 foom: what else does it require of fixnums though... it doesn't require that they are interned... 23:32:27 thanks 23:32:51 drewc: no, it doesn't. But it "suggests" that they're more efficient 23:33:46 drewc: are you sure 1/1 can be a ratio for a conforman impl? 23:33:48 Many people take that to indicate "doesn't allocate tons of memory", but of course that's no hard requirement. 23:34:00 slyrus [n=slyrus@adsl-75-52-254-152.dsl.pltn13.sbcglobal.net] has joined #lisp 23:34:09 foom: consing is cheap 23:34:25 alot of lisps uses a type that is a struct that is a tag + a value? 23:34:26 weirdo: in a JVM, indeed. 23:34:31 so 'actual' fixnums (meaning eq) can be anything, as long as you define the 'fixnum' type as being at least (signed-byte 16) for all other purposes where most-positive-fixnum is needed. 23:34:31 if it only suggests can you make fixnums take up all available memory and still conform? 23:34:48 weirdo: yeah, like ABCL :) 23:35:12 i mean, in sbcl it's an integer 23:35:23 because it calls GCD on things 23:35:30 slyrus_ [n=slyrus@adsl-75-52-254-152.dsl.pltn13.sbcglobal.net] has joined #lisp 23:35:37 that styrucvt that is a type + { intvalue,f;loatvalue,symbolpinter} what is this caklled? 23:35:40 OmniMancer: sure. but you have to also have something else pointing to those numbers. 23:35:55 OmniMancer: so it's only a constant multiple of the amount of memory you're using anyways 23:36:11 OmniMancer: the spec says nothing of memory ... 23:36:13 that struct that is { type + { intvalue | floatvalue | symbolpointer} } what is this called? 23:36:30 technically (error "out of memory") is a conforming CL implementation :P 23:36:30 there's no way the standard could say "you can only use 8 bytes per entry in a list, not 64" 23:36:55 tagged union? 23:37:13 -!- jleija [n=jleija@user-24-214-122-46.knology.net] has quit ["leaving"] 23:37:15 OmniMancer: thaks yeah 23:37:33 tagged union is good 23:37:46 many however use that for the memory ones 23:37:51 i think what i am saying is ABCL's fixnum innst any worse than tagged union to hold an int ;) 23:38:19 and cram chars and fixnums into the pointers using the two alignment stolen bits a tag 23:38:55 seisatsu [n=seisatsu@adsl-99-31-235-123.dsl.pltn13.sbcglobal.net] has joined #lisp 23:39:15 maybe its possible that some lisps outer tag the outter part of tagged union 23:39:25 for fixnums and chars 23:39:26 ?? 23:40:06 OmniMancer: its possible create a tagged type that bitunmasks for a tagged union 23:40:16 on 32 bit machines pointers are aligned such that the last two bits in the pointer don't matter 23:40:47 so some impls exploit this to put smaller types directly in the pointer 23:40:57 avoiding dereferencing 23:40:57 *nod* 23:41:02 hi, PUSH is to "push onto beginning of list" as _____ is to "push onto end of list" ? 23:41:33 (append list (list thing)) 23:41:45 with a setf list to that? 23:42:01 syamajala [n=syamajal@140.232.178.84] has joined #lisp 23:42:03 OmniMancer: thanks 23:42:25 egn: but don't do that 23:42:40 drewc: ha, k 23:42:42 why 23:42:46 do whatever drewc suggests 23:42:48 so foom abcls Fixnum range is java.lang.Integer.MIN_INTEGER to java.lang.Integer.MAX_INTEGER 23:43:17 egn: because APPEND conses new list structure, as does LIST, and APPEND must traverse the entire list to find the end 23:43:33 -!- nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has quit [] 23:43:33 (in other words it's fat and slow) 23:43:42 so instead? 23:43:52 you have to staverse it anyway 23:44:04 traverse 23:44:06 if you control the list, push + nreverse. 23:44:17 that way you only traverse it once. 23:44:31 but slow stuff is fine in macros 23:44:34 don't you have to reverse it first though? 23:44:52 so APPEND has its uses too 23:44:55 otherwise... don't use a list! the data structure you are looking for is called a queue. 23:45:02 nvoorhies [n=nvoorhie@adsl-75-36-204-63.dsl.pltn13.sbcglobal.net] has joined #lisp 23:45:11 weirdo: slow stuff is not always fine in macros... 23:45:11 indeed 23:45:27 drewc: who cares if it macroexpands in a second or ten? 23:45:30 depends if you want fast macros :P 23:45:32 drewc: ah, alright 23:45:53 weirdo: i do, if i have say 100,000 macros and want to compile my software ;) 23:46:09 you can't push + nreverse if you need to put it at the end? 23:46:10 drewc: i do very slow stuff in toadstool, it has CLOS and APPEND all over, and it only takes a fraction of a second for macroexpansion, still 23:46:13 :) 23:46:24 it wouldn't have been acceptable at runtime 23:46:44 -!- seisatsu [n=seisatsu@adsl-99-31-235-123.dsl.pltn13.sbcglobal.net] has quit [Read error: 54 (Connection reset by peer)] 23:47:00 don't you have to nreverse push nreverse? 23:47:06 no 23:47:08 weirdo: i've been on projects that take a long time to compile. an order of magnitude performance hit does make a difference at times. 23:47:20 push is just (setf place (cons foo place)) 23:47:33 OmniMancer: you cons up the entire list in the wrong order, and nreverse it when your list is done. 23:47:45 OmniMancer: otherwise, like i mentioned, you want a queue. 23:48:07 yes 23:48:11 a simple implementation is a CONS with the list in the CAR and the last cons of the list in the CDR 23:49:02 but if given a list and you must put something on the end you must reverse it first 23:49:12 anyway queue is good 23:49:48 crap, nvidia is so fascist about people redistributing their drivers 23:50:06 if you are only adding a single item to the end of the list, APPEND or even better NCONC is fine... it's only one list traversal. 23:51:09 or `(,@list ,item) :) 23:51:10 you can NCONC ignoring its return value if it's a CONS, not NULL 23:51:35 weirdo: no, you can't in either case. 23:51:37 `(,.list ,item) 23:51:41 clhs nconc 23:51:41 http://www.lispworks.com/reference/HyperSpec/Body/f_nconc.htm 23:52:05 oh ... i'm wrong 23:52:10 i'd be amazed to see an impl implementing NCONC in terms of APPEND 23:52:34 nconc is not required to leave the list changed? 23:52:41 nconc, and nreverse, are I think the only destructive variants with specified mutation behavior 23:53:02 ah 23:53:03 weirdo: for most destructive ops its a 'may' .. nconc it seems specifies that it does modify the lists. 23:53:05 -!- Yuuhi [i=benni@p5483D4AE.dip.t-dialin.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 23:53:11 okay 23:53:33 redblue [i=star@ppp043.108-253-207.mtl.mt.videotron.ca] has joined #lisp 23:53:35 *drewc* still learns something new every day! 23:53:41 for most it can reuse the conses insytead of msking new ones? 23:53:53 IIRC for nreverse it is specified that the same conses must be used and the cars can't change 23:54:05 clhs nreverse 23:54:05 http://www.lispworks.com/reference/HyperSpec/Body/f_revers.htm 23:54:27 "nreverse might modify" 23:54:28 wol [n=wol@67.174.222.215] has joined #lisp 23:54:29 but you still need to rebind as the binding can't change? 23:54:34 -!- slash_ [n=Unknown@p4FF0BDA2.dip.t-dialin.net] has quit [Client Quit] 23:54:43 "nreverse might either create a new sequence, modify the argument sequence, or both" 23:54:51 hmm, I wonder where I heard that ... 23:54:58 -!- aack [n=user@a83-161-214-179.adsl.xs4all.nl] has quit [Remote closed the connection] 23:56:00 slash_ [n=Unknown@p4FF0BDA2.dip.t-dialin.net] has joined #lisp 23:56:08 OmniMancer: right, there are no first class places in CL, so no way to pass a binding to a function so that it may modify it 23:56:30 make function a macro? 23:57:14 or make function operate on symbol? 23:57:54 the later will not work for lexical variables, the former is overkill for the most part... just remember to SETF the variable! 23:58:34 why won't it work on lexical variables? 23:58:52 because they have no names by the time to code gets to work on them. 23:59:04 awww 23:59:10 *OmniMancer* cries