00:05:31 -!- benny [~benny@i577A1496.versanet.de] has quit [Read error: Operation timed out] 00:10:49 taiyal [~taiyal@bb-216-195-184-102.gwi.net] has joined #lisp 00:13:12 scottmaccal [~scottmacc@pool-71-173-93-142.ptldme.east.myfairpoint.net] has joined #lisp 00:16:49 -!- taiyal [~taiyal@bb-216-195-184-102.gwi.net] has quit [Ping timeout: 245 seconds] 00:17:40 -!- nicdev [~nicdev@209-6-50-99.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Quit: nicdev] 00:21:29 Mococa [~Mococa@187.58.11.167] has joined #lisp 00:21:32 -!- prxq [~mommer@mnhm-5f75dfee.pool.mediaWays.net] has quit [Quit: Leaving] 00:23:15 -!- pavelludiq [~pavelludi@87.246.58.193] has quit [Read error: Operation timed out] 00:25:48 -!- Bike [~Glossina@69.166.35.237] has quit [Ping timeout: 276 seconds] 00:27:07 xyxu [~xyxu@58.41.14.46] has joined #lisp 00:29:35 -!- ngz [~user@161.227.69.86.rev.sfr.net] has quit [Ping timeout: 264 seconds] 00:34:57 hypercube32 [~hypercube@231.125.189.72.cfl.res.rr.com] has joined #lisp 00:41:01 fbass [~fbass@75-173-95-248.albq.qwest.net] has joined #lisp 00:46:40 -!- hypercube32 [~hypercube@231.125.189.72.cfl.res.rr.com] has quit [Quit: Leaving] 00:48:23 phax [~phax@adsl-68-77-75-115.dsl.ipltin.ameritech.net] has joined #lisp 00:48:23 -!- phax [~phax@adsl-68-77-75-115.dsl.ipltin.ameritech.net] has quit [Changing host] 00:48:23 phax [~phax@unaffiliated/phax] has joined #lisp 00:48:43 cfy [~cfy@125.123.47.137] has joined #lisp 00:48:44 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 00:48:44 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 00:56:12 -!- zomgbie [~jesus@h081217131002.dyn.cm.kabsi.at] has quit [Ping timeout: 246 seconds] 00:57:15 -!- Mococa [~Mococa@187.58.11.167] has quit [Read error: Connection reset by peer] 00:57:17 Harag [~Harag@dsl-242-246-47.telkomadsl.co.za] has joined #lisp 00:57:43 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Ping timeout: 252 seconds] 00:57:58 Mococa [~Mococa@187.58.11.167] has joined #lisp 00:59:01 REPLeffect [~REPLeffec@69.54.115.254] has joined #lisp 01:01:09 tigranes` [~user@static-50-53-75-48.bvtn.or.frontiernet.net] has joined #lisp 01:01:19 -!- fbass [~fbass@75-173-95-248.albq.qwest.net] has quit [Quit: leaving] 01:01:28 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 01:01:36 -!- tigranes` [~user@static-50-53-75-48.bvtn.or.frontiernet.net] has quit [Client Quit] 01:04:26 -!- dnolen [~davidnole@pool-68-161-60-27.ny325.east.verizon.net] has quit [Quit: dnolen] 01:04:58 Bike [~Glossina@71-214-96-181.ptld.qwest.net] has joined #lisp 01:05:34 -!- Mococa [~Mococa@187.58.11.167] has quit [Ping timeout: 245 seconds] 01:06:09 shaggy- [~shaggy-@76.73.16.26] has joined #lisp 01:07:44 -!- zelak [~zelak@pdpc/supporter/student/zelak] has quit [Remote host closed the connection] 01:07:52 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Quit: leaving] 01:08:23 neoesque [~neoesque@210.59.147.232] has joined #lisp 01:08:28 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 01:08:41 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Client Quit] 01:11:39 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Ping timeout: 252 seconds] 01:13:47 -!- djinni` [~djinni`@li125-242.members.linode.com] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 01:15:32 djinni` [~djinni`@li125-242.members.linode.com] has joined #lisp 01:15:36 -!- shaggy- [~shaggy-@76.73.16.26] has quit [Quit: CGI:IRC (Ping timeout)] 01:16:03 REPLeffect [~REPLeffec@69.54.115.254] has joined #lisp 01:16:12 -!- ASau [~user@95-26-244-67.broadband.corbina.ru] has quit [Ping timeout: 240 seconds] 01:16:50 -!- kennyd [~kennyd@93-136-73-140.adsl.net.t-com.hr] has quit [Ping timeout: 268 seconds] 01:20:27 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 01:22:23 -!- billitch [~billitch@bastille.ma3.tv] has quit [Ping timeout: 258 seconds] 01:23:41 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 01:24:01 cfy [~cfy@125.123.47.137] has joined #lisp 01:24:01 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 01:24:01 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 01:24:25 hi. is the cmu ai archive available anywhere as one big file? 01:25:03 kennyd [~kennyd@78-1-160-12.adsl.net.t-com.hr] has joined #lisp 01:25:42 dto: a good ftp client should get you most of the way. 01:25:58 i'm reading the policy to see fi they dislike mirroring 01:26:17 Mococa [~Mococa@187.58.11.167] has joined #lisp 01:26:19 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Ping timeout: 252 seconds] 01:26:25 ok. 01:26:33 what would you use to mirror? I seem to recall there are some funny links with AFS stuff. 01:26:35 REPLeffect [~REPLeffec@69.54.115.254] has joined #lisp 01:27:14 e.g. maybe blackholes for wget based tools. 01:28:09 i'm trying lftp. seems to be working. 01:28:52 bah, recursive FTPing and you don't even exploit lisp's awesome powers of functional programming ;) 01:29:07 :) 01:34:23 -!- ikki [~ikki@201.155.92.12] has quit [Ping timeout: 264 seconds] 01:34:46 -!- neoesque [~neoesque@210.59.147.232] has quit [Quit: Bye!] 01:35:04 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 01:35:05 neoesque [~neoesque@210.59.147.232] has joined #lisp 01:36:54 -!- scottmaccal [~scottmacc@pool-71-173-93-142.ptldme.east.myfairpoint.net] has quit [Quit: ChatZilla 0.9.87 [Firefox 3.6.20/20110805211839]] 01:37:11 cfy [~cfy@125.123.47.137] has joined #lisp 01:37:11 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 01:37:11 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 01:37:43 scottmaccal [~scottmacc@pool-71-173-93-142.ptldme.east.myfairpoint.net] has joined #lisp 01:37:51 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 01:40:00 cfy [~cfy@125.123.47.137] has joined #lisp 01:40:00 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 01:40:00 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 01:40:35 it's pretty slow, but whatever 01:42:52 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 01:43:02 -!- bgs100 [~ian@unaffiliated/bgs100] has quit [Quit: 2017] 01:44:18 cheier [~amedueces@c-76-107-19-58.hsd1.ms.comcast.net] has joined #lisp 01:44:54 gko [~gko@42-72-160-92.dynamic-ip.hinet.net] has joined #lisp 01:47:12 -!- ISF [~ivan@143.106.196.130] has quit [Ping timeout: 240 seconds] 01:48:20 -!- SegFaultAX [~mkbernard@VEROXITY.ipcolo1.SanFrancisco1.Level3.net] has quit [Remote host closed the connection] 01:51:08 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Ping timeout: 258 seconds] 01:51:30 -!- scottmaccal [~scottmacc@pool-71-173-93-142.ptldme.east.myfairpoint.net] has quit [Quit: ChatZilla 0.9.87 [Firefox 3.6.20/20110805211839]] 01:57:52 scottmaccal [~scottmacc@pool-71-173-93-142.ptldme.east.myfairpoint.net] has joined #lisp 02:00:52 -!- ihyoyoung_ [raster@enlightenment2.osuosl.org] has quit [Read error: Connection reset by peer] 02:00:56 ihyoyoung [raster@enlightenment2.osuosl.org] has joined #lisp 02:01:00 tigranes [~user@static-50-53-75-48.bvtn.or.frontiernet.net] has joined #lisp 02:03:09 hargettp [~hargettp@pool-71-174-142-225.bstnma.east.verizon.net] has joined #lisp 02:04:03 petercoulton [~petercoul@cpc1-midd16-2-0-cust160.11-1.cable.virginmedia.com] has joined #lisp 02:04:16 leo2007 [~leo@58.22.114.132] has joined #lisp 02:09:21 dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has joined #lisp 02:09:21 -!- urandom__ [~user@p548A4CA9.dip.t-dialin.net] has quit [Remote host closed the connection] 02:10:57 -!- tigranes [~user@static-50-53-75-48.bvtn.or.frontiernet.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 02:11:21 -!- scottmaccal [~scottmacc@pool-71-173-93-142.ptldme.east.myfairpoint.net] has quit [Quit: ChatZilla 0.9.87 [Firefox 3.6.20/20110805211839]] 02:13:16 -!- dto [~dto@pool-96-252-62-25.bstnma.fios.verizon.net] has quit [Remote host closed the connection] 02:13:46 -!- cheier is now known as cheier^ 02:14:52 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 02:14:58 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Client Quit] 02:15:03 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 02:15:59 -!- Yuuhi [benni@p5483CB7B.dip.t-dialin.net] has quit [Ping timeout: 245 seconds] 02:19:05 -!- lolsuper_ [~super_@unaffiliated/lolsuper-/x-9881387] has quit [Quit: Leaving] 02:19:22 -!- cheier^ is now known as cheier 02:19:54 LiamH [~healy@pool-108-45-20-16.washdc.east.verizon.net] has joined #lisp 02:20:51 -!- Munksgaard [~Munksgaar@168.22.19.172] has quit [Ping timeout: 276 seconds] 02:23:48 Yuuhi [benni@p5483C813.dip.t-dialin.net] has joined #lisp 02:25:50 cfy [~cfy@125.123.47.137] has joined #lisp 02:25:51 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 02:25:51 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 02:27:33 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Ping timeout: 252 seconds] 02:27:50 REPLeffect [~REPLeffec@69.54.115.254] has joined #lisp 02:32:22 kushal [~kdas@fedora/kushal] has joined #lisp 02:35:06 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 02:39:19 ISF [~ivan@201.82.131.254] has joined #lisp 02:42:42 cfy [~cfy@125.123.47.137] has joined #lisp 02:42:42 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 02:42:42 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 02:47:50 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Quit: leaving] 02:57:58 Jasko [~tjasko@c-174-59-204-245.hsd1.pa.comcast.net] has joined #lisp 02:59:39 -!- hargettp [~hargettp@pool-71-174-142-225.bstnma.east.verizon.net] has quit [Quit: Linkinus - http://linkinus.com] 03:01:01 -!- jleija [~jleija@50.8.10.126] has quit [Quit: leaving] 03:02:17 -!- Bike [~Glossina@71-214-96-181.ptld.qwest.net] has quit [Ping timeout: 268 seconds] 03:04:49 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 03:04:49 Evanescence [~chris@122.237.20.72] has joined #lisp 03:08:42 cfy [~cfy@125.123.47.137] has joined #lisp 03:08:42 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 03:08:42 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 03:09:11 daniel__ [~daniel@p5082A121.dip.t-dialin.net] has joined #lisp 03:10:32 drdo` [~drdo@91.205.108.93.rev.vodafone.pt] has joined #lisp 03:11:33 spradnyesh [~pradyus@nat/yahoo/x-vvejyrcqreyeehew] has joined #lisp 03:11:35 -!- daniel [~daniel@p5082B6C6.dip.t-dialin.net] has quit [Ping timeout: 264 seconds] 03:12:11 -!- drdo [~drdo@91.205.108.93.rev.vodafone.pt] has quit [Ping timeout: 260 seconds] 03:12:31 -!- phax [~phax@unaffiliated/phax] has quit [Quit: Leaving] 03:16:44 Bike [~Glossina@71-38-152-114.ptld.qwest.net] has joined #lisp 03:18:27 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 03:25:54 cfy [~cfy@125.123.47.137] has joined #lisp 03:25:55 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 03:25:55 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 03:26:16 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 03:29:31 -!- kushal [~kdas@fedora/kushal] has quit [Ping timeout: 252 seconds] 03:29:33 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 03:32:05 cfy [~cfy@125.123.47.137] has joined #lisp 03:32:05 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 03:32:05 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 03:32:18 nicdev [~nicdev@209-6-50-99.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #lisp 03:33:31 z1l0g [jgw@miku.sdf.org] has joined #lisp 03:34:20 hola - it there a way to list current loaded functions in typical CL REPL session? 03:34:31 -!- ISF [~ivan@201.82.131.254] has quit [Read error: Operation timed out] 03:35:16 you mean user defined or all? 03:36:24 -!- gffa [~gffa@unaffiliated/gffa] has quit [Quit: sleep] 03:36:45 yes 03:36:52 user defined 03:40:21 (let (list) (do-symbols (x :cl-user list) (when (and (eq (symbol-package x) (find-package :cl-user)) (fboundp x)) (\ 03:40:21 push x list)))), maybe sorta? 03:40:37 (loop for s being the symbol in *package* if (fboundp s) (collect s)) 03:40:49 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 03:43:50 cfy [~cfy@125.123.47.137] has joined #lisp 03:43:50 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 03:43:51 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 03:44:19 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Quit: leaving] 03:44:25 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 03:44:57 Bike: yeah, that's pretty good - thanks! 03:47:57 -!- neoesque [~neoesque@210.59.147.232] has quit [Quit: Bye!] 03:52:58 -!- mrSpec [~Spec@unaffiliated/mrspec] has quit [Remote host closed the connection] 03:57:18 kushal [~kdas@fedora/kushal] has joined #lisp 03:58:39 -!- Ralith_ is now known as Ralith 03:59:18 yates [~yates@nc-71-54-141-32.dhcp.embarqhsd.net] has joined #lisp 03:59:27 what do folks here think of "Land of Lisp"? 04:02:47 ? 04:02:57 ,"land of lisp" 04:07:11 -!- kushal [~kdas@fedora/kushal] has quit [Ping timeout: 240 seconds] 04:11:10 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 04:11:19 ramkrsna [~ramkrsna@nat/redhat/x-sklzubyigazwlclx] has joined #lisp 04:11:20 -!- ramkrsna [~ramkrsna@nat/redhat/x-sklzubyigazwlclx] has quit [Changing host] 04:11:20 ramkrsna [~ramkrsna@unaffiliated/ramkrsna] has joined #lisp 04:11:48 -!- LiamH [~healy@pool-108-45-20-16.washdc.east.verizon.net] has quit [Quit: Leaving.] 04:11:59 yates: I like conrade's cartoons 04:13:52 cfy [~cfy@125.123.47.137] has joined #lisp 04:13:52 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 04:13:52 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 04:13:59 did you watch his presentation at philly lambda? 04:14:08 http://vimeo.com/9605639 04:14:24 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 04:14:48 it's long ~1 hr but it pretty much lays the book out 04:15:54 -!- z1l0g [jgw@miku.sdf.org] has quit [Quit: nite all] 04:17:39 cfy [~cfy@125.123.47.137] has joined #lisp 04:17:40 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 04:17:40 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 04:19:50 kushal [~kdas@nat/redhat/x-wvmmbpkxifocrbmw] has joined #lisp 04:19:52 -!- kushal [~kdas@nat/redhat/x-wvmmbpkxifocrbmw] has quit [Changing host] 04:19:52 kushal [~kdas@fedora/kushal] has joined #lisp 04:20:56 zenbalrog [~yaaic@adsl-74-248-207-33.tys.bellsouth.net] has joined #lisp 04:25:23 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 04:27:24 cfy [~cfy@125.123.47.137] has joined #lisp 04:27:24 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 04:27:24 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 04:35:01 mcsontos [~mcsontos@nat/redhat/x-wsxntwsxnrrfuhln] has joined #lisp 04:35:36 -!- zenbalrog [~yaaic@adsl-74-248-207-33.tys.bellsouth.net] has left #lisp 04:38:23 -!- Hundenn [~Hunden@e180104238.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 04:42:14 Hunden [~Hunden@e180103198.adsl.alicedsl.de] has joined #lisp 04:54:33 Deathaholic [~Mococa@187.58.11.167] has joined #lisp 04:55:45 -!- drdo` is now known as drdo 04:55:59 -!- Mococa [~Mococa@187.58.11.167] has quit [Ping timeout: 245 seconds] 04:58:05 -!- dlila [~dlila@CPE0014d1c9243c-CM001bd71cede2.cpe.net.cable.rogers.com] has quit [Quit: Leaving] 05:00:57 gravicappa [~gravicapp@ppp91-77-212-2.pppoe.mtu-net.ru] has joined #lisp 05:03:04 -!- Amyn [~abennama@cac94-2-87-91-21-215.dsl.sta.abo.bbox.fr] has quit [Ping timeout: 245 seconds] 05:03:50 -!- spradnyesh [~pradyus@nat/yahoo/x-vvejyrcqreyeehew] has quit [Ping timeout: 250 seconds] 05:13:06 Organometallica [~Jeremy@c-24-14-61-124.hsd1.il.comcast.net] has joined #lisp 05:13:50 spradnyesh [~pradyus@nat/yahoo/x-qbrohpbymodtvvkx] has joined #lisp 05:18:51 msponge [~msponge@nat/google/x-kajzvkygqumszrim] has joined #lisp 05:19:54 -!- dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has quit [Quit: dnolen] 05:24:18 cyrillos_ [~cyrill@188.134.33.130] has joined #lisp 05:26:11 -!- gko [~gko@42-72-160-92.dynamic-ip.hinet.net] has quit [Ping timeout: 240 seconds] 05:27:44 -!- doesthiswork [~Adium@he190123.dsl.fsr.net] has quit [Quit: Leaving.] 05:29:03 gko [~gko@42-72-160-92.dynamic-ip.hinet.net] has joined #lisp 05:39:48 -!- spradnyesh [~pradyus@nat/yahoo/x-qbrohpbymodtvvkx] has quit [Ping timeout: 250 seconds] 05:41:05 -!- oconnore [~Eric@c-66-31-125-56.hsd1.ma.comcast.net] has quit [Quit: Leaving.] 05:42:02 manuel_ [~manuel_@pD9FDD440.dip.t-dialin.net] has joined #lisp 05:48:54 -!- Deathaholic [~Mococa@187.58.11.167] has quit [Remote host closed the connection] 05:49:45 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 05:52:03 why does psetf expand into multiple nested empty let* and multiple-value-binds of a single variable? wouldn't single let* or m-v-b be enough? se here: http://pastebin.com/p3DXFVrL (in sbcl) 05:54:17 clhs get-setf-expansion 05:54:17 http://www.lispworks.com/reference/HyperSpec/Body/f_get_se.htm 05:54:56 is why. Places can be pretty complex, with temporaries to evaluate, and multiple values to stores. 05:55:37 It's compiled to the same intermediate representation anyway. 05:56:01 i don't doubt that the compiler can optimize away a lot. 05:57:10 spradnyesh [~pradyus@nat/yahoo/x-esugfmddgconzlat] has joined #lisp 05:57:29 ok, 5.1.1.2 is very comprehensive though very abstract 05:57:39 i'm reading examples now 05:57:48 paul0_ [~paul0@189.101.242.184] has joined #lisp 05:58:01 -!- paul0 [~paul0@189.101.242.184] has quit [Ping timeout: 252 seconds] 05:58:01 -!- paul0_ is now known as paul0 05:58:47 but yeah, the section you linked to clearly states the problem (evaluating everything only once and in correct order) 06:01:04 -!- spradnyesh [~pradyus@nat/yahoo/x-esugfmddgconzlat] has quit [Read error: Operation timed out] 06:01:50 an unrelated question: i'd like to experiment with x86 SSE2 intrinsics from an interpreted language. is there a lisp implementation that makes it possible? 06:02:07 i'm not worried in performance, i just want functions that do the same thing as those instructions 06:02:11 s/in/about/ 06:02:47 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Ping timeout: 240 seconds] 06:03:33 Athas [~athas@130.225.165.40] has joined #lisp 06:04:00 kiuma [~kiuma@85-18-55-37.ip.fastwebnet.it] has joined #lisp 06:06:14 -!- cheier is now known as cheier^ 06:09:27 neoesque [~neoesque@210.59.147.232] has joined #lisp 06:09:48 -!- paul0 [~paul0@189.101.242.184] has quit [Read error: Connection reset by peer] 06:10:08 paul0 [~paul0@189.101.242.184] has joined #lisp 06:11:57 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 252 seconds] 06:13:34 -!- nicdev [~nicdev@209-6-50-99.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Quit: nicdev] 06:13:51 -!- cyrillos_ is now known as cyrillos 06:18:14 tfb [~tfb@restormel.cley.com] has joined #lisp 06:19:37 spradnyesh [~pradyus@nat/yahoo/x-bswspzswgibszqva] has joined #lisp 06:20:14 -!- Deesl [~bsdboy@unaffiliated/deesl] has quit [Quit: Bye!] 06:20:25 -!- Tristam [~Tristam@cpe-72-226-124-205.nycap.res.rr.com] has quit [Ping timeout: 260 seconds] 06:21:04 Deesl [~bsdboy@unaffiliated/deesl] has joined #lisp 06:23:16 -!- elliottcable is now known as GONE 06:23:27 Amyn [~abennama@64.208.49.21] has joined #lisp 06:23:38 Tristam [~Tristam@cpe-72-226-124-205.nycap.res.rr.com] has joined #lisp 06:23:41 -!- GONE is now known as sephr 06:23:47 -!- prip [~foo@host36-124-dynamic.11-87-r.retail.telecomitalia.it] has quit [Ping timeout: 246 seconds] 06:23:48 dacoda [~user@gate.cdc.informatik.tu-darmstadt.de] has joined #lisp 06:24:01 jewel [~jewel@196-210-187-83.dynamic.isadsl.co.za] has joined #lisp 06:26:42 -!- sephr is now known as elliottcable_ 06:26:50 -!- elliottcable_ is now known as sephr_ 06:27:42 -!- sephr_ is now known as elliottcable 06:29:31 -!- elliottcable is now known as system 06:29:43 -!- system is now known as elliottcable 06:31:47 -!- tfb [~tfb@restormel.cley.com] has quit [Quit: sleeping] 06:34:20 leyyer_su [~user@222.210.67.144] has joined #lisp 06:37:20 prip [~foo@host36-124-dynamic.11-87-r.retail.telecomitalia.it] has joined #lisp 06:38:46 drl [~lat@110.139.230.255] has joined #lisp 06:38:56 In SLIME, how do I make with-open-file correctly indented when not in CL package? 06:43:29 -!- jewel [~jewel@196-210-187-83.dynamic.isadsl.co.za] has quit [Ping timeout: 245 seconds] 06:43:48 -!- Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has quit [Remote host closed the connection] 06:44:03 schoppenhauer [~christoph@unaffiliated/schoppenhauer] has joined #lisp 06:46:06 -!- paul0 [~paul0@189.101.242.184] has quit [Read error: Connection reset by peer] 06:46:35 paul0 [~paul0@189.101.242.184] has joined #lisp 06:48:54 -!- spradnyesh [~pradyus@nat/yahoo/x-bswspzswgibszqva] has quit [Ping timeout: 245 seconds] 06:52:46 BrianRice [~water@97-126-59-7.tukw.qwest.net] has joined #lisp 06:52:59 -!- H4ns` is now known as H4ns 06:54:54 churib [~user@95.156.194.105] has joined #lisp 06:55:05 -!- churib is now known as churib_ 06:55:09 spradnyesh [~pradyus@nat/yahoo/x-ulbgeckagwxwyrud] has joined #lisp 06:55:35 -!- Bike [~Glossina@71-38-152-114.ptld.qwest.net] has quit [Quit: Leaving.] 06:58:58 -!- Amyn [~abennama@64.208.49.21] has quit [Quit: Leaving.] 07:00:37 -!- Athas [~athas@130.225.165.40] has quit [Remote host closed the connection] 07:02:06 -!- manuel_ [~manuel_@pD9FDD440.dip.t-dialin.net] has quit [Read error: No route to host] 07:02:19 manuel_ [~manuel_@pD9FDD440.dip.t-dialin.net] has joined #lisp 07:02:29 moin manuel_ 07:03:10 hi H4ns 07:04:36 ehu [~ehuels@109.34.217.55] has joined #lisp 07:07:05 e-user [~e-user@nat/nokia/x-zigyldlynkjxyayu] has joined #lisp 07:12:44 Axioplase [~Axioplase@fortigate.kb.ecei.tohoku.ac.jp] has joined #lisp 07:16:05 -!- arbscht [~arbscht@60-234-133-173.bitstream.orcon.net.nz] has quit [Quit: WeeChat 0.3.4] 07:20:43 aerique [310225@xs8.xs4all.nl] has joined #lisp 07:21:57 -!- msponge [~msponge@nat/google/x-kajzvkygqumszrim] has quit [Quit: msponge] 07:27:53 -!- leo2007 [~leo@58.22.114.132] has quit [Quit: rcirc on GNU Emacs 23.3.50.1] 07:34:17 paul0_ [~paul0@189.101.242.184] has joined #lisp 07:34:43 -!- paul0 [~paul0@189.101.242.184] has quit [Read error: Connection reset by peer] 07:34:44 -!- paul0_ is now known as paul0 07:38:48 Beetny [~Beetny@ppp118-208-154-7.lns20.bne1.internode.on.net] has joined #lisp 07:40:31 -!- kiooeht [~kiooeht@184.154.102.118] has quit [Ping timeout: 260 seconds] 07:42:09 Amyn [~abennama@64.208.49.20] has joined #lisp 07:46:42 hajovonta [ilwoqk@usloft1077.serverloft.de] has joined #lisp 07:46:54 hello 07:48:25 Amyn1 [~abennama@64.208.49.21] has joined #lisp 07:49:41 hi 08:05:59 -!- hugod [~hugod@bas1-montreal50-1279442787.dsl.bell.ca] has quit [Ping timeout: 252 seconds] 08:06:28 benny [~benny@i577A89FD.versanet.de] has joined #lisp 08:09:01 jdz [~jdz@193.206.22.97] has joined #lisp 08:14:37 kiooeht [~kiooeht@184.154.102.118] has joined #lisp 08:20:15 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 08:20:53 Joreji [~thomas@64-073.eduroam.RWTH-Aachen.DE] has joined #lisp 08:21:24 kicsi a vilag 08:21:40 jtza8 [~jtza8@wbs-196-2-105-233.wbs.co.za] has joined #lisp 08:22:29 -!- theBlackDragon [~dragon@213.219.142.186.adsl.dyn.edpnet.net] has quit [Ping timeout: 252 seconds] 08:22:31 hi 08:23:17 c_arenz [~arenz@nat/ibm/x-zqhztnmadzmvefvq] has joined #lisp 08:23:45 -!- Amyn [~abennama@64.208.49.20] has quit [Quit: Leaving.] 08:25:12 nicdev [~nicdev@209-6-50-99.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #lisp 08:28:10 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 08:29:15 theBlackDragon [~dragon@213.219.142.186.adsl.dyn.edpnet.net] has joined #lisp 08:30:21 tfb [~tfb@80.238.0.145] has joined #lisp 08:31:07 varjag [~eugene@122.62-97-226.bkkb.no] has joined #lisp 08:31:41 misoczki [~misoczki@2001:660:3013:3:222:19ff:fe24:d155] has joined #lisp 08:32:36 hajovonta: fyi, http://meetup.com/parentheses (hungarian meetup group in budapest) 08:33:11 mostly lisp, but more like uncommon languages 08:36:42 -!- EyesIsMine [~eyes@unaffiliated/eyesismine] has quit [Ping timeout: 258 seconds] 08:38:50 wow i did not know about that 08:39:00 thanks 08:44:40 lnostdal_ [~lnostdal@ti0030a380-dhcp0111.bb.online.no] has joined #lisp 08:46:51 oh, I'm in Budapest and I didn't know about it either 08:47:08 btw there's also this one: http://www.meetup.com/fp-bud/ 08:47:15 ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has joined #lisp 08:47:36 There are mainly F# and Haskell people, but Lispers are welcome I guess 08:47:43 -!- nicdev [~nicdev@209-6-50-99.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Quit: nicdev] 08:48:16 hi. where's minion? (who runs it?) 08:51:04 EyesIsMine [~eyes@unaffiliated/eyesismine] has joined #lisp 08:51:36 Athas [~athas@shop3.diku.dk] has joined #lisp 08:57:47 -!- spradnyesh [~pradyus@nat/yahoo/x-ulbgeckagwxwyrud] has quit [Ping timeout: 246 seconds] 08:57:56 mstevens [~mstevens@ceres.etla.org] has joined #lisp 08:57:56 -!- mstevens [~mstevens@ceres.etla.org] has quit [Changing host] 08:57:56 mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has joined #lisp 09:00:23 well i don't know if a meetup is a right place for me, as i am relatively new to LISP, i've started learning 18 months ago 09:01:17 i am more experienced in other programming languages but i always had a feeling that something is missing 09:05:24 billitch [~billitch@bastille.ma3.tv] has joined #lisp 09:07:09 -!- Joreji [~thomas@64-073.eduroam.RWTH-Aachen.DE] has quit [Ping timeout: 240 seconds] 09:10:15 In ASDF, how to prevent output such as (format t "~W~%" fields) 09:10:37 I meant: Registering # when starting 09:11:38 gko: if you want to silence asdf altogether, you could try rebinding *standard-output* during the operation. 09:11:47 leo2007 [~leo@58.22.113.144] has joined #lisp 09:12:25 oudeis [~oudeis@109.67.211.114] has joined #lisp 09:14:14 H4ns: got it. 09:15:00 H4ns: thanks 09:16:10 spradnyesh [~pradyus@nat/yahoo/x-nkndvoynzbbmesjx] has joined #lisp 09:16:11 There's still "0 errors, 0 warnings" 09:16:37 gko: find out where that is printed to and maybe rebind that stream as well. 09:17:00 nikodemus [~nikodemus@cs181063174.pp.htv.fi] has joined #lisp 09:19:32 H4ns: got it. Thanks 09:19:54 Needed to use options in clisp. 09:23:52 -!- Organometallica [~Jeremy@c-24-14-61-124.hsd1.il.comcast.net] has quit [Ping timeout: 240 seconds] 09:25:10 gko: i wonder why you have the problem. are you working on packaging an application? 09:31:09 TeMPO[RAL] [~user@jiscser4.esc.rl.ac.uk] has joined #lisp 09:33:47 -!- Mandus [~aasmundo@oro.simula.no] has quit [Ping timeout: 264 seconds] 09:34:05 -!- Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has quit [Ping timeout: 260 seconds] 09:34:44 -!- varjag [~eugene@122.62-97-226.bkkb.no] has quit [Ping timeout: 245 seconds] 09:36:04 varjag [~eugene@122.62-97-226.bkkb.no] has joined #lisp 09:41:04 pdelgallego [~pdelgalle@1385159933.dhcp.dbnet.dk] has joined #lisp 09:42:09 -!- neoesque [~neoesque@210.59.147.232] has quit [Quit: Bye!] 09:42:16 H4ns: no, just need to write some software that uses ASDF'ed packages (including my part) and to delivery to someone who doesn't have any Lisp related stuff to run on his PC, so I have to pack everything, write the launcher, set the right variables, etc... 09:42:38 gko: why don't you dump an image instead of loading the system using asdf? 09:42:51 gko: that will make the whole thing easier to distribute, too. 09:43:23 gko: and it also will start much faster. 09:44:07 cfy [~cfy@125.123.47.137] has joined #lisp 09:44:08 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 09:44:08 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 09:44:12 H4ns: you mean, an image that includes the ASDF'ed packages, except mine, which may have to be updated... 09:44:59 gko: why not update the whole image instead? 09:45:52 gko: i mean, when you have a new version, just dump a new image and send that to your user. worked well for me in the past. 09:47:07 H4ns: I'll give it a shot. Thanks for the suggestion... 09:53:20 -!- xyxu [~xyxu@58.41.14.46] has quit [Ping timeout: 260 seconds] 10:02:04 -!- leo2007 [~leo@58.22.113.144] has quit [Quit: rcirc on GNU Emacs 23.3.50.1] 10:05:14 xan_ [~xan@109.144.255.242] has joined #lisp 10:08:25 hugod [~hugod@bas1-montreal50-1279439962.dsl.bell.ca] has joined #lisp 10:20:06 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 10:24:52 scrimohsin [~cms@unaffiliated/scrimohsin] has joined #lisp 10:27:14 -!- Amadiro [~Amadiro@ti0021a380-dhcp3462.bb.online.no] has quit [Ping timeout: 245 seconds] 10:32:40 -!- realitygrill [~realitygr@c-24-5-7-139.hsd1.ca.comcast.net] has quit [Quit: realitygrill] 10:34:55 -!- spradnyesh [~pradyus@nat/yahoo/x-nkndvoynzbbmesjx] has quit [Ping timeout: 268 seconds] 10:38:10 -!- oudeis [~oudeis@109.67.211.114] has quit [Quit: This computer has gone to sleep] 10:38:13 mishoo_ [~mishoo@79.112.119.222] has joined #lisp 10:38:15 -!- mishoo__ [~mishoo@79.112.119.222] has quit [Remote host closed the connection] 10:43:37 cfy [~cfy@125.123.47.137] has joined #lisp 10:43:37 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 10:43:37 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 10:50:56 spradnyesh [~pradyus@nat/yahoo/x-veyaatlqmlmlvtbw] has joined #lisp 10:52:26 oudeis [~oudeis@46-116-152-153.bb.netvision.net.il] has joined #lisp 10:53:12 -!- gravicappa [~gravicapp@ppp91-77-212-2.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 10:58:03 -!- gko [~gko@42-72-160-92.dynamic-ip.hinet.net] has quit [Read error: Connection reset by peer] 11:01:46 juniorroy [~juniorroy@212.36.228.103] has joined #lisp 11:02:56 mrSpec [~Spec@pool-151-204-255-122.bstnma.btas.verizon.net] has joined #lisp 11:02:56 -!- mrSpec [~Spec@pool-151-204-255-122.bstnma.btas.verizon.net] has quit [Changing host] 11:02:56 mrSpec [~Spec@unaffiliated/mrspec] has joined #lisp 11:05:07 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 11:07:02 -!- scrimohsin [~cms@unaffiliated/scrimohsin] has quit [Quit: Leaving] 11:11:57 Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has joined #lisp 11:13:26 beach [~user@ABordeaux-552-1-41-2.w81-49.abo.wanadoo.fr] has joined #lisp 11:23:19 -!- BlankVerse [~pankajm@202.3.77.219] has quit [Read error: Operation timed out] 11:23:26 BlankVerse [~pankajm@202.3.77.219] has joined #lisp 11:23:37 -!- leyyer_su [~user@222.210.67.144] has quit [Remote host closed the connection] 11:26:47 taiyal [~taiyal@bb-216-195-184-102.gwi.net] has joined #lisp 11:28:33 cfy [~cfy@125.123.47.137] has joined #lisp 11:28:33 -!- cfy [~cfy@125.123.47.137] has quit [Changing host] 11:28:33 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 11:32:09 aaagirl [~aaagirl@212-198-248-35.rev.numericable.fr] has joined #lisp 11:34:03 -!- aaagirl [~aaagirl@212-198-248-35.rev.numericable.fr] has quit [Client Quit] 11:36:11 -!- jdz [~jdz@193.206.22.97] has quit [Ping timeout: 260 seconds] 11:37:29 -!- spradnyesh [~pradyus@nat/yahoo/x-veyaatlqmlmlvtbw] has left #lisp 11:38:07 jdz [~jdz@193.206.22.97] has joined #lisp 11:40:35 pavelludiq [~pavelludi@87.246.58.193] has joined #lisp 11:47:21 nicdev [~nicdev@209-6-50-99.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #lisp 11:47:41 -!- zfx [~zfx@unaffiliated/zfx] has quit [Quit: Reconnecting] 11:47:46 zfx [~zfx@chorks.edutilos.net] has joined #lisp 11:48:12 -!- zfx [~zfx@chorks.edutilos.net] has quit [Changing host] 11:48:12 zfx [~zfx@unaffiliated/zfx] has joined #lisp 11:48:47 dto [~dto@pool-96-252-62-25.bstnma.fios.verizon.net] has joined #lisp 11:52:21 pnq [~nick@AC812B1F.ipt.aol.com] has joined #lisp 11:56:46 -!- acelent [~user@2001:690:2100:4:200:1aff:fe19:ddfc] has left #lisp 11:58:46 -!- yahooooo [~yahooooo@ec2-184-72-7-126.us-west-1.compute.amazonaws.com] has quit [Read error: Operation timed out] 12:00:00 yahooooo [~yahooooo@ec2-184-72-7-126.us-west-1.compute.amazonaws.com] has joined #lisp 12:00:17 -!- pnq [~nick@AC812B1F.ipt.aol.com] has quit [Ping timeout: 252 seconds] 12:00:17 -!- xan_ [~xan@109.144.255.242] has quit [Ping timeout: 252 seconds] 12:01:05 -!- cess11 [alla@95.209.163.3] has quit [Ping timeout: 260 seconds] 12:02:23 cess11 [alla@95.209.162.136] has joined #lisp 12:04:45 -!- varjag [~eugene@122.62-97-226.bkkb.no] has quit [Quit: Leaving] 12:09:59 -!- nicdev [~nicdev@209-6-50-99.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Quit: nicdev] 12:10:03 scottmaccal [~scottmacc@firewall.portland.lib.me.us] has joined #lisp 12:11:07 -!- oudeis [~oudeis@46-116-152-153.bb.netvision.net.il] has quit [Quit: This computer has gone to sleep] 12:13:28 Joreji [~thomas@66-235.eduroam.RWTH-Aachen.DE] has joined #lisp 12:13:59 oudeis [~oudeis@46-116-152-153.bb.netvision.net.il] has joined #lisp 12:14:38 spacefrogg [~spacefrog@unaffiliated/spacefrogg] has joined #lisp 12:16:03 -!- Beetny [~Beetny@ppp118-208-154-7.lns20.bne1.internode.on.net] has quit [Ping timeout: 252 seconds] 12:20:14 -!- manuel_ [~manuel_@pD9FDD440.dip.t-dialin.net] has quit [Quit: manuel_] 12:20:32 -!- juniorroy [~juniorroy@212.36.228.103] has quit [Ping timeout: 240 seconds] 12:22:33 -!- kushal [~kdas@fedora/kushal] has quit [Quit: Leaving] 12:22:59 -!- Evanescence [~chris@122.237.20.72] has quit [Quit: WeeChat 0.3.4] 12:26:20 -!- sanjoyd [~sanjoyd@unaffiliated/sanjoyd] has quit [Ping timeout: 240 seconds] 12:27:38 sanjoyd [~sanjoyd@unaffiliated/sanjoyd] has joined #lisp 12:28:10 -!- Oddity [~Oddity@unaffiliated/oddity] has quit [Ping timeout: 258 seconds] 12:28:12 jweiss [~user@nat/redhat/x-fzvowpudfqavsshm] has joined #lisp 12:34:44 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 12:36:21 LiamH [~none@pdp8.nrl.navy.mil] has joined #lisp 12:40:01 neoesque [~neoesque@210.59.147.226] has joined #lisp 12:40:25 shaggy- [~shaggy-@76.73.16.26] has joined #lisp 12:40:39 -!- neoesque [~neoesque@210.59.147.226] has quit [Client Quit] 12:40:53 hello. is anyone using lisp-unit? is it possible to execute the tests in the order they were defined? by default they are sorted by their name first 12:41:33 shaggy-: I use it, I've never tried to change the order though. 12:41:52 shaggy-: you can do that by defining them in alphabetical order :) 12:42:16 Or you can write your own form that calls them in the order that you want them evaluated. 12:42:21 shaggy-: if you look at the "get-tests" function, you see that the sorting is not optional. 12:42:43 shaggy-: try removing the sort. 12:43:03 okay, thanks all 12:44:09 dlowe [~dlowe@nat/google/x-yhnlgoebprujsbsd] has joined #lisp 12:44:33 -!- phryk is now known as Freundblase 12:44:45 -!- dto [~dto@pool-96-252-62-25.bstnma.fios.verizon.net] has quit [Remote host closed the connection] 12:49:34 lanthan [~ze@p54B7BC39.dip.t-dialin.net] has joined #lisp 12:52:02 -!- Freundblase is now known as phryk 12:53:40 kushal [~kdas@114.143.167.103] has joined #lisp 12:53:40 -!- kushal [~kdas@114.143.167.103] has quit [Changing host] 12:53:40 kushal [~kdas@fedora/kushal] has joined #lisp 12:54:47 -!- easyE [xt8o7W9z4L@panix2.panix.com] has quit [Ping timeout: 264 seconds] 12:54:47 dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has joined #lisp 12:55:37 OODavo [~david@ppp121-44-234-212.lns20.syd7.internode.on.net] has joined #lisp 12:56:24 -!- taiyal [~taiyal@bb-216-195-184-102.gwi.net] has quit [Ping timeout: 245 seconds] 12:59:20 Is there a way, when creating a file with WITH-OPEN-FILE, to also create any subdirectories necessary for said file to be created? 13:00:22 npoektop_ [~npoektop@213.141.130.13] has joined #lisp 13:00:23 OODavo: use ENSURE-DIRECTORIES-EXIST on the filename before opening. 13:00:34 -!- npoektop [~npoektop@213.141.130.13] has quit [Read error: Connection reset by peer] 13:00:35 -!- npoektop_ is now known as npoektop 13:01:06 (with-open-file (f (ensure-directories-exists pathname) ... 13:02:16 Works perfectly. Thanks. :) 13:02:17 nice had no idea about that one 13:08:18 -!- pdelgallego [~pdelgalle@1385159933.dhcp.dbnet.dk] has quit [Read error: No route to host] 13:09:10 oconnore [~Eric@c-66-31-125-56.hsd1.ma.comcast.net] has joined #lisp 13:14:38 ChibaPet [~mason@74.203.221.34] has joined #lisp 13:19:27 spradnyesh [~pradyus@117.192.44.13] has joined #lisp 13:19:50 -!- ramkrsna [~ramkrsna@unaffiliated/ramkrsna] has quit [Remote host closed the connection] 13:21:37 xan_ [~xan@94.119.7.202] has joined #lisp 13:23:55 -!- spradnyesh [~pradyus@117.192.44.13] has quit [Ping timeout: 250 seconds] 13:24:22 -!- Athas [~athas@shop3.diku.dk] has quit [Remote host closed the connection] 13:24:25 -!- oudeis [~oudeis@46-116-152-153.bb.netvision.net.il] has quit [Quit: This computer has gone to sleep] 13:25:26 -!- nikodemus [~nikodemus@cs181063174.pp.htv.fi] has quit [Quit: This computer has gone to sleep] 13:27:17 how do I get the sbcl type-inferred type of a function? using DESCRIBE just lists the type as "FUNCTION", not any specialization on params or return values 13:29:07 I've got functions that return (the fixnum ...) or (lambda ...), and it's giving me optimization notes that when calling those functions, it can't determine the type for further operations 13:30:27 -!- mrSpec [~Spec@unaffiliated/mrspec] has quit [Quit: mrSpec] 13:32:08 Phoodus: Functions might be redefined at any time. Are they inlined? 13:32:37 I don't think these are 13:32:48 so I'll need to manually declare the types if I presume them fixed? 13:33:13 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 13:34:02 I don't know what "presume them fixed" means, sorry. 13:34:18 presume that their param types & return types stay fixed for any function behind that symbol 13:34:28 orivej [~orivej@91.79.208.173] has joined #lisp 13:34:56 Dunno, sorry. 13:35:08 gko [~gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 13:36:56 nikodemus [~nikodemus@cs181056239.pp.htv.fi] has joined #lisp 13:38:22 spradnyesh [~pradyus@nat/yahoo/x-upthdoajzrjsljdh] has joined #lisp 13:38:25 -!- cheier^ [~amedueces@c-76-107-19-58.hsd1.ms.comcast.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 13:39:27 xyxu [~xyxu@222.68.162.199] has joined #lisp 13:41:00 -!- sacho [~sacho@95-42-121-139.btc-net.bg] has quit [Ping timeout: 258 seconds] 13:41:56 -!- gko [~gko@220-135-201-90.HINET-IP.hinet.net] has quit [Ping timeout: 240 seconds] 13:42:53 gko [~gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 13:44:30 -!- nikodemus [~nikodemus@cs181056239.pp.htv.fi] has quit [Disconnected by services] 13:44:33 nikodemus_ [~nikodemus@cs181056239.pp.htv.fi] has joined #lisp 13:44:55 nikodemus [~nikodemus@cs181056239.pp.htv.fi] has joined #lisp 13:48:30 mrSpec [~Spec@c-66-31-28-194.hsd1.ma.comcast.net] has joined #lisp 13:48:30 -!- mrSpec [~Spec@c-66-31-28-194.hsd1.ma.comcast.net] has quit [Changing host] 13:48:30 mrSpec [~Spec@unaffiliated/mrspec] has joined #lisp 13:49:23 -!- billitch [~billitch@bastille.ma3.tv] has quit [Ping timeout: 264 seconds] 13:49:46 billitch [~billitch@bastille.ma3.tv] has joined #lisp 13:49:54 realitygrill [~realitygr@c-24-5-7-139.hsd1.ca.comcast.net] has joined #lisp 13:50:34 gffa [~gffa@unaffiliated/gffa] has joined #lisp 13:51:31 easyE [z3LkYHs3xa@panix2.panix.com] has joined #lisp 13:51:45 urandom__ [~user@p548A5A68.dip.t-dialin.net] has joined #lisp 13:53:04 rmarianski [~rmariansk@mail.marianski.com] has joined #lisp 13:54:06 -!- Harag [~Harag@dsl-242-246-47.telkomadsl.co.za] has quit [Ping timeout: 268 seconds] 13:57:11 sacho [~sacho@46.10.17.252] has joined #lisp 14:04:10 Phoodus: yes, just declaim ftype on them and it will start optimizing it nicely 14:04:14 Phoodus: *derive-functiion-types*. 14:05:57 any libraries that would allow me to use sse2 and higher instructions from some lisp implementation? 14:06:17 (note: performance is irrelevant, i just need it for prototyping) 14:07:17 -!- jdz [~jdz@193.206.22.97] has quit [Read error: Operation timed out] 14:07:49 pkhuong: thats pretty cool, did not knew about that one. 14:10:19 zvrba: SBCL has SSE2 instructions available, but they're not exposed as intrinsics. You'd have to write assembly generators. 14:10:40 bellsouth [~BellSouth@118.186.129.159] has joined #lisp 14:10:58 It's probably simplest to just hack what you need yourself. 14:12:17 pkhuong: thanks! will that work similar to structure changes, in that when a function's type changes it issues a warning? 14:12:37 antgreen [~user@bas3-toronto06-2925099682.dsl.bell.ca] has joined #lisp 14:12:42 Phoodus: there's one easy way to find out. 14:12:52 yes, ask somebody else ;) 14:13:16 *Phoodus* figures out where he can add that earliest in the build 14:13:23 jdz [~jdz@193.206.22.97] has joined #lisp 14:14:41 hmm, from the repl there's only the normal style warning about redefining a fun, not about a type spec change 14:16:05 -!- finnrobi [finnrobi@caracal.stud.ntnu.no] has quit [Remote host closed the connection] 14:19:10 -!- dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has quit [Quit: dnolen] 14:20:02 pkhuong: huh, what's an assembly generator? 14:20:30 -!- tritchey [~tritchey@c-98-213-213-26.hsd1.in.comcast.net] has quit [Quit: tritchey] 14:21:36 zvrba: the lisp code SBCL uses to generate machine code from its final internal representation. 14:21:52 gko` [gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 14:25:36 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Ping timeout: 276 seconds] 14:26:10 oudeis [~oudeis@bzq-218-0-98.cablep.bezeqint.net] has joined #lisp 14:28:10 juniorroy [~juniorroy@212.36.228.103] has joined #lisp 14:28:28 pkhuong: has somebody already done that? 14:29:22 bye 14:29:25 -!- hajovonta [ilwoqk@usloft1077.serverloft.de] has quit [] 14:30:55 zvrba: what you're looking for? There are branches with intrinsics, but if all you need is to prototype some vectorised operations, it's probably less trouble to emulate them yourself. 14:31:58 homie [~levgue@xdsl-78-35-164-64.netcologne.de] has joined #lisp 14:32:18 wbooze [~levgue@xdsl-78-35-164-64.netcologne.de] has joined #lisp 14:32:27 khaliG [~khali@203.171.126.201.static.rev.aanet.com.au] has joined #lisp 14:32:56 -!- Amyn1 [~abennama@64.208.49.21] has quit [Ping timeout: 260 seconds] 14:35:35 fantazo [~fantazo@178-190-239-166.adsl.highway.telekom.at] has joined #lisp 14:42:39 Bike1 [~Glossina@69.166.35.233] has joined #lisp 14:43:56 -!- spradnyesh [~pradyus@nat/yahoo/x-upthdoajzrjsljdh] has quit [Ping timeout: 246 seconds] 14:45:54 -!- scottmaccal [~scottmacc@firewall.portland.lib.me.us] has quit [Ping timeout: 268 seconds] 14:48:33 lhnz [~lhnz@188-223-83-48.zone14.bethere.co.uk] has joined #lisp 14:49:39 doesthiswork [~Adium@he190123.dsl.fsr.net] has joined #lisp 14:50:50 -!- pavelludiq [~pavelludi@87.246.58.193] has quit [Ping timeout: 258 seconds] 14:51:04 scottmaccal [~scottmacc@firewall.portland.lib.me.us] has joined #lisp 14:52:15 paprika [~paprika@FL1-122-131-59-22.hrs.mesh.ad.jp] has joined #lisp 14:54:11 paprika_ [~paprika@FL1-122-131-59-22.hrs.mesh.ad.jp] has joined #lisp 14:54:27 -!- cess11 [alla@95.209.162.136] has quit [Remote host closed the connection] 14:54:45 -!- billitch [~billitch@bastille.ma3.tv] has quit [Quit: leaving] 14:55:03 -!- paprika [~paprika@FL1-122-131-59-22.hrs.mesh.ad.jp] has quit [Read error: Connection reset by peer] 14:57:31 -!- sonnym [~sonny@rrcs-184-74-137-69.nys.biz.rr.com] has quit [Read error: Connection reset by peer] 15:00:43 what does a return type of NIL mean? #'push describes as (function (&rest t) nil), while a lambda that runs has a return type of (values cons &optional) 15:01:00 ...lambda that just runs push in its body.... 15:01:41 what "running push" mean? 15:01:57 (lambda (a b) (push a b)) 15:02:11 ah. You're asking why the function type of a macro is (function (&rest t) nil)? 15:02:20 ah, a macro 15:02:24 ok 15:02:48 spradnyesh [~pradyus@nat/yahoo/x-iyjxonjgfziwrpve] has joined #lisp 15:02:57 You can call #'push with anything, it'll always error out. Thus, every value it returns (the empty set) is of type NIL (the empty/bottom type). 15:03:12 just trying to debug "return type not fixed values" notes on labels, where when one of the labels functions has that issue, the note goes on the labels form itself, not indicating which local function triggered it 15:03:13 -!- cYmen_ is now known as cYmen 15:03:34 ok, thanks 15:04:53 pavelludiq [~pavelludi@87.246.58.193] has joined #lisp 15:04:58 Phoodus: it can be hard to track down when local functions are moved around a lot by the compiler. The note is complaining that it has to resort to the general case calling convention because some local function doesn't always return the same number of values (similar enough type so that the values can be unboxed is even better). 15:07:00 Amyn [~abennama@64.208.49.21] has joined #lisp 15:07:43 right, I've taken to wrapping each labels body in (values (progn ...)) and see when the note goes away to narrow it down 15:07:57 because it's generally just one of them 15:09:07 took me a long time to figure out what that actually meant, because initially I was just looking at the return value of the whole labels form, which in most cases was unambiguous, causing much frustration ;) 15:10:06 Can someone point me to doc about babel? I can't seem to find anything 15:11:56 -!- jdz [~jdz@193.206.22.97] has quit [Ping timeout: 246 seconds] 15:13:36 dardoria [~boiantz@92-247-214-154.spectrumnet.bg] has joined #lisp 15:13:58 aklt [~aklt@83.221.146.187] has joined #lisp 15:14:25 -!- scottmaccal [~scottmacc@firewall.portland.lib.me.us] has quit [Ping timeout: 250 seconds] 15:15:20 -!- zfx [~zfx@unaffiliated/zfx] has quit [Quit: leaving] 15:15:48 -!- bellsouth [~BellSouth@118.186.129.159] has quit [Remote host closed the connection] 15:16:32 pkhuong: i'm just looking to prototype some vectorized operations. simple arithmetic is not hard to emulate, but shuffle operations are a bit more tricky 15:17:15 gemelen [~shelta@shpd-95-53-216-30.vologda.ru] has joined #lisp 15:17:15 pkhuong: i've googled a bit and it seems that I'd have to build sbcl from scratch to get intrinsics. 15:17:33 -!- sellout1 is now known as sellout 15:18:31 zvrba: right. Hence my suggestion to emulate what you need by hand. 15:19:30 ok! 15:21:14 gravicappa [~gravicapp@ppp91-77-219-205.pppoe.mtu-net.ru] has joined #lisp 15:24:34 jdz [~jdz@193.206.22.97] has joined #lisp 15:26:19 lanthan_ [~ze@p54B7D0EF.dip.t-dialin.net] has joined #lisp 15:27:39 ISF [~ivan@201.82.131.254] has joined #lisp 15:27:58 -!- oconnore [~Eric@c-66-31-125-56.hsd1.ma.comcast.net] has quit [Quit: Leaving.] 15:28:27 -!- Amyn [~abennama@64.208.49.21] has quit [Ping timeout: 268 seconds] 15:29:07 -!- lanthan [~ze@p54B7BC39.dip.t-dialin.net] has quit [Ping timeout: 240 seconds] 15:29:07 -!- TeMPO[RAL] [~user@jiscser4.esc.rl.ac.uk] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 15:31:13 runix [~runix@0116100055.0.fullrate.dk] has joined #lisp 15:32:46 add^_ [~add^_^@h61n8c1o838.bredband.skanova.com] has joined #lisp 15:33:08 -!- aerique [310225@xs8.xs4all.nl] has quit [Quit: ...] 15:33:25 -!- e-user [~e-user@nat/nokia/x-zigyldlynkjxyayu] has quit [Read error: Connection reset by peer] 15:34:16 Is there a smart way to access the individual digits in a number? (I would like to find the sum of the digits) - My approach would be to convert the number into a string and put the single chars->digits into a sequence and apply addition to it.) 15:34:59 (reduce #'+ (map 'vector 'digit-char-p (princ-to-string integer)))? 15:35:35 there is some beauty to the approach, but it is also kind of smelly 15:36:16 but then, i don't think that a solution not involving the extra string can be more concise 15:36:19 looping with an integer division by 10 wuld probably be faster 15:36:20 sonnym [~sonny@singlebrookvpn.lightlink.com] has joined #lisp 15:36:48 ASau [~user@95-24-215-148.broadband.corbina.ru] has joined #lisp 15:37:15 Phoodus: And then it could work with an optional radix parameter 15:37:24 sure 15:37:33 Phoodus: on a bignum, it's possible the implementation can be faster. 15:38:07 eg, if the implementation uses a power of ten instead of a power of two as basis. 15:38:18 thanks :) 15:38:33 -!- add^_ [~add^_^@h61n8c1o838.bredband.skanova.com] has quit [Read error: Operation timed out] 15:40:58 -!- misoczki [~misoczki@2001:660:3013:3:222:19ff:fe24:d155] has quit [Quit: Leaving] 15:41:07 -!- dacoda [~user@gate.cdc.informatik.tu-darmstadt.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 15:43:32 -!- jdz [~jdz@193.206.22.97] has quit [Ping timeout: 240 seconds] 15:44:02 hmm, I've got a function that doing a toplevel proclaim or declaim for its ftype is not being reflected in DESCRIBE (it just comes out as FUNCTION) 15:44:29 and this is with sb-ext:*derive-function-types* set as well 15:45:01 -!- paprika_ [~paprika@FL1-122-131-59-22.hrs.mesh.ad.jp] has quit [Remote host closed the connection] 15:47:23 -!- oudeis [~oudeis@bzq-218-0-98.cablep.bezeqint.net] has quit [Quit: This computer has gone to sleep] 15:48:55 -!- alanpearce [~alan@home.alanpearce.co.uk] has quit [Quit: alanpearce] 15:49:10 alanpearce [~alan@home.alanpearce.co.uk] has joined #lisp 15:49:20 paprika [~paprika@FL1-122-131-59-22.hrs.mesh.ad.jp] has joined #lisp 15:49:21 Phoodus: lisppaste 15:54:45 -!- spradnyesh [~pradyus@nat/yahoo/x-iyjxonjgfziwrpve] has left #lisp 15:55:00 loke [~elias@bb115-66-85-121.singnet.com.sg] has joined #lisp 15:55:36 nikodemus: I'm trying; I just get a blank page after submitting :-P 15:56:21 that happens. paste the link here 15:56:50 http://paste.lisp.org/display/124229 # this? 15:56:55 http://paste.lisp.org/display/124229 15:57:11 yeah, I'm on different machines between IRC and dev, so some hand-copying over :-P 15:58:24 just trying to get labels to know that it has just 1 return value 15:58:33 Phoodus: (describe 'clean-up-current-job) 15:58:49 the declaration attaches to the name, not the object 16:00:05 -!- pavelludiq [~pavelludi@87.246.58.193] has quit [Ping timeout: 252 seconds] 16:00:37 ah, that's the trick 16:00:45 yep, works 16:01:04 though it still doesn't stop labels from whining about mismatched values returns. Probably something more detailed going on 16:01:27 dl [~user@chpcwl01.hpc.unm.edu] has joined #lisp 16:01:56 Oddity [~Oddity@unaffiliated/oddity] has joined #lisp 16:02:46 what's the complaint? 16:03:37 optimization note, "return type not fixed values, so can't use known return convention" 16:03:54 I've got an (if (...) (push ...) (clean-up-current-job)) 16:04:13 if I wrap it with (values (clean-up-current-job)) the note goes away, but also breaks tail recursion 16:04:51 erm, tail call 16:05:09 (not that this particular case matters for optimizing that, but others do) 16:05:15 so I just want to understand 16:06:00 you can't have a specialised return convention when one of the returns is from a tail-call to a global function. 16:06:43 that, and if you want to declare something as returning exactly one value, you need to do use (function ... (values &optional)) 16:06:50 so would you say my best bet is to just muffle the note instead of trying to give it non-noting code? 16:07:01 (function ... t) = (function ... (values t &rest t)) 16:07:02 -!- mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has quit [Quit: leaving] 16:07:08 nikodemus: yeah, I tried that too, as that's what many other functions describe as 16:07:26 Phoodus: just ignore the note? 16:07:35 Phoodus: depends on what you want. 16:07:39 -!- Bike1 [~Glossina@69.166.35.233] has quit [Ping timeout: 276 seconds] 16:08:02 But you'll have to work hard to have both tail-call and a specialised return convention. 16:08:25 -!- aklt [~aklt@83.221.146.187] has quit [Quit: schmooperman] 16:08:35 I'm not sure what it wants in order to perform the return convention optimization 16:08:36 -!- paprika [~paprika@FL1-122-131-59-22.hrs.mesh.ad.jp] has quit [Remote host closed the connection] 16:09:07 -!- doesthiswork [~Adium@he190123.dsl.fsr.net] has left #lisp 16:09:19 have you benchmarked this? is this a real bottleneck? 16:09:21 the question is more what do *you* want. 16:09:41 naeg [~naeg@194.208.239.170] has joined #lisp 16:09:48 nikodemus: this isn't a bottleneck, but I've had these optimization notes in tight-looped code as well that I just hacked around or muffled 16:10:15 then i would not spend any more time on it if i were you :) 16:10:17 pkhuong: first off, I want to understand what the compiler's trying to do that it can't currently do 16:10:37 (sxhash #'cons) => 42 . am I the only one who finds that amusing? easter egg in sbcl? :) 16:10:48 (it returns 42 for any 'builtin') 16:11:22 Phoodus: using a specialised return convention. 16:12:00 pavelludiq [~pavelludi@87.246.58.193] has joined #lisp 16:12:09 (meaning it can ignore the carry flag and/or ecx?) 16:12:28 -!- xyxu [~xyxu@222.68.162.199] has quit [Ping timeout: 246 seconds] 16:12:34 Bike1 [~Glossina@69.166.35.237] has joined #lisp 16:13:51 and put values in registers regardless of the normal convention, including using more registers than usual or returning unboxed values. 16:14:07 scottmaccal [~scottmacc@firewall.portland.lib.me.us] has joined #lisp 16:14:17 ok 16:14:36 manuel_ [~manuel_@pD9FDD440.dip.t-dialin.net] has joined #lisp 16:16:04 so constraining it to use just the normal edx for a single return is still note-worthy 16:16:13 Harag [~Harag@dsl-242-247-181.telkomadsl.co.za] has joined #lisp 16:16:59 hmm, I presume doing locally declaring the called functions as inline would get around that, if it's worth inlining 16:18:13 *Phoodus* figures out how to macro-muffle it 16:20:30 oh nice, declaring inside the local function body works for a nice precise muffle strike 16:22:33 SegFaultAX [~mkbernard@VEROXITY.ipcolo1.SanFrancisco1.Level3.net] has joined #lisp 16:22:45 -!- tfb [~tfb@80.238.0.145] has quit [Quit: sleeping] 16:22:49 oconnore [~Eric@75-150-66-254-NewEngland.hfc.comcastbusiness.net] has joined #lisp 16:26:02 ZabaQ1 [~john.conn@135.114-84-212.staticip.namesco.net] has joined #lisp 16:27:09 -!- ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has quit [Ping timeout: 276 seconds] 16:30:43 zero errors, zero warnings, zero notes. As it should be 16:31:16 and that's with optimization cranked 16:32:04 ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has joined #lisp 16:32:07 Phoodus: just so you're aware: it is not always possible to silence all the notes without explicitly muffling them if you're compiling with high SPEED policy 16:32:25 billitch [~billitch@bastille.ma3.tv] has joined #lisp 16:32:43 right, I've got a (slow-op ...) macro for things where it's explicity doing non-fixnum etc code 16:32:52 so I've intentionally marked such places 16:33:38 the macro muffles the operation, and unmuffles each of the parameters :) 16:34:05 -!- ZabaQ1 [~john.conn@135.114-84-212.staticip.namesco.net] has quit [Ping timeout: 260 seconds] 16:35:09 -!- realitygrill [~realitygr@c-24-5-7-139.hsd1.ca.comcast.net] has quit [Quit: realitygrill] 16:35:29 Phoodus: also, when optimizing things based on notes, make sure to benchmark and profile at the same time: it's surprisingly easy to make a note go away while pessimizing the code 16:35:55 I usually turn to disassembly, but yeah 16:36:45 Eataix [~Eataix@CPE-121-223-176-127.lns1.civ.bigpond.net.au] has joined #lisp 16:36:47 -!- spacefrogg [~spacefrog@unaffiliated/spacefrogg] has quit [Quit: spacefrogg] 16:36:50 good :) 16:37:24 one quick question, when things like generic-+ are called, is there a quick check for 2 fixnums and doing a quick add, or does it always loop through variable number of parameters? 16:37:57 I've been thinking about a macro that does fixnum checks, deferring to generic-+ for the uncommon edge case, but don't know if generic-+ already does that 16:38:03 pnq [~nick@ACA22285.ipt.aol.com] has joined #lisp 16:38:17 phax [~phax@unaffiliated/phax] has joined #lisp 16:38:20 Phoodus: what kind of software are you writing? 16:38:25 (probably shoudl be asking such things in #sbcl, but that's my last one) 16:38:50 scalable inference-based server 16:39:40 -!- mcsontos [~mcsontos@nat/redhat/x-wsxntwsxnrrfuhln] has quit [Quit: Leaving] 16:39:51 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 16:40:07 -!- billitch [~billitch@bastille.ma3.tv] has quit [Ping timeout: 246 seconds] 16:40:24 Phoodus: fixnum+fixnum is special-cased, yes 16:40:28 Phoodus: there's a fast path for fixnums, and two-arg-+ is only ever called with two arguments. 16:41:00 if you see two-arg-foo in sb-sprof, then you're paying through the nose 16:41:41 I mean runtime checks. I give 2 parameters to +, type unknown at compilation time, they're both fixnums 16:42:10 billitch [~billitch@bastille.ma3.tv] has joined #lisp 16:42:18 99% of the case they _will_ be fixnums, but I want others supported as well 16:43:25 yes, generic-ops are assembly routines that check for fixnum+fixnum case 16:43:29 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Client Quit] 16:43:35 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 16:43:46 and delegate to two-arg-ops if not 16:43:46 ok, probably not worth the bother then, thanks 16:44:39 tritchey [~tritchey@12.238.2.170] has joined #lisp 16:45:09 -!- drl [~lat@110.139.230.255] has quit [Ping timeout: 245 seconds] 16:46:07 -!- dardoria [~boiantz@92-247-214-154.spectrumnet.bg] has quit [Remote host closed the connection] 16:46:21 dardoria [~boiantz@92-247-214-154.spectrumnet.bg] has joined #lisp 16:47:35 -!- Oddity [~Oddity@unaffiliated/oddity] has quit [Ping timeout: 250 seconds] 16:48:22 -!- dardoria [~boiantz@92-247-214-154.spectrumnet.bg] has left #lisp 16:48:36 -!- gko [~gko@220-135-201-90.HINET-IP.hinet.net] has quit [] 16:54:33 Amyn [~abennama@cac94-2-87-91-21-215.dsl.sta.abo.bbox.fr] has joined #lisp 16:58:37 rfg [~rfg@dsl78-143-210-200.in-addr.fast.co.uk] has joined #lisp 16:58:52 drl [~lat@110.139.230.255] has joined #lisp 17:00:11 -!- ehu [~ehuels@109.34.217.55] has quit [Ping timeout: 240 seconds] 17:02:03 -!- ISF [~ivan@201.82.131.254] has quit [Ping timeout: 252 seconds] 17:06:41 ISF [~ivan@201.82.131.254] has joined #lisp 17:07:12 -!- scottmaccal [~scottmacc@firewall.portland.lib.me.us] has quit [Quit: ChatZilla 0.9.87 [Firefox 3.6.20/20110805211839]] 17:10:05 scottmaccal [~scottmacc@firewall.portland.lib.me.us] has joined #lisp 17:10:38 acelent [~user@2001:690:2100:4:200:1aff:fe19:ddfc] has joined #lisp 17:11:14 is there a copy of the ObjectLisp user's manual on the web? 17:11:36 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 260 seconds] 17:11:58 -!- ISF [~ivan@201.82.131.254] has quit [Ping timeout: 246 seconds] 17:12:50 antoszka [~antoszka@unaffiliated/antoszka] has joined #lisp 17:17:34 i found http://lispm.dyndns.org/documentation/ObjectLisp-Manual.pdf but the server seems to be down 17:19:22 markskilbeck [~user@unaffiliated/markskilbeck] has joined #lisp 17:19:27 -!- pnq [~nick@ACA22285.ipt.aol.com] has quit [Ping timeout: 268 seconds] 17:20:35 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 264 seconds] 17:21:48 -!- tritchey [~tritchey@12.238.2.170] has quit [Quit: tritchey] 17:22:22 try archive.org 17:22:42 *maxm* retreived many a lost document using that wonderful contraption 17:23:40 no luck 17:24:33 iirc, this site is personal, so most probably it doesn't serve web-crawlers 17:25:33 why would you want to learn about it? I had to google what it is, and its some 1985 predecessor of CLOS? 17:26:21 orivej_ [~orivej@91.79.228.117] has joined #lisp 17:26:27 maxm: i'm curious to see how prototype-based oop looks like in lisp 17:26:38 maxm: More like a predecessor of JavaScript. 17:27:17 iirc, it -competed- with CLOS. 17:27:21 -!- orivej [~orivej@91.79.208.173] has quit [Ping timeout: 260 seconds] 17:27:28 when there was a call to pick an object system. 17:28:16 acelent: I worked on a CLOS-like prototype system. If you're just curious as to what it might look like, that's one place to look. 17:28:46 there's also KR and clon (or whatever it's called now... proton?) 17:29:19 oudeis [~oudeis@109.67.211.114] has joined #lisp 17:29:24 sykopomp: which one did you work on? 17:29:57 sheeple 17:30:46 you looked at http://www.unlambda.com/lispm/lmi-source/extract/dj_full/l/objectlisp/ ? 17:30:52 antoszka [~antoszka@unaffiliated/antoszka] has joined #lisp 17:30:57 it does multiple dispatch. 17:30:59 appears to be its source, probably docs are somewhere in tehre 17:31:03 KR has a constraints system 17:31:20 maxm: thanks! 17:31:26 googlefu 17:31:34 (multiple dispatch without preventing GC, right on prototype objects) 17:33:52 does multiple dispatch normally prevent gc? 17:35:18 allandee: I think sykopomp is referring to maintaining strong references, not preventing GC itself. 17:35:22 anyone here tried http://www.cliki.net/de.setf.amqp ? 17:35:34 it's much more of an issue for prototype than class -based OO. 17:36:20 aah, I see, thanks 17:36:38 kushal: i tried it but could not build it 17:36:51 Xach, ah :) 17:38:52 tritchey [~tritchey@12.238.2.170] has joined #lisp 17:39:01 *manuel_* is writing function remove_if_not($f, $list, $options = array()) { } in php 17:39:16 i wonder if someone will stumble upon this and think "wtf" 17:39:38 "wtf? manuel odendahl stuck writing php?" 17:39:44 haha 17:39:49 i enjoy it very much actually 17:40:13 my indian slaveboy less so 17:41:37 mighty have fallen? 17:41:44 Oddity [~Oddity@unaffiliated/oddity] has joined #lisp 17:42:08 Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has joined #lisp 17:42:23 -!- sellout [~Adium@c-98-245-161-7.hsd1.co.comcast.net] has quit [Ping timeout: 252 seconds] 17:42:49 zelak [~zelak@pdpc/supporter/student/zelak] has joined #lisp 17:43:04 nikodemus: I'm completely puzzled about: 17:43:05 allandee: CLOS supports EQL dispatch, so you can already define methods on specific objects. 17:43:07 "08:29:50 that, and if you want to declare something as returning exactly one value, you need to do use (function ... (values &optional)) " 17:43:20 "08:30:08 (function ... t) = (function ... (values t &rest t)) " 17:43:32 Is that a "design bug" or something? 17:43:40 allandee: but you can expect the Lisp to maintain a strong reference to that object if you define a method that uses it. 17:43:49 Hexstream: no. It's what the spec says. 17:43:53 not sure if this is specified, though. It's been a while. 17:44:08 Spec bug then ;) Can you point me to where it says that? 17:46:17 -!- lnostdal_ [~lnostdal@ti0030a380-dhcp0111.bb.online.no] has quit [Quit: Leaving] 17:46:52 Ah wait, is T a special case? Is (function ... any-type) always the same thing as (function ... (values any-type &rest any-type))?? That really seems ridiculous to me. 17:47:02 sykopomp: I gathered that eventually. :) I was trying to get my head around it, wondering if you can somehow hook into the type-system, so that CLOS uses the `define-type'-test for specializers 17:47:26 Hexstream: no, it's &rest t. 17:47:37 Oh. 17:48:23 Okay, so it's a convenience thing, that makes much more sense. 17:48:34 Specifying the type of the first return value doesn't necessarily mean that there is exactly one return value. 17:49:45 (function ... some-type) == (function ... (values some-type &rest t)) == (function ... (values some-type &optional))? 17:49:46 sykopomp: IIRC, AMOP unfortunately constrains the design a bit here, and makes it more work to use weak references in EQL specifiers. 17:50:31 Hexstream: The presence of &optional or &rest in a VALUES type signals that the syntax describes the argument type of a compatible function in a multiple-value-call context. 17:50:38 that said, I'd argue that there's a design smell anyway, if you're -really- going to be generating enough methods for it to matter. 17:50:54 and CLOS turns out to be an incredibly dynamic system, even though it's class-based. 17:51:14 in some ways, even more dynamic than JavaScript, in good ways :) 17:51:28 sykopomp: That is not the case of bare type or VALUES without &optional or &rest. In the simple case, the type applies to the first k arguments, and the rest is unspecified. 17:51:39 that was for Hexstream. 17:52:03 -!- scottmaccal [~scottmacc@firewall.portland.lib.me.us] has quit [Quit: ChatZilla 0.9.87 [Firefox 3.6.20/20110805211839]] 17:52:36 Xach, do you know any other working implementation of AMPQ/qpid in lisp ? 17:52:48 When &optional or &rest are present, we can be more specific. (function () type) is equivalent to (function () (values type)) is equivalent to (function () (values type &rest t)). 17:53:22 (values type &optional) is compatible with a function of argument type (type &optional), so it returns exactly one value, of that type. 17:53:48 *Hexstream* can't seem to be able to think today. 17:54:27 -!- c_arenz [~arenz@nat/ibm/x-zqhztnmadzmvefvq] has quit [Ping timeout: 258 seconds] 17:55:08 kushal: no 17:55:47 -!- orivej_ is now known as orivej 17:55:56 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 260 seconds] 17:56:21 -!- Eataix [~Eataix@CPE-121-223-176-127.lns1.civ.bigpond.net.au] has quit [] 17:56:44 sellout [~Adium@c-98-245-161-7.hsd1.co.comcast.net] has joined #lisp 17:56:45 pkhuong: is this rule standard or is it specific to sbcl? 17:56:52 barryfm [~barryfm@fl-71-2-133-215.dhcp.embarqhsd.net] has joined #lisp 17:56:58 antoszka [~antoszka@unaffiliated/antoszka] has joined #lisp 17:57:33 Xach, http://13-49.blogspot.com/2009/09/zero-mq-lisp.html this says we can use it for AMPQ 17:58:02 -!- khaliG [~khali@203.171.126.201.static.rev.aanet.com.au] has quit [Quit: Leaving] 17:58:16 -!- Joreji [~thomas@66-235.eduroam.RWTH-Aachen.DE] has quit [Ping timeout: 260 seconds] 17:58:20 Joreji [~thomas@66-235.eduroam.RWTH-Aachen.DE] has joined #lisp 17:58:36 markskil` [~user@host217-43-218-6.range217-43.btcentralplus.com] has joined #lisp 17:58:57 If it had been just me, some-type would be equivalent to (values some-type), which would mean you're returning exactly one value of type some-type, and (values some-type &rest t) would mean you're returning a primary value of some-type plus perhaps some other values... Seems to me this would be immediately intuitive... 17:59:08 Hexstream: note that a return type without a VALUES, or with a VALUES but no &optional/&rest doesn't apply to a m-v-call context, so we have to take defaulting into account when the types may include NIL. 17:59:42 Hexstream: so you'd error on (the fixnum (truncate ...)) ? 17:59:55 Right. ;P 18:00:15 -!- markskilbeck [~user@unaffiliated/markskilbeck] has quit [Ping timeout: 240 seconds] 18:00:27 acelent: it's how SBCL/CMUCL interpret the specification. The rules are standard, the interpretation left to implementers. 18:00:29 Worth noting that I didn't really make extensive use of declarations yet and I haven't really dealt with performance-critical code... 18:01:11 clhs the 18:01:11 http://www.lispworks.com/reference/HyperSpec/Body/s_the.htm 18:01:19 "Regardless of number of values declared by value-type, the number of values returned by the the special form is the same as the number of values returned by form." 18:01:22 Hexstream: that's not very much in agreement with the general CL philosophy that multiple values can be ignored and default to nil, except in explicit multiple value contexts. 18:01:39 Perhaps some-type would mean (values some-type &rest t), but (values some-type) would definitely mean exactly one value of type some-type. This reflects the fact that (values (values 1 2)) => 1 18:02:57 -!- shaggy- [~shaggy-@76.73.16.26] has quit [Quit: CGI:IRC (Session timeout)] 18:03:07 Maybe we could have a EXACT-VALUES declaration that works like this... 18:03:17 I mean, EXACT-VALUES type. 18:03:22 It's called &optional, and it's standard. 18:03:47 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 264 seconds] 18:04:31 Wait, I always thought (values some-type &optional) meant the same as (values some-type &rest t). Seems like I have some serious clhs types/declarations studying to do :( 18:04:41 antoszka [~antoszka@unaffiliated/antoszka] has joined #lisp 18:04:54 I'd note that your proposal is more strict than multiple-value-bind, which discards additional values and defaults missing ones to NIL (in parallel with a simple VALUES type). 18:04:57 jewel [~jewel@196-210-187-116.dynamic.isadsl.co.za] has joined #lisp 18:05:07 Jasko3 [~tjasko@209.74.44.225] has joined #lisp 18:05:08 pkhuong: Right, right. 18:05:43 (deftype exact (&rest types) `(values ,@types &optional)) ; there you have it 18:07:20 Hexstream: you can also define a macro that returns exactly N values from a form: `(multiple-value-bind (,gensym1 .. ,gensymN) ,form (values ,gensym1 .. ,gensymN)) 18:08:35 -!- Jasko [~tjasko@c-174-59-204-245.hsd1.pa.comcast.net] has quit [Ping timeout: 264 seconds] 18:09:07 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Client Quit] 18:10:59 -!- sellout [~Adium@c-98-245-161-7.hsd1.co.comcast.net] has quit [Ping timeout: 245 seconds] 18:11:35 -!- drl [~lat@110.139.230.255] has quit [Ping timeout: 264 seconds] 18:11:48 -!- fmeyer [~fmeyer@187.38.98.102] has quit [Quit: leaving] 18:11:55 Is huchentoot is still the go-to CL webserver or has another challenger arisen? Do people use CL-HTTP? 18:12:19 TristamWrk [~tristamwr@2620:0:2820:b03:214:22ff:fe45:5204] has joined #lisp 18:12:33 -!- tritchey [~tritchey@12.238.2.170] has quit [Quit: tritchey] 18:12:47 Im just trying to guage, if I was implementing a website today which one would be the closest to the "right" choice 18:12:51 bobbysmith007: it's still go-to. cl-http's licensing is absurd. there are a few other not-as-popular http servers like teepeedee2 and something by doug hoyte. 18:13:03 fmeyer [~fmeyer@187.38.98.102] has joined #lisp 18:13:26 antoszka [~antoszka@unaffiliated/antoszka] has joined #lisp 18:13:27 it doesn't seem to me like the space is well-explored and I suspect a really good alternative to hunchentoot would get a lot of traction. 18:13:38 Xach: What's the deal with teepeedee2? I remember there being some drama about including it in quicklisp 18:14:06 drdo: The author refused to update it to adapt to changes in parenscript. After a while he did. Drama over. 18:14:36 It seems to aim to be really fast. I don't know if it succeeds. 18:14:53 thanks Xach that was my impression as well 18:15:13 I can't use hunchentoot on my vps, blows up the memory 18:15:24 -!- fmeyer [~fmeyer@187.38.98.102] has quit [Client Quit] 18:15:42 fmeyer [~fmeyer@187.38.98.102] has joined #lisp 18:16:07 Here's a nickel, kid, get a real vps. 18:16:30 :) 18:16:30 Xach: 1GB of memory is reasonable 18:16:34 even that blows up 18:16:56 Worked fine for me with 512MB on real hardware. 18:17:07 hopefully someday I will be able to get a vps 18:17:19 sellout [~Adium@c-98-245-161-7.hsd1.co.comcast.net] has joined #lisp 18:17:23 drdo: how many requests were you serving? 18:17:26 Xach: i tested it with httperf just from my home computer and managed to crash it easily 18:17:33 -!- nikodemus [~nikodemus@cs181056239.pp.htv.fi] has quit [Quit: Leaving] 18:17:39 So don't do that, then. 18:17:43 wait, hunchentoot has a bad license? 18:17:53 anvandare: Hunchentoot does not have a bad license. 18:18:02 cl-https license is crazy... why so strange 18:18:02 were you using the iolib backend /w hunchentoot? 18:18:07 then why would an alternative get a lot of traction? 18:18:15 Fade: nah just the default spawn a thread per request 18:18:28 I found the iolib backend was more robust. 18:18:30 fwiw 18:18:34 where can i get that? 18:18:41 anvandare: it wasn't written to be very fast or scalable, as far as i can tell. maybe it's getting better. 18:18:49 hmm 18:18:56 Fade: does that use epoll? 18:18:58 it's in hunchentoot. you pass a parameter to the server start function. 18:19:06 I assume so 18:19:13 anvandare: it works fine for my level of traffic, but it probably wouldn't work for 10x or 100x the traffic. 18:19:17 I didn't look into the actual code. 18:19:29 Fade: Is that new? It's not in the docs 18:19:45 -!- nikodemus_ [~nikodemus@cs181056239.pp.htv.fi] has quit [Ping timeout: 258 seconds] 18:20:22 no, I was last playing with hunchentoot about a year ago. 18:21:13 is there any way to use lisp codes directly from python or in the opposite way ? 18:21:17 I think it has been there for quite awhile. 18:21:31 kushal: cl-python :) 18:21:41 Fade: It's definetly not there in the quicklisp version 18:21:56 drdo: Quicklisp uses the released tarball which lags behind svn a lot. 18:22:08 I ordered some SBCL stuff from cafepress.com, now I have make a customs declaration and pay the VAT Damn EU beaurocracy 18:22:17 kushal: well, some terrifying combination of CFFI and Python's C interface could possibly do it 18:22:24 Xach: Where's the svn at? Can't find a link to it form weitz's site 18:22:32 I don't know. 18:22:32 for most purposes, tho, some sort of RPC might be less terrible 18:22:47 8 days left on nikodemus' fundraiser... $1500 away. 18:22:50 I just went back and looked at the code I was remembering, and it's a UCW system. 18:22:52 I guess we won't get MADEIRA :( 18:22:55 pkhuong: Thanks for the explanations, I finally made sense of everything you said earlier (except 2 things) and I agree that CL type declarations make sense after all. It may not be as intuitive as it could be without prior exposure, but it's still the right thing. 18:23:00 I thought UCW backs to hunchentoot. 18:23:09 rsynnott, sykopomp I have the rpc part ready , just looking if there is any better way :) 18:23:11 drl [~lat@110.139.230.255] has joined #lisp 18:23:13 When I wanted to call Python from Lisp, I used sb-ext:run-program and used argv and the filesystem to communicate. 18:23:15 (although we'll get parts...) 18:23:16 but it definitely sets up an iolib reactor. 18:23:25 "(01:52:45 PM) pkhuong: When &optional or &rest are present, we can be more specific. (function () type) is equivalent to (function () (values type)) is equivalent to (function () (values type &rest t))." 18:23:25 kushal: better how? 18:23:37 https://github.com/shamazmazum/hunchentoot-iolib 18:23:38 Xach, and for the opposite ? 18:23:38 "(01:59:06 PM) pkhuong: Hexstream: note that a return type without a VALUES, or with a VALUES but no &optional/&rest doesn't apply to a m-v-call context, so we have to take defaulting into account when the types may include NIL." 18:23:40 Found this thought 18:23:41 if you really want it to be fast, it _might_ be worth looking at using CFFI 18:23:41 UCW un hunchentoot? 18:23:41 (ucw::make-cackend :iolib :host "0.0.0.0" :port 80) 18:23:48 Is what I couldn't make sense of. 18:23:49 s/un/on 18:23:54 s/cack/back 18:23:58 kushal: I never wanted to do that. 18:23:59 but that does sound a bit awful, and I doubt it'd be much better for most purposes 18:24:06 rsynnott, not sure, was not sure it is a good idea 18:24:26 Fade: I've wondered how UCW's httpd fares against hunchentoot :) 18:24:57 Xach, here I need to provide the same information (which I am providing through hunchentoot ) using qpid/AMPQ 18:25:07 not too sure... I put up a knight's tour solver that was getting hit pretty hard at one point. 18:25:12 and it stood up 18:25:51 Xach, and python as a really nice qpid bindings 18:25:58 *sykopomp* wonders when a node.js/twisted-style web server will pop up for CL. 18:25:58 s/as/has 18:26:26 fe[nl]ix was saying that there was a gsoc project a few years ago to build a twisted style reactor in iolib 18:26:37 I hear about this node.js everywhere, what's that? 18:26:38 *Xach* would like to add a small http server to Quicklisp for a local UI 18:26:38 but the dev's ultimately hated the reactor style, and gave up. 18:27:00 i've written a lot of code in twisted, and I like the model. 18:27:05 Xach, btw, I managed to package 32 lisp modules in rpm using quicklisp within an hour 18:27:18 just need to update the license field properly 18:27:43 need to submit the idea of packaging to engineering board though 18:27:43 felideon: but that app was running on a large machine with 32G of ram. 18:28:03 i never investigated resource usage. 18:28:39 Fade: heh 18:29:02 HG` [~HG@p579F7BD3.dip.t-dialin.net] has joined #lisp 18:29:33 pnq [~nick@AC810F25.ipt.aol.com] has joined #lisp 18:30:54 fiveop [~fiveop@dslb-178-002-126-210.pools.arcor-ip.net] has joined #lisp 18:31:29 -!- Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has left #lisp 18:32:26 sykopomp: I first saw such a server (for arbitrary IP protocols, not just HTTP) in ~2003; it ran on clisp. Everyone derided it because it didn't use native threads, so couldn't exploit the upcoming multicores, and because CPS is a pain to write. 18:33:10 is that code still around? 18:33:46 pkhuong: how ironic :( 18:34:40 now the async folks are getting C10K without bleeding threads out the wazoo :< 18:34:53 https://github.com/vsedach/HTTP-DOHC 18:35:00 Fade: at this point, it might be beneficial to just build such a thing on top of iolib. 18:35:26 sykopomp: fwiw, I think the critics were and are still right. 18:35:38 well, this project I'm on is about to head into the teeth of a networking component that is going to have to scale to very large numbers of connections. 18:35:56 Fade: might be related. The discussion probably took place on the c2 wiki. 18:36:09 thanks 18:36:54 pkhuong: What do you suggest doing with hunchentoot to allow it to scale and support things like websockets and comet, then? 18:37:33 sykopomp: empirically, getting more boxen works. 18:37:52 sykopomp: the main problem is the thread per connection thing 18:38:01 drdo: yes 18:38:13 sykopomp: I think the proactor pattern is better than the straight reactor in runtimes that have threads. 18:38:15 pkhuong: brute forcing it is a bit expensive. 18:38:19 the solution is to write a taskmaster that uses epoll 18:38:31 Fade: I've never heard of the 'proactor'! 18:38:34 the problem is that usocket doesn't support getting the file descriptor 18:38:54 you can still do it, just not very portably 18:38:59 http://en.wikipedia.org/wiki/Proactor_pattern 18:39:29 well, iolib already does epoll/kqueue etc. 18:39:50 Fade: sure, but the problem is that hunchentoot specifically uses usocket 18:39:56 Fade: isn't this what HT does, already? Am I misreading? 18:40:09 and you can define new taskmasters easily, but you'll get pass a usocket socket 18:40:11 ht uses thread-per-connection 18:40:13 *passed 18:40:31 now that i've dug into the code I was talking about, ucw includes a webserver that backends to iolib. it doesn't use ht. 18:40:37 I guess I'm having trouble seeing how the proactor works. :) 18:41:37 well, the programming model is the same as you would use in forex twisted 18:41:56 but the architecture of the main eventloop uses a threadpool. 18:42:08 kind of like using the threaded reactor in twisted 18:42:22 instead of the main callback registration reactor. 18:42:44 I've never actually seen a system that uses proactor in the wild. 18:42:49 hm 18:43:14 ikki [~ikki@201.155.92.12] has joined #lisp 18:43:39 the paper linked on the wikipedia article is pretty good. 18:43:52 dabd [~dabd@a79-169-214-13.cpe.netcabo.pt] has joined #lisp 18:44:14 is ucw alive? 18:44:29 it's being used in projects 18:44:40 I think development is pretty quiet at this point, though. 18:44:42 -!- oudeis [~oudeis@109.67.211.114] has quit [Quit: This computer has gone to sleep] 18:44:44 is lisp alive? 18:44:46 :) 18:45:01 it's being used in projects 18:45:16 Not dead, only dreaming. 18:45:25 but actively recruiting cultists. 18:45:31 s/cultists/followers/ 18:45:49 -!- Bike1 [~Glossina@69.166.35.237] has quit [Ping timeout: 252 seconds] 18:45:51 at least 'user' implies action. ;) 18:45:56 Weblocks does get more action, though. 18:46:08 weblocks is better documented. 18:46:12 except its site has been down 18:46:20 which doesn't exactly look good for a web framework. 18:46:20 they're both so hard to install 18:46:21 if Emacs can have a church, CL should have a mosque 18:46:22 quicklisp stats verified this 18:46:23 :D 18:46:23 all those dependencies 18:46:40 Sorry for asking twice, but my connection died immediately after last asking. Is there something like phplist written in lisp? 18:46:49 drl: What does phplist do? 18:47:52 when I was working /w drewc and unknown_lamer on a UCW project, i asked them about weblocks, and their main criticism was in the CPS implementation. 18:48:22 didn't it use the arnesi stuff? 18:48:32 no, it uses another CPS transformer. 18:48:35 oh 18:49:03 yup, the stack hack is much nicer. 18:49:08 drewc felt that the arnesi transformer was superior in many respects, but I didn't know enough about them to form an opinion of my own. 18:49:58 Fade: UCW interprets CL. 18:50:13 Mandus [~aasmundo@oro.simula.no] has joined #lisp 18:50:22 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 18:50:36 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Quit: leaving] 18:50:59 -!- drl [~lat@110.139.230.255] has quit [Ping timeout: 245 seconds] 18:51:24 Fade: right, slava admits to having written defmacro because he didnt understand the CPS transformer 18:51:35 phkuong: ow! 18:51:37 s/defmacro/weblocks 18:51:45 yeah, I read that. 18:52:30 the sweet weblocks widgets were usable without the cps deal, though? 18:52:38 oudeis [~oudeis@93-172-61-216.bb.netvision.net.il] has joined #lisp 18:52:47 (or is) 18:53:04 I was about to mention the widgets. That may be another reason for its slightly better adoption. 18:53:34 ucw is a very nice system; it could be amazing with an active community and actual documentation. 18:53:39 -!- lanthan_ [~ze@p54B7D0EF.dip.t-dialin.net] has quit [Read error: Operation timed out] 18:53:46 weblocks is way more polished. 18:54:19 lanthan_ [~ze@p54B7AA3C.dip.t-dialin.net] has joined #lisp 18:54:26 Bike1 [~Glossina@69.166.35.233] has joined #lisp 18:54:41 I've only done one system in raw UCW.. the rest of the stuff I've done with it layered Lisp on Lines above UCW. 18:54:54 felideon: CPS transformer? 18:55:05 exponential complexity! 18:55:19 zero documentation 18:55:22 heh 18:56:09 Fade: is UCW seriously not optimal for CRUD web apps? 18:56:27 ACD* 18:56:40 is it just a matter of overkill for something simple? 18:56:56 tempire: yeah. continuation-passing style 18:57:20 felideon: we use a heavily customized ucw to make crud apps and it is quite nice... but pretty complex with no documentation. Also we dont actually use the CPS part of UCW much though it does work pretty well 18:57:27 i dunno if it's overkill. 18:57:53 I spent a lot of time with UCW around 2004/2005, and I can't remember any continuation-magic from back then - it was fine for CRUD-stuff then. 18:57:56 I built that knight's tour solver and exported it to the web in about a hundred lines of code for the UCW component. 18:58:05 i guess the answer is 'that depends' 18:58:46 UCW is in desperate need of a documentation sub project. 18:59:00 most of the available info is years and years out of date. 18:59:25 we started with ucw sometime aroun 06 and have been using it continuously since (though mostly for small internal type stuff). Our company's billing system is a huge crud app built on top of it with a hundred other libraries included (such as cl-typesetting for invoices) 18:59:34 -!- rfg [~rfg@dsl78-143-210-200.in-addr.fast.co.uk] has quit [Quit: rfg] 18:59:47 huge meaning lots of screens, lots of data, and few users 18:59:57 -!- jtza8 [~jtza8@wbs-196-2-105-233.wbs.co.za] has quit [Quit: leaving] 19:00:21 I like UCW, but if I were cooking something new, I doubt I'd use it again. 19:00:25 so a favorable developer/user ratio :) 19:00:43 when you get into corner cases, your only option is to read the ucw code. 19:01:27 if the system didn't have a lot of in flight state, i'd probably try out clack. 19:01:45 -!- kpreid [~kpreid@cpe-67-249-228-147.twcny.res.rr.com] has quit [Quit: Quitting] 19:02:22 lanthan__ [~ze@p54B7DD4F.dip.t-dialin.net] has joined #lisp 19:02:25 ...and building a crud-abstraction for your needs on top of ht or allegroserve might look like a better deal 19:02:35 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 19:02:41 bobbysmith007: right I can see UCW being quite useful there. but if all i need is a website with 3-4 screens that just does basic CRUD... I'm assuming Hunchentoot is more than enough. 19:03:19 drl [~lat@110.139.230.255] has joined #lisp 19:04:09 -!- lanthan_ [~ze@p54B7AA3C.dip.t-dialin.net] has quit [Ping timeout: 252 seconds] 19:05:42 -!- runix [~runix@0116100055.0.fullrate.dk] has quit [Quit: leaving] 19:05:50 felideon: most certainly 19:06:35 -!- Elench [~user@unaffiliated/elench] has quit [Remote host closed the connection] 19:06:35 bobbysmith007: you work with ryepup i assume? 19:06:45 felideon: yes indeed 19:07:09 Elench [~user@unaffiliated/elench] has joined #lisp 19:07:12 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Ping timeout: 258 seconds] 19:07:24 rfg [~rfg@dsl78-143-210-200.in-addr.fast.co.uk] has joined #lisp 19:08:56 bobbysmith007: when are you guys coming down for SunLisp 19:09:00 :) 19:10:48 felideon: honestly it is the first ive heard of it, but seems like perhaps I should pay more attention :) 19:11:01 -!- pnq [~nick@AC810F25.ipt.aol.com] has quit [Ping timeout: 250 seconds] 19:14:38 srcerer_ [~chatzilla@dns2.klsairexpress.com] has joined #lisp 19:15:03 pkhuong: you there? 19:16:29 -!- srcerer [~chatzilla@dns2.klsairexpress.com] has quit [Ping timeout: 258 seconds] 19:16:31 well its actually for for everyone. Is it acceptable to to destructively modify the form passed to defmacro? 19:16:33 -!- srcerer_ is now known as srcerer 19:17:06 no 19:17:08 maxm: if you want to make hard to trackdown bugs, that is a good start... 19:17:09 I basically solved the problem I had with my QT macros not having a good debug location info (due to SBCL using 'eq hash table) 19:18:30 what I did is like so: (defun with-qt (forms) (cond ((....)) (t (let ((first (with-qt (car forms))) ((rest (with-qt (rest-forms))))) 19:18:31 (setf (first forms) first (rest forms) rest))))) 19:19:02 and it actually worked, everything expands correctly, and if there is an error in the expanded form, debugger shows the exact expression 19:19:10 -!- rfg [~rfg@dsl78-143-210-200.in-addr.fast.co.uk] has quit [Ping timeout: 258 seconds] 19:19:10 man 19:19:14 hi 19:19:17 ) 19:19:18 its so tempting :-) 19:19:18 :) 19:19:44 tempting? 19:19:46 maxm: how do you get to the form you passed to defmacro? o.O 19:19:54 I bought PAIP (M. Kaufmann Publisher) but 5 pages are blank :) 19:20:10 allandee: well (with-qt is actually a macro) 19:20:14 I think old lisps used macros like that, but it generally struck me as a bad idea... 19:20:28 is there a way to contact P. Norvig? 19:20:33 well this seems to be fixing the problem of newly consed forms not having debug locations 19:20:41 -!- Bike1 is now known as Bike 19:20:54 Posterdati: norvig.com has info 19:20:54 Posterdati: it seems unlikely P. Norvig is responsible 19:20:58 Posterdati: you want to contact Norvig because your copy has 5 blank pages? 19:20:59 since you return the same cons cell, the debug machinery that relies on #eq is happy 19:21:02 Posterdati: Try the bookseller 19:21:29 Xach: I'd like to let him know... Bookseller is not responding to my mails 19:21:37 -!- cyrillos [~cyrill@188.134.33.130] has quit [Read error: Connection reset by peer] 19:21:51 Bike: there is an errata, not for my edition :( 19:21:52 rfg [~rfg@dsl78-143-210-200.in-addr.fast.co.uk] has joined #lisp 19:21:54 in fact I'm very tempted to patch iterate to do the same 19:21:57 Posterdati: may want to keep in mind that Norvig wrote that book prior to 1992 19:22:02 maxm: can you get to it after read-time? 19:22:11 adeht: I know... 19:22:11 I meant contact info. But you should probably check the publisher and seller. 19:22:14 Posterdati: perhaps you could post to your twitter to mobilize your army of followers 19:22:29 allandee: well at whataver time SBCL calls the macro, I think its at compile time really 19:22:30 Xach: followers? 19:22:47 -!- Joreji [~thomas@66-235.eduroam.RWTH-Aachen.DE] has quit [Ping timeout: 268 seconds] 19:23:33 Xach: twitter? 19:23:42 Xach: is you cannibal name? 19:23:52 Xach: s/you/your 19:24:24 cyrillos [~cyrill@188.134.33.130] has joined #lisp 19:25:29 I can't find anything in hyperspec forbidding it, and it solves a serious practical problem 19:26:00 I'll just stick with it until I hit any unexplained stuff 19:29:43 tritchey [~tritchey@c-98-213-213-26.hsd1.in.comcast.net] has joined #lisp 19:32:42 are user bots allowed here? 19:32:56 Posterdati: not yours. 19:33:09 Xach: why not? 19:33:18 Because you seem fucking crazy. 19:33:25 Not a good policy to let crazy people run bots. 19:34:24 Xach: but I'm not crazy. Doctor said that after my last treatment he could unleash my left arm... 19:34:43 crazy people -> crazy bots with a 84% probability 19:34:54 -!- petercoulton [~petercoul@cpc1-midd16-2-0-cust160.11-1.cable.virginmedia.com] has quit [Quit: Leaving] 19:35:39 maxm: you're modifying literals, which has undefined consequences according to the standard 19:36:53 aklt [~aklt@77.75.167.158] has joined #lisp 19:36:57 Hi there 19:37:05 maxm: modifying literals can have FUN side-effects. Including DF-like fun. 19:37:16 ok you talked me out of it 19:37:28 (it's not necessary that literals are modified, but assuming naive use of that macro...) 19:37:35 but if its solvable this way, means there has to be a correct solution to this problem 19:38:02 maxm: I didn't understand your problem 19:38:21 adeht: you ever used iterate? or any other macro that re-arrenges code? 19:38:23 <-- lisp n00b. I have seen the syntax @foo being used to refer to a field on a class in functions that do not mention the class they are referring to. Is there anywhere I can read up on this? 19:38:35 maxm: yes 19:38:54 aklt: That's not a syntax I've ever seen in common lisp. Do you have a concrete example? 19:39:11 adeht: when you have compile error inside iterate, or worse a runtime error, and try to highlight the source form of the error, SBCL gives you entire (defun) where iterate form is as the source 19:40:17 maxm: I don't remember such a thing. can you give steps to reproduce? 19:40:20 reason for this is that SBCL relies on #'eq hashtable when generating debug source locations for macroexpanded code. So when any macro that returns (cons'ed code (even if its unchanged), will not have any debug source info 19:42:05 Xach: I think I do, give me a sec. 19:42:16 aklt: if you find some, try pasting to paste.lisp.org for review 19:43:00 I've seen it in docstrings, I think. 19:44:05 adeht: http://paste.lisp.org/display/124236 19:44:05 19:44:05 19:44:36 Xach: Ah, here we are: https://github.com/aerique/google-ai-challenge-2011-1-ants/blob/master/src-common/common.lisp 19:44:41 in 1st example error location is entire iterate form, in 2nd example error location is correct. Similarly for runtime errors. 19:44:49 -!- naeg [~naeg@194.208.239.170] has quit [Quit: WeeChat 0.3.5] 19:45:17 problem disappears if macro mangles the form passed to it in place (by setfing car and cdr) 19:46:30 aklt: that is one person's syntax experiment, not anything standard. 19:46:36 in fact iterate may be bad example since it moves stuff around, but even a simple macro that does not change the structure of the code, but for example replaces every (foo ...) with (foo-1 ...), has the same problem 19:46:46 aklt: https://github.com/aerique/google-ai-challenge-2011-1-ants/blob/master/src-common/macros.lisp defines what it means 19:47:38 Xach: Ah! Great, thanks for clarifying that for me 19:47:49 maxm: in your example, as you say, the iter form is highlighted, no the defun form... 19:48:10 Xach: I think I will try to stick to the basic method of doing this... 19:49:15 attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has joined #lisp 19:49:15 -!- attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has quit [Changing host] 19:49:15 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 19:49:58 mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has joined #lisp 19:52:39 a sound plan 19:57:19 -!- mathrick [~mathrick@85.218.136.127] has quit [Read error: Connection reset by peer] 19:57:36 mathrick [~mathrick@85.218.136.127] has joined #lisp 19:58:03 unfortunately I can't think of no way around this except some absolutely crazy ones 19:58:59 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Ping timeout: 264 seconds] 19:59:04 I write a lot of javascript and recently saw parenscript. Does anyone have experience witg this? Is it reliable? 20:00:42 Seems to be in active use by people. I haven't tried it. 20:01:58 Interesting. I'm rather excited about having gotten a bit into lisp. It seems to me that productivity could be heightened quite a bit using lisp. 20:02:24 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 20:03:14 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 20:03:20 aklt: it seems to be focused more on people who write rather a lot of lisp and not much JS but that is just my impression from being frustrated at having to figure out the translation between the two 20:06:14 bobbysmith007: ok. I would have assumed that there may be cases where the semantics differ a little 20:06:24 -!- urandom__ [~user@p548A5A68.dip.t-dialin.net] has quit [Ping timeout: 245 seconds] 20:07:34 -!- elliottcable is now known as ecdysis 20:08:02 aklt: that was largly my problem. I already know the semantics of javascript quite well, so having to figure out how to make the translation layer give me what I actually intended seemed like an extra step I would rather just skip. Others seem to like paren script a lot. 20:08:32 -!- ecdysis is now known as ecad 20:09:38 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Quit: bye] 20:09:46 bobbysmith007: I might have to give it a spin once I get a bit further into lisp. Someone should add lisp like macros to javascript or coffee script :-P 20:10:22 -!- fiveop [~fiveop@dslb-178-002-126-210.pools.arcor-ip.net] has quit [Quit: humhum] 20:10:27 -!- barryfm [~barryfm@fl-71-2-133-215.dhcp.embarqhsd.net] has left #lisp 20:10:55 Does anyone here have a clue how to tell hunchentoot to set the charset for the http-headers to utf-8? 20:11:23 -!- am0c [~am0c@222.235.49.72] has quit [Quit: Leaving] 20:14:05 yeah phryk 20:14:06 http://weitz.de/hunchentoot/#replies 20:14:27 I think you are looking for content-type* 20:14:58 or reply-external-format* 20:16:09 *maxm* actually looked briefly at ir1tran.lisp and, IMHO the source location problem is solvable 20:16:28 it stores the source locations into the hash table once, upon reading the source file. 20:16:50 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Quit: leaving] 20:17:00 there has to be some way, to add to that table upon each successful macroexpansion 20:18:33 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 20:19:16 phryk: also, if you do (setf hunchentoot::*hunchentoot-default-external-format* hunchentoot::+utf-8+) it will work as well 20:19:26 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Client Quit] 20:20:09 -!- jewel [~jewel@196-210-187-116.dynamic.isadsl.co.za] has quit [Ping timeout: 245 seconds] 20:20:17 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 20:20:28 oconnore: I did that on start, but I think should've done that in the url handler 20:20:35 It works now with content-type* 20:21:58 Ah no, seems to be needing a combination of both :) 20:22:08 are you sure? I think I might have misled you there. content type needs to be "text/html" or something like that 20:22:55 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Client Quit] 20:23:33 I found out that in scheme it's possible to do (define my-car car). what would be the lisp equivalent? 20:23:55 (i guess just defun won't work as it's special form, and setf would set the value part of a symbol) 20:24:35 zvrba: (setf (symbol-function my-car) #'car) though I might be off by a quote 20:25:14 ok :-) 20:25:49 zvrba: they're quite different languages so there isn't really a correlation. 20:28:41 -!- HG` [~HG@p579F7BD3.dip.t-dialin.net] has quit [Quit: HG`] 20:30:38 Xach: i was just wondering whether it was doable in lisp too. 20:30:52 not for lexical bindings. 20:31:07 but you can get pretty close with flet/labels. 20:31:31 -!- ecad is now known as elliottcable 20:31:52 indeed, what ARE lexical variables? global variables are associated to symbols, but what about lexical vars defined within let? 20:32:14 what is 'x' in (let ((x 3) ... ? 20:32:27 it is not a symbol but what IS it? 20:32:33 it's a lexical variable 20:33:02 (let ((x 3)) (eval 'x)) would give? 20:33:26 *zvrba* tries that 20:33:30 depends on whether 'x has a global binding. 20:33:45 hah, unbound variable X 20:33:57 zvrba: eval doesnt include the lexical env in CL, however (let ((x 3)) (print x)) shows 3 20:33:57 lexically, (eval 'x) would not see the binding for x, since EVAL works in the null lexical environment. 20:34:17 so lexical variables are kinda 2nd-class citizens? 20:34:29 no, they're lexical variables. 20:35:39 but no, EVAL doesn't have access to lexicals around its scope :) 20:35:41 -!- ChibaPet [~mason@74.203.221.34] has quit [Quit: Leaving.] 20:36:15 but 20:36:49 (let ((f (lambda () 3))) (f)) doesn't work, but it works with (funcall f) 20:37:06 so why is funcall needed if lexical vars don't have multiple value slots? 20:37:06 that's why we have flet. 20:37:19 (flet ((f () 3)) (f)) 20:37:30 yes, I know about flet, I wouldn't write that let+lambda i normal code 20:37:35 -!- gko` [gko@220-135-201-90.HINET-IP.hinet.net] has quit [] 20:37:41 zvrba: common lisp is a lisp-2. Variables and functions live in different namespaces. 20:38:08 sykopomp: i know that too. but why isn't it possible to access the different slots of lexical variables then? :) 20:38:13 hmm 20:38:24 ig uess that having only dynamic scoping is more consistent :-) 20:38:31 pnq [~nick@ACA22354.ipt.aol.com] has joined #lisp 20:38:34 REPLeffect [~REPLeffec@69.54.115.254] has joined #lisp 20:38:40 dynamic scoping is useful. 20:38:46 so is lexical scoping 20:38:50 having both is nice. 20:38:56 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Client Quit] 20:38:58 yeah. but lexical scoping behaves inconsistently :) 20:39:05 What do you mean? (let ((f (lambda () 3))) (flet ((f () 4)) (print (funcall f)) (print (f)) 20:39:17 I think you must be confused. Where's the inconsistency? 20:39:21 -!- kushal [~kdas@fedora/kushal] has quit [Ping timeout: 276 seconds] 20:39:22 Bike: you need funcall even though f is lexical and has no value/function slot. 20:39:40 Bike: that's why I mean by "inconsistency". 20:39:43 It's a lexical variable, though, not a lexical function. 20:39:44 zvrba: umm, you need funcall because f is bound in the variable namespace. 20:39:50 f is not present in the function namespace 20:39:52 so (f) fails. 20:40:19 this bit in particular doesn't have anything to do with lexical vs dynamic and everything to do with lisp-1 vs lisp-2 20:40:22 ahhh 20:40:44 you can put functions into variables, but that doesn't put them in the function namespace. 20:40:50 ubii [~ubii@unaffiliated/ubii] has joined #lisp 20:40:59 flet, labels, defun, etc put functions into that namespace. 20:41:03 hm. (let ((f 3)) (flet ((f (x) x) (f f))) 20:41:10 *zvrba* tries that 20:41:14 Correct. 20:41:42 indeed it returns 3 :-) 20:42:18 ok, so lisp-1 vs lisp-2 holds also for lexical variables even though they don't have multiple slots as symbols do? 20:42:45 (let ((car '(body wheels engine transmission muffler))) (car car)) 20:42:47 rtoyg [~chatzilla@nat/google/x-fywlqnixinsivrfx] has joined #lisp 20:43:00 = body? :-) 20:43:13 :) 20:43:49 you can read more about the issue here http://www.nhplace.com/kent/Papers/Technical-Issues.html 20:43:52 *zvrba* just got some enlightenment :-) 20:44:54 sykopomp: thanks for the link! 20:44:59 but.. bedtime. 20:45:07 goodnight. 20:53:39 REPLeffect [~REPLeffec@69.54.115.254] has joined #lisp 20:55:37 Krystof [~user@csrhodes.plus.com] has joined #lisp 20:57:08 -!- Kryztof [~user@csrhodes.plus.com] has quit [Ping timeout: 268 seconds] 20:57:12 -!- gemelen [~shelta@shpd-95-53-216-30.vologda.ru] has quit [Ping timeout: 240 seconds] 20:59:44 TeMPOraL [~user@cpc12-oxfd18-2-0-cust64.4-3.cable.virginmedia.com] has joined #lisp 21:01:01 bgs100 [~ian@unaffiliated/bgs100] has joined #lisp 21:01:43 Is there something like dynamic arrays in lisp? 21:02:34 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 258 seconds] 21:02:58 -!- fmu [UNKNOWN@an9iex1i.u10r.net] has quit [Quit: Coyote finally caught me] 21:03:05 fmu [UNKNOWN@unaffiliated/fmu] has joined #lisp 21:03:57 aklt: What do you mean? 21:04:04 aklt: (make-array ... :adjustable T) 21:04:39 Bike: Arrays that can be realloc'd or maybe resize automatically as I index them. 21:04:56 yeah, if you want resizable than do what bobbysmith007 said. 21:05:09 bobbysmith007: Ah, cool! 21:05:19 Great thanks. 21:06:53 -!- betta_y_omega [~betta_y_o@90.166.231.220] has quit [Ping timeout: 258 seconds] 21:07:53 -!- rmarianski [~rmariansk@mail.marianski.com] has quit [Quit: leaving] 21:07:55 ...hmm, so how do I change the size of the array? 21:09:00 betta_y_omega [~betta_y_o@90.166.231.220] has joined #lisp 21:09:44 -!- sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has quit [Ping timeout: 245 seconds] 21:16:05 jdz [~jdz@host14-12-dynamic.0-87-r.retail.telecomitalia.it] has joined #lisp 21:17:25 clhs adjust-array 21:17:25 http://www.lispworks.com/reference/HyperSpec/Body/f_adjust.htm 21:17:36 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Quit: bye] 21:17:58 Cool, thanks! 21:18:28 if you are just adding on to the end of a vector, you might be interested in vector-push-extend 21:19:03 REPLeffect [~REPLeffec@69.54.115.254] has joined #lisp 21:20:02 LiamH: Good to know. It seems to me that one has to become well versed in quite a few verbs to really become proficient in lisp 21:20:46 clhs helps a lot 21:21:10 nhonhonho [~nhonhonho@186.214.201.186] has joined #lisp 21:21:17 Yeah, I've been using it a bit, but I am still a n00b to basic stuff :-) 21:23:09 -!- fantazo [~fantazo@178-190-239-166.adsl.highway.telekom.at] has quit [Remote host closed the connection] 21:23:22 sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has joined #lisp 21:24:17 yeah, clhs is not an introduction to lisp 21:24:27 hehe 21:24:54 -!- oudeis [~oudeis@93-172-61-216.bb.netvision.net.il] has quit [Quit: This computer has gone to sleep] 21:25:00 minion: tell aklt about pcl 21:25:07 pkhuong: I'm not quite clear on how deadlines and timeouts differ. Ie. what causes the externally observable differences you describe? 21:25:43 minion is asleep 21:25:55 aklt: do you know about http://www.gigamonkeys.com/book/ 21:26:03 LiamH: Ah, Practical Common Lisp! I'm ploring through it at the moment :-) 21:26:20 Thanks though. Great book I think 21:26:21 mathrick: difference in semantics. timeouts start counting at some point during the execution of the operation. 21:26:52 ramus [~ramus@c-76-28-156-218.hsd1.wa.comcast.net] has joined #lisp 21:26:56 aklt: yes, probably doesn't have everything, but a lot of the big ideas of lisp are in there 21:27:39 So if you have code that does (progn [foo] [block-with-timeout]), the progn itself may do nothing for much more than the timeout itself. 21:27:55 -!- gravicappa [~gravicapp@ppp91-77-219-205.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 21:28:13 Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has joined #lisp 21:29:21 pkhuong: but the deadlines are still to be understood on best effort basis, right? Ie. no error will be raised before the deadline, but don't count on any specific precision in how soon we signal after it expires 21:29:35 -!- cyrillos [~cyrill@188.134.33.130] has quit [Ping timeout: 264 seconds] 21:29:35 LiamH: I really like it. Had a look at other resources too, but decided that this was a good starter 21:29:43 so it doesn't magically remove this source of uncertainty 21:29:46 mathrick: that's an orthogonal issue. 21:30:12 Do you know of any significant open source programs written in lisp? 21:32:43 pkhuong: right, I was trying to understand what you mean exactly. So essentially, in the deadline case, you want the whole progn to be done by $time, whereas in timeout, you have a more or less unknown time that is added by the fact that [foo] is there. So the difference comes not from the fact that [block-with-timeout] itself is more robust in either case, but just from the fact that it's easier to express the external time constraint in terms of a dead 21:32:43 line while preserving the correctness of the design? 21:33:11 aklt: depends on what you mean by significant 21:33:17 but I'd say Maxima is pretty significant 21:33:52 aklt: SBCL is a pretty significant open source program written in Lisp. 21:34:32 sykopomp: but that's the "in a balloon, over a desert" kind of answer :) 21:34:54 Hmm, maxima is not in quicklisp 21:35:16 I don't know if it makes sense to put it in quicklisp 21:35:28 why not? 21:35:30 how much of usage does it see as a library, as opposed to being an application? 21:35:38 I have been googling for such a thing and did not really come up with anything, which wonders me. 21:35:51 mathrick: what difference does that make? 21:35:58 LiamH: because it's immensely huge, and primarily used as an application and platform itself, rather than being incorporated into other apps 21:36:01 well 21:36:12 I guess quicklisp is a valid end-user installation method as well 21:36:18 I just don't think of it as such 21:36:21 mathrick: that's my thinking 21:36:46 I'm not sure what I mean with significant... I gues Emacs comes to mind... and guile. But I was thinking of standalone applications. 21:36:46 from time to time I've had thoughts about using maxima as a library 21:37:26 I think it wouldn't hurt to have it pushed more into being a library 21:37:35 as it stands currently, the code is pretty damn opaque 21:38:05 and also manages to have a lot of copy/paste programming while at the same time being very closely tied to its internals 21:38:17 wbooze` [~levgue@xdsl-78-35-162-2.netcologne.de] has joined #lisp 21:38:28 homie` [~levgue@xdsl-78-35-162-2.netcologne.de] has joined #lisp 21:38:51 *LiamH* contemplates opening a ticket on the quicklisp projects issues page 21:39:09 LiamH: so it seems to me that it's a bit like olden days gecko, where you were either writing an application that was essentially a renamed firefox/mozilla, or you were sadly out of luck in terms of it being actually embeddable 21:39:36 mathrick: interesting view of "olden days" 21:39:54 but yes, I agree 21:39:56 well, I've been using mozilla since 0.5 days 21:39:59 or trying to 21:40:07 Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has joined #lisp 21:40:12 -!- mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has quit [Quit: leaving] 21:40:13 and it spent years being not there because it was going to be so embeddable 21:40:19 (if maxima/macsyma isn't the definition of "olden days" I don't know what is) 21:40:34 -!- wbooze [~levgue@xdsl-78-35-164-64.netcologne.de] has quit [Ping timeout: 245 seconds] 21:40:38 so I was rather bitter when it turned out it was anything but, and mozilla the org refused even to consider that a problem 21:40:47 mishoo__ [~mishoo@79.112.119.222] has joined #lisp 21:40:59 -!- homie [~levgue@xdsl-78-35-164-64.netcologne.de] has quit [Ping timeout: 264 seconds] 21:41:14 LiamH: oh, it surely is. I'm just applying "olden" to gecko days, obviously "modern maxima" is older than olden days gecko :) 21:41:53 I see. But this has me thinking, I wonder if emacs (as TECO macros) predates Macsyma. 21:42:08 probably about the same era 21:42:08 I'm quite sure it does 21:42:25 oh, nope 21:42:29 1968 apparently 21:42:34 yeah 21:42:45 and emacs "mid-1970s" 21:42:50 so it's a good deal older in fact 21:43:12 I wonder if it's the oldest still widely-used Lisp app 21:43:25 gulp 21:43:33 Oh my, I think I used emacs before it was created. 21:43:38 heheh 21:43:43 when did you start? 21:44:01 -!- mishoo_ [~mishoo@79.112.119.222] has quit [Ping timeout: 252 seconds] 21:44:02 I wouldn't be surprised if macsyma was among the oldest still-used applications, generally speaking. 21:44:03 *mathrick* is 10 years younger than Emacs himself 21:44:20 I think 1974, but wikipedia says it was written in 1976. 21:44:23 Odin-: doesn 21:44:29 't sound too far-fetched 21:44:54 LiamH: so you worked with RMS? 21:45:05 No, but not far from his influence 21:45:29 guess i'm not the oldest hack in the channel. :) 21:45:33 I still sort of regret RMS kept working on Emacs 21:45:44 I'll guess that he started distributing TECO macros before he actually made a formal emacs. 21:45:55 Fade: sorry 21:45:58 he can be a visionary alright, but a good programmer he isn't 21:46:15 Fade: Do you rate as 'old' or 'fossil'? :p 21:46:17 hey, that's fine with me. :) 21:46:24 LiamH: doesn't sound unlikely, given how the whole name came about 21:46:27 Odin-: not typically. 21:46:28 waaaaargh [~waaaaargh@agsb-5d87f22e.pool.mediaWays.net] has joined #lisp 21:46:47 -!- Jabberwockey [~quassel@83.151.30.10] has quit [Quit: No Ping reply in 180 seconds.] 21:46:50 Jabberwock [~quassel@83.151.30.10] has joined #lisp 21:46:53 I've always assumed that the "MAC" in macsyma and emacs are from the same origin. 21:46:53 Fade: So you'd go with 'neither'? 21:47:05 LiamH: no, emacs == editor macros 21:47:06 Project MAC? 21:47:07 have the same origin 21:47:14 Odin-: yes 21:47:14 as far as the story goes 21:47:40 shaggy- [~shaggy-@76.73.16.26] has joined #lisp 21:48:31 I misread what you wrote. I'm 40. 21:48:43 hello. is it possible to pass a lisp object and/or function as a C pointer? 21:48:49 whether that's 'old' or 'fossil' would, I guess, depend on who you asked. :) 21:49:06 shaggy-: yes / no / sit down and let us explain what you really mean, since you're confusing yourself 21:49:58 -!- Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has left #lisp 21:50:17 Fade: Heh. Well, in computer terms, I suppose 'fossil' means "before the rule of Unix" nowadays... :p 21:50:18 shaggy-: most implementations in use have a mechanism to communicate with C-speaking code. Exact details and capabilities vary, but the core functionality is usually pretty close. What you want to use is CFFI, which is a portable wrapper over all those mechanisms (collectively known as FFI, foreign function interface) 21:50:40 Odin-: Come on, no one's _that_ old. 21:51:26 honestly, before CommonQt I had doubts as if it was possible to write a modern GUI app in CL 21:51:26 mathrick I'm not confused as I apparently appeared to be. I've created a callback with defcallback that I'm passing to a C function. callback accepts a state object. I want to a normal lisp function to the callback as a state object (which is a pointer) 21:51:33 ah 21:51:46 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 21:52:25 shaggy-: in this case, you want WITH-FOREIGN-OBJECT, and pin things in memory. Look into CL-GTK2's "stable pointers" for an example of how to do it 21:52:35 I'm about 10 months younger than the unix epoch. 21:52:41 sellout: Ken Thompson still works in IT, IIRC... 21:53:00 shaggy-: you will never get a "pointer" to a lisp object. But you can get a handle that can then be used to extract the proper reference on the lisp side 21:53:25 maxm: CL-GTK2 is not bad either! 21:53:42 Odin-: and in C for that matter 21:53:48 well, he wrote Go recently 21:53:55 so I guess he'd be moving to that now 21:54:10 but when gigamonkey was interviewing him for coders at work, he was still a C guy 21:54:22 to pass* 21:54:25 -!- Bike [~Glossina@69.166.35.233] has quit [Ping timeout: 258 seconds] 21:54:47 -!- shaggy- [~shaggy-@76.73.16.26] has quit [Disconnected by services] 21:54:51 mathrick: Heretical as it may be, I think C is a pretty damn clever little language. 21:54:53 unix guys get too much credit imho.. C is kind of obvious, and some of the design decisions sucked (ie null terminated strings) 21:55:11 Odin-: but it's one of the worst things to have happened to progress in the programming languages space 21:55:15 shaggy- [~shaggy--@76.73.16.26] has joined #lisp 21:55:16 so is just luck that their system ended up being adopted 21:55:25 similarly Unix is a very bad thing to have happened in the OS space 21:55:35 C doesn't even have a portable way to construct function calls .. not very clever 21:55:38 shaggy-: what exactly do you want to do with the passed function? 21:55:50 mathrick thanks. can one portably pin lisp objects with cffi? IIRC only sbcl supported that? I'll check out CL-GTK2 code 21:56:02 I want to call it 21:56:07 mathrick: Unix and C managed to be in the right place at the right time. I'm not saying "C is a good thing", but it's not _all_ bad. :p 21:56:08 shaggy-: pinning a function is exactly what defcallback does 21:56:08 from the callback 21:56:18 mathrick: the difference is very simple: how would you implement your own timeout-ful operation out of two timeout-ful operations? 21:56:26 I want to create a wrapper around C function that accepts normal lisp functions rather than callbacks 21:56:27 you need both DEFCALLBACK and (CALLBACK ...) 21:56:53 -!- sonnym [~sonny@singlebrookvpn.lightlink.com] has quit [Quit: Leaving.] 21:56:54 shaggy-: that's gonna be hard, since CFFI exports almost purely macro-based interface 21:56:59 well, no 21:57:09 that particular thing is /not/ that hard 21:57:20 shaggy-: I've done something like that for GSLL. You might want to look at the code; unfortunately, it's not incredibly clear (even to me, and I wrote it). 21:57:28 oGMo: what do you mean there is no portable way to do function calls? function(arg1,arg2,arg3); is a portable function call... 21:57:46 shaggy-: still, I recommend looking at the GObject part of CL-GTK2, it does what you want and more 21:58:18 oconnore: constructing them dynamically (in the same spirit as apply) is more work. 21:58:32 -!- mishoo__ [~mishoo@79.112.119.222] has quit [Remote host closed the connection] 21:58:39 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 21:58:42 shaggy-: http://common-lisp.net/project/cl-gtk2/manual.html 21:58:43 mishoo__ [~mishoo@79.112.119.222] has joined #lisp 21:58:48 oconnore: by "construct" i mean dynamically given a function pointers and some things to push on the stack 21:58:58 "pointer" 21:59:10 there's no such mechanism at all in fact 21:59:30 libffi is one library that does it, but it doesn't have 100% platform coverage either 21:59:44 so you can have platforms supported by GCC but not libffi 22:00:22 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Client Quit] 22:00:30 well there is if you know the signature of your called functions. but apply doesn't make sense in the context of C because it is not dynamically typed. 22:00:36 with pointers 22:00:45 ... 22:01:05 ? 22:01:06 pkhuong: well, I'd need to query time at the beginning, and then measure the skew between requested timeout and actual time passed 22:01:48 by the way not sure if it was clear, but I want to call lisp function within the defcallback, not from C code. so (c-function (callback callback) lisp-function), and then lisp-function is passed to callback by c-function 22:01:49 oconnore: that's exactly what the point is, not knowing the signature ahead to include it literally in the source 22:01:54 mathrick: but there could be an arbitrary pause between the time query and the timeout operation. 22:02:13 oconnore: static or dynamic is irrelevant here. C has varargs, function pointers, the ability to determine size, and the compiler can make a proper function call. doing this for non-*args functions is a bizarrely critically missing thing 22:02:25 pkhuong: whyso? 22:03:10 oh, right 22:03:10 mathrick: any interruption between the time query and the timeout-ful operation. Something as simple as a context switch or an interrupt handler. 22:03:23 yes, it just dawned on me 22:03:32 or simple swap ops 22:03:54 -!- Vivitron [~user@pool-71-174-61-33.bstnma.fios.verizon.net] has quit [Ping timeout: 245 seconds] 22:04:20 pkhuong: ok, I get it now. You can pass around walltime without it rotting, but it's almost impossible with relative time 22:04:24 frhodes [~frhodes@75-173-95-248.albq.qwest.net] has joined #lisp 22:04:59 what about time adjustments? 22:05:04 like the leap seconds and stuff 22:05:17 -!- frhodes [~frhodes@75-173-95-248.albq.qwest.net] has quit [Client Quit] 22:05:48 jdz: it happens... less frequently than context switches. Ideally, though, you use a monotonic clock, since this isn't for human consumption. 22:06:20 fair enough 22:06:29 -!- dabd [~dabd@a79-169-214-13.cpe.netcabo.pt] has quit [Quit: Ex-Chat] 22:06:33 -!- fmeyer [~fmeyer@187.38.98.102] has quit [Read error: Connection reset by peer] 22:06:35 -!- Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has quit [Ping timeout: 260 seconds] 22:07:08 jayeola [~jayeola@5ade2396.bb.sky.com] has joined #lisp 22:07:44 -!- manuel_ [~manuel_@pD9FDD440.dip.t-dialin.net] has quit [Quit: manuel_] 22:09:06 jdz: mind you, there's exactly the same issue for timeouts. 22:09:44 btw, what's the "CAS" nikodemus mentions in http://www.indiegogo.com/SBCL-Threading-Improvements-1 ? 22:09:53 compare and switch? 22:10:13 mathrick: Yep (although I think it's "swap") 22:10:20 ah, right 22:10:21 *LiamH* assumed he was going to implement a computer algebra system 22:10:26 -!- dl [~user@chpcwl01.hpc.unm.edu] has quit [Quit: ERC Version 5.2 (IRC client for Emacs)] 22:10:28 I meant swap, my fingers just have low fidelity 22:10:46 LiamH: yeah, that was my first reading too, but that's not very sensible in context 22:11:57 No, especially for the price. 22:12:11 -!- jdz [~jdz@host14-12-dynamic.0-87-r.retail.telecomitalia.it] has quit [Ping timeout: 240 seconds] 22:12:24 -!- oconnore [~Eric@75-150-66-254-NewEngland.hfc.comcastbusiness.net] has quit [Quit: Leaving.] 22:13:47 Joreji [~thomas@64-073.eduroam.RWTH-Aachen.DE] has joined #lisp 22:14:34 no love for maxima? 22:16:35 -!- LiamH [~none@pdp8.nrl.navy.mil] has quit [Quit: Leaving.] 22:17:02 oudeis [~oudeis@IGLD-84-228-74-177.inter.net.il] has joined #lisp 22:19:25 Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has joined #lisp 22:20:41 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Ping timeout: 252 seconds] 22:20:56 REPLeffect [~REPLeffec@69.54.115.254] has joined #lisp 22:24:24 frhodes [~frhodes@75-173-84-172.albq.qwest.net] has joined #lisp 22:25:58 Amadiro [~Amadiro@ti0021a380-dhcp3462.bb.online.no] has joined #lisp 22:30:35 -!- DGASAU [~user@91.218.144.129] has quit [Excess Flood] 22:33:02 -!- lhnz [~lhnz@188-223-83-48.zone14.bethere.co.uk] has quit [Read error: Connection reset by peer] 22:33:17 -!- mrSpec [~Spec@unaffiliated/mrspec] has quit [Remote host closed the connection] 22:33:30 lhnz [~lhnz@188-223-83-48.zone14.bethere.co.uk] has joined #lisp 22:37:49 -!- mishoo__ [~mishoo@79.112.119.222] has quit [Remote host closed the connection] 22:38:04 -!- dlowe [~dlowe@nat/google/x-yhnlgoebprujsbsd] has quit [Quit: Leaving.] 22:38:55 o.O Steve Jobs resigns as CEO of Apple 22:39:02 http://stackoverflow.com/questions/5365283/regular-expression-to-search-for-gadaffi 22:39:12 LOL, look at Lisp comment for the question 22:39:13 :d 22:40:04 :) 22:41:12 is there a way to augment slime so that return values as well as printed output are commented, just like warnings etc. from SBCL? 22:41:23 kpreid [~kpreid@cpe-67-249-228-147.twcny.res.rr.com] has joined #lisp 22:41:35 -!- mtd [~martin@chop.xades.com] has quit [Ping timeout: 252 seconds] 22:41:38 (maybe invisible #\; ?) 22:42:29 Haha 22:43:31 -!- Joreji [~thomas@64-073.eduroam.RWTH-Aachen.DE] has quit [Ping timeout: 260 seconds] 22:44:26 -!- Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has quit [Ping timeout: 268 seconds] 22:44:38 -!- frhodes [~frhodes@75-173-84-172.albq.qwest.net] has quit [Quit: leaving] 22:44:58 -!- aklt [~aklt@77.75.167.158] has quit [Quit: See you!] 22:45:04 p_l|backup: in the slime-repl buffer? 22:45:42 and also, Steve Jobs just resigned as CEO. 22:46:01 Mococa [~Mococa@187.58.11.167] has joined #lisp 22:46:08 allandee: yes, in slime-repl 22:46:30 allandee: recent Apple actions in EU can still get him on charges, though... 22:47:26 (it's not the place for it, but requiring owners of devices to return their property might end up being seen as grand theft) 22:47:37 this is OT 22:48:10 yeah 22:48:29 lets's go back to that SLIME question 22:48:29 -!- xan_ [~xan@94.119.7.202] has quit [Quit: leaving] 22:49:56 Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has joined #lisp 22:49:56 re my earlier question, it appears that I can create a defcallback in a function and capture the functions' local argument. is the pasted code thread-safe? http://paste.lisp.org/display/124240 22:52:31 frhodes [~frhodes@75-173-84-172.albq.qwest.net] has joined #lisp 22:53:08 superflit [~superflit@71-208-209-32.hlrn.qwest.net] has joined #lisp 22:53:16 mrSpec [~Spec@unaffiliated/mrspec] has joined #lisp 22:53:17 -!- frhodes [~frhodes@75-173-84-172.albq.qwest.net] has quit [Client Quit] 22:54:40 frhodes [~frhodes@75-173-84-172.albq.qwest.net] has joined #lisp 22:57:39 p_l|backup: maybe look at `slime-repl-emit' 22:58:37 -!- Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has quit [Ping timeout: 268 seconds] 22:58:57 I think it's quite OT tbh. 23:00:06 Bike [~Glossina@71-38-152-114.ptld.qwest.net] has joined #lisp 23:01:13 Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has joined #lisp 23:02:29 -!- paul0 [~paul0@189.101.242.184] has quit [Ping timeout: 252 seconds] 23:07:41 -!- Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has quit [Ping timeout: 240 seconds] 23:08:19 Joreji [~thomas@64-073.eduroam.RWTH-Aachen.DE] has joined #lisp 23:09:57 Jubb [~ghost@24-151-24-155.dhcp.nwtn.ct.charter.com] has joined #lisp 23:11:38 hargettp [~hargettp@pool-71-174-142-225.bstnma.east.verizon.net] has joined #lisp 23:15:26 paul0 [~paul0@189.101.242.184] has joined #lisp 23:16:14 -!- Mococa [~Mococa@187.58.11.167] has quit [Read error: Connection reset by peer] 23:16:21 Deathaholic [~Mococa@187.58.11.167] has joined #lisp 23:22:39 -!- pnq [~nick@ACA22354.ipt.aol.com] has quit [Read error: Connection reset by peer] 23:23:58 -!- waaaaargh [~waaaaargh@agsb-5d87f22e.pool.mediaWays.net] has quit [Quit: WTF? leaving!] 23:24:25 sonnym [~sonny@rrcs-184-74-137-69.nys.biz.rr.com] has joined #lisp 23:25:34 -!- paul0 [~paul0@189.101.242.184] has quit [Ping timeout: 245 seconds] 23:25:52 H4ns` [~user@p4FFC8DA3.dip.t-dialin.net] has joined #lisp 23:29:19 -!- H4ns [~user@p4FFC9911.dip.t-dialin.net] has quit [Ping timeout: 245 seconds] 23:35:47 Evanescence [~chris@122.237.20.72] has joined #lisp 23:35:48 nkoza [~NKoza@186.19.207.163] has joined #lisp 23:38:56 -!- cmatei [~cmatei@78.96.101.240] has quit [Remote host closed the connection] 23:42:58 -!- juniorroy [~juniorroy@212.36.228.103] has quit [Remote host closed the connection] 23:43:11 dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has joined #lisp 23:43:23 -!- mducharme [~nothing@S0106002401f31855.wp.shawcable.net] has quit [Read error: Connection reset by peer] 23:43:49 -!- ikki [~ikki@201.155.92.12] has quit [Quit: Leaving] 23:44:41 mducharme [~nothing@S0106002401f31855.wp.shawcable.net] has joined #lisp 23:48:03 nicdev [~nicdev@209-6-50-99.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #lisp 23:51:01 oconnore [~Eric@c-66-31-125-56.hsd1.ma.comcast.net] has joined #lisp 23:53:51 -!- nicdev [~nicdev@209-6-50-99.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Quit: nicdev] 23:57:12 -!- antgreen [~user@bas3-toronto06-2925099682.dsl.bell.ca] has quit [Remote host closed the connection]