00:00:44 In SBCL, we use the vector-sap and pin it ("foreign friendly arrays"). This is true for complex vectors too. 00:01:08 sbcl, of course 00:02:41 I bet it works OK in CCL. 00:03:43 oh boo, the machine I have CCL on has GSL 1.11, which can't do complex array math 00:03:54 -!- flatline [n=flatline@z166195.dynamic.ppp.asahi-net.or.jp] has quit [Read error: 60 (Operation timed out)] 00:05:33 LiamH: Well, I added inverse and backward tests to the noise test like also done in GSL. I just pushed it. For the real, there is a forward and inverse test, which work fine. For complex, there is a forward, inverse and backward one. They work fine, but the backward must be divided by the length of the vector, and is screwed up because of that. 00:06:17 LiamH: Well, I'm going to bed now. Have fun figuring out what's up with elt/ ;) 00:06:23 Sikander: OK thanks. I'll take a look at this problem, but I realized my computer at home also has 1.11 so I have to debug at work, for which I don't have much time. 00:06:38 Sikander: Good night. 00:07:01 LiamH: Ok, maybe I'll have a look tomorrow. I have 1.12 on both pc at home and on my laptop. 00:07:06 Goodnight! 00:07:11 -!- Sikander [n=soemraws@oemrawsingh.xs4all.nl] has quit ["Time to sleep"] 00:07:55 Lycurgus [n=Ren@cpe-72-228-150-44.buffalo.res.rr.com] has joined #lisp 00:08:38 -!- Eko [n=eko@lawn-143-215-109-221.lawn.gatech.edu] has quit ["This computer has gone to sleep"] 00:08:39 -!- Paraselene__ [n=None@79-68-173-7.dynamic.dsl.as9105.com] has quit [Read error: 145 (Connection timed out)] 00:09:09 Paraselene__ [n=None@79-68-173-7.dynamic.dsl.as9105.com] has joined #lisp 00:09:40 -!- mrSpec [n=Spec@unaffiliated/mrspec] has quit [] 00:09:42 People looking to NoSQL databases; I wanna write another client library for a database, I am looking at CouchDB, MongoDB and TokyoCabinet (Tyrant actually) Anyone have any preferences for which one they wanna see first? 00:10:44 Turns out Vladimir Sedach (the MSLUG speaker) is probably better known as the original author of parenscript ;) 00:11:05 along with cl-redis, cl-geoip and cl-scgi should be hitting cliki in the next 48 hours or so; +- documentation 00:12:01 fusss: has the vector-push-extend routine gone down on the profile list? 00:12:09 *fusss* not doing this out of altruism; i need db libs handy just in case redis doesn't workout for the christmas traffic 00:13:03 Athas [n=athas@192.38.109.188] has joined #lisp 00:13:22 pkhuong: yes, but it's called for one line; the control long. the actual slowness is in reading the reply lines, which are \cr\lf terminated lines, and when the body is huge, I am testing for EOFness at every octet. 00:13:49 if I want to make this as fast as possible, I am gonna have to take a day hacking on Redis sources, and return netstrings instead of terminated strings. 00:14:08 fusss: do you actually need to split strings? 00:14:10 it's silly to be using C-style strings when there are better options, specially for high-performance software 00:14:32 quodlibetor [n=user@146.95.21.161] has joined #lisp 00:14:38 pkhuong: NOPE! at least not at the driver level. Is there a good algorithm for reading terminated strings without having to test every character? 00:15:14 if I had the lenght prefixed to the string, I would know to use read-sequence, instead of looping with read-byte 00:15:15 -!- marioxcc-AFK is now known as marioxcc 00:15:20 fusss: how would that work? 00:15:32 Ralith: how what work? 00:15:44 16:15:05 < fusss> pkhuong: NOPE! at least not at the driver level. Is there a good algorithm for reading terminated strings without having to test every character? 00:17:08 Ralith: well, Redis protocol specifies replies are terminated by a unique marker. If you need to process Redis output, you need to read from the socket stream octet by octet and see if next token is EOF 00:17:16 crink [n=crink@unaffiliated/crink] has joined #lisp 00:17:26 fusss: not unless you have a good algorithm for knowing the future 00:18:03 fusss: ideally, you make sure you don't need to know where the end is, as much as when you've hit it (stick to the streaming paradigm) 00:18:32 you could use read-sequence and search for a zero byte with SIMD or at least one word at a time. 00:18:48 DJB invented netstrings for a good reason (well, he didn't really invent them; BASIC and Pascal had length-prefixed strings in the 80s) 00:20:17 -!- davazp [n=user@156.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 00:21:02 pkhuong: "read-sequence of fixed length and search for terminator; if no terminator, vector-push-extend to register and loop, if terminator, return subsequence prefix, adjust register, loop. catch EOF conditions in higher-levels and try not to suck" 00:21:09 yes, that's in the TODO ;-) 00:22:24 I just don't see why you need to read all the response at a time. 00:22:31 fusss: ethernet also has a packet length in the header... 00:23:03 anyone heard of lispg? 00:23:14 Ralith: no 00:23:29 anyone who'se not rahul? 00:24:01 -!- grouzen [n=grouzen@91.214.124.2] has quit [Read error: 110 (Connection timed out)] 00:24:22 pkhuong: each response corresponds to one request; 1:1. I can read to a huge buffer, where "huge" is determined by further profiling to see the average response length. but right now, stock Redis would slow to a crawl for largish responses. <1k strings are OK though. 00:27:20 fusss: sure, but why do you need to send the response back as a single vector? 00:29:12 amaron [n=amaron@cable-89-216-181-46.dynamic.sbb.rs] has joined #lisp 00:29:23 -!- LiamH [n=none@pdp8.nrl.navy.mil] has quit ["Leaving."] 00:30:40 -!- Lycurgus [n=Ren@cpe-72-228-150-44.buffalo.res.rr.com] has quit [Read error: 113 (No route to host)] 00:30:40 -!- tmh [n=thomas@pdpc/supporter/sustaining/tmh] has quit ["Leaving."] 00:31:35 dnolen [n=dnolen@pool-70-107-153-5.ny325.east.verizon.net] has joined #lisp 00:34:52 -!- ruediger [n=quassel@93-82-13-192.adsl.highway.telekom.at] has quit [Remote closed the connection] 00:35:18 -!- arbscht [n=arbscht@unaffiliated/arbscht] has quit [Read error: 104 (Connection reset by peer)] 00:37:26 pkhuong: I am not sending any responses; that's how Redis does it. my client issues a single line command, and gets two values back: a one line "status" vector, and, if present, a multiline bulk reply body. both the status and the body are \cr\lf terimated. the status is short, but the body could be up to 1GB (in theory.) 00:38:04 fusss: right, so why does it need to get the reply in a single vector? 00:38:07 arbscht [n=arbscht@unaffiliated/arbscht] has joined #lisp 00:39:15 pkhuong: the reply body is a single vector; structured data actually, each reply vector could contain multiple data, each encoded inside it and \cr\lf terminated. 00:39:25 i am just writing up a suggestion to the author right now 00:39:38 fusss: but why does your application need to get it as a single vector? 00:39:39 -!- kleppari [n=spa@bitbucket.is] has quit ["leaving"] 00:39:44 -!- crink [n=crink@unaffiliated/crink] has quit ["Leaving."] 00:40:06 -!- bobbysmith007 [n=russ@one.firewall.gnv.acceleration.net] has quit ["Leaving."] 00:40:46 good night 00:40:48 -!- serichsen [n=user@hmbg-4d06f278.pool.mediaWays.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 00:41:44 redblue [i=star@ppp077.108-253-207.mtl.mt.videotron.ca] has joined #lisp 00:41:54 pkhuong: sorry, I am trying hard to understand the question. my application is a CL client library for Redis. If issue a command like "SET-UNION key1 key2 key3", which is a command that returns the union of the members stored in keys 1..3; here is what I get 00:43:52 *[number-of-results]\cr\lf*[possibly-huge-body-containing-elements]\cr\lf 00:44:29 the problem is that Redis returns the number of elements in the result set, not ssize of the body in octets. 00:45:18 again, the question is why is it that you care where the body ends, except to know that you've got there. 00:45:31 I don't care where the body ends :-) 00:45:43 but if I knew where the body ends, I could use read-sequence 00:45:51 ace4016 [i=ace4016@cpe-76-170-134-79.socal.res.rr.com] has joined #lisp 00:46:03 right now it's read-byte followed by a test, all the way to the end 00:46:10 The interface you're offering is lossy. You're forced to find the end ahead of time. 00:47:24 The client only wants to get one element in the body, then the next, ... 00:48:05 You're creating that issue yourself. 00:48:20 my suggestion is this: Redis already knows the size of the result set in octets. fine. along with the number of elements, also tell me the sizeof, so my library can use faster primitives to process results. 00:49:18 well, if the response is 1GB, it's lossy to read all of it in a single vector, when the client is very unlikely to perform random access. 00:50:05 -!- amaron [n=amaron@cable-89-216-181-46.dynamic.sbb.rs] has quit [Read error: 110 (Connection timed out)] 00:50:10 -!- rajesh [n=rajesh@nylug/member/rajesh] has quit ["leaving"] 00:50:13 hmmm 00:50:15 baddog [n=liam@unaffiliated/baddog144] has joined #lisp 00:52:20 i must have been spoiled by Content-Length in http 01:04:58 Eko [n=eko@lawn-128-61-126-117.lawn.gatech.edu] has joined #lisp 01:06:40 -!- Edward__ [n=Ed@AAubervilliers-154-1-13-62.w86-212.abo.wanadoo.fr] has quit ["L'oignon fait la farce."] 01:07:16 -!- nvoorhies [n=nvoorhie@adsl-76-216-21-95.dsl.pltn13.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 01:11:16 erk [n=MrEd@about/apple/iPod/BeZerk] has joined #lisp 01:11:58 -!- leo2007 [n=leo@soup.linux.pwf.cam.ac.uk] has quit ["rcirc on GNU Emacs 23.0.60.1"] 01:13:33 -!- kjbrock [n=kevinbro@173-11-106-193-SFBA.hfc.comcastbusiness.net] has quit [] 01:17:09 -!- Yuuhi [i=benni@p5483AE98.dip.t-dialin.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 01:17:21 -!- emacsphan [n=user@plmomi-l10-340.dsl.tds.net] has quit [Remote closed the connection] 01:17:50 george_ [n=george@189.107.153.196] has joined #lisp 01:17:59 sohail [n=Sohail@unaffiliated/sohail] has joined #lisp 01:18:46 -!- sohail [n=Sohail@unaffiliated/sohail] has quit [Read error: 104 (Connection reset by peer)] 01:19:11 -!- erk [n=MrEd@about/apple/iPod/BeZerk] has quit [Remote closed the connection] 01:19:16 erk [n=MrEd@about/apple/iPod/BeZerk] has joined #lisp 01:19:25 -!- Athas [n=athas@192.38.109.188] has quit [Remote closed the connection] 01:20:03 -!- quodlibetor [n=user@146.95.21.161] has quit [Remote closed the connection] 01:20:47 -!- george [n=george@189.107.175.107] has quit [Read error: 60 (Operation timed out)] 01:21:33 beach` [n=user@ABordeaux-158-1-124-22.w90-60.abo.wanadoo.fr] has joined #lisp 01:27:15 -!- erk [n=MrEd@about/apple/iPod/BeZerk] has quit [Remote closed the connection] 01:27:18 erk [n=MrEd@about/apple/iPod/BeZerk] has joined #lisp 01:28:07 -!- milanj- [n=milan@93.86.189.128] has quit ["Leaving"] 01:30:56 tmh [n=thomas@pdpc/supporter/sustaining/tmh] has joined #lisp 01:31:05 Greetings lispers. 01:32:21 ruediger [n=quassel@188-23-186-83.adsl.highway.telekom.at] has joined #lisp 01:34:11 -!- segv [n=mb@p4FC1FC7F.dip.t-dialin.net] has quit [Read error: 104 (Connection reset by peer)] 01:34:12 segv_ [n=mb@p4FC1FC7F.dip.t-dialin.net] has joined #lisp 01:34:26 -!- segv_ is now known as segv 01:35:54 nvoorhies_ [n=nvoorhie@adsl-76-216-21-95.dsl.pltn13.sbcglobal.net] has joined #lisp 01:37:44 -!- beach [n=user@ABordeaux-158-1-27-109.w90-55.abo.wanadoo.fr] has quit [Read error: 110 (Connection timed out)] 01:40:23 Adamant [n=Adamant@unaffiliated/adamant] has joined #lisp 01:43:34 -!- billitch [n=billitch@rob92-1-82-67-155-88.fbx.proxad.net] has quit [] 01:44:35 -!- baddog [n=liam@unaffiliated/baddog144] has quit [Read error: 145 (Connection timed out)] 02:01:20 -!- porcelina [n=quassel@c-174-51-110-214.hsd1.co.comcast.net] has quit [Remote closed the connection] 02:04:24 -!- Hun [n=hun@p50993726.dip0.t-ipconnect.de] has quit [Remote closed the connection] 02:04:26 -!- demmeln [n=Adium@dslb-094-216-079-058.pools.arcor-ip.net] has quit ["Leaving."] 02:06:30 -!- bulibuta [n=bulibuta@unaffiliated/bulibuta] has quit ["leaving"] 02:07:04 -!- ruediger [n=quassel@188-23-186-83.adsl.highway.telekom.at] has quit [Remote closed the connection] 02:09:45 peddie_ [n=peddie@c-98-210-236-72.hsd1.ca.comcast.net] has joined #lisp 02:09:55 -!- moocow [n=new@69.67.174.130] has quit [] 02:12:17 -!- peddie_ [n=peddie@c-98-210-236-72.hsd1.ca.comcast.net] has quit [Client Quit] 02:12:17 ignas [n=ignas@ctv-79-132-160-221.vinita.lt] has joined #lisp 02:17:40 ntd [n=user@daneel.cc.gt.atl.ga.us] has joined #lisp 02:19:02 -!- H4ns [n=Hans@p57BBBA8D.dip0.t-ipconnect.de] has quit [Read error: 104 (Connection reset by peer)] 02:23:11 -!- quidnunc [n=user@bas16-montreal02-1279589180.dsl.bell.ca] has quit [Read error: 113 (No route to host)] 02:23:23 -!- attila_lendvai [n=ati@catv-89-134-66-143.catv.broadband.hu] has quit [Read error: 110 (Connection timed out)] 02:23:42 -!- Axioplase_ is now known as Axioplase 02:27:11 Alright, So I have two things I still need to work on. Lisp. and solving pressing enter too much (they call it) problem 02:27:15 -!- mrsolo [n=mrsolo@nat/yahoo/x-jvenlybnzmxyorzv] has quit [Read error: 60 (Operation timed out)] 02:30:59 ricktoid [n=rstallma@24-107-56-10.dhcp.stls.mo.charter.com] has joined #lisp 02:34:25 lemonodor [n=lemonodo@adsl-76-214-17-20.dsl.lsan03.sbcglobal.net] has joined #lisp 02:37:41 SandGorgon [n=OmNomNom@122.173.249.152] has joined #lisp 02:39:35 dylan 02:43:58 -!- arbscht [n=arbscht@unaffiliated/arbscht] has quit [Read error: 131 (Connection reset by peer)] 02:44:25 -!- blackened` [n=blackene@ip-89-102-22-70.karneval.cz] has quit [] 02:45:57 envi^office [i=envi@203.109.25.110] has joined #lisp 02:49:08 arbscht [n=arbscht@unaffiliated/arbscht] has joined #lisp 02:49:23 pinterface [n=pinterfa@knvl-static-09-0024.dsl.iowatelecom.net] has joined #lisp 02:50:32 george__ [n=george@189.107.136.163] has joined #lisp 02:52:30 -!- fisxoj [n=fisxoj@149.43.98.30] has quit ["Ex-Chat"] 02:57:27 -!- Eko [n=eko@lawn-128-61-126-117.lawn.gatech.edu] has quit ["This computer has gone to sleep"] 03:01:24 crink [n=crink@unaffiliated/crink] has joined #lisp 03:01:54 -!- kpreid [n=kpreid@209-217-212-34.northland.net] has quit [] 03:04:51 -!- ntd [n=user@daneel.cc.gt.atl.ga.us] has quit [Remote closed the connection] 03:07:12 LiamH [n=nobody@pool-72-75-73-155.washdc.east.verizon.net] has joined #lisp 03:07:22 -!- george_ [n=george@189.107.153.196] has quit [Read error: 110 (Connection timed out)] 03:08:24 -!- SandGorgon [n=OmNomNom@122.173.249.152] has quit [Connection timed out] 03:08:30 -!- george__ [n=george@189.107.136.163] has quit [Read error: 60 (Operation timed out)] 03:10:59 minion: memo for Sikander: I found the error, without even having the correct version of GSL. The "scale" function takes a complex scalar second argument: int gsl_vector_complex_scale (gsl_vector_complex * a, const gsl_complex x); I will fix tomorrow. This by the way is inconsistent with the rest of the scale functions, which all take doubles for the scalars, even the integer types. 03:10:59 Remembered. I'll tell Sikander when he/she/it next speaks. 03:13:46 kpreid [n=kpreid@216-171-189-244.northland.net] has joined #lisp 03:14:51 -!- durbin_ [n=durbin@adsl-99-181-3-9.dsl.irvnca.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 03:20:44 george__ [n=george@189.107.130.217] has joined #lisp 03:22:06 -!- nvoorhies_ [n=nvoorhie@adsl-76-216-21-95.dsl.pltn13.sbcglobal.net] has quit [] 03:24:08 -!- jl_2 [n=jl_2@97-122-153-155.hlrn.qwest.net] has left #lisp 03:27:06 -!- dreish [n=dreish@minus.dreish.org] has quit [] 03:32:29 -!- pinterface [n=pinterfa@knvl-static-09-0024.dsl.iowatelecom.net] has left #lisp 03:33:27 envi^home [n=envi@220.121.234.156] has joined #lisp 03:35:48 -!- saikatc [n=saikatc@c-24-5-85-71.hsd1.ca.comcast.net] has quit [] 03:35:57 -!- LiamH [n=nobody@pool-72-75-73-155.washdc.east.verizon.net] has quit ["Leaving."] 03:37:56 maus [n=maus@222.253.78.165] has joined #lisp 03:38:25 Good morning! 03:38:58 hi maus 03:39:26 hello ricktoid 03:41:44 hi 03:42:54 maus: ever heard of Dylan? 03:43:42 Regarding tpd2 and all those fast "web servers", people at the MSLUG have an hypothesis that using the loopback interface might make the test case mostly bounded by the timer interrupt frequency in linux (in addition to being useless). 03:53:36 -!- bgs100 [n=ian@unaffiliated/bgs100] has quit ["Leaving"] 03:54:25 -!- _3b [i=foobar@cpe-70-112-214-100.austin.res.rr.com] has quit [sendak.freenode.net irc.freenode.net] 03:58:38 ricktoid: excuse me, what's up? 04:00:36 -!- wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has quit [Remote closed the connection] 04:03:40 wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has joined #lisp 04:05:50 -!- kpreid [n=kpreid@216-171-189-244.northland.net] has quit [Read error: 104 (Connection reset by peer)] 04:07:16 kpreid [n=kpreid@216-171-189-244.northland.net] has joined #lisp 04:07:37 baddog [n=liam@unaffiliated/baddog144] has joined #lisp 04:12:21 _3b [i=foobar@cpe-70-112-214-100.austin.res.rr.com] has joined #lisp 04:13:06 maus: nothing....just another loser pimping a syntax for Lisp - ala Dylan 04:13:19 or maybe Moon's new thingie 04:14:55 lpolzer_ [n=lpolzer@dslb-088-073-209-165.pools.arcor-ip.net] has joined #lisp 04:18:06 -!- ikki [n=ikki@201.155.75.146] has quit ["Leaving"] 04:18:43 Eko [n=eko@c-98-242-74-171.hsd1.ga.comcast.net] has joined #lisp 04:21:29 -!- marioxcc [n=user@200.92.86.141] has quit [Remote closed the connection] 04:26:27 spradnyesh [n=pradyus@nat/yahoo/x-nlljrgsbzlpigskk] has joined #lisp 04:26:57 george [n=george@189.107.129.67] has joined #lisp 04:28:03 -!- beauty [n=beauty@83.231.50.93] has quit [] 04:31:05 -!- lpolzer [n=lpolzer@dslb-088-073-229-239.pools.arcor-ip.net] has quit [Read error: 110 (Connection timed out)] 04:34:24 -!- Odin- [n=sbkhh@s121-302.gardur.hi.is] has quit [] 04:38:51 -!- george [n=george@189.107.129.67] has quit [Read error: 60 (Operation timed out)] 04:40:04 <_deepfire> It'd be nice to be able to compose defaulting of :allocation :class slots, as the class gets finalised. 04:42:04 <_deepfire> For example, by the means of cons, so as to build a list with entries corresponding to specific sections of the class precedence list. 04:42:13 -!- george__ [n=george@189.107.130.217] has quit [Read error: 110 (Connection timed out)] 04:47:10 -!- spradnyesh [n=pradyus@nat/yahoo/x-nlljrgsbzlpigskk] has quit [Read error: 54 (Connection reset by peer)] 04:53:36 <_deepfire> As it stands, all that remains is hunting C-P-L for class prototypes in specific superclass metaobjects in I-I, which isn't terribly efficient. 04:53:47 george [n=george@189.107.133.249] has joined #lisp 04:55:39 billitch [n=billitch@rob92-1-82-67-155-88.fbx.proxad.net] has joined #lisp 04:58:12 -!- kmc [n=keegan@206-71-236-70.c3-0.nyw-ubr5.nyr-nyw.ny.cable.rcn.com] has quit [Read error: 110 (Connection timed out)] 05:04:15 _8david [n=user@port-92-195-56-124.dynamic.qsc.de] has joined #lisp 05:04:16 fihi09`` [n=user@pool-71-190-74-115.nycmny.east.verizon.net] has joined #lisp 05:04:16 huangjs` [n=user@watchdog.msi.co.jp] has joined #lisp 05:04:22 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Read error: 60 (Operation timed out)] 05:04:26 -!- huangjs [n=user@watchdog.msi.co.jp] has quit [Remote closed the connection] 05:04:26 -!- lichtblau [n=user@port-92-195-56-124.dynamic.qsc.de] has quit [Remote closed the connection] 05:04:27 -!- fihi09` [n=user@pool-71-190-74-115.nycmny.east.verizon.net] has quit [Broken pipe] 05:09:17 spradnyesh [n=pradyus@nat/yahoo/x-xetwsuftgvsoelze] has joined #lisp 05:13:14 oh, does SBCL support block-compilation? 05:13:43 saikatc [n=saikatc@c-98-210-192-23.hsd1.ca.comcast.net] has joined #lisp 05:25:15 SandGorgon [n=OmNomNom@122.160.41.129] has joined #lisp 05:29:55 kmc [n=keegan@206-71-236-70.c3-0.nyw-ubr5.nyr-nyw.ny.cable.rcn.com] has joined #lisp 05:32:15 -!- benny [n=benny@i577A1167.versanet.de] has quit [Read error: 60 (Operation timed out)] 05:33:38 -!- cmsimon [n=cmsimon@unaffiliated/cmsimon] has quit [Remote closed the connection] 05:36:57 Kolyan [n=nartamon@89-178-40-164.broadband.corbina.ru] has joined #lisp 05:40:55 -!- dnolen [n=dnolen@pool-70-107-153-5.ny325.east.verizon.net] has quit [] 05:42:02 -!- wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has quit [Read error: 60 (Operation timed out)] 05:43:52 hey guys 05:44:00 anyone know the status of the gtkairo backend to McCLIM? 05:45:21 gigamonkey [n=user@adsl-99-155-195-97.dsl.pltn13.sbcglobal.net] has joined #lisp 05:45:48 -!- billitch [n=billitch@rob92-1-82-67-155-88.fbx.proxad.net] has quit [Remote closed the connection] 05:46:01 billitch [n=billitch@rob92-1-82-67-155-88.fbx.proxad.net] has joined #lisp 05:51:04 stassats [n=stassats@wikipedia/stassats] has joined #lisp 05:58:05 <_deepfire> Ralith, at some point it even somewhat worked on win32 05:58:11 Ralith: no, but i want to know the status of Dylan 05:58:19 ricktoid: Dylan? 05:58:31 yes 05:58:31 _deepfire: that's simultaneously encouraging and discouraging. 05:58:37 ricktoid: who/what's that? 05:58:41 yes, some of us want syntax 05:59:05 <_deepfire> Ralith, so win32 is /the/ reason you're asking? 06:00:13 -!- redline6561 [n=redline@c-66-56-16-250.hsd1.ga.comcast.net] has quit ["Leaving."] 06:00:41 ricktoid: who/what's Dylan? 06:00:58 _deepfire: most certainly not, but it seems like a good measure of how stable it is. 06:00:59 ricktoid: so you are just saying "dylan" to everyone? 06:01:19 Ralith: that's a programming language with some lisp roots 06:01:41 stassats: ah. 06:01:48 ricktoid: wth, that has *nothing* to do with my question. 06:02:45 nekobaka [n=baka@c-67-181-80-137.hsd1.ca.comcast.net] has joined #lisp 06:02:49 wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has joined #lisp 06:03:32 _deepfire: I read on cliki that the gtkairo backend is very unstable; is that still the case? 06:03:39 -!- beach` is now known as beach 06:03:56 Good morning! 06:04:09 hi 06:04:52 Ralith: That backend hasn't been worked on for a while, and I probably never used it, so I don't know how far from completion it is. 06:04:55 -!- OmniMancer [n=OmniManc@122-57-16-129.jetstream.xtra.co.nz] has quit ["Leaving."] 06:05:09 Ralith: I had the impression it was usable at some point. 06:05:20 yeah, the wiki suggested that it *was* good but got made unstable :/ 06:05:31 which is dissapointing, because it seems like such a great thing to have 06:06:02 <_deepfire> Ralith, it actually works for simple applications. 06:06:20 dnolen [n=dnolen@ool-18bc2fa9.dyn.optonline.net] has joined #lisp 06:09:22 -!- dnolen [n=dnolen@ool-18bc2fa9.dyn.optonline.net] has quit [Read error: 104 (Connection reset by peer)] 06:10:34 dnolen [n=dnolen@ool-18bc2fa9.dyn.optonline.net] has joined #lisp 06:10:35 -!- billitch [n=billitch@rob92-1-82-67-155-88.fbx.proxad.net] has quit [] 06:10:47 ricktoid: So let me get this straight, you want to makes us believe that you are Richard Stallman, and that you come here in order to try to convert us to a different syntax for Lisp? 06:11:22 -!- ltriant [n=ltriant@lithium.mailguard.com.au] has quit ["leaving"] 06:13:44 _deepfire: that's not very encouraging at all :P 06:15:41 -!- gigamonkey [n=user@adsl-99-155-195-97.dsl.pltn13.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 06:18:10 no 06:18:15 when did i say i was RMS? 06:18:38 ricktoid: Try /whois ricktoid 06:18:41 vbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb8m k ;. ; 06:18:55 i would say gus was on my keyboard 06:19:05 listen 06:19:13 i'm not rms 06:19:21 rms is an evil dude 06:19:25 a bad actor 06:19:33 will you stop, please? 06:19:41 no 06:19:59 rms is a bad actor, i won't stop telling people that rms is a bad actor 06:20:16 ricktoid: Tell that somewhere else then. 06:20:41 we need Dylan 06:20:50 and RMS agrees 06:20:59 sigh 06:21:10 ricktoid: Go away! 06:21:29 we have intersting conversations 06:21:42 besides macro local scope 06:21:50 like on C.L.L. 06:21:51 fine 06:22:01 beach: fuck you too 06:22:07 beach: we do need Dylan 06:22:13 beach: fuck off 06:22:14 -!- Eko [n=eko@c-98-242-74-171.hsd1.ga.comcast.net] has quit ["This computer has gone to sleep"] 06:22:22 ricktoid's style looks familiar 06:22:39 very c.l.l. style 06:22:44 not close 06:23:04 <_deepfire> ricktoid, do you realise you are not going to win Dylan many friends this way? 06:23:30 stassats: yes, very eloquent. 06:23:31 Dylan has had 3 friends in the last decade 06:23:45 keep RMS far away from my #lisp ! :P 06:23:58 p_l: agreed 06:24:02 p_l: don't! 06:24:06 keep RMS away from everything 06:24:09 pure evil 06:24:31 the only RMS that I tolerate in Lisp expands to Record Management System 06:24:47 p_l: Will you not go there, please. 06:25:05 *p_l* goes back to his previous endeavors(sp?) 06:25:06 <_deepfire> p_l, you're now playing on the same field as ricktoid, just at a different level. 06:25:09 until i get kicked and banned to hell i will pull for Moon's new Lisp or Dyland 06:25:21 btw, morning beach 06:25:34 OmniMancer [n=OmniManc@125.236.55.43] has joined #lisp 06:25:45 retupmoca` [n=retupmoc@adsl-76-235-169-202.dsl.klmzmi.sbcglobal.net] has joined #lisp 06:26:14 <_deepfire> ricktoid, your marketing efforts look sincere and at the same time very poorly executed. 06:26:31 Eko [n=eko@c-98-242-74-171.hsd1.ga.comcast.net] has joined #lisp 06:26:45 as Tyrell might say...questions...questions 06:27:36 how many hundreds of thousands would it take to get a cleaned-up, (much more non-verbose) with a killer IDE on the market? 06:27:43 Nshag [i=user@lns-bzn-32-82-254-4-36.adsl.proxad.net] has joined #lisp 06:27:52 Dylan 06:27:55 sorry 06:28:43 all you idiots think in terms of SLIME 06:28:48 emacs? 06:29:41 i want dylan 92 (toggle s-expressions) with a killer IDE 06:29:46 how much does that cost me? 06:29:57 i want you to leave, now 06:30:00 million five? 06:30:18 stassats: suck my dick 06:31:10 stassats: who are you? 06:31:14 stassats: what do you own? 06:32:03 sorry 06:32:11 he'res my whole deal 06:32:16 we need a dylan 06:32:28 or a Moon implmentation 06:33:07 <_deepfire> ricktoid, it'd be good to see PLOT implemented, yes. 06:33:22 no, you need a constant distraction because you can never do anything with what's here right now anyway 06:33:33 carrot-on-a-stick 06:33:48 <_deepfire> ricktoid, but you don't have to go to channels and make a fool out of yourself because of it. Seriously. 06:35:46 *_deepfire* has (slime-setup '(slime-sbcl-exts slime-repl slime-presentations slime-autodoc slime-c-p-c slime-fancy)) but no arglist hinting. Slime CVS. 06:36:36 not the problem, but slime-fancy here includes everything but slime-sbcl-exts 06:36:41 freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has joined #lisp 06:37:07 perhaps load order? .. *wild guess...* 06:37:15 <_deepfire> stassats, I was irrationally stabbing at everything when it wasn't loading properly... 06:37:17 _deepfire: what lisp, what emacs version? 06:37:36 -!- redblue [i=star@ppp077.108-253-207.mtl.mt.videotron.ca] has quit [""You cannot do a kindness too soon because you never know how soon it will be too late." -RWE"] 06:37:38 *p_l* ponders if autogeneration of function symbols from database is a good idea (for integrating stored procedure based databases) 06:37:38 <_deepfire> stassats, nevermind, I re-executed slime-connect and the hinting appeared 06:37:43 well, loading twice slime-autodoc might be the problem 06:38:05 is there any lisp literature on puzzles and puzzle games and generating provably solvable puzzles? 06:38:11 <_deepfire> stassats, nevertheless, I had a connection (meta-point, for example, was working) 06:38:56 <_deepfire> Something's fishy.. 06:39:50 freiksenet pasted "current solution" at http://paste.lisp.org/display/90638 06:39:58 compiling contribs for the first time sometimes gives unexpected results, never got around to figuring it 06:39:59 dto: That's probably a bit too specialized. What are you looking for exactly? 06:40:00 redblue [i=star@ppp021.108-253-207.mtl.mt.videotron.ca] has joined #lisp 06:40:18 Hello! I am currently using above way of calling keyword functions when it is unknown if their keyword arguments are null 06:40:25 is there a better way to do it? 06:41:41 multiple-value-call or apply tend to be the two options available in those contexts, i think, freiksenet 06:41:49 <_deepfire> lnostdal, now ISTR that yes, load order was that I fought with the above incantation 06:42:09 ok, _deepfire 06:42:46 freiksenet: Using apply would probably be simpler. 06:42:49 lnostdal, is it possible to generalize this as function or macro? it is quite bulky and long :( 06:42:55 -!- retupmoca [n=retupmoc@adsl-76-235-171-232.dsl.klmzmi.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 06:43:52 do any of you have opinions about the book _On Lisp_ by Paul Graham? 06:44:09 -!- retupmoca` [n=retupmoc@adsl-76-235-169-202.dsl.klmzmi.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 06:44:17 minion: graham crackers? 06:44:18 graham crackers: http://www.cs.northwestern.edu/academics/courses/325/readings/graham/graham-notes.html 06:44:43 kmc: It's a great book! His use of Lisp is a bit strange, but the book is an excellent illustration of how to use Lisp macros to implement DSLs. 06:44:52 sure .. an inline function (mvcall ..?) might be all you need though, freiksenet .. i assume you know about m-v-c though 06:45:01 i'm wondering if his macro-happiness is typical of Lisp programmers in general 06:45:11 he seems to think it's the preferable way to write even basic maps and folds and the like 06:45:12 (tab-completion that is, freiksenet ) 06:45:39 kmc: I don't think that's true. Paul Graham knows to use macros only when functions won't do. 06:45:53 kmc: i think you meant recursion 06:46:12 lnostdal: I am aware of this :) I like code to be beautiful, this construction is ugly 06:46:56 kmc: Macros are used for syntactic extensions. The book is about implementing DSLs as embedded languages. It is normal that it pushes this technique to the extreme. 06:47:43 fair enough 06:47:50 i haven't gotten to the serious DSLs yet 06:47:53 retupmoca` [n=retupmoc@adsl-76-235-169-202.dsl.klmzmi.sbcglobal.net] has joined #lisp 06:48:19 beach: could you link me to some example on how to replace mvc with apply there? 06:48:20 kmc: Your way of saying "macro-happiness" makes me think your opinion is that there is something wrong with that. 06:48:30 i was just surprised 06:48:57 <_deepfire> beach, I have a terminilogy issue with the confusion about the word "syntax", when applied to Lisp, btw 06:49:01 I wonder if they still sell On Lisp. reading from pc makes me sad panda. 06:49:07 <_deepfire> *terminology 06:49:24 freiksenet: Something like (apply kwfun arg1 arg2 (if kwarg (list :kwarg kwarg) '())) 06:49:54 <_deepfire> beach, they say that "Lisp has little/no syntax", and at the same time macros are used for "syntactic extension" 06:49:57 m-v-c might not cons 06:49:58 i managed to get hold of On Lisp via the local library here .. (they had to order it from some remote library though) 06:50:05 _deepfire: I think Paul Wilson was right when he said "Lisp has a two-level syntax". 06:50:29 beach: so apply ignores empty lists, does it? 06:50:34 dylan 06:50:40 <_deepfire> beach, this appears to make sense, but I think a terminologic clarification is needed 06:50:58 freiksenet: No, an argument list is built from the individual arguments, and the final list. 06:52:07 kmc: Since it is so easy to use this technique to write DSLs, Lisp programmers tend to see many more things as DSLs, and start abstracting things out much sooner than programmers without macros in their languages tend to do. 06:52:08 <_deepfire> beach, I think that a terminologic clarification is due whenever someone appeals to intuition, as the "two-level syntax" notion does 06:52:14 beach: thanks 06:52:16 beach: i'm making this puzzle game: http://www.youtube.com/watch?v=qSJCdFVPhS0 06:52:21 it's in lisp :) 06:52:39 i'm coming at this from a Haskell background 06:52:52 in Haskell we have a lot of DSLs, but very few of them are implemented with macros 06:53:04 one of the features is an infinite level generator, that accepts a difficulty level N and generates a corresponding level with random elements 06:53:34 macros are of course much harder to write in Haskell 06:53:43 kmc: You can write DSLs in any language, but if you have macros, they can be implemented as embedded languages. If you don't, they can't. 06:53:51 though the basic idea of quoting and un-quoting is the same 06:54:14 there are a lot of Haskell embedded DSLs that use no macros 06:54:27 anyway, as Graham himself points out, the line between "library" and "EDSL" is a blurry one 06:54:47 serichsen [n=user@hmbg-4d066af6.pool.mediaWays.net] has joined #lisp 06:54:47 _deepfire: If you want. You can use "surface syntax" or something like that for the translation from sequences of characters to objects, and "intermediate syntax" for imposed restrictions on the structure of lists. 06:54:51 good morning 06:55:22 splittist [n=dmurray@99-90.3-85.cust.bluewin.ch] has joined #lisp 06:55:23 hello serichsen 06:55:24 morning 06:55:26 hello splittist 06:55:54 anyway, it's very interesting stuff 06:55:59 thanks all for the input 06:56:08 ASau [n=user@83.69.227.32] has joined #lisp 06:56:10 benny [n=benny@i577A1C59.versanet.de] has joined #lisp 06:56:14 <_deepfire> kmc, do you know about liskell, btw? 06:57:07 kmc: Calling a library implemented without any syntax modification a "DSL" is really stretching things a bit. 06:58:02 -!- rrice [n=rrice@adsl-99-51-212-135.dsl.akrnoh.sbcglobal.net] has quit ["Leaving."] 06:58:23 <_3b> beach: macros aren't the only way to modify syntax 06:58:27 _deepfire, yes 06:58:35 _3b: I don't think I said that. 06:58:53 <_deepfire> kmc, what was your impression about it, if you care to share? 06:58:54 <_3b> '...if you don't, they can't' 06:59:38 beach, you can redefine the equivalent of progn using monads 06:59:43 and all sorts of other tricks like that 07:00:00 <_deepfire> But, but, that's semantics, not syntax! 07:00:25 _3b: That was a statement about using embedded languages, not about changing syntax. 07:00:25 Why are we worrying about syntax? 07:00:42 <_deepfire> Are we? :-) 07:00:58 _deepfire, i didn't spend too much time looking at it. to me it seems like the wrong direction for the combination -- I'd rather have Lisp semantics with Haskell syntax than the other way around 07:01:27 kmc: I am not surprised. 07:01:36 but i gather Lisp syntax is the sort of thing with a long acclimation period 07:01:42 and also i do understand that it makes metaprogramming much easier 07:02:07 <_deepfire> I'd go as far as to say it makes it practical. 07:02:12 That's mainly the use of text structured as nested lists rather than lisp syntax. 07:02:24 kmc: I wouldn't say a long acclimation period. It's more a matter of 'letting go'. 07:02:53 well, another question: how do Lisp and Scheme compare for "real" applications (as opposed to teaching)? 07:03:10 kmc: Compare with? 07:03:51 kmc: They are very different languages. Why are you inclined to compare them, more than (say) Lisp and C? 07:04:08 Oh, scheme and CL aren't very different. 07:04:10 -!- baddog [n=liam@unaffiliated/baddog144] has quit [Read error: 110 (Connection timed out)] 07:04:19 lisp libraries work on multiple implementations, what i've heard, this is not the case with scheme 07:04:20 <_deepfire> (Welcome to #lisp, btw.) 07:04:24 thanks 07:04:41 kmc: with what? I know of at least few practical usages of for example Scheme (game scripting), Lisp (Piano, various internal-use compilers including GOAL), etc. 07:04:42 They're both procedural. The main difference is that scheme has first class continuations and CL has an extensible type/class system. 07:04:53 (and this is a more of a less and more thing, not an absolute) 07:05:12 they're both strict, effectful functional languages which use s-exprs as syntax, with homoiconic macro metaprogramming 07:05:17 i think that makes them much closer than Lisp and C 07:05:27 Translating between scheme and CL is relatively trivial. 07:05:28 kmc: Lisp is not a functional language. 07:06:09 CL has function literals with closure over lexically scoped free variables 07:06:15 kmc: Lisp is a multi-paradigm language, and for many real applications, it is the fact that it is object oriented that gives the main advantage. 07:06:24 Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has joined #lisp 07:06:27 Graham spends the first few chapters of his book talking about how Lisp is a functional language and how you should write functional code 07:06:28 Reaver1 [n=Data_Ent@212.88.117.162] has joined #lisp 07:06:45 beach, right, it's also an OO language. i don't see these as mutually exclusive 07:06:47 kmc: Not everyone agrees with everything Graham says. 07:07:05 so i'd rather say "functional, imperative, object-oriented language" rather than "multi-paradigm language" 07:07:10 kmc: So C is a functional language as well? 07:07:10 Well, you should mainly write functional code anyhow, in order to minimize the cost of managing synchronization. 07:07:11 because the latter doesn't really convey any information 07:07:15 beach, no, it lacks closures 07:07:30 Uh, what does having lexical closures have to do with being 'functional'? 07:07:38 kmc: So GCC is a functional language? 07:08:07 Zhivago, to be able to claim that "functions are a datatype" you need a way to build new ones at runtime, not just create pointers to a finite set of existing functions 07:08:14 closure over free variables is the traditional way of doing that 07:08:22 beach, i don't follow 07:08:33 kmc: don't fight this :) 07:08:35 kmc: In GCC, you can nest functions. 07:08:42 beach, but they don't close over free variables 07:08:50 kmc: They do, yes. 07:08:56 kmc: GCC's local functions do -- they're closures. 07:09:05 you can't return one and have it continue to work 07:09:11 i'd be very interested to see an example where this works 07:09:14 What does that have to do with lexical closure? 07:09:16 kmc: Now you added another condition. 07:09:26 -!- dto [n=dto@pool-96-252-62-25.bstnma.fios.verizon.net] has quit [Read error: 60 (Operation timed out)] 07:09:30 Also, your basic thesis is wrong. 07:09:48 guaqua, i enjoy talking about the differences between languages, especially with people who have a different programming background than i do. if this is inappropriate or off-topic, someone should tell me and i will gladly shut up. :) 07:09:51 <_deepfire> beach, well, to his defence he said 'to be able to claim that "functions are a datatype" you need a way to build new ones at runtime' 07:09:54 kmc: This way of incrementally adding conditions until reality fits your ideas is very tiring sometimes. 07:10:01 beach, wow 07:10:03 Closing a function over an environment 'creates' a function in much the same way as producing a pointer to an existing function does. 07:10:27 Zhivago, but the latter doesn't allow you to create behaviorally-new functions dynamically 07:10:28 _deepfire: You can with GCC, you just can't use them after the enclosing function returns. 07:10:33 Ie, it doesn't -- it just creates an environment to be applied with applications to the function. 07:11:10 kmc: Neither do lexical closures. 07:11:36 cmm [n=cmm@bzq-79-179-104-149.red.bezeqint.net] has joined #lisp 07:11:42 kmc: this is a good discussion in its own right. but lisp is a sort of a polytheism when it comes to programming paradigms. if the language doesn't support one - you are free to implement it and it's probably technically possible. that's why the term multiparadigm 07:11:47 <_deepfire> Ok, so I guess one can say that in CL lexical closures have indefinite extent, whereas in C they have dynamic extent. 07:11:58 deepfire: Just so. 07:12:50 _deepfire, can you explain the dynamic extent of C closures? 07:13:20 <_deepfire> kmc, they become invalidated once you unwind stack 07:13:23 it seems to me (with GCC nested defns) that they're scoped statically -- the closure falls out of "scope" (usability) at the same time as any local variable 07:13:32 kmc: You are confusing scope with extent. 07:13:34 that seems not "dynamic" to me, but it is just a matter of words 07:13:51 Zhivago, can you explain please? 07:14:08 kmc: { int i; foo(&i); } <- the scope of i is the lexical region in which the name i refers to that particular object. 07:14:17 kmc: i is not in scope inside of foo. 07:14:28 kmc: The extent of i is the region of time for which it exists. 07:14:30 <_deepfire> kmc, scope determines visibility, extent determines valid reference lifetime 07:14:35 hmm, okay 07:14:42 kmc: Here that is the extent of the enclosing block, which is dynamic. 07:15:01 nikodemus [n=nikodemu@cs181201111.pp.htv.fi] has joined #lisp 07:15:03 why is it dynamic? 07:15:12 kmc: Because it happens in time. 07:15:23 -!- ricktoid [n=rstallma@24-107-56-10.dhcp.stls.mo.charter.com] has quit [] 07:15:40 extent is a temporal concept and scope is a syntactic one? 07:15:55 <_deepfire> guaqua, scope can be dynamic as well 07:16:22 yes, okay 07:16:38 okay, this is indeed an important distinction 07:16:39 guagua: Syntax is probably the wrong word -- but it is about context. 07:17:56 can you explain the comment earlier that Lisp has an "extensible type/class system" lacking in Scheme? 07:18:16 (the other side (continuations) i think is not so important -- you can always do CPS anyway) 07:19:00 <_deepfire> kmc, CLOS (completed with MOP) is, probably, the most flexible OO system available today 07:19:02 -!- Nshag [i=user@lns-bzn-32-82-254-4-36.adsl.proxad.net] has quit ["Quitte"] 07:19:03 Axius [n=ade@92.82.82.53] has joined #lisp 07:20:08 -!- daniel_ is now known as daniel 07:20:46 _deepfire: scope can't really by dynamic. What people mean by "dynamic scope" is "indefinite scope and dynamic extent" 07:21:51 <_deepfire> Krystof, noted 07:21:52 mrSpec [n=Spec@unaffiliated/mrspec] has joined #lisp 07:22:41 -!- CrazyEddy [n=CrazyEdd@wrongplanet/CrazyEddy] has quit [Success] 07:22:58 eh? 07:23:02 scope can be dynamic... 07:23:03 Hello 07:23:23 Well, if you consider the scope the context for which a given identifier refers to a given entity, then you can have dynamic scope, by having the mappings change over time. 07:23:37 if the lookup for a binding goes up the dynamic chain rather than the static chain, that's what determines scope 07:23:40 As with special variables, for example. 07:24:29 extent refers to how long something lasts 07:24:37 scope refers to where it is visible 07:24:49 CrazyEddy [n=CrazyEdd@wrongplanet/CrazyEddy] has joined #lisp 07:32:40 freiksenet pasted "macro" at http://paste.lisp.org/display/90639 07:33:04 about the thing I just talked about. I hacked a small macro, could someone check if it works correct? 07:34:04 it doesn't 07:35:41 oh yeah. 07:36:39 nunb [n=nundan@static-217-133-104-225.clienti.tiscali.it] has joined #lisp 07:39:26 <_deepfire> freiksenet, it'd very much helped your cause if you included /some/ context in that paste. Without a specification, reverse-engineering what it is supposed to do is a hassle many aren't ready to work through. 07:40:37 <_deepfire> freiksenet, looking that paste, I recommend you to read 07:40:40 <_deepfire> clhs apply 07:40:41 http://www.lispworks.com/reference/HyperSpec/Body/f_apply.htm 07:41:07 <_deepfire> hint, hint: you probably need append somewhere there 07:41:27 _deepfire: sorry, I will be more detailed in future. I am debugging it now, I think I find my error 07:42:30 I found* 07:42:31 -!- dnolen [n=dnolen@ool-18bc2fa9.dyn.optonline.net] has quit [] 07:43:48 -!- OmniMancer [n=OmniManc@125.236.55.43] has quit [Read error: 54 (Connection reset by peer)] 07:44:17 OmniMancer [n=OmniManc@125.236.55.43] has joined #lisp 07:45:27 With an CLOS hierarchy of a->b->c rooted at a, how can I have an around method for C which skips the around specialized on B and calls the primary for A? 07:46:03 or is that not possible .. 07:46:06 dto [n=dto@pool-96-252-62-25.bstnma.fios.verizon.net] has joined #lisp 07:50:58 freiksenet: and then you'll discover that it shouldn't be a macro 07:51:08 -!- stepnem [n=stepnem@88.103.132.186] has quit [Read error: 110 (Connection timed out)] 07:51:09 beach, is Climacs a good application platform? 07:51:18 freiksenet pasted "new macro" at http://paste.lisp.org/display/90640 07:51:23 beach: sorry, got disconnected, did i miss anything you said back about my videogame thinger? 07:51:36 minion: tell dto about logs 07:51:36 dto: please look at logs: #lisp logs are available at http://ccl.clozure.com/irc-logs/lisp/ (since 2008-09) and http://tunes.org/~nef/logs/lisp/ (since 2000) 07:51:46 cool 07:51:52 freiksenet pasted "new macro" at http://paste.lisp.org/display/90641 07:52:27 freiksenet: do you know that you can annotate your pastes? 07:54:02 tic: "application platform"? 07:54:06 sykopomp` [n=sykopomp@unaffiliated/sykopomp] has joined #lisp 07:54:06 freiksenet: and your macro is still wrong 07:54:13 -!- tmh [n=thomas@pdpc/supporter/sustaining/tmh] has left #lisp 07:54:15 dto: Nope, don't think so. 07:54:27 chrisdon` [n=user@82-33-137-16.cable.ubr02.wiga.blueyonder.co.uk] has joined #lisp 07:54:32 cadabra [n=cadabra@c-174-52-81-75.hsd1.ut.comcast.net] has joined #lisp 07:54:38 beach: did you see the video 07:54:43 beach, to get basic services you can use. not sure which ones, though... I guess you would get that, courtesy of Clim. 07:54:50 dto: I am afraid I don't have time right now. Sorry. 07:54:56 ok :) 07:55:05 beach, I have a bunch of apps I want to write, but I don't know what toolkit I should base my apps on. 07:55:24 -!- fusss [n=chatzill@60-241-1-206.static.tpgi.com.au] has quit [Read error: 113 (No route to host)] 07:55:29 tic: My opinion is that CLIM itself should be used instead of Climacs, unless you need an editor of course, such as for sending Email. 07:55:50 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit [sendak.freenode.net irc.freenode.net] 07:55:50 -!- sytse [i=sytse@speedy.student.ipv6.utwente.nl] has quit [sendak.freenode.net irc.freenode.net] 07:55:50 -!- Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has quit [sendak.freenode.net irc.freenode.net] 07:55:50 -!- freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has quit [sendak.freenode.net irc.freenode.net] 07:55:50 -!- wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:50 -!- nekobaka [n=baka@c-67-181-80-137.hsd1.ca.comcast.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:50 -!- ia [n=ia@89.169.161.244] has quit [sendak.freenode.net irc.freenode.net] 07:55:50 -!- mattrepl [n=mattrepl@pool-71-163-162-204.washdc.fios.verizon.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:50 -!- nowhere_man [n=pierre@lec67-4-82-235-57-28.fbx.proxad.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- eno [n=eno@nslu2-linux/eno] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- stoop [n=stoop@unaffiliated/stoop] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- tltstc [n=tltstc@cpe-76-90-95-39.socal.res.rr.com] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- djinni` [n=djinni`@li14-39.members.linode.com] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- vcgomes [n=vcgomes@li17-238.members.linode.com] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- chrisdone [n=user@unaffiliated/chrisdone] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- Computer [n=Computer@unaffiliated/computer] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- peddie [n=peddie@TEP.MIT.EDU] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- guaqua [i=gua@xob.kapsi.fi] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- mogunus` [n=user@173-9-7-10-New-England.hfc.comcastbusiness.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- ahaas [n=ahaas@c-71-59-145-125.hsd1.or.comcast.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- mikezor_ [n=mikael@c-5de570d5.04-404-7570701.cust.bredbandsbolaget.se] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- nullman [n=nullman@c-75-73-150-26.hsd1.mn.comcast.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- ski [n=slj@c-d413e055.1149-1-64736c10.cust.bredbandsbolaget.se] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- rlonstein [i=lonstein@ohno.mrbill.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- Tordek [n=tordek@host15.190-137-250.telecom.net.ar] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- johs [n=johs@hawk.netfonds.no] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- luis [n=user@r42.eu] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- rapacity [n=prwg@unaffiliated/rapacity] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- s0ber [n=s0ber@114-45-234-101.dynamic.hinet.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- housel [n=nuser@mccarthy.opendylan.org] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- bakkdoor [n=bakkdoor@s15229144.onlinehome-server.info] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- blast_hardcheese [n=blast_ha@dsl092-043-124.lax1.dsl.speakeasy.net] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- sykopomp [n=sykopomp@unaffiliated/sykopomp] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- cataska [n=cataska@210.64.6.233] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- erg [n=erg@69.93.127.154] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- nimred [i=nimred@unaffiliated/nimred] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- fatalnix1995 [n=Fatalnix@spirit.georgix.info] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 -!- l_a_m [n=nlamirau@194.51.71.190] has quit [sendak.freenode.net irc.freenode.net] 07:55:51 OmniMancer1 [n=OmniManc@125.236.55.43] has joined #lisp 07:55:53 nowhere_man [n=pierre@lec67-4-82-235-57-28.fbx.proxad.net] has joined #lisp 07:56:16 tic: As far as I can see, Emacs was used as a basis for applications such as VM and Gnus because nothing like CLIM existed. Now it does. 07:56:21 fatalnix1995_ [n=Fatalnix@spirit.georgix.info] has joined #lisp 07:56:31 beach, yeah. I'd rather have One True App(tm) to write everything in. I'm already doing away with the other gnome-ishness. 07:56:36 beach, hm, true. 07:56:43 r0bby [n=wakawaka@guifications/user/r0bby] has joined #lisp 07:56:46 guaqua [i=gua@xob.kapsi.fi] has joined #lisp 07:56:48 eno [n=eno@nslu2-linux/eno] has joined #lisp 07:56:51 cataska [n=cataska@210.64.6.233] has joined #lisp 07:56:54 peddie [n=peddie@TEP.MIT.EDU] has joined #lisp 07:56:54 manuel [n=manuel@pD9E6BCED.dip.t-dialin.net] has joined #lisp 07:57:06 nimred [i=nimred@unaffiliated/nimred] has joined #lisp 07:57:10 ahaas [n=ahaas@c-71-59-145-125.hsd1.or.comcast.net] has joined #lisp 07:57:18 johs [n=johs@hawk.netfonds.no] has joined #lisp 07:57:19 tic: I forget, have you already used CLIM/McCLIM for any applications? 07:57:22 nullman [n=nullman@c-75-73-150-26.hsd1.mn.comcast.net] has joined #lisp 07:57:23 Computer [n=Computer@unaffiliated/computer] has joined #lisp 07:57:29 s0ber [n=s0ber@114-45-234-101.dynamic.hinet.net] has joined #lisp 07:57:31 -!- OmniMancer1 [n=OmniManc@125.236.55.43] has quit [Read error: 104 (Connection reset by peer)] 07:57:37 erg [n=erg@li13-154.members.linode.com] has joined #lisp 07:57:39 mikezor [n=mikael@c-5de570d5.04-404-7570701.cust.bredbandsbolaget.se] has joined #lisp 07:57:39 sytse [i=sytse@speedy.student.ipv6.utwente.nl] has joined #lisp 07:57:43 l_a_m [n=nlamirau@194.51.71.190] has joined #lisp 07:57:47 bakkdoor [n=bakkdoor@s15229144.onlinehome-server.info] has joined #lisp 07:57:48 OmniMancer1 [n=OmniManc@125.236.55.43] has joined #lisp 07:57:49 Tordek [n=tordek@host15.190-137-250.telecom.net.ar] has joined #lisp 07:57:52 beach, not yet, no. I have your vietnamese app, though! 07:58:08 tic: I find that one pretty cute myself. 07:58:09 beach, my goal for next year is to finish my thesis, and my experience with SDL wasn't good. 07:58:22 stassats annotated #90641 "just apply" at http://paste.lisp.org/display/90641#1 07:58:45 mogunus` [n=user@173-9-7-10-New-England.hfc.comcastbusiness.net] has joined #lisp 07:58:56 tic: So what Swedish dinner specialty shall I serve to a young Vietnamese persons who is outside of Vietnam for the first time ever? 07:59:36 -!- Fufie [n=innocent@86.80-203-225.nextgentel.com] has quit ["Leaving"] 08:00:16 mvilleneuve [n=mvillene@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has joined #lisp 08:00:28 vcgomes [n=vcgomes@li17-238.members.linode.com] has joined #lisp 08:00:29 good morning 08:00:30 hello mvilleneuve 08:00:38 you are several minutes late today! 08:00:39 freiksenet: that's what you should use, it's shorter and every lisper would recognize it 08:00:48 freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has joined #lisp 08:00:53 housel [n=nnuser@mccarthy.opendylan.org] has joined #lisp 08:00:56 tltstc [n=tltstc@cpe-76-90-95-39.socal.res.rr.com] has joined #lisp 08:01:15 djinni` [n=djinni`@li14-39.members.linode.com] has joined #lisp 08:02:20 OmniMancer2 [n=OmniManc@125.236.55.43] has joined #lisp 08:03:21 -!- OmniMancer1 [n=OmniManc@125.236.55.43] has quit [Read error: 104 (Connection reset by peer)] 08:03:35 wlr [n=walt@c-65-96-92-150.hsd1.ma.comcast.net] has joined #lisp 08:03:43 trebor_dki [n=user@mail.dki.tu-darmstadt.de] has joined #lisp 08:04:16 ski [n=slj@c-d413e055.1149-1-64736c10.cust.bredbandsbolaget.se] has joined #lisp 08:04:16 Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has joined #lisp 08:04:16 mattrepl [n=mattrepl@pool-71-163-162-204.washdc.fios.verizon.net] has joined #lisp 08:04:16 ia [n=ia@89.169.161.244] has joined #lisp 08:04:16 blast_hardcheese [n=blast_ha@dsl092-043-124.lax1.dsl.speakeasy.net] has joined #lisp 08:04:19 stoop [n=stoop@c-68-34-110-14.hsd1.dc.comcast.net] has joined #lisp 08:04:20 beach: sorry about that, it won't happen again I promise 08:04:20 :) 08:04:40 -!- Axius [n=ade@92.82.82.53] has quit ["Leaving"] 08:04:59 -!- sykopomp` is now known as sykopomp 08:05:09 rapacity [n=prwg@li30-188.members.linode.com] has joined #lisp 08:05:54 rlonstein [i=lonstein@ohno.mrbill.net] has joined #lisp 08:06:37 mvilleneuve: :) 08:10:53 beach, Swedish dinner. Hmm. Tricky. They like fish, don't they? 08:10:57 -!- OmniMancer [n=OmniManc@125.236.55.43] has quit [Connection timed out] 08:11:10 tic: Yes. 08:11:28 tic: But probably not surströmming. 08:11:54 tic: Anyway, I'll give it a thought. Maybe I'll mix Swedish, French, and American. 08:11:58 Maybe not fermented herring. Are there any typical Swedish dishes containing fish that's not just "here's a fish on a plate"? Maybe http://www.ica.se and their recipe bank can give you any hints. I'm really fresh out of ideas. 08:12:16 I mostly eat sauerkraut these days. 08:12:18 tic: OK, thanks for your help. 08:12:25 (i.e. Polish food. :-) 08:12:27 no problem. 08:12:57 OmniMancer [n=OmniManc@125.236.55.43] has joined #lisp 08:13:40 fiveop [n=fiveop@g229080016.adsl.alicedsl.de] has joined #lisp 08:15:53 -!- maus [n=maus@222.253.78.165] has quit ["Leaving"] 08:17:01 -!- spradnyesh [n=pradyus@nat/yahoo/x-xetwsuftgvsoelze] has quit [Read error: 104 (Connection reset by peer)] 08:17:36 -!- OmniMancer [n=OmniManc@125.236.55.43] has quit [Read error: 104 (Connection reset by peer)] 08:18:04 antoszka [n=antoszka@unaffiliated/antoszka] has joined #lisp 08:18:12 OmniMancer [n=OmniManc@125.236.55.43] has joined #lisp 08:18:20 maus [n=maus@222.253.78.165] has joined #lisp 08:18:55 -!- mattrepl [n=mattrepl@pool-71-163-162-204.washdc.fios.verizon.net] has quit [] 08:19:32 tiger [n=user@222.253.78.165] has joined #lisp 08:20:37 pem [n=pem@159.226.35.246] has joined #lisp 08:20:54 -!- tiger [n=user@222.253.78.165] has quit [Remote closed the connection] 08:23:48 -!- OmniMancer2 [n=OmniManc@125.236.55.43] has quit [Read error: 110 (Connection timed out)] 08:25:03 beach: how are you doing today? 08:25:05 cmm- [n=cmm@bzq-79-179-101-247.red.bezeqint.net] has joined #lisp 08:26:16 ejs [n=eugen@77.222.151.102] has joined #lisp 08:27:09 -!- AntiSpamMeta [n=MetaBot@unaffiliated/afterdeath/bot/antispambot] has quit [Killed by tomaw (restart)] 08:29:00 AntiSpamMeta [n=MetaBot@unaffiliated/afterdeath/bot/antispambot] has joined #lisp 08:30:31 -!- ia [n=ia@89.169.161.244] has quit [Read error: 60 (Operation timed out)] 08:32:11 tcr [n=tcr@host146.natpool.mwn.de] has joined #lisp 08:37:41 aerique [i=euqirea@xs2.xs4all.nl] has joined #lisp 08:37:42 freiksenet pasted "seems to work" at http://paste.lisp.org/display/90643 08:37:59 ok, now this seems to work. I could not make it work with apply though :( 08:38:28 -!- Reaver1 [n=Data_Ent@212.88.117.162] has quit [Read error: 60 (Operation timed out)] 08:38:32 grouzen [n=grouzen@91.214.124.2] has joined #lisp 08:38:41 this allows calling function with keyword arguments which can be null because they were not passed, but you do not want this function to get null %) 08:39:19 -!- stassats [n=stassats@wikipedia/stassats] has quit [Remote closed the connection] 08:39:33 stassats [n=stassats@wikipedia/stassats] has joined #lisp 08:39:46 cmm-_ [n=cmm@bzq-79-176-45-108.red.bezeqint.net] has joined #lisp 08:40:35 ejs1 [n=eugen@nat.ironport.com] has joined #lisp 08:40:47 -!- cmm [n=cmm@bzq-79-179-104-149.red.bezeqint.net] has quit [Read error: 110 (Connection timed out)] 08:41:12 -!- naresh is now known as nareshov 08:42:37 spradnyesh [n=pradyus@122.167.75.120] has joined #lisp 08:43:09 -!- OmniMancer [n=OmniManc@125.236.55.43] has quit [Read error: 110 (Connection timed out)] 08:44:46 Haplo_ [n=ihatchon@LPuteaux-156-14-10-37.w80-14.abo.wanadoo.fr] has joined #lisp 08:44:58 Lycurgus [n=Ren@cpe-72-228-150-44.buffalo.res.rr.com] has joined #lisp 08:49:21 -!- ejs [n=eugen@77.222.151.102] has quit [Read error: 110 (Connection timed out)] 08:51:13 freiksenet: What do you want? 08:51:13 tcr, memo from LiamH: See http://paste.lisp.org/display/90606#2 08:51:22 morphling [n=stefan@gssn-5f757a37.pool.mediaWays.net] has joined #lisp 08:52:33 LiamH: Thanks. 08:54:36 -!- cmm- [n=cmm@bzq-79-179-101-247.red.bezeqint.net] has quit [Read error: 110 (Connection timed out)] 08:56:38 lexa_ [n=lexa_@seonet.ru] has joined #lisp 08:56:53 fusss [n=chatzill@60-241-1-206.static.tpgi.com.au] has joined #lisp 08:57:06 -!- lexa_ is now known as Guest85648 08:57:43 tcr: what do you mean? With this macro? 08:57:51 freiksenet: Yup 08:59:16 tcr: I expand make-production of cl-yacc currently. I defined function make-ebnf-production, and I have similar lambda list for arguments. There are two keyword arguments, I want to pass them unchanged, but if they were not passed to my function I don't want to pass nulls to original make-production. 08:59:20 -!- Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has quit [Read error: 60 (Operation timed out)] 08:59:43 -!- manuel [n=manuel@pD9E6BCED.dip.t-dialin.net] has quit [Nick collision from services.] 08:59:50 tcr: I used to do it with just m-v-c, but it is quite long. Now I can code this kind of behaviour in a shorter way 08:59:54 mishoo [n=mishoo@86-124-78-088.iasi.cablelink.ro] has joined #lisp 09:01:10 -!- Guest85648 [n=lexa_@seonet.ru] has left #lisp 09:02:30 kami [n=user@unaffiliated/kami-] has joined #lisp 09:02:35 sayyestolife [n=jot_n@h-60-147.A163.priv.bahnhof.se] has joined #lisp 09:02:37 freiksenet: You have to put the same default value for your keywords as it's in make-production 09:02:44 freiksenet: Or better use: 09:03:14 hello 09:03:52 (defun make-ebnf-production (x y &rest keys &key your-k1 your-k2 &allow-other-keys) ..frob your-k1, and your-k2... (apply #'make-production x y (sans keys :your-k1 :your-k2))) for SANS look in Alexandria 09:04:44 freiksenet: Does this make sense to you? 09:05:25 yes 09:05:45 tcr: thanks a lot :) this is a much better solution than mine. 09:06:33 freiksenet: Yeah in general if you think you have to write a macro that fixes an issue, better come here and ask for advice. Say what your problem is and ask how people usually solve it. 09:06:50 sans is remove-from-plist in recent versions of Alexandria IIRC 09:07:10 it still has the old name 09:07:37 -!- crink [n=crink@unaffiliated/crink] has quit ["Leaving."] 09:07:46 OmniMancer [n=OmniManc@125.236.55.43] has joined #lisp 09:07:54 tcr: I think just defining default values the same as make-production is the best way. Dunno why I haven't though about it :( 09:08:06 -!- OmniMancer [n=OmniManc@125.236.55.43] has quit [Remote closed the connection] 09:09:00 yeah or that 09:09:53 I always wish the lambda-list parameter parsing was extensible, then you could define a lambda-list-keyword, say &inherit, which does what you want without having to renumerate all keywords 09:10:14 and which gives development environments a chance to still display the full arglist 09:11:16 -!- morphling [n=stefan@gssn-5f757a37.pool.mediaWays.net] has quit [Remote closed the connection] 09:11:35 morphling [n=stefan@gssn-5f757a37.pool.mediaWays.net] has joined #lisp 09:11:53 Xof_ [n=crhodes@158.223.51.79] has joined #lisp 09:11:57 attila_lendvai [n=ati@catv-89-134-66-143.catv.broadband.hu] has joined #lisp 09:12:38 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 09:14:14 pavelludiq [i=c28d2f82@gateway/web/freenode/x-pmpzfakpwkxitbwm] has joined #lisp 09:14:41 -!- Soulman [n=kae@Gatekeeper.vizrt.com] has quit ["Leaving"] 09:15:01 -!- envi^office [i=envi@203.109.25.110] has quit ["Leaving"] 09:16:57 longkid [n=lisp@113.22.177.216] has joined #lisp 09:17:16 -!- Xof [n=crhodes@dunstaple.doc.gold.ac.uk] has quit [Read error: 104 (Connection reset by peer)] 09:17:28 freiksenet: if you used github or something like that I could follow your changesets and comment on them 09:17:37 -!- maus [n=maus@222.253.78.165] has quit ["Leaving"] 09:17:46 maus [n=maus@222.253.78.165] has joined #lisp 09:17:57 beach: are you there? 09:18:38 Hello longkid. 09:19:44 -!- morphling [n=stefan@gssn-5f757a37.pool.mediaWays.net] has quit [Remote closed the connection] 09:19:59 morphling [n=stefan@gssn-5f757a37.pool.mediaWays.net] has joined #lisp 09:20:06 maus: Hello maus 09:20:52 -!- tcr [n=tcr@host146.natpool.mwn.de] has quit ["Leaving."] 09:20:52 who wants to watch colorful graphical lispy porn? 09:21:02 longkid: how about you today? 09:21:24 http://www.youtube.com/watch?v=oFgBI32r7Qo 09:22:20 maus: i'm fine. i'm doing my project 09:24:12 tcr: I will make something later today, when it starts to work 09:24:14 -!- spradnyesh [n=pradyus@122.167.75.120] has quit [Read error: 110 (Connection timed out)] 09:24:34 hmm, i was fooling around with the tear-off menus in emacs23-gtk and now my Slime menus are gone, never to be seen again even after restarting emacs 09:25:08 -!- freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has left #lisp 09:25:11 -!- Lycurgus [n=Ren@cpe-72-228-150-44.buffalo.res.rr.com] has quit [Read error: 60 (Operation timed out)] 09:26:43 longkid: it's me.. i'm in GUI group 09:28:01 maus: Tung or Vuong? 09:28:21 longkid: me, Tung. 09:28:47 maus: nice to see u here 09:28:58 -!- saikatc [n=saikatc@c-98-210-192-23.hsd1.ca.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 09:29:02 -!- Adlai [n=adlai@unaffiliated/adlai] has quit [Remote closed the connection] 09:29:02 longkid: me too :) 09:29:07 does anyone know of something like swclos, which doesn't need allegro? 09:29:33 Adlai [n=adlai@unaffiliated/adlai] has joined #lisp 09:29:46 maus: do you meet prof. these days? 09:29:53 dto: well, that was 7'23" interestingly spent. 09:30:17 splittist: hehe 09:30:43 longkid: he's always here. 09:30:54 dto: when you say 'release is 20th November', you mean 'release' in what sense? 09:31:18 well it's a seven-day roguelike. i'm five days into the challenge 09:31:42 i'm supposed to design, program, playtest, polish, release, and promote a game in 7 days. 09:31:56 oh - of course (: 09:32:11 legumbre_ [n=leo@r190-135-20-253.dialup.adsl.anteldata.net.uy] has joined #lisp 09:32:15 maus: when you are free, help me to install soft for building GUI 09:32:24 the truth is that i borrowed a couple of bleep sound effects from my other game. so it's not ALL done within the 7 days. but all the programming and art and music was. and most of the sound effects. 09:33:15 Soulman [n=kae@Gatekeeper.vizrt.com] has joined #lisp 09:34:28 longkid: okie.. http://mcclim.cliki.net/GettingStarted 09:35:03 good morning 09:35:59 dto: it looks and sounds pretty cute 09:36:06 any sbcl hackers around ? 09:36:12 splittist: thanks :) 09:36:21 splittist: are you into games? 09:36:51 maus: it's not simple 09:37:17 dto: not for the last couple of decades, I'm afraid 09:38:20 -!- legumbre [n=leo@r190-135-7-102.dialup.adsl.anteldata.net.uy] has quit [Read error: 145 (Connection timed out)] 09:38:40 longkid: that's the instruction.. just follow it.. but if you need some helps, i can help you then :) 09:40:47 dto: appreciated the 1138 reference, though 09:41:25 :) 09:42:44 dto: nice! 09:42:55 hello mad 09:42:59 madnificent: 09:43:00 :) 09:43:02 dto: can you leave your puck outside of a room and be trapped inside because you can't open it anymore? 09:43:20 yes. 09:43:27 i will try to get it to place pucks in rooms. 09:43:30 good idea. 09:44:21 it might be a cool feature of rooms too 09:44:35 other treasure yeah 09:44:37 that is: it makes rooms much harder, because you can loose your puck in there 09:44:58 anyways, it looked really cool 09:45:04 i need playtesters 09:45:15 i have one person playing and it's resulted in huge amounts of feedback 09:45:38 -!- mishoo [n=mishoo@86-124-78-088.iasi.cablelink.ro] has quit [Read error: 110 (Connection timed out)] 09:45:45 Reaver1 [n=Data_Ent@h15a2.n2.ips.mtn.co.ug] has joined #lisp 09:45:53 I -as always- lack time, but if you can provide me with a repository (and what I'd need as dependencies) I'll try it 09:47:10 dto: then you can upload it to the Lisp AppStore and $$$$ Profit! 09:47:56 blandest [n=blandest@softhouse.is.ew.ro] has joined #lisp 09:48:19 hehe 09:48:19 splittist: perhaps it is a bit strange that we have a whole range of implementations, but still can't easily port to phones 09:48:28 my game has big memory requirements 09:49:18 levente_meszaros [n=levente_@apn-94-44-14-25.vodafone.hu] has joined #lisp 09:49:42 madnificent: we just have to keep telling nyef it's impossible 09:49:56 nyef: it is impossible! 09:50:05 *madnificent* has done his good deed of the day then :) 09:51:07 -!- konr [n=konrad@201.82.134.163] has quit [Connection timed out] 09:51:09 my cheaper phone has 128Mb ram, and i don't really care 09:51:23 6 more months and it'll be measured in gigs 09:52:00 OmniMancer [n=OmniManc@122-57-16-129.jetstream.xtra.co.nz] has joined #lisp 09:52:37 longkid: now I am. 09:52:41 -!- morphling [n=stefan@gssn-5f757a37.pool.mediaWays.net] has quit [Remote closed the connection] 09:52:57 morphling [n=stefan@gssn-5f757a37.pool.mediaWays.net] has joined #lisp 09:53:02 spiaggia: hello 09:53:07 maus: I'm fine thank you. 09:53:14 *spiaggia* is reading scrollbacks. 09:54:22 hello Haplo_ 09:54:28 -!- Axioplase is now known as Axioplase_ 09:55:06 spiaggia: i was successful in creating a solution, however i just try to code in C 09:55:13 -!- mathrick [n=mathrick@users177.kollegienet.dk] has quit [Read error: 110 (Connection timed out)] 09:55:30 spiaggia: Bien and I are creating some functions in LISP 09:55:34 good nite all 09:55:36 -!- fusss [n=chatzill@60-241-1-206.static.tpgi.com.au] has quit ["ChatZilla 0.9.85 [Firefox 3.5.4/20091016092926]"] 09:56:01 hello ranta 09:56:10 :) 09:56:22 longkid: Great! It is not often I see someone use C to write a prototype for something that will eventually be a Lisp program :) 09:57:12 -!- nikodemus [n=nikodemu@cs181201111.pp.htv.fi] has quit ["This computer has gone to sleep"] 09:57:25 spiaggia: how about your work? Is it busy today? 09:58:23 spiaggia: I have just met vng 09:58:30 spiaggia: b/c i'm not still familiar with LISP 09:58:56 longkid: spiaggia will remind you to call it lisp (lower case) soon 09:59:29 :) 09:59:30 or Lisp 09:59:42 okay, i see 09:59:44 spiaggia: when you have free time, please give us your advices for our new justified code. Thank you. 10:00:36 ljames [n=ln@unaffiliated/ljames] has joined #lisp 10:01:13 maus: Not too busy today, no. Just have a lot of email to answer. 10:01:35 splittist: Nah, I always use "Lisp". 10:01:51 spiaggia: :) 10:01:56 maus: Yes, I was planning to look at it right now. 10:03:51 spiaggia: Thank you! We hope this one is better :).. but please don't mind to give us your advices. 10:06:49 -!- levente_meszaros [n=levente_@apn-94-44-14-25.vodafone.hu] has quit ["..."] 10:07:28 Ranta: you do have availability in your schedule this week, right ? 10:07:49 m4dnificent [n=madnific@83.101.62.132] has joined #lisp 10:08:11 levente_meszaros [n=levente_@apn-94-44-14-25.vodafone.hu] has joined #lisp 10:08:26 spiaggia :) 10:10:43 -!- Xof_ is now known as Xof 10:12:55 Haplo_: Why do you keep calling me Ranta? 10:13:09 maus: I mailed you my comments. 10:13:20 maus: Now, I should show you my own solution, so that we can compare. 10:13:43 maus: Your code is looking better and better. 10:14:23 Haplo_: me? Yes, I have some time next week. 10:14:34 spiaggia: Thank you so much. :) 10:16:20 spiaggia; Ranta is not spiaggia in Finish ? 10:16:48 spiaggia: argh next week is off for me 10:17:02 carlocci [n=nes@93.37.215.31] has joined #lisp 10:18:08 -!- longkid [n=lisp@113.22.177.216] has quit [Read error: 110 (Connection timed out)] 10:19:11 quazimodo [n=quazimod@c211-30-174-40.carlnfd1.nsw.optusnet.com.au] has joined #lisp 10:19:13 hay hay hay 10:19:28 so i found a reason to learn lisp 10:19:43 spradnyesh [n=pradyus@122.167.91.203] has joined #lisp 10:19:44 is there a neater way to do something like this 10:19:55 (setq somevar (append somevar (list othervar))) 10:19:56 Haplo_: Oh, maybe it is! I didn't know that! 10:20:34 well my finish is really approximative so we should check 10:20:37 Haplo_: Oh, *this* week! That's trickier, I have Pascal Costanza here, plus a person from HCM. 10:20:56 saikatc [n=saikatc@98.210.192.23] has joined #lisp 10:21:18 Oh I see. I send a mail then 10:21:33 esquish me 10:22:46 -!- madnificent [n=madnific@83.101.62.132] has quit [Read error: 110 (Connection timed out)] 10:23:18 quazimodo, what are you trying to do? 10:23:29 Adlai: add a single element to a list 10:23:41 does it matter if it's on the front or the end? 10:23:43 clhs push 10:23:43 http://www.lispworks.com/reference/HyperSpec/Body/m_push.htm 10:23:54 ah but do we have to do the setq? 10:24:05 quazimodo, the PUSH macro will "push" an element to the front of a list 10:24:20 oh its a macro 10:24:22 Haplo_: Yeah, ranta should work. 10:24:30 it'll do the SETQ for you, so you could just do (push othervar somevar) 10:24:38 although, it'll push to the front of the list, not the end 10:24:51 -!- lemonodor [n=lemonodo@adsl-76-214-17-20.dsl.lsan03.sbcglobal.net] has quit [] 10:24:56 spiaggia: mail sent. 10:24:57 what if you switch it to (push somevar othervar) 10:25:46 anyway ill figure it out 10:25:48 Haplo_: Got it. I'll consult with the boss and get back to you. 10:25:49 tahnks a bunch 10:25:55 timor [n=martin@port-87-234-97-138.dynamic.qsc.de] has joined #lisp 10:27:39 quazimodo, what Lisp environment are you using? 10:28:26 haha autocad autolisp 10:28:31 not exactly the best :P 10:28:40 but its doing the job of automating my guitar neck 10:29:08 does anyone has an idea of the reason of this sbcl message (dunring compilation): http://paste.lisp.org/+1XXY 10:30:40 lexa_ [n=lexa_@seonet.ru] has joined #lisp 10:30:57 quazimodo, I think AutoLisp is fairly similar to CL, but bear in mind that this channel focuses on the Common Lisp dialect, so we might not be able to help you that much 10:31:09 -!- lexa_ is now known as Guest54546 10:31:29 :) 10:31:29 Haplo_, use http://paste.lisp.org/new/lisp/ to get the paste announced in the channel 10:31:33 your help was good 10:31:58 Adlai: yes you are right ! 10:32:12 Haplo_, you'll need to give more context than that. Can you show the code that you tried to compile? 10:33:24 Aldai: sure, all the source or juste the related part ? 10:33:38 hrm 10:33:47 cdr gets everything but the first doesntit 10:33:56 nvm, thanks Adlai 10:34:01 -!- spradnyesh [n=pradyus@122.167.91.203] has quit [Read error: 60 (Operation timed out)] 10:34:56 spradnyesh [n=pradyus@nat/yahoo/x-baudlwvmgatwgznw] has joined #lisp 10:38:06 -!- Reaver1 [n=Data_Ent@h15a2.n2.ips.mtn.co.ug] has quit [Connection reset by peer] 10:40:27 -!- m4dnificent is now known as madnificent 10:40:31 bulibuta [n=bulibuta@89.32.26.42] has joined #lisp 10:44:08 -!- maus [n=maus@222.253.78.165] has quit ["Leaving"] 10:45:41 maus [n=maus@222.253.78.165] has joined #lisp 10:46:13 -!- maus [n=maus@222.253.78.165] has left #lisp 10:47:14 varjag [n=eugene@122.62-97-226.bkkb.no] has joined #lisp 10:48:23 -!- pavelludiq [i=c28d2f82@gateway/web/freenode/x-pmpzfakpwkxitbwm] has quit ["Page closed"] 10:48:47 hefner [n=hefner@ppp-58-9-109-96.revip2.asianet.co.th] has joined #lisp 10:50:21 nikodemus [n=nikodemu@cs181150041.pp.htv.fi] has joined #lisp 10:50:21 ThomasI [n=thomas@unaffiliated/thomasi] has joined #lisp 10:50:28 is there a way to enable floating point underflow detection in SBCL? If so, does anyone do so? 10:52:17 maus [n=maus@222.253.78.165] has joined #lisp 10:54:24 Edico [n=Edico@unaffiliated/edico] has joined #lisp 10:54:45 Hun [n=hun@p50993726.dip0.t-ipconnect.de] has joined #lisp 10:56:52 -!- cadabra [n=cadabra@c-174-52-81-75.hsd1.ut.comcast.net] has quit [Read error: 110 (Connection timed out)] 11:02:03 Reaver1 [n=Data_Ent@212.88.117.162] has joined #lisp 11:02:49 argh 11:03:02 (type (cdr var_name)) = list!! 11:03:08 i need to convert to float, how may i? 11:03:39 are you sure you want cdr and not cadr? 11:03:41 var_name has only 2 elements alwyas 11:04:01 Hun: its autolisp, cdr returns everything but first 11:04:57 i don't know autolisp, but you usually get back the next cons of the list by cdr. which would look like this: (1.12345 . nil) 11:05:04 if you want the float, you need another car 11:05:14 no no, thats fine 11:05:18 i get the number, eg 13.5 11:05:20 but its type is list 11:05:29 and i cant seem to convert it back to an int 11:05:32 what exactly is in var_name? 11:05:33 Odin- [n=sbkhh@s121-302.gardur.hi.is] has joined #lisp 11:05:52 wait up 11:06:05 ok got it 11:06:08 quazimodo: cdr returns a cons cell under normal circumstances. 11:06:39 Ralith: i used (car (cdr foo)) where foo = (0 13.5) and it works out, in autolisp cadr doesnt exist 11:06:50 hefner: sb-int:set-floating-point modes does it, in theory -- but it isn't really supported and may not work properly: at least on darwin the OS resets it and we don't notice that, etc 11:06:52 cdr returns all elements but first 11:06:55 and car returns first 11:06:56 :) 11:06:57 thanks 11:07:06 by saying cadr you made me think laterally 11:07:10 quazimodo: you should read up on what car and cdr actually mean. 11:07:14 Ralith: it returns non-cons-cell also under normal circumstances 11:07:26 stassats: in this case, I was referring to "when passed a list" :P 11:07:32 proper list 11:09:42 Ralith: nil is a list, (cdr nil) returns nil, and nil isn't a cons :P 11:09:47 -!- Guest54546 [n=lexa_@seonet.ru] has left #lisp 11:09:49 stassats: :P 11:09:51 drwho [n=drwho@c-98-225-211-78.hsd1.pa.comcast.net] has joined #lisp 11:11:41 and nil is a proper list too 11:11:45 (hefner: sb-int:set-floating-point-modes :traps '(:underflow)) 11:11:48 indeed 11:11:54 hjpark [n=user@119.207.211.20] has joined #lisp 11:11:55 fe[nl]ix [n=algidus@89.202.147.23] has joined #lisp 11:12:31 -!- hjpark [n=user@119.207.211.20] has quit [Remote closed the connection] 11:12:58 demmeln [n=Adium@lapradig96.informatik.tu-muenchen.de] has joined #lisp 11:13:03 hello 11:14:13 nikodemus, Xof: thanks. 11:16:21 hello hefner 11:16:48 Haplo_ pasted "wired sbcl compile message" at http://paste.lisp.org/display/90649 11:17:09 fe[nl]ix: hi. 11:17:21 Haplo_: where's the message? 11:17:36 here is the code that leads to this compiler warning, and to error during execution 11:18:08 stassats: http://paste.lisp.org/+1XXY 11:18:30 hrm 11:18:40 my lisp is suspiciously reminiscent of my c 11:18:52 this... is not meant to be the case 11:19:29 quazimodo: it helps to read up on how lisp actually works. 11:19:42 Ralith: long ago i did the tutorials on gigamonkeys 11:19:42 also follow standard style conventions. 11:19:45 Haplo_: that looks like a bug in SBCL's walk-setq in src/pcl/walk.lisp 11:19:45 but it was so long ago 11:19:54 quazimodo: "the tutorials on gigamonkeys?" 11:19:56 what are those? 11:20:03 Ralith, I think he's talking about PCL 11:20:04 Xof: rahhh :-p 11:20:08 mm google gigamonkeys 11:20:11 Adlai: if he'd read PCL he'd know what car and cdr were :P 11:20:20 not if it was long ago... 11:20:22 quazimodo: I know who gigamonkeys is. 11:20:27 Haplo_: remove the inner backquote in the obvious place in that function 11:20:28 Adlai: that's like forgetting what addition is. 11:20:30 yeah PCL 11:20:30 Xof: my version of sbcl is : SBCL 1.0.29.11.debian 11:20:33 pracitcal common lisp 11:20:36 good ebook 11:20:43 it was aaages ago 11:20:46 3years or more maybe 11:20:47 Haplo_: it still seems present in current sources 11:21:04 if you like you could report it to the mailing list so we don't forget 11:21:35 Xof: I'll try to find out were is it precisely, I'll try to fix my code to compile and then i'll try to report :-p 11:21:59 to workaround, remove any :type specifiers on any slots that you're setting through with-slots 11:22:16 or don't use with-slots, use (setf slot-value) 11:23:18 ill redo PCL in my spare time 11:24:31 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit ["+++ killed by SIGSEGV +++"] 11:24:54 lol i have variable names like var_offset_from_last_fret_top 11:25:00 annoylingly long 11:25:25 gah, I can't trigger this bug 11:25:55 quazimodo: underscored var names are "bad" style. 11:26:08 convention dictates hyphens 11:27:50 quazimodo: generally, though, erring on the side of verbose is not bad when it comes to code, as it will probably have to be read many more times than written. 11:27:56 ah, yes, I can 11:28:03 Haplo_: to work around, remove the type declaration in that method 11:28:11 Ralith: depends on how much you err though ^_^ 11:28:32 Ralith: i thought the _ naming was ok styl 11:29:16 madnificent: just on the side, one hopes. 11:29:20 quazimodo: in C, yes. 11:29:21 this isn't C. 11:29:27 Xof: it does the truck 11:29:30 Ralith: we use interCaps in C 11:29:33 s/u/i// 11:29:38 quazimodo: *you* might. 11:29:49 (also, that's called camelCase) 11:29:57 Ralith: everyone ive ever seen using C does that, everyone else in uni does too 11:29:59 -!- stassats [n=stassats@wikipedia/stassats] has quit [Read error: 104 (Connection reset by peer)] 11:30:06 anyway thats not the point 11:30:09 quazimodo, you haven't read much code then. 11:30:17 truthfuly i havnt 11:30:24 or ever worked on a Unixy platform 11:30:47 no i havent spent much time on that stuff, all my code experience is uni stuff 11:30:48 Ralith: (agree-with-a-user (find-the-right-irc-user :nick-name "Ralith") :topic (artificial-intelligence-find-previous-topic 'erring-on-too-long-variable-names-by-a-slight-bit)) 11:30:53 projects, tutorials, uni software etc 11:30:55 all intercaps 11:31:03 quazimodo, university again... 11:31:07 -!- redblue [i=star@ppp021.108-253-207.mtl.mt.videotron.ca] has quit [Read error: 110 (Connection timed out)] 11:31:16 that's not necessarily representative of good style. 11:31:27 its consistent 11:31:30 madnificent: yeah, yeah :P 11:31:42 tic: what do you consider good style? 11:31:43 Xof: compiling eclipse with sbcl is not an easy thing :) 11:32:04 Haplo_: test often, report bugs to mailing lists 11:32:41 quazimodo, in C? not camel case. I like PEP8. For Lisp, the topic for this channel, check out e.g. http://xach.com/lisp/pcl-distilled.pdf 11:32:48 -!- envi^home [n=envi@220.121.234.156] has quit [Read error: 104 (Connection reset by peer)] 11:32:55 tic: cheers 11:33:27 er. make that http://www.cliki.net/Naming%20conventions 11:33:54 but basically, naming-with-hyphens and *global-variables-with-earmuffs* 11:34:16 +different-ones-for-constants+ 11:34:37 which seems to not be used very much from what I understand. there's been some discussion here on the topic. 11:34:46 oh? 11:34:59 well, I asked and someone said don't bother. 11:35:08 it seems like a good idea to me 11:35:18 me too. maybe I got it wrong. 11:35:24 envi^home [n=envi@220.121.234.156] has joined #lisp 11:35:34 assuming that you're not using defconstant where you should be using defparameter 11:35:37 oh yeah, lisp likes - instead of _ 11:35:46 still it doesnt even matter 11:35:52 as long as its consistent and readable 11:35:54 doesn't even matter for what? 11:36:02 yes, - is far more readable than _ 11:36:11 quazimodo: you appeared dismayed that your lisp looked like C. This is one way to change that. 11:36:19 people on this channel will not tolerate it, however you explain yourself :) 11:36:25 Ralith: i meant in structure 11:37:23 i guess i have to agree with you guys and go by that standard in case i alienate and marginalize myself otherwise 11:37:29 Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has joined #lisp 11:37:40 yes you do. 11:37:41 the standard is usually there for a reason, even if you don't understand it 11:39:03 Fufie [n=poff@Gatekeeper.vizrt.com] has joined #lisp 11:39:12 hi Fufie 11:39:16 the reason is cultural and social 11:39:16 what's been up? 11:39:26 hei hei 11:40:53 im not fighting it, ill go by it from now now and ill use sed to fix up my file 11:41:18 envi_home2 [n=envi@220.121.234.156] has joined #lisp 11:41:21 if its something you would like to talk about id love to know what those reasons are 11:42:08 tradition, someone decided it to be so. like the indentation standard, and other things. 11:43:51 redblue [i=star@ppp128.108-253-207.mtl.mt.videotron.ca] has joined #lisp 11:45:39 lisp is one of those languages people write lisp in. not some other language. in contrast to the common concept of "writing fortran in any language" 11:48:02 interestingly i can definately see why lisp isnt used for scientific purposes :P 11:48:09 an interpolation function is hurting my brain 11:48:24 not that its hard, the block of code just looks fat 11:49:01 quazimodo, Lisp actually does get used for scientific purposes... 11:49:03 that is not a valid reason for not using Lisp for scientific purposes. 11:49:10 http://piano.aero/ <= my favorite URL 11:49:40 argh im getting countered left right n center 11:49:42 im out 11:49:48 its time to work 11:49:55 ok guys thanks for the help 11:50:11 oh replace scientific with engineering 11:50:15 word swap 11:50:19 bye :) 11:50:20 -!- quazimodo [n=quazimod@c211-30-174-40.carlnfd1.nsw.optusnet.com.au] has left #lisp 11:51:05 -!- Reaver1 [n=Data_Ent@212.88.117.162] has quit [Read error: 104 (Connection reset by peer)] 11:51:09 qwerty_ [i=5b4e4bfe@gateway/web/freenode/x-uisildlcgrgecolq] has joined #lisp 11:51:22 -!- qwerty_ [i=5b4e4bfe@gateway/web/freenode/x-uisildlcgrgecolq] has left #lisp 11:51:55 freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has joined #lisp 11:52:45 is there a shortcut for (remove-if #'null lst)? 11:53:16 firstly, it's called a "list" 11:53:20 secondly, (remove nil list) 11:54:14 adlai: thanks 11:54:34 -!- Modius_ [n=Modius@cpe-70-123-130-159.austin.res.rr.com] has quit [Read error: 104 (Connection reset by peer)] 11:54:47 -!- udzinari [n=user@nat/ibm/x-mgztgeelrqxjxnry] has quit [Read error: 110 (Connection timed out)] 11:54:47 03:50:40 < quazimodo> oh replace scientific with engineering 11:54:50 that's funny 11:54:55 Modius_ [n=Modius@cpe-70-123-130-159.austin.res.rr.com] has joined #lisp 11:54:59 cuz piano.aero is really more engineering than science :P 11:55:16 -!- Kolyan [n=nartamon@89-178-40-164.broadband.corbina.ru] has quit [Read error: 104 (Connection reset by peer)] 11:55:22 silenius [n=jl@yian-ho03.nir.cronon.net] has joined #lisp 11:55:23 Kolyan [n=nartamon@89-178-40-164.broadband.corbina.ru] has joined #lisp 11:59:42 -!- envi^home [n=envi@220.121.234.156] has quit [Read error: 110 (Connection timed out)] 12:02:31 -!- Kolyan is now known as Kolyan[away] 12:04:10 Reaver1 [n=Data_Ent@212.88.117.162] has joined #lisp 12:05:28 -!- schme [n=marcus@sxemacs/devel/schme] has quit [Read error: 110 (Connection timed out)] 12:06:15 hm, the 'abort' restart seems to be missing when dealing with background threads 12:06:40 or whatever restart is needed for one to be able to quickly hit 'q' in the slime debugger 12:08:27 (sb-thread:make-thread (lambda () (with-simple-restart (abort "abort") (error "epic fail")))) solves it, but didn't this restart use to be available in new threads a while back? 12:08:44 (..solves in in that i can hit 'q' in the slime debugger..) 12:09:04 -!- timor [n=martin@port-87-234-97-138.dynamic.qsc.de] has quit [Remote closed the connection] 12:09:06 ruediger [n=quassel@188-23-78-20.adsl.highway.telekom.at] has joined #lisp 12:09:25 schme [n=marcus@c83-249-82-26.bredband.comhem.se] has joined #lisp 12:09:31 for better or for worse, new threads don't get an automagic ABORT restarts currently in sbcl -- and i'm pretty sure they never did, but could be mistaken on that count 12:10:16 (i agree that it's suboptimal, and the terminate-thread restart should probably be renamed abort) 12:11:33 -!- redblue [i=star@ppp128.108-253-207.mtl.mt.videotron.ca] has quit [""You cannot do a kindness too soon because you never know how soon it will be too late." -RWE"] 12:12:09 ok, nikodemus .. i'll just add a local patch to bordeaux-threads .. when the stack is huge it gets old hunting down the terminate-thread restart at stack frame nr. 50 or so :) 12:12:59 dawoop [n=root@213.180.77.81] has joined #lisp 12:13:06 Greetings. 12:13:32 I'm playing around a bit with ltk and I've run into some problems. 12:14:54 I create buttons programmaticly (in a for-loop stylish way) and I use the :command and a lambda. In this lambda I use a couple of variables (that differ in each iteration), but all the buttons seems to get the same lambda function. 12:15:31 QinGW [n=wangqing@203.86.89.226] has joined #lisp 12:15:53 Do I make sense? 12:16:06 if you're closing over loop variables.. well, it's the same variable in all of the lambdas, and they will see the last value it took on 12:16:49 like (mapcar #'funcall (loop for i from 0 below 6 collect (lambda () (print i)))) 12:17:42 whereas you actually want to preserve the value at the time you created the closure, so you want a new variable: (mapcar #'funcall (loop for i from 0 below 6 collect (let ((i i)) (lambda () (print i))))) 12:18:48 did I guess the right problem? 12:19:51 yea, I believe so hefner 12:20:06 But it's a double dotimes that I'm using 12:20:13 and thus I'm not quite sure how to solve it 12:21:55 okay, same thing, you want to wrap a let around the lambda that binds two new variables with the values of the loop variables 12:22:23 ah I see, although I don't really get why it is like this :) 12:23:21 wow. nice. It works really nice :) 12:23:34 Geralt [n=Geralt@p5B32EF72.dip.t-dialin.net] has joined #lisp 12:24:01 the lambdas are literally sharing the same variable - as the loop runs and increments i, j, or whatever, all the lambdas see that current value. this sharing is useful if you want to communicate between them, but it isn't what you want here. 12:24:07 dawoop: Like hefner said, without the let, there is a single binding, and when you do the let, you introduce a different binding each time around. 12:24:24 lnostdal, Why don't better provide a patch for sbcl? 12:25:34 *hefner* would like his looping macros to create this inner binding automatically, since they probably don't want me setf'ing the loop variable myself anyway, and any compiler ought to optimize it away if it isn't needed 12:27:07 trittweiler, heh :) .. yeah, i'm not actually sure if renaming terminate-thread to abort is the best idea; perhaps someone or something in sbcl even relies on that restart? .. it's a 1 line diff (line 938 in target-thread.lisp), i think 12:27:14 hefner: But as I recall, CL:LOOP requires the current semantics, right? 12:27:24 hefner: You are of course free to make your own looping macros. 12:27:28 hefner, it's not as simple as that. If you rebind, you actually create a new binding for which, for example, a previous type declaration does not apply 12:27:31 spiaggia: I'm sure it does. 12:28:32 -!- maus [n=maus@222.253.78.165] has left #lisp 12:29:26 trittweiler, i can try here and see what happens, though 12:30:26 -!- ace4016 [i=ace4016@cpe-76-170-134-79.socal.res.rr.com] has quit ["night"] 12:31:01 lnostdal, It should probably provide both restarts 12:31:45 trittweiler: I think the hypothetical new looping macro can be smart enough to apply the same declaration to the inner binding, if (like cl:loop) it is aware of it. Even so, it doesn't seem like an important issue in practice. 12:32:34 yeah, or perhaps it is something slime should fall back to automatically .. i don't know; killing threads is sort of a "big thing to do" so easily 12:33:22 -!- SandGorgon [n=OmNomNom@122.160.41.129] has quit [Read error: 145 (Connection timed out)] 12:35:56 Ok another question. 12:36:21 I'd like to save a "reference" of some sort to the button itself inside the :command, how do I do that? 12:38:09 stassats [n=stassats@wikipedia/stassats] has joined #lisp 12:39:19 hi stassats 12:39:25 hi 12:39:55 How strong is your asdf fu? 12:40:41 not much 12:41:30 -!- dawoop [n=root@213.180.77.81] has quit [Remote closed the connection] 12:41:37 i use fuzzy-completion-fu and glancing over code 12:41:47 ziga` [n=ziga`@BSN-143-132-218.dial-up.dsl.siol.net] has joined #lisp 12:42:29 I'd beed an asdf:who-depends-on for the next step over slime-query-replace-system 12:42:34 s/beed/need/ 12:45:29 trittweiler: did you work on some slime tools for modifying defpackage forms? 12:46:30 *Xach* had a dream today that he had the point on (foo:bar ...) and he hit a chord that converted it to (bar ...) and added or modified (:shadowing-import-from #:bar #:foo) to his defpackage form 12:46:36 C-c x 12:46:44 oops, #:foo #:bar rather 12:47:02 C-c x will modify :export 12:47:43 Xach, you could certainly do that with the infrastructure I set up in contrib/slime-package-fu.el 12:47:53 What contrib is required for that? ok 12:47:59 HET2 [n=diman@w283.engin.cf.ac.uk] has joined #lisp 12:48:38 Jafet [n=Jafet@unaffiliated/jafet] has joined #lisp 12:49:02 Perhaps you should introduce a new command indirection for package frobbing; C-c C-p x for export and i for import 12:49:35 -!- ruediger [n=quassel@188-23-78-20.adsl.highway.telekom.at] has quit [Remote closed the connection] 12:50:54 don't you these keys are ridiculous enough that you might as well M-x and type out the full command name? 12:52:21 daniel_ [i=daniel@unaffiliated/daniel] has joined #lisp 12:52:21 what he said ^^^ 12:52:26 This is why we need Hyper Super Bucky... 12:52:30 M-x dwiw 12:52:40 (directed to much of Emacs in general, not just slime) 12:53:34 you always can do M-x 12:53:55 *cmm-_* wishes mode commands would marshal themselves into a menu automatically. function name, key binding, docstring as a tooltip 12:54:15 Patches welcome 12:54:24 I know, I know 12:54:36 *splittist* wishes, once again, he had time to get back into Climacs 12:55:09 -!- Jasko [n=tjasko@c-174-59-195-12.hsd1.pa.comcast.net] has quit ["Leaving"] 12:55:54 longkid [n=lisp@113.22.177.216] has joined #lisp 12:57:04 Jasko2 [n=tjasko@c-174-59-195-12.hsd1.pa.comcast.net] has joined #lisp 12:58:19 flatline [n=flatline@z166195.dynamic.ppp.asahi-net.or.jp] has joined #lisp 12:58:57 -!- ignas [n=ignas@ctv-79-132-160-221.vinita.lt] has quit [Read error: 110 (Connection timed out)] 12:59:49 -!- tobetchi [n=tobetchi@p296ba7.sagant01.ap.so-net.ne.jp] has quit [Client Quit] 13:00:30 via a stack-frame, is it possible to get a list of special variables that have been bound in that thread? .. or something like that? (not even sure how to phrase this) 13:01:05 udzinari [n=user@nat/ibm/x-gyxzfdcejkqkzlpg] has joined #lisp 13:01:19 ..to sort of see the "history" of a special variable as it changes going from stack to stack 13:01:59 (..i bind the variable many times..) 13:02:26 uh, i meant "going from frame to frame" 13:03:51 renaming the sbcl restart 'terminate-thread' to 'abort' seems to work fine here by the way 13:05:11 stepnem [n=stepnem@88.103.132.186] has joined #lisp 13:06:21 nvoorhies [n=nvoorhie@adsl-76-216-21-95.dsl.pltn13.sbcglobal.net] has joined #lisp 13:06:26 -!- Phoodus [i=foo@ip68-231-37-148.ph.ph.cox.net] has quit [Read error: 131 (Connection reset by peer)] 13:07:41 -!- daniel [i=daniel@unaffiliated/daniel] has quit [Read error: 110 (Connection timed out)] 13:08:12 lnostdal: not in sbcl, since we use shallow binding 13:08:30 ok, nikodemus 13:08:43 Umm... why not, if you compile with debug catch tags? 13:08:46 lnostdal: shouldn't it be possible to use sldb, press e to eval-in-frame 13:08:58 -!- kpreid [n=kpreid@216-171-189-244.northland.net] has quit [] 13:09:23 nyef: where would you find the value a special had in frame x? 13:09:37 We have a separate binding stack, and the catch tags or markers for unwind-to-frame-and-call-vop would allow you to sync up to the control stack frames. 13:10:52 oh, true 13:11:07 so it's a SMOP 13:11:10 ummm 13:11:28 where do you "get" the stack frame from? sldb? 13:11:33 nope, serichsen .. it'll always result in the most recent binding regardless of which frame i eval in 13:12:06 uhuh 13:12:24 nikodemus: What's the logic behind bug 484143 (a deliberate attempt to blow the control stack) being of high importance? 13:12:43 it doesn't hit the control stack guard page 13:12:48 Ah. 13:13:04 nyef: it doesn't land in the right place. 13:13:31 Which leads to the question, is it dying when spreading the arglist, or when re-gathering it? 13:15:11 -!- freiksenet [n=freiksen@pub-nat.haaga-helia.fi] has quit [Remote closed the connection] 13:15:15 I can't reproduce... 13:15:53 pkhuong: x86? 13:16:08 -!- spradnyesh [n=pradyus@nat/yahoo/x-baudlwvmgatwgznw] has quit [Read error: 104 (Connection reset by peer)] 13:16:14 x86-64. 13:16:19 serichsen, just asking here since there might have been an alternate way of doing it that i didn't know about ... :) 13:16:32 -!- legumbre_ is now known as legumbre 13:16:55 pkhuong: try increasing the length 13:16:55 tobetchi [n=tobetchi@p296ba7.sagant01.ap.so-net.ne.jp] has joined #lisp 13:17:31 quazimodo [n=quazimod@c211-30-174-40.carlnfd1.nsw.optusnet.com.au] has joined #lisp 13:17:36 stassats: still. 13:17:36 ok so im in another pickle 13:17:51 without the do macro how can we perform multiple actions in an if 13:18:00 i need to set some variables 13:18:09 quazimodo: let is one way. 13:18:12 nyef: the apply loop is just a list traversal + push; can't be the issue. 13:18:24 pkhuong: and it doesn't exhaust the stack? 13:18:32 Xach: anything else? 13:18:50 quazimodo: there are many options. 13:19:15 quazimodo: PROGN, or use COND instead of IF 13:19:30 im using autolisp sadly, let and do dont exist in it 13:19:42 ok ill figure out cond 13:19:45 quazimodo: This is not the channel to ask autolisp questions. 13:19:55 stassats: the issue isn't stack exhaustiong, it's that it doesn't trigger a stack exhaustion condition. 13:20:05 possibly there should be a warning to that effect in the topic :) 13:20:31 pkhuong: i know 13:20:36 I think that having "Common Lisp" in the topic is enough. 13:20:49 rsynnott: the list of languages not suitable for discussion here would be longer than the topic permits... 13:20:50 ignas [n=ignas@78-60-73-85.static.zebra.lt] has joined #lisp 13:20:50 There doesn't seem to be an #autolisp channel, though. 13:21:35 Perhaps it should say *Common* Lisp 13:21:40 nyef: seems to be in the gathering. 13:22:08 yaroslav_h [n=Yaroslav@109-184-30-23.dynamic.mts-nn.ru] has joined #lisp 13:22:15 trittweiler: well, it does, already 13:22:29 oh, I see :) 13:22:33 hefner: sweet, cond is doing the job 13:23:16 Xof: Lock on package COMMON-LISP violated when defining STEP as a class. 13:23:24 -!- Reaver1 [n=Data_Ent@212.88.117.162] has quit [Connection timed out] 13:23:49 Cof: Step is a macro, so I cannot define a class with the same name ? 13:23:51 Haplo_: if you want to use that name, shadow 13:24:11 Haplo_: it's not a general restriction, just one on the symbols in the common-lisp package. 13:24:34 see 11.1.2.1.2 13:26:16 pkhuong pasted "Arg list reconstitution" at http://paste.lisp.org/display/90657 13:26:40 Xaxh: rahh item #4. Indeed :( 13:27:28 -!- ziga` [n=ziga`@BSN-143-132-218.dial-up.dsl.siol.net] has quit ["Client Quit"] 13:27:37 Well, I always though it shouldn't be problem since a symbol has several possible association 13:28:06 ziga` [n=ziga`@BSN-143-132-218.dial-up.dsl.siol.net] has joined #lisp 13:28:26 and that as long as you do not override one of its association you were safe 13:28:30 How you know the truth! 13:28:49 sorry, cyrillic N there... 13:28:54 :) 13:29:21 well well well I'll shadow step then 13:31:32 -!- Kolyan[away] is now known as Kolyan 13:31:56 pkhuong annotated #90657 "From copy-more-args" at http://paste.lisp.org/display/90657#1 13:32:41 should I shadow or shadowing-inport-from ? 13:33:13 Haplo_: you want your own symbol, not cl:step. shadow. 13:33:36 life would be so much simpler if we just let people shoot themselves in the foot. 13:33:36 -!- varjag [n=eugene@122.62-97-226.bkkb.no] has quit ["Ex-Chat"] 13:34:20 and louder 13:34:49 spradnyesh [n=pradyus@122.167.91.203] has joined #lisp 13:35:00 -!- longkid [n=lisp@113.22.177.216] has quit [Read error: 60 (Operation timed out)] 13:35:08 Xach: okay, but when sould I basically use shadowing-import-from ? 13:35:20 when you want to import 13:36:18 Sumpen [n=Sumpen@78-72-33-106-no46.tbcn.telia.com] has joined #lisp 13:36:45 -!- hefner [n=hefner@ppp-58-9-109-96.revip2.asianet.co.th] has quit [Read error: 60 (Operation timed out)] 13:36:50 kpreid [n=kpreid@209-217-212-34.northland.net] has joined #lisp 13:37:10 it make sens :) thx 13:39:31 hefner [n=hefner@ppp-61-90-102-2.revip.asianet.co.th] has joined #lisp 13:40:02 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 104 (Connection reset by peer)] 13:42:06 Axius [n=ade@92.85.215.183] has joined #lisp 13:43:50 Reaver1 [n=Data_Ent@h15a2.n2.ips.mtn.co.ug] has joined #lisp 13:44:36 dlowe [n=dlowe@63.107.91.99] has joined #lisp 13:45:52 -!- spradnyesh [n=pradyus@122.167.91.203] has quit [Read error: 54 (Connection reset by peer)] 13:46:18 is there an efficient hash map in CL to handle something in the range of 20e6 records? 13:47:18 deGrasso [n=deGrasso@171.Red-88-26-117.staticIP.rima-tde.net] has joined #lisp 13:49:27 -!- Odin- [n=sbkhh@s121-302.gardur.hi.is] has quit [] 13:49:35 stassats, still here? 13:50:04 -!- deGrasso [n=deGrasso@171.Red-88-26-117.staticIP.rima-tde.net] has quit ["Me'n vaig"] 13:51:20 ikki [n=ikki@201.144.87.42] has joined #lisp 13:52:02 madnificent: probably not, unless your records are very small 13:52:18 madnificent: or you are running on a 64-bit system 13:54:02 froydnj: I'm running a 64 bit system, the records are search querries 13:54:10 froydnj: from AOL :) 13:54:38 -!- Eko [n=eko@c-98-242-74-171.hsd1.ga.comcast.net] has quit ["This computer has gone to sleep"] 13:55:05 LiamH [n=none@pdp8.nrl.navy.mil] has joined #lisp 13:55:57 hi LiamH 13:56:08 hi trittweiler 13:56:32 did you see the memo to tcr? 13:56:37 LiamH, Thanks for your memo. I'll fix that bug shortly 13:56:47 OK, np 13:56:48 Seems like you managed to unbreak your update? 13:57:08 yes, I don't know how though, it just started working 13:57:48 madnificent: hm, well, the hashtable alone is probably going to take ~0.5GB. 13:58:22 *Xach* upgraded to 4GB of memory for ~$30 13:58:36 doesn't need to run on my machine, but the effect is the same :) 13:58:42 Xach: ddr2 is dirt-cheap 13:58:48 but 30 bucks is extremely cheap 14:00:10 -!- Axius [n=ade@92.85.215.183] has quit ["Leaving"] 14:00:29 davazp [n=user@156.Red-79-153-148.dynamicIP.rima-tde.net] has joined #lisp 14:00:38 Xof: do you want me to report the walk bug? 14:00:49 yes please 14:01:01 I'm working on a completely unrelated development line, and if you don't I'll forget 14:01:01 ok 14:01:36 I have made a simple source that shows it 14:01:46 I'll put it in the bug 14:03:04 spradnyesh [n=pradyus@nat/yahoo/x-xdibxtgactgnbixe] has joined #lisp 14:06:20 mstevens [n=mstevens@zazen.etla.org] has joined #lisp 14:08:52 Xof: mail awaits moderator approval 14:09:11 thanks 14:09:27 de rien :) 14:10:24 thank you for your workaround 14:10:49 ljames pasted "How to avoid code duplication in code similar to this?" at http://paste.lisp.org/display/90662 14:12:24 ljames: in both of those forms, the default for initial-element is unused 14:12:27 are you sure that's what you mean? 14:12:57 yes 14:13:01 it's just an example 14:13:33 well, in that example you can use a &rest list as well as the keyword arguments, and apply your function to that argument 14:13:39 in general, you can't. 14:13:39 -!- knobo [n=user@90.149.4.182] has quit [Read error: 110 (Connection timed out)] 14:14:07 ljames, What exactly do you want? 14:14:26 Change the default for initial-element? 14:14:55 trittweiler, I'm curious if there is a way to avoid (if pred-p (fun params :keyarg pred) (fun params)) code duplication in general 14:15:27 my attempt was with that APPLY code in the second function, but not sure if it's that much better compared to the first example 14:15:50 often there is, sometimes there's not 14:16:21 -!- holycow [n=new@mail.fredcanhelp.com] has quit [Read error: 104 (Connection reset by peer)] 14:16:40 dv_ [n=dv@83-64-248-68.inzersdorf.xdsl-line.inode.at] has joined #lisp 14:18:33 in the general case, multiple-value-call may be more transparent than apply. 14:18:43 usually you use the -given-p in order to figure whether the defualt value was given by the user or not 14:20:11 slime-query-replace-system where you can tab-complete symbols in the minibuffer, yummy. :) 14:20:22 jsnell / pkhuong: review requested for http://doc.gold.ac.uk/~mas01cr/tmp/0001-Type-system-now-understands-and-array-type-not-s.patch 14:20:24 but as mentioned by Xof, to do those trampoline functions use &rest args &key ... and then apply fun args 14:20:43 -!- gz_ [n=gz@209-6-40-245.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has left #lisp 14:21:14 Xof: I'm very sad to commit: #-:sbcl(declare (type (or null buffer) input-buffer)) 14:21:16 ;) 14:21:45 I am sadder that you didn't report this 10 months ago! 14:21:52 ah, thanks for the idea. I do use &rest args for that too, but was a bit confused when it comes using &rest and &key at the same time. As for m-v-c, that might be a better idea actually, thanks. 14:22:03 -!- gz__ [n=gz@209-6-40-245.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has left #lisp 14:22:41 Adamant [n=Adamant@unaffiliated/adamant] has joined #lisp 14:24:35 Xof: well, my fault not testing every release :-p 14:25:08 longkid [n=lisp@113.22.177.216] has joined #lisp 14:25:09 But you must be kidding me, it hasn't been there for ten month ? 14:25:12 it has 14:25:36 at least 14:25:40 how is that possible !? I'm I the only one to use declaration ? 14:25:46 Fri Oct 31 12:52:46 2008 14:25:54 Haplo_, you can just do #-sbcl, the symbols are automatically interned into the keyword package 14:26:03 almost 13 months 14:26:15 *pkhuong* questions the validity of such a patch. 14:26:37 you're the only one to declare the type of a slot symbol-macro in the body of a defmethod, and then set the value of that slot through the symbol macro 14:27:25 I'm very surprised ! 14:27:45 or maybe you're the first to upgrade to any sbcl released in the last year 14:28:06 I think it's the latter  everyone's moved to CCL ;) 14:28:07 Maybe I should propose the sm and ice lib to CLX then this sort of wired code will get compiled with your tests 14:28:38 sellout: everyone except those who inherit structure slot accessors, you mean? 14:28:56 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 14:29:35 elanonimo [n=eldragon@84.79.67.254] has joined #lisp 14:30:39 if it makes feel you better, I just hard a long and hard time compiling eclipse using the 20a of CMUCL 14:30:52 but mostly because of the new CLX 14:31:01 yeah, that's all my fault too 14:31:11 I'll happily take your extensions off you 14:32:18 pkhuong: I'm afraid your review will have to be more detailed than that 14:33:04 jleija [n=jleija@24.214.122.46] has joined #lisp 14:33:11 Xof: wasn't really your fault 14:33:19 -!- segv [n=mb@p4FC1FC7F.dip.t-dialin.net] has quit [] 14:33:44 it's entirely related to the fact the window-equal does not accept non window args 14:33:57 this screwed me up 14:34:37 -!- lupine_85 [n=quassel@unaffiliated/lupine-85/x-7392152] has quit [Read error: 104 (Connection reset by peer)] 14:34:39 it forces me to fix up several things in eclipse, plus patch those -equal generation 14:35:26 well, that is my fault 14:35:58 cvandusen [n=user@12.185.80.194] has joined #lisp 14:36:00 -!- nunb [n=nundan@static-217-133-104-225.clienti.tiscali.it] has quit ["Leaving"] 14:36:02 lexa_ [n=lexa_@seonet.ru] has joined #lisp 14:36:08 segv [n=mb@79.193.252.127] has joined #lisp 14:36:31 -!- lexa_ is now known as Guest97267 14:37:28 Xof: it is not. It is really a matter of equality 14:37:30 -!- Guest97267 [n=lexa_@seonet.ru] has left #lisp 14:37:32 at least for me 14:37:41 bobbysmith007 [n=russ@216.155.97.1] has joined #lisp 14:38:07 ok, good 14:38:11 Not My Fault 14:38:24 for me (-equal nil ) should not raise a tye error 14:38:50 why not? 14:39:14 well it becomes really painful to use 14:39:14 witness (string-equal 42 "foo") 14:39:22 from my point of view 14:39:49 I think your expectations are broken 14:39:58 (string-equal nil "foo") 14:40:02 Only if nil is part of a mumble-designator 14:40:02 => nil 14:40:16 nil is a string designator 14:40:19 Haplo_, You misunderstand the reason, though, I'm afraid 14:40:30 Haplo_, It's because nil is part of a string-designator 14:40:39 mind you it's not impossible that nil is a window designator; I can't remember enough of CLX to know 14:40:42 Does nil designate a window? 14:40:44 I don't think so, though 14:41:18 nil is not a window 14:41:38 type window '(satisfies window-p) 14:41:50 ok, then I win 14:41:57 I understand what is behind this 14:42:00 Haplo_, So I think that window-equal should signal a type-error on nil 14:42:23 I'd like to see the code that you think this change makes painful 14:42:54 I mean, the patch came from one of your competitors: the stumpwm developer :-) so maybe it is just an anti-Eclipse codebomb 14:43:13 it is jsut a pain to use a predicate for which you have to take care that arguments are not nil every where when the whole library might return nil because of certain case 14:43:40 lots of function in CLX returns (or null window) 14:44:16 you need to test your input for many functions in CL 14:44:24 Haplo_: example, please? 14:45:20 Are there recent sbcl versions available as debs? 14:45:48 debian has 1.0.31 14:45:54 -!- kpreid [n=kpreid@209-217-212-34.northland.net] has quit [] 14:46:11 stassats, what branch? 14:46:14 http://common-lisp.net/project/cmucl/doc/clx/12_7_Managing_Input_Focus.html#input-focus 14:46:27 trittweiler: unstable 14:46:48 what should (window-equal nil nil) return? 14:48:16 Haplo_: yeah, I found one or two that return (or window ) but it seems to me that mostly you would actually want to test whether you got a window or not 14:48:24 so you're not getting much sympathy I'm afraid 14:48:51 well lots of events have slots like that 14:48:59 http://common-lisp.net/project/cmucl/doc/clx/12_12_6_Structure_Control_Events.html#:configure-request 14:50:32 but surely you only use the above-sibling if the bit in the value-mask is set, there? 14:51:13 sadly not :) 14:51:33 surely you _should_ only use the above-sibling if the bit in the value-mask is set 14:51:39 or to put it another way, show me the diff 14:51:50 -!- drewc [n=drewc@89.16.166.162] has quit [Remote closed the connection] 14:52:26 I think it is more correct the way it is now, it was just not easy to find out all the places to fix 14:54:55 Xof: that was wrt the #-sbcl. For array types, seems ok, at a glance. I'm not sure how much time I'll be able to dedicate to SBCL from ~tonight on. 14:57:17 -!- ASau [n=user@83.69.227.32] has quit [Read error: 104 (Connection reset by peer)] 14:57:36 lispm [n=joswig@g224044029.adsl.alicedsl.de] has joined #lisp 14:57:45 Guthur [i=c13db113@gateway/web/freenode/x-avwejdxwkmczuhek] has joined #lisp 14:58:22 -!- OmniMancer [n=OmniManc@122-57-16-129.jetstream.xtra.co.nz] has quit ["Leaving."] 15:01:33 ASau [n=user@83.69.227.32] has joined #lisp 15:05:25 pavelludiq [n=quassel@83.222.175.184] has joined #lisp 15:09:19 students of SBCL10, where you planning to stay? 15:10:00 not a student anymore but almost :) 15:10:24 I'm trying to decide between a hostel and Ibis 15:10:37 Looks like a youth hostel for me, so far. 15:10:40 which version of CMUCL has PCL::generic-function-pretty-arglist instead of pcl::gf-pretty-arglist ? 15:10:53 the latest is 'gf' 15:10:57 pkhuong: which one? 15:11:04 prxq [n=mommer@nick.iwr.uni-heidelberg.de] has joined #lisp 15:11:10 Hi. 15:12:43 *nikodemus* doesn't have a solution yet either 15:12:46 I'm writing bindings to a c code which does division by zero. How can I disable the handling of the signal from sbcl? 15:12:49 luis`: not sure. Whichever one has space when I mail them tomorrow, I guess (: 15:12:52 something very cheap :) 15:13:26 prxq: sb-int:with-float-traps-masked . 15:13:36 or we could try and share a hotel room. 15:13:50 pkhuong, thanks! 15:13:50 *luis`* is taking his gf :) 15:13:58 so no sharing! 15:14:12 luis`: good, she can help me with the christmas shopping ;) 15:14:19 Odin- [n=sbkhh@s121-302.gardur.hi.is] has joined #lisp 15:14:38 pkhuong: not her forté, I don't think. 15:15:23 -!- spradnyesh [n=pradyus@nat/yahoo/x-xdibxtgactgnbixe] has quit [Read error: 104 (Connection reset by peer)] 15:16:34 *nikodemus* is confused by genesis 15:19:05 pkhuong: but if you do that, tell her I want an SSD. :) 15:20:00 fe[nl]ix, your (set-dispatch-macro-character ...) steps on cxml's test/domtest.lisp toes 15:20:30 -!- ikki [n=ikki@201.144.87.42] has quit [Read error: 104 (Connection reset by peer)] 15:20:34 but i think it's cxml's fault... is it legal syntax? #/n 15:20:34 *luis`* got a 19.8 in his company's Lisp test, heh 15:20:43 feels like cheating :) 15:20:49 out of how much? :) 15:20:52 luis`: what kind of test is that ? 15:20:52 20 15:21:08 fe[nl]ix: basic Lisp programming quiz 15:21:28 implement FLATTEN, that sort of stuff. 15:21:50 luis`, things like "Which form does PROG2 return?" can be pretty difficult... even X3J13 got that wrong. 15:22:06 Adlai: heheh, it returns the first one, right? 15:22:31 -!- jleija [n=jleija@24.214.122.46] has quit ["leaving"] 15:22:31 it returns both 15:22:40 clhs prog2 15:22:40 http://www.lispworks.com/reference/HyperSpec/Body/m_prog1c.htm 15:22:47 jleija [n=jleija@user-24-214-122-46.knology.net] has joined #lisp 15:23:05 stassats: no, the spec says it returns the first one. 15:23:05 ehhh, cxml loads its tests by default... 15:23:32 luis`, it says both in different places :\ 15:23:33 stassats: "prog2 evaluates first-form, then second-form, and then forms, yielding as its only value the primary value yielded by first-form." 15:23:37 luis`: the syntax says the second one, prog2 is quantum-computing ready 15:24:23 oh, indeed. Nice. 15:24:39 Axius [n=ade@92.85.216.74] has joined #lisp 15:24:39 -!- Fufie [n=poff@Gatekeeper.vizrt.com] has quit ["Leaving"] 15:24:39 Adlai: that was a tough one. :) 15:24:49 is that the .2 you lost? :P 15:25:16 luis`: is 19.8 "much"(was the maximum suppose to be 10) ? 15:25:18 Adlai: I didn't see the correction. But one of the questions involved drawing some diagrams with lexical environments and I'm sure I got those wrong. 15:25:29 fe[nl]ix: 19.8 out of 20 15:26:23 luis`, what Lisp are you using? CL? 15:26:25 -!- luis` [n=user@mail2.siscog.pt] has quit [Read error: 104 (Connection reset by peer)] 15:26:39 Adlai: NDA (: 15:26:51 wrong question... :) 15:27:04 hah, I forgot, Lisp is a secret weapon. 15:28:12 luis [n=user@mail2.siscog.pt] has joined #lisp 15:28:32 -!- Vonunov [n=jack@99-58-1-192.lightspeed.rcsntx.sbcglobal.net] has left #lisp 15:29:21 -!- Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has quit [Remote closed the connection] 15:29:59 spradnyesh [n=pradyus@122.167.73.50] has joined #lisp 15:30:06 *luis* curses emacs-jabber and its crashiness 15:30:08 Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has joined #lisp 15:30:48 luis` [n=user@r42.eu] has joined #lisp 15:30:52 *Adlai* tells luis about bitlbee 15:31:34 Adlai: thanks for reminding me about it 15:31:51 I use it a lot, can't stand the GMail interface 15:31:53 np 15:32:42 ikki [n=ikki@201.155.75.146] has joined #lisp 15:33:17 OT: anyone know how to run ansi-term in emacs/w32? 15:34:16 SandGorgon [n=OmNomNom@122.173.249.152] has joined #lisp 15:35:56 Vonunov [n=jack@99-58-1-192.lightspeed.rcsntx.sbcglobal.net] has joined #lisp 15:36:24 luis: emacswiki suggests using cygwin emacs 15:36:34 milanj [n=milan@109.93.62.68] has joined #lisp 15:36:58 -!- nullman [n=nullman@c-75-73-150-26.hsd1.mn.comcast.net] has quit [Read error: 110 (Connection timed out)] 15:37:41 luis: ansi-term does not work for me on GNU Emacs 23.1.1 (official win32 build) 15:38:48 stassats: that would be text-mode or X11 right? 15:39:08 no idea 15:39:21 I should probably stick to the official version anyway, otherwise the internal tools might break. 15:40:49 -!- kmc [n=keegan@206-71-236-70.c3-0.nyw-ubr5.nyr-nyw.ny.cable.rcn.com] has quit [No route to host] 15:43:23 rrice [n=rrice@adsl-99-51-212-135.dsl.akrnoh.sbcglobal.net] has joined #lisp 15:44:42 acrid [n=mckay@204.126.146.202] has joined #lisp 15:46:01 -!- Odin- [n=sbkhh@s121-302.gardur.hi.is] has quit [] 15:46:33 moocow [n=new@69.67.174.130] has joined #lisp 15:46:44 ia [n=ia@89.169.161.244] has joined #lisp 15:49:31 -!- pavelludiq [n=quassel@83.222.175.184] has quit [Remote closed the connection] 15:49:50 _sohail_ [n=Sohail@CPE001bfc8b793b-CM000a73a081a5.cpe.net.cable.rogers.com] has joined #lisp 15:50:12 chupish [i=182ed347@gateway/web/freenode/x-gsqqfhpiklkuonzn] has joined #lisp 15:50:55 -!- _sohail_ [n=Sohail@CPE001bfc8b793b-CM000a73a081a5.cpe.net.cable.rogers.com] has quit [Remote closed the connection] 15:52:00 -!- grouzen [n=grouzen@91.214.124.2] has quit [Read error: 110 (Connection timed out)] 15:56:31 x2cast [n=Administ@191.126.222.87.dynamic.jazztel.es] has joined #lisp 15:59:14 does anyone have a neat little lisp library for catching and emailing/logging lisp errors? 15:59:46 *trittweiler* wonders if the DEFPACKAGE congruence warning couldn't turn into a style-warning 16:00:19 That would reduce its annoying factor by an order of magnitude 16:00:34 gonzojive: hunchentoot logs errors 16:01:31 Is it possible to inline a struct constructor on SBCL? 16:01:46 trittweiler: it's meant to be annoying; it's explicitly undefined consequences 16:02:09 kpreid [n=kpreid@209-217-212-34.northland.net] has joined #lisp 16:02:11 if you're going to mess around with packages, use make-package 16:02:15 Adlai: did you try? 16:02:51 stassats, I tried to do it by putting (declaim (inline make-bbox)) before the defstruct, but I still get a warning from the place that's calling the constructor, that it's boxing double-floats 16:03:11 although, these warnings are about "the second argument of SET-SLOT" 16:03:32 disassemble is a better way to check if it's inlined 16:05:05 stassats: thanks 16:05:18 Xof, I don't but people do and it's annoying when you :force t 16:05:50 hah, I think it's more annoying that :force t recompiles all my sbcl contribs :) 16:06:03 yes I'm just going to submit a bug entry for that 16:06:41 stassats, I think that make-bbox is getting inlined (it also seems that way from SBCL's warning), but I'm wondering if there's a way to avoid boxing the floats 16:07:19 Adlai: can you paste the source? 16:07:22 centipedefarmer [n=nothingH@173-25-176-111.client.mchsi.com] has joined #lisp 16:07:32 ahh wait, I should declare the slot types first 16:07:36 *Adlai* facepalms 16:07:37 <_8david> trittweiler: I thought there was consensus on #lisp that the package warning just needs nice restarts -- and in particular, someone to implement them. 16:07:50 heh 16:08:07 sorry about that 16:08:32 -!- SandGorgon [n=OmNomNom@122.173.249.152] has quit [Read error: 104 (Connection reset by peer)] 16:08:36 "WARNING: change in instance layout of class BBOX: current untagged slots: 0 compile time untagged slots: 4" <= that looks better 16:09:21 _8david, I don't see the point in it being a warning. It's not like it'll result in an error at compilation time. 16:09:39 Eko [n=eko@lawn-128-61-114-11.lawn.gatech.edu] has joined #lisp 16:09:52 sorry at load time 16:10:19 interested inplaying with Common Music, having trouble asdf-installing it. Last night it would download but wouldn't compile, had an error that there was symbol not found in the sb-unix package 16:10:31 sorry, wish i could still find the original error message. anyway today, it's 404ing 16:10:43 -!- rrice [n=rrice@adsl-99-51-212-135.dsl.akrnoh.sbcglobal.net] has quit [Read error: 60 (Operation timed out)] 16:11:01 make it an error with a few restarts? 16:11:02 sb-unix is an internal package, it shouldn't have used it 16:12:05 mathrick [n=mathrick@users177.kollegienet.dk] has joined #lisp 16:12:18 which symbol? 16:12:20 it was something in either sb-unix or perhaps it was called sbcl-unix, but one way or another, comon music wouldn't compile 16:12:47 sb-unix 16:12:55 like i said, can't find the original error message now, but i think the symbol had "type" or "file-type" in its name 16:13:24 centipedefarmer: you need to reproduce the error if you want help 16:13:51 centipedefarmer: something like that was recently removed 16:14:19 i'm trying to, but today it's 404ing instead. i think there's a new version of CM just released though, perhaps that's got something to do with it 16:14:50 great, just sent a minor bottleneck off into the depths of the sprof output 16:15:01 ah here we go 16:15:01 "Symbol "UNIX-FILE-KIND" not found in the SB-UNIX package" 16:15:31 found it in my past google searches :D 16:16:13 It's somewhat depressing to see: https://bugs.launchpad.net/asdf 16:16:18 if you want a really quick and dirty fix, try SB-IMPL::NATIVE-FILE-KIND 16:16:39 trittweiler, "some argue" that ASDF is crusty and outdated 16:16:53 lisp is outdated 16:17:00 rrice [n=rrice@adsl-69-221-160-24.dsl.akrnoh.ameritech.net] has joined #lisp 16:17:13 hmm, that's Original. 16:17:29 Adlai, Sure, but for fundamental, technical reasons. My issues are mostly issues of user-friendlieness. 16:17:48 trittweiler: asdf hackers group there needs to get more asdf hackers on it... 16:18:01 Kind of: "How have people been able to cope with this all the time" 16:18:06 yeah, things like the way ASDF's method combination work are a bit of a nuisance 16:18:31 nikodemus, I deliberately want to stay user in this case. 16:18:33 -!- joga [i=joga@unaffiliated/joga] has quit [Remote closed the connection] 16:19:11 billitch [n=billitch@rob92-1-82-67-155-88.fbx.proxad.net] has joined #lisp 16:20:07 joga [i=joga@rikki.fi] has joined #lisp 16:20:19 I forget, is there a way to have an uninitialized but type-declared struct slot, or do I have to supply some bogus but correctly typed initform? 16:20:34 It is Conventional Wisdom that ASDF is not good enough. Of course this elides the issue of what it isn't good enough FOR. And there is no consensus of what might be better. These last two sentences are related. 16:20:53 s/of/on/ 16:21:05 Adlai, You can put in a function with a declaimed return type of NIL 16:21:20 E.g. (error "foof") 16:21:36 Adlai: (error ...) is always of the correct type. You can also make your own constructor lambda list that forces the user to provide an initial value. 16:22:05 this slot isn't set initially, though 16:22:12 I'll just use a dummy value 16:22:22 I thought the consensus was that ASDF is good enough. 16:22:50 I can hardly believe that 16:22:52 it is good enough for straightforward things 16:22:56 hugod [n=hugod@bas1-montreal50-1279441070.dsl.bell.ca] has joined #lisp 16:23:03 I can reliably build about 100 systems, all coexisting, with it 16:23:23 yeah, it works for me too. 16:23:24 it is terrible for all sorts of other cases 16:23:40 and the only thing I can say is that it really could be worse 16:24:11 -!- yaroslav_h [n=Yaroslav@109-184-30-23.dynamic.mts-nn.ru] has quit [Read error: 110 (Connection timed out)] 16:24:23 Adlai: (defun missing-arg () (error "missing initarg")) (defstruct foo (bar (missing-arg) :type single-float) 16:24:42 hmm, well i'm not interested in a "let's complain about some large system and not do anything about it" discussion :D 16:25:05 nikodemus, this slot isn't set initially 16:25:06 maybe I should just download a tarball and stick it in my /usr/share/so-and-so 16:25:55 sorry, missed that 16:26:12 -!- Guthur [i=c13db113@gateway/web/freenode/x-avwejdxwkmczuhek] has quit ["Page closed"] 16:26:22 it seems to me like this should be possible; it can be done with specialized arrays, so why not structs? 16:26:30 anyways, it's easy enough to work around. 16:26:41 Xof: Of course. By Conventional Wisdom I mean the sort of thing people believe because they think other people believe it, rather than because they actually know anything about it. 16:27:01 Adlai: the spec says that consequences are undefined if you access an uninitialised element in an array. There's no such wording for structs. 16:27:05 Adlai: for floats, I'd initialise to a SNaN. 16:27:55 Deep [n=dawgmati@c-76-124-3-89.hsd1.nj.comcast.net] has joined #lisp 16:28:11 pkhuong: I think yes there is 16:28:17 pkhuong: actually, there is 16:28:27 for uninitialised or for badly typed? 16:28:30 "If no slot-initform is supplied, the consequences are undefined if an attempt is later made to read the slot's value before a value is explicitly assigned." 16:28:37 but you need to play games with &aux 16:29:09 or, say i was going to update the CLiki page for common-music, I gather I should point it at the tarball of source? ie http://sourceforge.net/projects/commonmusic/files/cm/3.3.0/cm-3.3.0-sources.zip/download 16:29:21 pkhuong, the type for both these slots is another struct type, though 16:29:23 -!- Paraselene__ [n=None@79-68-173-7.dynamic.dsl.as9105.com] has quit [Success] 16:29:41 centipedefarmer: common music people would be the ones who know 16:29:47 out of curiousity, how can I designate a NaN in CL? 16:29:51 Paraselene__ [n=None@79-68-173-7.dynamic.dsl.as9105.com] has joined #lisp 16:29:53 nikodemus, ok 16:30:01 rread [n=rread@c-98-234-219-222.hsd1.ca.comcast.net] has joined #lisp 16:30:33 grouzen [n=grouzen@91.214.124.2] has joined #lisp 16:31:31 Xof: but you can't specify a type without an initform... 16:31:39 and "If it is never needed, there can be no type-mismatch error, even if the type of the slot is specified" 16:31:42 lemonodor [n=lemonodo@adsl-76-214-17-20.dsl.lsan03.sbcglobal.net] has joined #lisp 16:31:45 -!- mvilleneuve [n=mvillene@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has quit ["Lost terminal"] 16:32:08 Erh, wait, misread that one. 16:32:17 -!- blandest [n=blandest@softhouse.is.ew.ro] has quit ["Leaving."] 16:32:27 *Adlai* decides that the Next Implementation of Lisp should have :initform for defstruct slots, to allow behavior like with arrays 16:32:27 Still, no :type without an init-form, so it's impossible to have an uninitialised typed slot. 16:33:33 pkhuong: &aux overrides initforms in the body 16:33:36 ruediger [n=quassel@188-23-73-50.adsl.highway.telekom.at] has joined #lisp 16:34:03 nikodemus: but &aux still gives a value to the binding. 16:35:01 mattrepl [n=mattrepl@pool-71-163-162-204.washdc.fios.verizon.net] has joined #lisp 16:35:44 "If no default value is supplied for an aux variable variable, the consequences are undefined if an attempt is later made to read the corresponding slot's value before a value is explicitly assigned" Nice one (: 16:36:16 (defstruct (foo (:constructor make-foo (&aux bar))) 16:36:16 (bar (error "never") :type string)) 16:36:47 cool 16:37:26 Kind of crufty interface though ;) 16:37:36 Not sure about the unused variable style warning. 16:38:18 wait, is that a portable way to make an uninitialized typed slot? 16:38:54 or by consequences undefined, does that mean an implementation might evaluate the initform? 16:39:28 The undefined consequences are only if you read before writing. 16:39:46 pkhuong: i think the warning is my fault 16:39:57 great, so I don't need dummy structs 16:40:29 -!- grouzen [n=grouzen@91.214.124.2] has quit ["leaving"] 16:41:01 -!- Axius [n=ade@92.85.216.74] has quit ["Leaving"] 16:41:15 ohwait 16:41:18 Adlai: I'd use dummy structs... A programming error would be less likely to make your code fail in a bizarre manner. 16:41:29 how does that interact with inherited structs? 16:41:37 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit ["Leaving."] 16:41:44 ok, I'll stick with that 16:42:11 Unless you have to initialise to something "wrong" to break some circularity. 16:42:21 -!- dto [n=dto@pool-96-252-62-25.bstnma.fios.verizon.net] has quit [Read error: 113 (No route to host)] 16:42:25 dto [n=dto@pool-96-252-62-25.bstnma.fios.verizon.net] has joined #lisp 16:43:00 no, luckily there's no circularity here as far as the type declarations go 16:43:06 (although the eventual structures are circular) 16:43:24 bodies contain a list of shapes, and each shape belongs to a single body 16:44:23 also, I think that &aux trick would fail (or just be even more clumsy), because this struct gets included in at least three other structs 16:44:28 "The value 0 is not of type STRING." is pretty much the best case, for the consequence of using an unitialised slot. 16:44:47 beauty [n=beauty@83.231.111.112] has joined #lisp 16:45:04 evening 16:45:05 Adlai: you'd have to &aux each constructor. 16:45:26 pkhuong, yeah, I don't want that for something which is supposed to be user-extensible 16:45:47 (ie, people wanting to define new shapes would have to include that dummy &aux in their definitions) 16:46:19 rootzlevel [n=hpd@91-66-191-155-dynip.superkabel.de] has joined #lisp 16:46:32 oh also, pkhuong, how can I put a SNaN like you mentioned earlier? 16:46:56 If you're really worried about the cost of initialisation, you can initialise that slot with (load-time-value **dummy-struct** t). 16:47:21 Adlai: sb-kernel:make-{single,double}-float. 16:47:31 oh, it's not portable? hmm 16:47:43 NaNs aren't portable. 16:48:03 I guess I can stick this in utils.lisp, and default to 0d0 for other implementations. 16:48:39 time for trivial-NaN? 16:48:46 confounds [n=jackalop@CPE0013f7f0bd88-CM0013f7f0bd84.cpe.net.cable.rogers.com] has joined #lisp 16:48:48 ccl has CCL::DOUBLE-FLOAT-NAN 16:48:59 splittist: right, depend on CFFI and C99 to make it portable ;) 16:49:13 stassats: there are many NaNs. 16:49:31 it would be ironic to depend on CFFI in a library that is a port of a C library 16:49:37 a -pure- CL port 16:49:41 there is often a canonical NaN for a given architecture, though. 16:51:17 Adlai: also: you end up paying for type-check on every slot-read, not just write 16:51:42 is there any benefit to using lisp macros over ruby's metaprogramming facilities? 16:52:06 i'm lazy and make my snans with (/ 0.0 0.0) 16:52:15 They work in lisp, whereas ruby's metaprogramming facilities don't 16:52:17 but i don't care about portability, so... 16:52:21 -!- Reaver1 [n=Data_Ent@h15a2.n2.ips.mtn.co.ug] has quit ["Leaving."] 16:52:33 Jafet: Psst. Don't feed the trolls. 16:52:41 GSLL has +nan+, but that requires the foreign library. 16:52:52 nyef: not trolling. it's an actual question ;) 16:53:00 that function wants initargs, and I can't find a combination to give it a NaN 16:53:06 s/give/make/ 16:53:30 nyef: your response was more troll-like than my question. 16:53:48 confounds: "yes" -- but you know, you're not the first person to ask about bit, and i at least am not going to devote my time to a discussion about that 16:54:28 confounds, I don't know Ruby's metaprogramming facilities, and I guess you can only make an educated decision once you know both. 16:54:29 nikodemus: fair enough, you didn't have to waste your time even writing that. :) 16:54:49 and i suspect neither will many others. (granted, the question isn't usually about ruby specifically -- but that just means that less people are qualified to answer as they would have to be ruby expers in addition to lisp hackers) 16:55:03 gotcha 16:55:05 HET3 [n=diman@w283.engin.cf.ac.uk] has joined #lisp 16:55:15 pkhuong, what hi and lo values should I give to get a NaN? 16:55:22 -!- mstevens [n=mstevens@zazen.etla.org] has quit ["leaving"] 16:55:53 grouzen [n=grouzen@91.214.124.2] has joined #lisp 16:55:53 iirc pascal constanza has some very good nontrivial examples -- you can google for those 16:56:04 (sb-kernel:make-double-float -1 0) => # 16:56:32 *Adlai* wonders where the loud NaNs went 16:56:50 Adlai: They took exception to something and left? 16:57:18 seriously though -- what makes a NaN quiet? should I either not bother or jfgi? 16:57:29 *Adlai* is guessing "don't bother" 16:57:30 -!- Eko [n=eko@lawn-128-61-114-11.lawn.gatech.edu] has quit ["This computer has gone to sleep"] 16:58:05 My understanding is that unquiet NaNs cause SIGFPE or similar. 16:58:46 -!- splittist [n=dmurray@99-90.3-85.cust.bluewin.ch] has quit ["rcirc on GNU Emacs 23.1.1"] 16:59:06 -!- aerique [i=euqirea@xs2.xs4all.nl] has quit ["..."] 16:59:07 -!- longkid [n=lisp@113.22.177.216] has left #lisp 16:59:21 it's "signalling NaNs", and it's one of the bits in the NaN that determines quiet/signalling 16:59:59 quiet nans propagate quietly: (+ 1.0 qnan) -> qnan. whereas (+ 1.0 snan) -> bang 17:00:26 irritatingly, most of the time i mean qnan, but write snan thinking "silent nan"... 17:01:20 ... How do I start "clim-desktop" or whatever it's called using clbuild? 17:01:41 nyef, clbuild run clim-desktop 17:02:07 Good evening! 17:02:10 it'll use whichever lisp is set up as the default in some config file full of shell script 17:02:17 hello beach 17:02:29 I keep getting some backtrace about "command not found". 17:02:52 If anything, I'm less impressed now than I was last time I tried messing with clbuild and McCLIM. 17:02:54 Eko [n=eko@lawn-128-61-114-11.lawn.gatech.edu] has joined #lisp 17:02:57 <_8david> the project is called clim-desktop; the command is called clim-launcher 17:03:04 nikodemus, how do I get a SNaN? (sb-kernel:make-double-float -1 0) gives me a QNan 17:03:12 -!- confounds [n=jackalop@CPE0013f7f0bd88-CM0013f7f0bd84.cpe.net.cable.rogers.com] has left #lisp 17:03:28 nyef: do you have every version control system known to the unix world installed? :) 17:03:28 -!- HET2 [n=diman@w283.engin.cf.ac.uk] has quit [Read error: 110 (Connection timed out)] 17:03:34 _8david: Thank you. How should I have known that? 17:03:56 hefner: clbuild check only complains about missing hg. Is that sufficient? 17:04:06 <_8david> nyef: thry clbuild run --help 17:04:42 <_8david> (I'm not saying that the clim-launcher will work for certain; presumably nobody has tried it in a long time. But back when I added that, I used the Lisp package name as the clbuild command name.) 17:04:48 <_8david> s/thry/try/ 17:04:55 -!- kpreid [n=kpreid@209-217-212-34.northland.net] has quit [] 17:04:59 Adlai: you'll have to figure out which bit is S vs. Q and set in appropriately in your arguments to MAKE-DOUBLE-FLOAT 17:05:31 -!- davazp [n=user@156.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 17:05:50 although I suppose it's possible that FPSCR settings or the like are silently converting SNaNs to QNaNs...? 17:05:53 froydnj, is it good enough to mess around until I find working values? because I found a few SNaNs already 17:06:15 Adlai: yes, all SNaNs are equivalent from the chip's viewpoint 17:07:21 (sb-kernel:make-double-float -734235 0) => # 17:07:28 there we go :) 17:08:23 "On processors from Intel and AMD the first fraction bit of a binary significand is set to one for a qNaN and is zero for an sNaN. Other vendors use different schemes." 17:08:23 _8david: Ah, I see. "clbuild" -> "clbuild --long-help" -> "clbuild run --help". Eesh. 17:09:14 nyef, for me it was "file $(which clbuild)" => yuck 17:10:12 nikodemus, looks like trivial-snan will depend on trivial-research 17:10:20 demmeln1 [n=Adium@001cb3c457d3.dfn.mwn.de] has joined #lisp 17:12:21 how do you insert an item into a list before a position where a predicate is first holds true? 17:12:33 nunb [n=nundan@static-217-133-104-225.clienti.tiscali.it] has joined #lisp 17:12:36 I can obviously implement it, just wondering if there's something trivial I don't know of 17:13:38 spilman [n=spilman@ARennes-552-1-126-110.w92-139.abo.wanadoo.fr] has joined #lisp 17:13:43 levente_meszaros: The predicate is true for some element of the list? 17:14:13 beach, the predicate has two arguments, one is the element to be inserted, the other is an element already in the list 17:14:39 levente_meszaros, first, I'd say curry the predicate so it only takes one argument 17:15:19 Adlai, good, but that doesn't help much ;-) 17:15:29 grab the cons with MEMBER-IF 17:15:38 levente_meszaros: The standard trick is to insert a new cons cell after the one for which the predicate is true, and then exchange the two elements. 17:15:43 <_8david> nyef: perhaps run --help should be part of --long-help. 17:15:50 then do list surgery like beach said 17:16:18 beach, I can implement it with a loop and with that trick, but I'd rather like to use some higher order function 17:16:18 for example, assuming IT is the cons returned by member-if, (setf (cdr it) (cons (car it) (cdr it)) (car it) new-element) 17:16:24 _8david: Actually, I think knowing how to know what applications are available should probably be considered basic enough to go in the short help. 17:16:35 <_8david> nyef: I think it is fair to say that clbuild's focus is less on starting things and more on downloading them. 17:16:52 davazp [n=user@156.Red-79-153-148.dynamicIP.rima-tde.net] has joined #lisp 17:17:07 levente_meszaros, I'd say use member-if, push to the cdr, and define a new function for swapping CAR and CADR 17:17:12 *sigh* 17:17:25 <_8david> The commands you see in the short help are the stuff that I actually use. 17:17:29 <_8david> Some things in the long help are occasionally useful, but not all are essential. 17:17:49 <_8david> I hardly ever use anything from the run commands. 17:18:54 lhz [n=shrekz@c-b9aa72d5.021-158-73746f34.cust.bredbandsbolaget.se] has joined #lisp 17:19:23 -!- demmeln1 [n=Adium@001cb3c457d3.dfn.mwn.de] has quit [Read error: 60 (Operation timed out)] 17:19:36 george_ [n=george@189.107.214.58] has joined #lisp 17:19:40 _deepfire pasted "insert-before" at http://paste.lisp.org/display/90675 17:19:58 -!- demmeln [n=Adium@lapradig96.informatik.tu-muenchen.de] has quit [Read error: 113 (No route to host)] 17:21:30 hm, i think this is actually the first time i've worked on something that required actually understanding genesis instead of just doing "locally obvious" changes 17:21:53 heh 17:22:03 -!- Ralith [n=ralith@69.90.49.189] has quit [Read error: 113 (No route to host)] 17:22:08 _deepfire: we need to work on your indentation. 17:22:33 looks like a standard pasted-from-the-repl 17:22:41 <_deepfire> beach, I pasted from Slime REPL, it wasn't intended.. 17:23:09 -!- george [n=george@189.107.133.249] has quit [Read error: 60 (Operation timed out)] 17:23:17 -!- Modius_ is now known as Modius 17:24:01 _deepfire: Oh, right, I recognize that effect now. 17:25:13 pkhuong / nyef / froydnj: i have a vop/tn-related question... 17:25:45 nikodemus? 17:26:25 consider eg. the ir2-convert defoptimizer. it passes a :constant to the BIND vop. inside the vop, however, we only see the :load tn for the constant 17:27:21 Use :load-if to see the CONSTANT TN 17:28:05 Anyone here using Lispworks 6? Did they add back make-augmented-environment? 17:28:11 <_8david> levente_meszaros: how many 'E's should I expect in CL-PEREC-TEST:TEST running with postgres? 17:28:23 (:load-if (not (sc-is x constant-foo-sc))), that is. 17:28:34 thanks 17:28:37 I mean, augment-environment 17:28:44 _8david, only a few, don't know exactly 17:28:57 I was too lazy to put with-expected-failures there 17:29:47 <_8david> okay, thanks. Is it normal for tests to hang somewhere in the middle? It seems to be trying to drop a view at that point. 17:30:02 _8david, no it's not 17:30:26 that is a bug then 17:30:41 <_8david> hmm. will try to clean out my database, restart lisp, etc, and then report back again. 17:30:43 try dropping all tables/views and run the tests after a restart 17:31:00 _8david, which perec are you using? 17:31:01 hmmm 17:31:05 the old or the new codebase? 17:31:37 <_8david> http://common-lisp.net/project/cl-perec/darcs/cl-perec 17:32:06 ok, that's the old code base 17:32:20 no problem with that though 17:33:13 Adlai pasted "Trivial SNaN Problem" at http://paste.lisp.org/display/90676 17:33:41 <_8david> would there be an advantage in using some other code base? 17:34:44 not really at the moment, bugfixes are still backported, but that repo will be abandoned as soon as the new will be the official 17:35:04 pkhuong: what sc corresponds to the constant vector? 17:35:05 the public API did not change, only some minor renamings, around the system/pacakge and files 17:35:34 so don't bother installing the new one unless you also want to use wui or some other new repos that depend on the new perec repo 17:35:58 trittweiler: you should see the open bug list for Firefox. now *that* is really depressing 17:35:58 it won't hurt much to change any later on 17:36:03 <_8david> okay. My plan was to take a look at the oracle backend. Perhaps it doesn't make sense to do that in a dead end code base. 17:36:06 nikodemus: constant. 17:36:24 _8david, what do you mean by 'take a look at'? 17:36:32 pkhuong, it looks like SBCL can't compile forms involving NaNs 17:36:41 The offset is hardcoded as the TN index too. 17:36:41 Adlai: WFM. 17:36:45 hm, this is trickier than i though 17:37:10 pkhuong, that compiles for you? I get an error even just doing (compile nil (lambda () (sb-kernel:make-single-float -1))) 17:37:24 <_8david> well, I wanted to run the test suite and get an idea of how much work there is involved in getting it to pass with oracle. Not necessarily actually yet fixing thinsg, but trying to understand how much fixing there is to do. 17:37:42 Adlai: that also wfms. 17:38:08 hmm, I'm on 10.1.31.32, any chance that just updating will help? 17:38:12 ah, I see, let me tell you that I don't know anybody who is actually using the oracle backend in production 17:38:20 because actually i don't want the constant tn -- then i'd have to rewrite the vop to deal with both constants and non-constants. what i want is to (1) know if the symbol is a constant (2) get hold of it in the vop for some extra magic 17:38:30 we are using the postgres backend in production and had zero problems with it so far 17:38:47 <_8david> right. When I tried running actual code on the oracle backend, I didn't get very far. That's why I wanted to take a systematic approach and start with the tests this time. 17:38:55 nikodemus: Another VOP with (:constant symbol) for the type? 17:39:00 -!- george_ [n=george@189.107.214.58] has quit [Read error: 60 (Operation timed out)] 17:39:07 the oracle backend is unfinished, but supports almost everything needed, there was a point in one of our project where we were required to stick with oracle 17:39:47 but we could convince the customer to save some money and send the oracle guys to... where? 17:39:50 hm 17:39:58 nikodemus: I think i have a patch for you though (: 17:40:05 This is wrt specials, right? 17:40:34 yes, making LET-bound specials always have a TLS index, and letting BIND know they do 17:40:55 Right. I did that by writing a new BIND VOP that gets the TLS via load-time-value. 17:41:25 (foo-with-tls-index) 17:41:50 oh! very neat! 17:42:11 can i see it? 17:42:20 x2cast1 [n=Administ@216.126.222.87.dynamic.jazztel.es] has joined #lisp 17:42:29 bah uncommitted stuff bah 17:43:08 DrunkTomato [n=DEDULO@ext-gw.wellcom.tomsk.ru] has joined #lisp 17:43:19 pkhuong pasted "Load-time TLS index lookup" at http://paste.lisp.org/display/90679 17:43:54 ls *.{patch,diff} | wc -l => 17 :( 17:45:23 pkhuong: fun. 17:45:46 pkhuong: your patch does call for a bit of refactoring, though 17:46:08 pkhuong: well, that sorts out what _you'll_ be doing for two days in December 17:46:38 pkhuong: i like it 17:46:42 <_8david> hmm. hangs again somewhere in CL-RDBMS:UPDATE-VIEW <- ... <- CL-PEREC-TEST::TEST/QUERY/SELECT/SIMPLE. Let me try pulling in changes from version control for all dependencies. 17:47:00 <_8david> levente_meszaros: does the postgres version matter at all? 17:47:22 froydnj: definitely. That's why it's still a .patch on my laptop. I have a couple other patches for which I only had enough time for a proof of concept, and aren't even in a git branch. 17:47:41 _8david, I don't think so, we have used 8.2 8.3 and 8.4 too 17:48:35 _8david, when it hangs press C-c C-c and check the restarts 17:48:42 do you see two nested transactions there? 17:48:46 pkhuong: i'll finish up mine, which has less VOP changes, and does most of the work at load/dump time 17:48:52 then we can compare 17:49:20 -!- ASau [n=user@83.69.227.32] has quit [Read error: 104 (Connection reset by peer)] 17:49:47 nikodemus: the problem is I'm not sure VOPs can safely add stuff on the constant vector. 17:49:47 pkhuong: heh, I have patches like that :) 17:49:57 <_8david> levente_meszaros: I think I do see two transaction, yes. 17:50:13 Especially stuff that must be back-patched at load-time. 17:50:33 <_8david> I also recall asking you about nested transactions and hangs in perec some time ago, but back then I wasn't considering the test suite, only schema updates happening in the middle of application code. 17:50:33 then I guess one of them is updating the schema while the other is doing some tests 17:50:39 and they are in deadlock 17:50:44 pkhuong: i'm not doing that 17:50:53 same issue there 17:51:00 nikodemus: so how do you get the TLS index when producing fasls? 17:51:20 unfortunately I couldn't solve that reliably 17:51:31 or at least didn't spend enough time on it 17:51:53 ok, I'm running the test suite, see what happens 17:52:38 bah, dwim.hu supposed to do this daily... 17:52:40 <_8david> well, I can skip the test in question by terminating its transaction, and then the next tests work. 17:53:22 nikodemus annotated #90679 "my approach" at http://paste.lisp.org/display/90679#1 17:53:32 then the next tests work. 17:53:35 sorry 17:53:39 Summermute [n=Summermu@98.204.67.114] has joined #lisp 17:53:50 -!- x2cast [n=Administ@191.126.222.87.dynamic.jazztel.es] has quit [Read error: 110 (Connection timed out)] 17:54:28 <_8david> bah, tty emacs is worse at recognizing tty size changes than even hemlock. 17:55:26 ...except that it doesn't quite work yet, as genesis doesn't know what the right offset to start the indexes at is yet 17:55:44 -!- Eko [n=eko@lawn-128-61-114-11.lawn.gatech.edu] has quit ["This computer has gone to sleep"] 17:56:03 george_ [n=george@189.107.193.246] has joined #lisp 17:56:58 _8david, it hangs for me too at the very same test 17:57:02 nikodemus: one point for the explicit tls argument is that we can now implement TLS index allocation in CL, and add complexity to reuse indices. 17:57:11 ASau [n=user@83.69.227.32] has joined #lisp 17:57:29 -!- envi_home2 [n=envi@220.121.234.156] has quit ["Leaving"] 17:58:27 pkhuong: how do we know which indexes are free for reuse? 17:58:50 do you mean explicit (sb-foo:remove-symbol-tls-index ...)? 18:00:06 _8david, I do have a couple of E's and X's 18:00:32 fiveop_ [n=fiveop@g230003238.adsl.alicedsl.de] has joined #lisp 18:00:44 bah, the dimensional tests take a lot of time 18:00:55 -!- fgtech [n=fgtech@193.219.39.203] has quit ["Caught sigterm, terminating..."] 18:01:26 fgtech [n=fgtech@193.219.39.203] has joined #lisp 18:02:07 -!- spradnyesh [n=pradyus@122.167.73.50] has left #lisp 18:02:17 -!- silenius [n=jl@yian-ho03.nir.cronon.net] has quit [] 18:02:41 -!- nvoorhies [n=nvoorhie@adsl-76-216-21-95.dsl.pltn13.sbcglobal.net] has quit [] 18:03:28 -!- fe[nl]ix [n=algidus@89.202.147.23] has quit ["Valete!"] 18:07:40 -!- lemonodor [n=lemonodo@adsl-76-214-17-20.dsl.lsan03.sbcglobal.net] has quit [] 18:08:57 x2cast [n=Administ@16.127.222.87.dynamic.jazztel.es] has joined #lisp 18:10:31 -!- ignas [n=ignas@78-60-73-85.static.zebra.lt] has quit [Read error: 110 (Connection timed out)] 18:10:41 -!- ruediger [n=quassel@188-23-73-50.adsl.highway.telekom.at] has quit [Remote closed the connection] 18:11:27 fe[nl]ix [n=algidus@89.202.147.23] has joined #lisp 18:11:37 _8david: really? emacs tty resizing works OK here 18:11:47 -!- arbscht [n=arbscht@unaffiliated/arbscht] has quit [Read error: 60 (Operation timed out)] 18:12:03 myst [n=myst@dynamic-vpdn-93-125-66-152.telecom.by] has joined #lisp 18:12:14 arbscht [n=arbscht@unaffiliated/arbscht] has joined #lisp 18:12:15 -!- nunb [n=nundan@static-217-133-104-225.clienti.tiscali.it] has quit ["This computer has gone to sleep"] 18:12:39 Jarvellis [n=jarv@unaffiliated/elench] has joined #lisp 18:12:43 <_8david> froydnj: when running in screen, it tends to fail for me 18:13:14 WFM here in screen *shrug* 18:14:39 -!- fiveop [n=fiveop@g229080016.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 18:14:58 hi, can anyone show (or point) me (to) the example of how to write in Lispy way two nested loops? Like for (i = 0; i < n; i++) for (j = 0; j < m; j++) do_something_with_i_and_j(i, j); 18:15:12 Anything new in the world of CCL for Windoze. It's not my primary Lisp these days (I'm Scheming with PLT), but I like to keep up to date. 18:15:28 Odin- [n=sbkhh@s121-302.gardur.hi.is] has joined #lisp 18:15:32 -!- beauty [n=beauty@83.231.111.112] has quit ["some delicious sushi please"] 18:15:43 myst: use LOOP 18:15:53 Eko [n=eko@lawn-128-61-114-11.lawn.gatech.edu] has joined #lisp 18:16:31 <_8david> myst: just nest them 18:16:44 <_8david> example with loop: (loop for i from 0 below n do (loop for j from 0 below m do (do-something-with i j))) 18:16:48 kpreid [n=kpreid@209-217-212-34.northland.net] has joined #lisp 18:16:48 then I can nest DOs 18:16:52 <_8david> example with iter: (iter (for i from 0 below n) (iter (for i from 0 below m)) (do-something-with i j)) 18:16:57 which are far more simplier 18:17:08 -!- spilman [n=spilman@ARennes-552-1-126-110.w92-139.abo.wanadoo.fr] has quit ["Quitte"] 18:17:11 myst, you can nest anything in Lisp 18:17:28 or iterate _8david 18:17:44 myst: write a macro do2d that expands in two nested loops, then 18:18:00 Or map. 18:18:13 yeah, depending upon problem... 18:18:13 -!- x2cast1 [n=Administ@216.126.222.87.dynamic.jazztel.es] has quit [Read error: 110 (Connection timed out)] 18:18:46 or use TAGBODY, it's much simpler than either do or loop. 18:19:12 use Scheme and call/cc 18:19:14 PROG 18:19:28 write a C compiler in lisp and run your form 18:19:52 tagbody is simpler than all of those 18:19:57 Symbolics C 18:20:11 there is cl-cont too 18:20:16 that would do 18:20:32 cl-cont has the wrong semantics for call/cc 18:20:35 -!- billitch [n=billitch@rob92-1-82-67-155-88.fbx.proxad.net] has quit [Read error: 113 (No route to host)] 18:20:59 dunno, never used it 18:21:00 you could also use Arc, where it's spelled ccc 18:21:14 not c3 ? 18:21:20 heh 18:21:24 hey, you could use a Toy system that has similar features 18:21:28 or cells where you can use c8 18:21:31 :P 18:21:53 -!- Elench [n=jarv@unaffiliated/elench] has quit [Read error: 113 (No route to host)] 18:21:58 rahul, what does c8 do in cells? 18:22:02 you can write a compiler for such a toy system, as in PAIP :) 18:22:08 Adlai: something about infinite loops 18:22:14 gr8 18:22:16 I never understood what kenny was on about 18:22:17 Nshag [i=user@lns-bzn-43-82-249-132-213.adsl.proxad.net] has joined #lisp 18:22:22 heh, pretty much 18:22:40 ok, currently I do it like this: http://paste.lisp.org/display/90681 18:22:41 actually c3, can be encoded as Hex à 18:23:03 in harc 18:23:06 hex arc 18:23:35 meh, I Octal input per MacLisp, plz. k? thx 18:23:46 durbin [n=durbin@adsl-99-181-3-9.dsl.irvnca.sbcglobal.net] has joined #lisp 18:23:47 lispm, I don't think Arc can handle complex character sets. pg wanted to write real code, not waste time on character sets. 18:23:55 i am learinig Lisp now, so I welcome any (reasonable) suggestions on the way I am doing things 18:24:06 tcr [n=tcr@host146.natpool.mwn.de] has joined #lisp 18:24:17 what does "write real code" mean? 18:24:27 I guess it's easy if you don't have to support other character sets... 18:24:28 Adlai: no you no why it is reserved, harc will use it for shorter encoding of function names 18:24:31 yeah, because sending language in differnet character sets is completely not relevant to real applications today that need to interact with people from around the world... 18:24:48 (1+ rahul) 18:24:58 -!- ejs1 [n=eugen@nat.ironport.com] has quit [Read error: 110 (Connection timed out)] 18:25:12 myst: lisp has lots of choices... learn them all and use the one that feels comfortable for the problem at hand 18:25:32 don't use something because you feel it is "right" or "simpler" 18:25:44 if you want something simple, use S and K combinators 18:25:46 myst, I suggest that you use loop, or at least searn to understand how it's used. You might also want to look at iterate, which is a portable replacement for loop. 18:25:51 *learn 18:26:05 ok 18:26:08 thanks 18:26:22 minion, tell myst about iterate 18:26:22 Not to be old fashioned, but by not two nested (do) loops? 18:26:22 myst: direct your attention towards iterate: iterate is a lispy and extensible replacement for the :(CLHS "LOOP") macro. http://www.cliki.net/iterate 18:26:26 i know loop, but i think do is simplier 18:26:45 myst: I don't :) 18:26:56 -!- centipedefarmer [n=nothingH@173-25-176-111.client.mchsi.com] has quit ["Leaving"] 18:27:03 myst: S and K combinators are even simpler 18:27:10 loop is nice in the sense that it tells you what you want... not why you want it :) 18:27:13 s/why/how 18:27:33 there's just two things in the whole language 18:27:33 myst: do is really hard to read... 18:27:37 kjbrock [n=kevinbro@173-11-106-193-SFBA.hfc.comcastbusiness.net] has joined #lisp 18:27:37 ok, thanks for comments 18:27:43 DO is just a mass of parens 18:27:43 I don't think there's a problem with using do, although I've run into -many- situations where I tried expressing some loop with do for twenty minutes, and then found that I could write it using loop in five minutes and two lines. 18:27:51 rpg, seconded, I try to avoid DO 18:28:11 I think of DO as an iterative way of writing tail-recursion 18:28:14 and LOOP is a bit more descriptive to boot 18:28:25 Adlai: hmm, yes, it kind of is 18:28:32 i don't need to avoid DO, i just never think of using it 18:28:51 nested 'do' with same variables is just pure evil 18:29:05 I've used DO for situations where a LOOP would be full of for x = (f x) then (g x) clauses 18:29:22 and no need to do any fancy collection or termination tests 18:29:44 rahul is probably too dumb to understand loop 18:29:46 I think DO is cool when you can express your entire loop without body forms, but most loops that I've written have either needed that, or needed the termination test somewhere that I couldn't easily express using DO. 18:29:48 *madnificent* ducks 18:30:11 oh no, madnificent has caught kennyitis 18:30:20 LoL 18:30:31 yes because languages should be built using iteration constructs that require a PhD to understand 18:30:40 quick, a vaccine 18:30:41 ah kennyitis 18:30:42 *deep ducks* 18:30:43 awesome 18:30:51 rahul: see! Deep understands me! 18:31:03 *madnificent* ignores real meaning of sentences 18:31:13 Deep: well, if a PhD was required to code, my job as a hosting services sysadmin would be easier :) 18:31:27 Deep: where can i receive my PhD for understanding LOOP? 18:32:15 -!- Madsy [n=Madsy@fu/coder/madsy] has quit ["Leaving"] 18:32:27 you only need a PhD to understand loop if you do the things it discourages 18:32:33 stassats - if you can line up a committee of 5 other people who know loop more than you 18:32:39 ;) 18:32:46 you get the PhD for understanding the LOOP implementation 18:32:54 like mixing the initialization, iteration, and body forms together 18:33:38 too bad the CL standard does not have the extensible LOOP - then we would have fun 18:34:05 eh SERIES works fine 18:34:09 lispm, both SBCL and CCL use the same (or very similar) loop implementation, and it's extensible too. 18:34:30 Adlai: sure, but it's not in the standard, and there are implementations that don't have it 18:34:34 Adlai: my Lispm has that, too 18:34:36 Given progress in langs in the last 10 year or so, CL screams out for a really badass comprehehnsions oriented library 18:34:47 right, I'm just saying that it's "semiportable" 18:34:51 Summermute: hahahahahahaha 18:35:00 Summermute: so you haven't learned anything about CL.... 18:35:13 Summermute: comprehensions are so ANSI CL. 18:35:16 I wouldn't be surprised if the other major CLs use a similar LOOP implementation. 18:35:24 minion, tell me about comprehensions 18:35:25 Sorry, I couldn't find anything in the database for ``comprehensions''. 18:35:25 they're all 1980s and stuff 18:35:33 *Adlai* jfgi 18:35:38 Adlai: the sequences library 18:35:50 dnolen [n=dnolen@pool-151-205-185-34.ny325.east.verizon.net] has joined #lisp 18:35:53 that's all he's asking for... map, remove, etc 18:36:02 oh. pff 18:36:09 stuff like python's list comprehensions? 18:36:14 yeah 18:36:23 a great way to thrash your cache 18:36:29 that's all encompassed in -one- CL function 18:36:30 mapcan 18:36:30 why another LOOP facility, there is already another LOOP in CL 18:36:37 Adlai: heh 18:36:53 lispm: a LOOP can't span mulitple functions 18:37:03 you need to write macros that are aware of where clauses begin and end 18:37:14 -!- levente_meszaros [n=levente_@apn-94-44-14-25.vodafone.hu] has quit [Read error: 104 (Connection reset by peer)] 18:37:15 there is already another LOOP in CL, rahul 18:37:21 other than LOOP 18:37:38 just use FORMAT 18:37:39 lispm: well, it's about expressing the iteration in different ways 18:37:42 heh 18:37:42 that is the point of iterate though 18:37:58 ITERATE is fine 18:38:03 chupish: well, iterate is still more like LOOP 18:38:10 it's funny, but also sad, that one function covers all of Python's list comprehension facility 18:38:11 it focuses on control flow, not data flow 18:38:33 that's fine for me 18:38:45 No, I want a collection of composable special forms (that don't create oodles of intermediate lists) that work on any sequence type *efficiently* that cover iteration, iteration over numbers (both together), parallel and series iteration, filiter, type altering #key style clauses, foldl/foldr functionality, guards on any grouping of sequential/parallel iterations and efficient gathering of results into any arbitrary sequence. 18:38:52 rahul: certainly, but I meant it does mean you don't have to be "as aware" as with LOOP 18:38:54 it's often fine for me, but SERIES works better for some iterations 18:39:02 Summermute, please include SMTP headers next time you send me an email 18:39:10 levente_meszaros [n=levente_@apn-94-44-14-25.vodafone.hu] has joined #lisp 18:39:28 Summermute: so you want something that no other language than common lisp and haskell provide? 18:39:43 Customizations, such as : avg(x) would make the library even nicer, and *definititely* customizable iteration over tree and other data strutures (breadth first, depth first, etc.) 18:39:57 wow :) 18:39:57 ignas [n=ignas@ctv-79-132-160-221.vinita.lt] has joined #lisp 18:40:00 one could check the iteration stuff of Dylan 18:40:10 Don't think CL has anything quite like that yet - not last time I checked. 18:40:10 Summermute: you seem to be describing SERIES word for word 18:40:11 -!- cvandusen [n=user@12.185.80.194] has quit [Remote closed the connection] 18:40:20 cvandusen [n=user@12.185.80.194] has joined #lisp 18:40:25 Summermute: check appendix A of cltl2 and then download cl-series for the implementation 18:40:28 billitch [n=billitch@rob92-1-82-67-155-88.fbx.proxad.net] has joined #lisp 18:40:55 Summermute: I'm not sure what other language you were using that has this feature 18:41:10 whatever it was, it never called anything "comprehensions" 18:41:15 rahul, APL 18:41:22 Adlai: that too 18:41:23 I was just gonna say, "is that the series in the appendix of cltl2?" I'll give it a peek. 18:41:32 Adlai: although I don't think APL does trees 18:41:57 (it does matricies instead, as that is what the people who use it are more interested in) 18:42:03 rahul, real APL hackers would probably also program in COBOL before associating themselves with list comprehensions 18:42:11 Adlai: heh 18:42:14 rahul, given haskell' and even (gasp, Python) comprehensions, CL has to up the ante way big this time :-) 18:42:18 REFAL? 18:42:31 Summermute: mapcan is all of python's list comprehensions 18:42:50 list comprehensions are a joke. 18:42:59 Summermute, all that list comprehensions are is a syntactic abbreviation of -some- common sequence processing patterns 18:43:21 they're useful for the small, one off case; they're not really all that useful in non-lazy languages 18:43:34 chupish, Python isn't lazy 18:43:35 First, off let's for the sake of argument call them "sequence" or "structured data" comprehensions. 18:43:38 There's a 1994-ish paper on list comprehensions in CL. 18:43:46 Adlai: exactly, that was my point 18:43:51 but also, because they're rooted in syntax, they don't help you when you want to construct your own such iteration models 18:44:05 there's also an SRFI for eager comprehensions 18:44:09 Summermute: the only competition here is haskell 18:44:11 slyrus_ [n=slyrus@dsl092-019-253.sfo1.dsl.speakeasy.net] has joined #lisp 18:44:11 Guthur [i=c13dbf28@gateway/web/freenode/x-kebgpifsfjluzrok] has joined #lisp 18:44:13 Second of all, with the full blow feature set I've described, that "joke" is called "95% of the programming that goes on on the world." :-) 18:44:27 *Adlai* laughs 18:44:45 Summermute: and that's why CL has had it since the 60s 18:44:54 I'm pretty sure MAPCAN was in LISP 1.5 18:45:08 redblue [i=star@ppp068.108-253-207.mtl.mt.videotron.ca] has joined #lisp 18:45:16 rahul: who maintains series these days? 18:45:25 -!- HET3 [n=diman@w283.engin.cf.ac.uk] has quit ["This computer has gone to sleep"] 18:45:33 nikodemus: shrug... does it need much of any maintaenance? 18:45:36 what's the licence? 18:45:51 I think it's public domain or MIT... 18:46:17 -!- billstclai [n=billstcl@dsl-74-209-25-128.taconic.net] has quit [Remote closed the connection] 18:46:21 i was thinking of investigating marrying it to SB-SEQUENCE stuff... 18:46:51 yes, MIT 18:46:56 nikodemus: that would be wonderful. 18:47:09 nikodemus: that doesn't need any changes to SERIES 18:47:33 rahul: it doesn't? 18:47:46 nikodemus: no, SERIES is extensible by API 18:48:00 it never assumes that list and vector form an exhaustive subdivision of sequence? 18:48:39 never 18:48:45 it doesn't care about sequence 18:49:01 write a scan scan-sb-seq functoin 18:49:45 you can scan trees and hash tables using series... the core data structure is a SERIES, not a SEQUENCE 18:49:46 -!- kpreid [n=kpreid@209-217-212-34.northland.net] has quit [] 18:49:47 ok, fair enough. i've never used it -- just read the cltl2 stuff at some point 18:50:00 mrsolo [n=mrsolo@nat/yahoo/x-hbcxdyldojwvhjdx] has joined #lisp 18:50:04 (obviously too long ago at that) 18:50:13 drewc [n=drewc@89.16.166.162] has joined #lisp 18:51:09 ah, LISP 1.5 had mapcon, not mapcan, it seems 18:51:22 so it's actually more powerful than python 18:51:47 nikodemus: AFAIK rtoym is the sole maintainer left 18:52:38 (defun mapcar (f &rest lists) (apply 'mapcon (lambda (tail) (funcall f (car tail)) lists)) 18:52:43 -!- lispm [n=joswig@g224044029.adsl.alicedsl.de] has quit [Read error: 104 (Connection reset by peer)] 18:53:02 erm mapcan 18:53:22 wrap the funcall f in (list ...) for mapcar :) 18:54:05 Summermute: so there you go. LISP 1.5 included something that's a superset of python's list comprehensions. 18:54:07 Fufie [n=innocent@86.80-203-225.nextgentel.com] has joined #lisp 18:54:42 -!- fe[nl]ix [n=algidus@89.202.147.23] has quit ["Valete!"] 18:55:18 rahul, actually, Alan Turing invented this thing even before LISP 1.5, that was a superset of MAPCON... 18:55:58 kpreid [n=kpreid@209-217-212-34.northland.net] has joined #lisp 18:56:47 (over (x (postorder mytree) #counter y) (when (evenp y) (format t "~a" x)) - just for a really, really simple case of a system that allows arbitrary grouping of pretty much any number of generators in series/parallel with when guards on any grouping, etc. and generates killer fast code out of it at the end. 18:56:50 heh 18:56:54 Edward__ [n=Ed@AAubervilliers-154-1-60-139.w90-3.abo.wanadoo.fr] has joined #lisp 18:57:06 *THAT* would be a CL worthy "comprehensions" library :-) 18:57:11 uh, "ounter" is not valid syntax for a complex number 18:57:14 Summermute: sounds like SERIES 18:57:42 Summermute: except that SERIES is written such that you can actually write the operators instead of stepping on everyone's toes 18:58:28 lispm [n=joswig@e177125095.adsl.alicedsl.de] has joined #lisp 18:58:30 Shy of using a language like J, the more I can get dones with less typing the better as I get older :-) 18:58:47 (let ((y (collect-count (scan-tree mytree)))) (when ....) 18:58:53 If a few toes get stepped on along the way .... 18:59:02 Summermute: you're typing more anyway. 18:59:21 Summermute: shrug, then it'll be more typing because you'll have to do series:postorder 18:59:32 and series:over 18:59:54 or maybe you'd call it cl-list-comprehensions:postorder :P 19:00:25 -!- ASau [n=user@83.69.227.32] has quit [Read error: 104 (Connection reset by peer)] 19:00:48 i suppose he could always take insurance for RSI at the same time 19:00:59 -!- Kolyan [n=nartamon@89-178-40-164.broadband.corbina.ru] has quit [] 19:01:23 nullman [n=nullman@c-75-73-150-26.hsd1.mn.comcast.net] has joined #lisp 19:01:30 rahul, anyone can come up with any given case, but a general composable system (the aforementioned Scheme SRFI comes close, actually) that mixes in arbitrary "generators" of series of values with arbitrary guards with arbitrary #key style transformations - and generates good code out of it... Hell, such a macro would make (loop) look like a 1st year student's (when) macro :-) 19:02:09 Summermute: what's wrong with series? 19:02:59 Summermute: you are a tool 19:03:02 and a fool 19:03:04 nikodemus: I had another one with a free list of TLS indices that was updated during major GCs. 19:03:04 Summermute, have you tried series? really, have you? 19:03:33 I have tried series a few times and never liked it 19:03:36 and what the hell is a guard with a arbitrary #key style transformations? 19:03:37 drewc, as said, have yet to take a look. 19:03:41 I can't even parse that 19:03:58 rahul: #key is scheme/dylan way of saying &key 19:04:03 Summermute, then why the fuck are you still complaining? 19:04:09 Summermute: you are describing something slightly worse than SERIES 19:04:24 tcr: and what does that have to do with transformations? 19:04:52 is he asking for map-plist? 19:04:57 er scan-plist 19:05:13 SERIES would be nice if I could use the sequences API with it :\ 19:05:27 rahul: it doesn't but if you are going to do things like TAKE and DROP, then you need predicates (guards) and :key is useful for the same reasons it's useful in FIND and POSITION and REDUCE 19:05:29 sykopomp: it provides an equivalent... 19:05:32 rahul: I think he means transformation guided by key parameters 19:05:33 sykopomp, which is why you need to wait for extensible-sequences based on sequence-iterators! 19:05:50 ASau [n=user@83.69.227.32] has joined #lisp 19:05:57 froydnj: TAKE and DROP would make the iteration slow... 19:06:01 *froydnj* waits for trivial-extensible-sequences 19:06:07 froydnj: Yoy I have take-sequence and drop-sequence in sequence-iterators. The funny thing is their implementation does not actually use my sequence-iterators 19:06:29 froydnj: Sorry, take-while, and drop-while 19:06:33 rahul: *shrug* just trying to explain goobledegook here 19:06:50 rahul: the SERIES API is kinda blah, and I'd still like to use map/remove/etc with them. 19:07:17 (map 'list my-vector my-number-series) would be quite handy. 19:07:20 rahul: either way, doing things in a totally general way is going to be slow in some cases; series admits that up front 19:07:23 err 19:07:28 insert a function there somewhere *blush* 19:07:29 sykopomp: it covers all of the sequences library... 19:07:46 froydnj: right, and it offers such functionality, so I don't see how SERIES is lacking 19:08:01 rahul: didn't say that it was :) 19:08:21 sykopomp: (collect-list (map-fn f (scan my-vector) my-number-series))) 19:08:24 froydnj: ok :) 19:08:56 Pete_R [n=quassel@78.97.98.73] has joined #lisp 19:09:02 billstclair [n=billstcl@dsl-74-209-25-128.taconic.net] has joined #lisp 19:09:59 Hi people! How do I test if a line read from file is empty string? 19:10:02 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #lisp 19:10:05 The value # is not of type SB!KERNEL:LEXENV. 19:10:07 *sigh* 19:10:20 (zerop (length line)) 19:10:20 (zerop (length string)) 19:10:27 second! 19:10:41 Pete_R: (defun empty-string-p (string) (zerop (length string))) 19:10:55 10x 19:10:55 *drewc* was slow but more complete :) 19:11:42 shouldn't it be string-empty-p ? 19:11:58 lispm, you mean string-emptyp 19:12:06 drewc: nil is a string? (: (typep x '(string 0)) 19:12:36 (equal string "") 19:12:43 -!- Jarvellis is now known as Elench 19:12:46 pkhuong: ok ... typep FTW! :) 19:13:46 Haplo__ [n=hatchond@cau33-1-82-66-14-55.fbx.proxad.net] has joined #lisp 19:14:29 (defun empty-string-p (x) (labels ((count-bits (l n) (if l (count-bits (cdr l) (1+ n)) n))) (zerop (logcount (count-bits (map 'list (constantly 1) x) 0))))) 19:14:42 oops, far too slow 19:16:17 (defun string-emptyp (string) (not (coerce string 'list))) 19:16:30 (not (ignore-errors (char string 0))) 19:17:16 Pete_R: i don't think there is any way to do that :P 19:17:35 (every 'zerop (array-dimensions string)) 19:17:40 :P 19:17:50 I did a speed test on empty string predicates once and I think (zerop (length string)) was the fastest 19:18:04 dlowe: makes sense 19:18:07 (zerop (loop for i across string count 1)) 19:18:07 we're not addressing the fact that it's a line read from a file, though... 19:18:09 things might have changed since then, of course 19:18:20 Adlai: #0A()? 19:18:23 I see you're having fun with this :) 19:18:40 actually, a line read from a file may have an extraneous terminator in there 19:18:46 or be just whitespace, in general 19:18:55 so he MAY actually want to ignore a non-empty string 19:18:59 pkhuong, true, my test is not stringent enough. 19:19:02 *Adlai* ducks 19:19:24 (every #'whitepsacep line) 19:19:33 (loop for i across string count i into sum finally do (return (zerop sum))) 19:20:49 no, no, (reduce (constantly t) line :initial-value nil) 19:21:11 -!- Pavitra [n=pavitra@76-76-236-67.lisco.net] has quit [Read error: 104 (Connection reset by peer)] 19:21:23 (loop for i across string initially (unless (stringp string) (return nil)) do (return nil) finally (return t)) 19:21:39 crazy people... 19:21:42 but yeah, hefner's version is best 19:21:43 pavitra [n=pavitra@76-76-236-67.lisco.net] has joined #lisp 19:21:44 (defmacro 19:22:30 -!- chrisdon` is now known as chrisdone 19:22:31 (zerop (count-if (constantly t) string)) 19:22:53 ... make sure the empty string is detected at read-time, macro expand time, too and replaced with the boolean value 19:23:37 (not (find-if (constantly t) "")) 19:23:54 hefner: (block nil (reduce (lambda (&rest items) (return t)) line :initial-value nil)) .. no need to traverse the whole thing if it's full :) 19:24:41 -!- Modius [n=Modius@cpe-70-123-130-159.austin.res.rr.com] has quit ["I'm big in Japan"] 19:24:56 (zerop (with-input-from-string (stream string) (read-sequence string stream))) 19:25:04 (some #'characterp line) 19:25:32 pavelludiq [n=quassel@83.222.175.184] has joined #lisp 19:25:43 (some #'identity line) 19:25:55 I like characterp better :) 19:26:04 it's unnecessarily specific 19:26:05 (and (stringp string) (array-in-bounds-p string 0)) 19:26:07 -!- drwho [n=drwho@c-98-225-211-78.hsd1.pa.comcast.net] has quit [Read error: 110 (Connection timed out)] 19:26:14 rahul: bah... wasted cycles! :) 19:26:24 heh 19:26:43 penny wise, euro foolish! 19:27:28 -!- george_ [n=george@189.107.193.246] has quit [Read error: 104 (Connection reset by peer)] 19:27:45 (equal string (make-array 0 :element-type nil)) 19:28:12 Adlai: that's not very portable 19:28:14 was there a SERIES solution, yet? 19:28:17 (equal (the string s) "") - (forgive some years between the present and heavy lisp frobbing) 19:28:25 (first (coerce line 'list)) 19:28:31 drwho [n=drwho@c-98-225-211-78.hsd1.pa.comcast.net] has joined #lisp 19:28:39 blackened` [n=blackene@ip-89-102-22-70.karneval.cz] has joined #lisp 19:28:41 stassats, isn't that the behavior according to the spec? 19:28:49 (collect-and (map-fn 'characterp (scan line))) 19:28:54 Adlai: it is 19:28:55 -!- drwho is now known as Guest37527 19:29:05 thus, it's a Conforming Program! 19:29:30 but not sane 19:29:32 Adlai: it won't necessarily give the result you want 19:29:52 clhs equal 19:29:52 http://www.lispworks.com/reference/HyperSpec/Body/f_equal.htm 19:30:00 well, I guess I never really figured out the element type nil thing 19:30:17 george_ [n=george@189.107.147.75] has joined #lisp 19:30:30 "Two arrays are equal only if they are eq, with one exception: strings and bit vectors" 19:31:07 nha [n=prefect@31-174.4-85.fix.bluewin.ch] has joined #lisp 19:31:16 clhs make-array 19:31:16 http://www.lispworks.com/reference/HyperSpec/Body/f_mk_ar.htm 19:31:18 right, and a string is a vector whose elements are of type character or a subtype of character 19:31:32 (i have no idea what element-type nil means to the spec) 19:31:34 Adlai: .. upgraded element type. 19:31:41 (ignore-errors (make-array 0 :initial-contents string)) 19:32:07 (tree-equal (coerce line 'list) ()) 19:32:13 pkhuong, the definition in the glossary doesn't say that 19:32:26 rahul, that's not a stringent test 19:32:47 Adlai: the elements of an array are of its upgraded element type 19:33:17 the type originally passed is not available from the array itself 19:33:48 (with-input-from-string (s string) (read-char s nil nil)) 19:34:02 rahul: but that's not what the spec says. In theory, we could have specialised vectors for (or character null) that only contains characters :\ 19:34:04 lispm, putting generalized booleans to good use! 19:34:25 that's a feature! 19:34:32 (loop for char across string do (return t)) 19:34:43 where do I find a good tutorial on debugging in slime? 19:34:56 clhs print 19:34:56 http://www.lispworks.com/reference/HyperSpec/Body/f_wr_pr.htm 19:34:58 \o/ 19:35:20 Heh 19:35:29 Pete_R: the slime manual and M-x describe-mode should be all that you need. 19:35:29 minion: slime-video? 19:35:30 Sorry, I couldn't find anything in the database for ``slime-video''. 19:35:32 (loop for char across string thereis char) 19:35:43 The implementation is permitted to upgrade this type in order to produce the actual array element type, which is the element type for the array is actually specialized. 19:35:46 minion: slime.mov? 19:35:47 slime.mov: "using SLIME" video by Marco Baringer, http://common-lisp.net/project/movies/movies/slime.mov 19:35:48 The SLIME video is a nice intro. 19:35:49 hmm 19:35:52 stassats: thanks. 19:36:04 proq [n=user@unaffiliated/proqesi] has joined #lisp 19:36:30 -!- Guthur [i=c13dbf28@gateway/web/freenode/x-kebgpifsfjluzrok] has quit ["Page closed"] 19:36:32 minion, alias "slime-video" as: slime.mov 19:36:33 OK, done. 19:36:35 thanks again 19:36:36 :) 19:37:23 Pete_R, you should also learn a bit about the condition system, to understand how CL debuggers work. Are you reading PCL? 19:37:37 Adlai: I 19:38:04 Adlai: I'm ashamed to say that I don't even know what PCL means (blush) 19:38:13 minion: pcl? 19:38:15 pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005). 19:38:26 http://l1sp.org/pcl and specifically chapter 19 19:38:29 portable common loops 19:38:47 minion, what does pcl stand for? 19:38:47 Propagand Common Lisp 19:38:48 -!- ThomasI [n=thomas@unaffiliated/thomasi] has quit ["Bye Bye!"] 19:38:58 -!- Eko [n=eko@lawn-128-61-114-11.lawn.gatech.edu] has quit ["This computer has gone to sleep"] 19:39:05 minion, what does progv stand for? 19:39:06 Paronomastical Redistribute Ostraite Gobelin Volumetrically 19:39:21 <3 minion 19:40:01 Adlai: Oh, that :) I'm reading that book right now actualy 19:41:33 kmc [n=keegan@206-71-236-70.c3-0.nyw-ubr5.nyr-nyw.ny.cable.rcn.com] has joined #lisp 19:43:25 kiuma [n=kiuma@93-35-237-243.ip57.fastwebnet.it] has joined #lisp 19:43:28 hmm, `sh make.sh "sh run-sbcl.sh"' => fail. Oh well :) 19:45:49 it overwrites itself 19:46:09 just for fun: (defun empty-string-p (x) (and (= (sb-kernel:lowtag-of x) sb-vm::other-pointer-lowtag) (member (sb-kernel:widetag-of x) '(#.sb-vm:simple-character-string-widetag #.sb-vm:simple-base-string-widetag #.sb-vm:complex-character-string-widetag #.sb-vm:complex-base-string-widetag)) (sb-sys:with-pinned-objects (x) (zerop (sb-sys:sap-ref-word (sb-sys:int-sap (logandc2 (sb-kernel:get-lisp-obj-address x) sb-vm:lowtag-mask)) (* sb-vm::vector-l 19:46:09 ength-slot sb-vm:n-word-bytes)))))) 19:46:27 nikodemus, that's not portable 19:46:30 nikodemus wins 19:47:18 Pete_R, look what you started 19:48:15 D: 19:48:20 :D 19:51:08 (zerop (process-exit-code (run-program "/usr/bin/test" (list line)))) 19:52:00 sometimes, anyway. 19:52:04 Adlai: works everywhere I work. 19:52:22 pkhuong: Portable Enough 19:52:37 sykopomp: more portable than my OED. 19:52:38 pkhuong, this is Lisp, we measure portability in half-centuries 19:53:05 is that like measuring mass in light-years? 19:53:05 Adlai: MKSA! I measure portability in kg*m^3. 19:53:49 Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has joined #lisp 19:54:59 hmm 19:55:06 (string-greaterp string "") 19:55:15 ! 19:55:28 ! 19:55:30 I wonder how that deals with whitespace 19:55:58 eh, it returns a number? 19:56:31 rahul, a generalized boolean 19:56:43 ah, mismatch index 19:56:45 uh, I'm wrong. 19:56:47 yeah 19:56:51 no, you're right 19:56:57 -!- george_ [n=george@189.107.147.75] has quit [Read error: 145 (Connection timed out)] 19:56:59 it's a special kind of generalized boolean :) 19:57:29 oh wait... hmm 19:58:08 -!- rread [n=rread@c-98-234-219-222.hsd1.ca.comcast.net] has quit [] 19:58:20 yeah compare blah bla black blaq 19:59:56 -!- Edward__ [n=Ed@AAubervilliers-154-1-60-139.w90-3.abo.wanadoo.fr] has quit ["L'oignon fait la farce."] 20:00:03 one more 20:00:07 (find-if #'characterp string) 20:00:36 I think hefner had something basically the same 20:00:48 (some 'characterp string) 20:01:13 inspired by someone's previous use of find-if 20:01:19 I liked the Hefner-Crampsie String Emptyness Algorithm 20:01:20 ah 20:01:30 but my _serious_ suggestion was that the OP might have wanted (every 'whitespacep string) 20:01:31 ie, block + reduce 20:02:40 -!- nikodemus [n=nikodemu@cs181150041.pp.htv.fi] has quit ["This computer has gone to sleep"] 20:03:49 hm 20:04:14 (equal string (string-trim (loop for code below char-code-limit collect (ignore-errors (code-char code))) string)) 20:04:45 eh 20:05:11 not sure what that would achieve :P 20:05:11 Fare [n=Fare@ita4fw1.itasoftware.com] has joined #lisp 20:05:24 it's like (equal string ""), but better 20:05:34 I am configuring buttons after they've been created with configure; "(configure (aref a 0 0) :relief :sunken)" and "(configure (aref a 0 0) :text "Hi!"), the thing is that it seems like it doesn't want to change the text (it just does the relief thingy) 20:05:48 especially because it takes a noticeable amount of time to run 20:06:10 0.2 seconds on "a man a plan a canal panama" on CCL 1.4 20:06:21 Adlai: no, it's like (equal sring "!@#$%^&*....") 20:06:45 rahul, nope, the second argument to equal evaluates to "" 20:07:12 -!- udzinari [n=user@nat/ibm/x-gyxzfdcejkqkzlpg] has quit [Read error: 110 (Connection timed out)] 20:07:21 oh ok 20:07:30 I see what's in the parens :) 20:07:45 try it. It's suspenseful! 20:08:04 heh 20:08:38 sayyestolife: what is that about? 20:08:38 -!- ljames [n=ln@unaffiliated/ljames] has quit [Remote closed the connection] 20:09:20 rahul oh, hehe I'm using ltk 20:09:33 -!- kiuma [n=kiuma@93-35-237-243.ip57.fastwebnet.it] has quit [Remote closed the connection] 20:16:05 -!- sayyestolife [n=jot_n@h-60-147.A163.priv.bahnhof.se] has quit [] 20:17:59 -!- ASau [n=user@83.69.227.32] has quit ["reboot"] 20:21:17 Modius [n=Modius@cpe-70-123-130-159.austin.res.rr.com] has joined #lisp 20:22:03 marioxcc [n=user@201.132.49.4] has joined #lisp 20:24:10 -!- Edico [n=Edico@unaffiliated/edico] has quit [Read error: 60 (Operation timed out)] 20:24:40 rread [n=rread@c-98-234-219-222.hsd1.ca.comcast.net] has joined #lisp 20:26:42 george_ [n=george@189.107.203.239] has joined #lisp 20:27:03 Edico [n=Edico@unaffiliated/edico] has joined #lisp 20:28:05 -!- slyrus [n=slyrus@adsl-75-36-215-18.dsl.pltn13.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 20:28:18 -!- x2cast [n=Administ@16.127.222.87.dynamic.jazztel.es] has quit [Read error: 104 (Connection reset by peer)] 20:32:33 ASau [n=user@83.69.227.32] has joined #lisp 20:34:51 loxs [n=loxs@85-130-35-10.2073285806.ddns.cablebg.net] has joined #lisp 20:36:22 -!- ASau [n=user@83.69.227.32] has quit [Client Quit] 20:36:28 yibter [n=yibter@c-76-105-116-44.hsd1.ga.comcast.net] has joined #lisp 20:36:33 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #lisp 20:37:32 lemonodor [n=lemonodo@144.198.182.10] has joined #lisp 20:38:31 -!- lhz [n=shrekz@c-b9aa72d5.021-158-73746f34.cust.bredbandsbolaget.se] has quit ["Leaving"] 20:38:39 nvoorhies [n=nvoorhie@32.154.132.189] has joined #lisp 20:38:59 -!- nvoorhies [n=nvoorhie@32.154.132.189] has quit [Client Quit] 20:39:33 beauty [n=beauty@83.231.108.12] has joined #lisp 20:39:38 nvoorhies [n=nvoorhie@32.154.132.189] has joined #lisp 20:39:55 night 20:40:18 x2cast [n=Administ@183.127.222.87.dynamic.jazztel.es] has joined #lisp 20:40:24 -!- rread [n=rread@c-98-234-219-222.hsd1.ca.comcast.net] has quit [Remote closed the connection] 20:40:28 rread [n=rread@nat/sun/x-bzhgeqpiwrkjljvk] has joined #lisp 20:41:09 -!- nvoorhies [n=nvoorhie@32.154.132.189] has quit [Client Quit] 20:42:43 -!- kpreid [n=kpreid@209-217-212-34.northland.net] has quit [] 20:42:45 -!- stassats [n=stassats@wikipedia/stassats] has quit [Read error: 110 (Connection timed out)] 20:43:43 Hello beauty. 20:44:01 hi beach 20:44:41 -!- rpg [n=rpg@216.243.156.16.real-time.com] has quit [Read error: 110 (Connection timed out)] 20:44:49 good evening. 20:44:59 -!- segv [n=mb@79.193.252.127] has quit [] 20:45:54 tic: I'll serve a first course with beets, asparagus, and scallops, and a main course with marinated pork filé and sweet potatoes. 20:45:55 gio123 [n=jhjhxh@gprs1.gprs.ge] has joined #lisp 20:45:58 is there any brazilian or portugues? 20:46:09 gio123: Go away! 20:46:17 WHERE? 20:46:51 gio123: Oh, come on. We have been through this. Don't pretend you don't know what I am talking about. 20:47:01 beach, sounds delicious! 20:47:22 gio123: This channel is about Lisp, not about illegal papers or free translations to or from Portuguese. 20:47:39 beach no sushi ? 20:48:00 beach: illegal papers? 20:48:09 where? 20:48:09 Scallops made me think of kallops, and dillkött. 20:48:23 beach: why do u think i need illegal paper? 20:48:28 madnificent: gio123 has a long history of asking for copies of copyrighted material here. 20:49:08 beach: heh, how do u remeber that, it was 2 years ago, come on 20:49:10 hmm... is there something special I might be needing to do to get cl-smoke working on a standard Ubuntu machine with sbcl using the asdf files provided? 20:49:19 how u remember that 20:49:19 gio123: And, if you had something between your ears, you would have known by now that people here don't appreciate abbreviations such as "u" for "you". So you just keep pissing everyone off. 20:49:20 ? 20:49:22 gio123: beach is like an elephant 20:49:38 tic: Very different! 20:49:58 madnificent: I think he is like a dick 20:50:00 beach, yes, I noticed. :-) 20:50:14 Who has the cinnamon roll? 20:50:15 gio123: many men would be proud 20:50:17 ASau [n=user@83.69.227.32] has joined #lisp 20:50:18 beauty: Nope, not for a young Vietnamese person outside Vietnam for the first time. 20:50:43 ahm, is citeseer offline for everyone? Or am I using a wrong site? (or is citeseer not the site with the research papers on it) 20:50:47 beach: I have dealt with that very situation a number of times in the last year as my wife has had various friends and relatives come over. 20:50:48 oh, wait... I think I'm still missing some stuff... 20:50:54 gio123: Now, if you are through this time around, please leave! 20:51:09 :) 20:52:00 Guthur [n=Michael@host81-131-243-232.range81-131.btcentralplus.com] has joined #lisp 20:53:01 tessier: It is a delicate situation, because you never know how people react. I myself, when I travel, would not want the food from my own country, but people who don't travel much find that to be the only thing that is not totally strange. 20:53:21 beach: you are my best friend ;) 20:53:26 -!- ChanServ has set mode +o Krystof 20:53:27 -!- ChanServ has set mode +o Xach 20:53:31 Xach: after you 20:53:35 -!- Xach has set mode +b *!*n=jhjhxh@*.gprs.ge 20:53:37 Heh! 20:53:37 No, after you! 20:53:44 no, before me! 20:53:47 beach: depends on your stomach, I guess :) 20:53:56 hi Xach 20:53:59 haha 20:54:05 Xach: game release on friday :) 20:54:26 Krystof: oh, I meant the kick. 20:54:32 unnecessary, i suppose. 20:54:55 dto: where will the game run? Linux? Windows? Mac? 20:55:20 -!- loxs [n=loxs@85-130-35-10.2073285806.ddns.cablebg.net] has quit [Remote closed the connection] 20:55:21 nvoorhies [n=nvoorhie@adsl-76-216-21-95.dsl.pltn13.sbcglobal.net] has joined #lisp 20:55:25 lispm: yes 20:55:34 beach: Yep. Fortunately we have a lot of Vietnamese restaurants around here and we are close to Westminster so we can get them their food half the time and new food the other half. 20:55:35 *beach* goes to bed, because he follows a class about networking that meets at 08:00 on Thursday mornings :( 20:55:35 lispm: runs on linux now. over the weekend i should have win/mac binaries ready. 20:55:40 good night beach 20:55:47 loxs [n=loxs@85-130-35-10.2073285806.ddns.cablebg.net] has joined #lisp 20:55:50 dto: cool 20:55:52 beach: We need to talk more. Later. 20:56:05 lispm: did you see the newest video preview of it? 20:56:05 tessier: Yeah, but I don't want to do that either. Delicate balance. Anyway, good night! 20:56:10 Geralt [n=Geralt@p5B32EF72.dip.t-dialin.net] has joined #lisp 20:56:33 lispm: http://www.youtube.com/watch?v=oFgBI32r7Qo 20:56:40 dto: hard to keep up with you. Xong? 20:56:41 pjb [n=t@23.Red-79-149-147.staticIP.rima-tde.net] has joined #lisp 20:56:48 lispm: yes. 20:56:48 yes 20:57:00 :) 20:57:20 I look forward to try it 20:57:50 cool. yes i'll post the link when it's ready :) 20:58:11 dto: you're repacking it already? 20:58:13 make sure it is ready for the weekend ;-) 20:58:28 lispm: you have weekends? 20:58:29 madnificent: repacking what 20:58:34 the binary 20:58:35 lispm: are you on linux? 20:58:39 mac 20:58:57 madnificent: should have mac/win binaries over the weekend. i'm relying on a friend to do them 20:58:59 ( lispm, also ) ;-) 20:59:21 dto: would it be possible to pack the needed SDL and such with it? 20:59:39 (legally, too) 21:00:10 madnificent: we do that with the win/mac versions so that installation is simpler. however, on linux you really want your own distributions sdl libs. 21:00:42 gah, I made mistakes in translating the original mt* initialization to lisp :-( 21:00:47 why? 21:01:06 yeah, dto, Xong looks great 21:01:14 happily, my internal reviewer at ITA demanded that I should double-check the results of the algorithm... 21:01:16 madnificent: i wouldn't know how to deliver a binary to you for example, youre on 64 bit right? 21:01:31 if i had to make a binary that had working SDL libs for you packed in 21:01:36 dto: yeah, I wondered for the most part... an easy installation is key 21:01:50 madnificent: definitely 21:01:50 HNSZ [n=HNSZ@s55918cef.adsl.wanadoo.nl] has joined #lisp 21:02:38 on windows and mac. the user isn't likely to have SDL already, nor would i know how to find it if they did 21:02:43 so we include it 21:02:56 but on linux it's just a matter of installing a few packages 21:03:44 -!- x2cast [n=Administ@183.127.222.87.dynamic.jazztel.es] has quit ["Leaving."] 21:03:45 dto: do you have a dvorak layout? for .rlxrc 21:03:46 madnificent: so did the game work? 21:04:06 madnificent: in blast tactics there's one, but not for this game yet. 21:04:11 madnificent: the arrow keys and numpad will work. 21:04:48 no, I apparently don't have libSDL_gfx.so.4 (but it could be at a different location than what you're searching, or I may need to compile it) 21:05:15 did you install the package libsdl-gfx? 21:05:27 if it's only complaining about gfx, it's probably missing. 21:05:38 dto: I'm searching 21:05:46 roygbiv [n=none@pdpc/supporter/active/roygbiv] has joined #lisp 21:05:49 what distro? 21:05:53 gentoo 21:05:54 molac [n=banre@unaffiliated/romani] has joined #lisp 21:05:59 ah, i don't know anything about gentoo. 21:06:02 installing it in a few :) 21:06:05 -!- Pete_R [n=quassel@78.97.98.73] has quit [Remote closed the connection] 21:06:07 ok 21:06:14 but it takes a while, as it needs to compile :) 21:06:23 ohhhhh gentoo 21:06:24 i see. 21:06:31 i'll be around 21:06:35 *madnificent* will not 21:06:45 i am probably going to sleep a lot this evening 21:06:52 dagnachew [n=dagnache@modemcable230.220-179-173.mc.videotron.ca] has joined #lisp 21:06:54 i've been running on empty for la couple days 21:07:09 dstatyvka [i=ejabberd@pepelaz.jabber.od.ua] has joined #lisp 21:08:26 -!- molac [n=banre@unaffiliated/romani] has left #lisp 21:08:47 dto: you need libSDL_gfx.so.4, whereas it installs .13 by default here 21:09:02 madnificent: you'll have to compile the game yourself. :( 21:09:09 or symlink it 21:09:17 try symlinking out of curiosiity 21:09:29 i don't actually call anything in that lib in Xong 21:09:59 -!- gio123 [n=jhjhxh@gprs1.gprs.ge] has left #lisp 21:10:03 then why did you link it to .so.4? instead of .so ? 21:10:10 -!- HNSZ [n=HNSZ@s55918cef.adsl.wanadoo.nl] has left #lisp 21:10:38 i didn't do that overtly. the binary just came out that way with sb-ext:save-lisp-and-die or whatever it's called. see the file make-xong-image.lisp 21:10:57 Xach: ah. Sorry, I got distracted by my superlatively terrible elisp skills 21:11:06 man, don't symlink so.4 to so.13, that's so broken. 21:11:25 now I've fixed my init routine, only to find that what's in SBCL disagrees with the reference implementation wrt computing a random (unsigned-byte 32)... 21:11:43 -!- daniel_ is now known as daniel 21:11:49 -!- dagnachew [n=dagnache@modemcable230.220-179-173.mc.videotron.ca] has quit [Client Quit] 21:11:59 is it sport to "fix" SBCL so it agrees with the reference implementation? 21:13:22 it runs 21:13:27 dto: ^ 21:13:35 cool. 21:13:48 press f1 for help, and enjoy , and please give lots of feedback ! :) 21:13:50 sound works? 21:14:49 Fare: i wish i had had this a year ago when i delivered my roguelike talk :) 21:15:02 which feature? 21:15:27 i mean this overall game. http://dto.github.com/notebook/xong.html 21:15:45 i had features and demos, but no game. now i have games :) 21:16:40 -!- kami [n=user@unaffiliated/kami-] has quit [Read error: 110 (Connection timed out)] 21:16:49 dto: how do I restart the game? 21:16:55 escape. 21:17:01 -!- delYsid [n=user@debian/developer/mlang] has quit [Remote closed the connection] 21:17:02 ty 21:17:05 schoppenhauer [n=christop@unaffiliated/schoppenhauer] has joined #lisp 21:17:41 -!- sellout [n=greg@c-24-128-48-180.hsd1.ma.comcast.net] has quit [] 21:18:42 bah, advogato doesn't let me post more than once a day 21:19:02 that means I will have to wait until tomorrow to publish my terrible elisp for forwarding sbcl-bugs mails to launchpad 21:20:41 dto, want to make a brief progress demo at a next BLM? 21:20:45 on the plus side, positive sparklines! 21:21:14 Fare: when? 21:21:27 like, ten minutes? 21:21:49 dto: a gem was generated to be in a grey wall 21:22:11 madnificent: a gem? the chevron pickup (little white diamond?) 21:22:23 what's the name when you click on it? 21:22:32 10 minutes is fine. 21:22:46 either on Dec14 or in January. 21:23:19 hmm. 21:23:58 slash_ [n=Unknown@whgeh0250.cip.uni-regensburg.de] has joined #lisp 21:24:00 -!- LiamH [n=none@pdp8.nrl.navy.mil] has quit [Read error: 60 (Operation timed out)] 21:26:14 dto: yes, sorry... I past the level when I saw it 21:26:14 dto: it looked like a smaller circle to pass through, so I saw it too late 21:26:46 pfeyz [n=user@146.95.33.225] has joined #lisp 21:26:52 ah. i might change the png for that. 21:26:54 dto: also: a diamond on a black hole :) 21:27:07 dto: but it is very very fun to play! 21:27:21 yaaaaaaaaaaaay 21:27:25 :) 21:27:26 even though I normally kick on graphics for games, this has taken some time away from me that I don't really have :P 21:27:28 the point 21:27:30 isfun. 21:27:40 -!- lemonodor [n=lemonodo@144.198.182.10] has quit [] 21:28:17 dto: I need to squash a blue floor, but there are no blue tiles in the level :( 21:28:21 madnificent: glad you enjoy. and keep the bug reports coming!!! 21:28:24 blue lock 21:28:25 ah. 21:28:47 dto: add a highscore when the bugs are out :) 21:29:03 sellout [n=greg@c-24-128-48-180.hsd1.ma.comcast.net] has joined #lisp 21:29:07 press escape to suicide. 21:30:19 dto: I have a very very strange bug 21:30:32 I ran out of the room, leaving my puck inside (by accident) 21:30:36 -!- moocow [n=new@69.67.174.130] has quit [Read error: 104 (Connection reset by peer)] 21:30:36 yet it opened the room again 21:30:49 -!- s0ber [n=s0ber@114-45-234-101.dynamic.hinet.net] has quit [Read error: 60 (Operation timed out)] 21:30:50 what's wrong with that? 21:30:53 however, there is a puck laying in front of me, which I can't pick up 21:31:06 my regular puck won't come to me either, as my characters seems not to accept it 21:31:07 oh. you mean a P? 21:31:09 or an actual puck? 21:31:13 the level is finished 21:31:13 -!- schoppenhauer [n=christop@unaffiliated/schoppenhauer] has quit [Read error: 131 (Connection reset by peer)] 21:31:16 an actual puck 21:31:17 s0ber [n=s0ber@118-160-165-75.dynamic.hinet.net] has joined #lisp 21:31:21 I have two yellow pucks around 21:31:33 multi-puck situations have not been fully explored. i'll have to do more tests. 21:31:37 one is hopping up and down, the other is just laying in front of me (and I can't pick it up) 21:31:52 are they constantly beeping? 21:32:16 dto: ah, it is something stranger 21:32:22 I can throw pucks 21:32:30 and I keep getting a new one 21:32:42 hmm, that hasn't happened to me yet. 21:32:50 so, the puck that I was using bounces, I try to catch it, but it goes right through me 21:32:53 but still gives me my puck back 21:33:02 when I shoot the new puck, the old one stops moving... 21:33:19 legumbre_ [n=leo@r190-135-49-151.dialup.adsl.anteldata.net.uy] has joined #lisp 21:33:25 sounds like there are 2 places in the world referring to one object. 21:33:29 i'll work on it. 21:33:31 *madnificent* heads to the next level 21:33:35 thanks for finding it 21:33:42 Yay! I finally made it to chapter 7 of PCL :D 21:33:43 it's not a problem, the game keeps working :) but it's only fair to report it :) 21:33:52 *madnificent* will report in #lispgames if he finds anything 21:33:54 madnificent: can you still play normally? 21:33:55 congrats fatalnix1995_ 21:34:02 dto: yes, I'm going to try to go to the next level now 21:34:07 cool 21:34:10 works :) 21:34:11 -0--> #lispgames :) 21:34:20 -!- chupish [i=182ed347@gateway/web/freenode/x-gsqqfhpiklkuonzn] has quit [] 21:34:28 -!- redblue [i=star@ppp068.108-253-207.mtl.mt.videotron.ca] has quit [""You cannot do a kindness too soon because you never know how soon it will be too late." -RWE"] 21:35:00 dto: the game is written in SBCL? 21:35:12 b4|hraban [n=b4@a83-163-41-120.adsl.xs4all.nl] has joined #lisp 21:35:28 i think it's generic enough. a friend got the code running on CCL or something else 21:35:35 i use SBCL tho 21:35:38 if that's what you mean 21:35:43 okay 21:36:41 portable is cool 21:36:57 portable is anticompetitive 21:37:10 -!- ChanServ has set mode -o Xof 21:37:20 whoops, that's not what I meant 21:37:23 -!- ChanServ has set mode -o Krystof 21:37:23 Phoodus [i=foo@ip68-231-37-148.ph.ph.cox.net] has joined #lisp 21:37:40 oh, SBCL *does* match the reference implementation -- it's just that's there's a layer of indirection between the mt19937's genrand_int32 and SBCL's (random (ash 1 32)). 21:37:43 pphew 21:40:41 demmeln [n=Adium@dslb-094-216-079-058.pools.arcor-ip.net] has joined #lisp 21:48:38 -!- Fare [n=Fare@ita4fw1.itasoftware.com] has quit ["Leaving"] 21:48:58 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Remote closed the connection] 21:49:32 -!- maskd [n=maskd@unaffiliated/maskd] has quit [Read error: 110 (Connection timed out)] 21:49:41 -!- Jasko2 [n=tjasko@c-174-59-195-12.hsd1.pa.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 21:49:48 Jasko [n=tjasko@c-174-59-195-12.hsd1.pa.comcast.net] has joined #lisp 21:50:37 rdd` [n=rdd@c83-250-145-223.bredband.comhem.se] has joined #lisp 21:51:15 blargh. Users of explicit seeding: how often do you need to generate fresh random states? Would a cost of a dozen millisecond/random state be ok? 21:52:44 -!- legumbre [n=leo@r190-135-20-253.dialup.adsl.anteldata.net.uy] has quit [Read error: 110 (Connection timed out)] 21:53:25 -!- yacin [n=yacin@tyr.gtisc.gatech.edu] has quit [Remote closed the connection] 21:53:32 yacin [n=yacin@tyr.gtisc.gatech.edu] has joined #lisp 21:53:56 probably depending on the application. we have an algorithm that generates thousands of random subgraphs to calculate graph goodness. so in that specific algorithm the cost should be as low as it possibly can :) 21:54:07 haven't written it in common lisp - yet 21:54:26 guaqua: why can't it generate all that with a single seed? 21:54:38 -!- dv_ [n=dv@83-64-248-68.inzersdorf.xdsl-line.inode.at] has quit ["Verlassend"] 21:54:45 just keep going instead of re-seeding 21:54:48 -!- b4|hraban [n=b4@a83-163-41-120.adsl.xs4all.nl] has quit ["Leaving"] 21:54:54 probably could, but if wanted to re-seed - ... 21:55:08 you'd re-seed at the beginning of the whole test 21:55:17 guaqua: fresh random states, not just a random value. 21:55:27 Madsy [n=Madsy@fu/coder/madsy] has joined #lisp 21:55:27 probably a non-issue 21:56:03 If the independence of the subgraphs is important, it might be. But it's mostly useful when you're comparing between different settings based on the same random values (to reduce the variance). 21:56:20 -!- legumbre_ [n=leo@r190-135-49-151.dialup.adsl.anteldata.net.uy] has quit [Read error: 104 (Connection reset by peer)] 21:56:30 legumbre_ [n=leo@r190-135-49-151.dialup.adsl.anteldata.net.uy] has joined #lisp 21:56:49 pkhuong: you'd probably want all subgraphs that are generated to be the same for each test 21:57:14 I don't see how re-seeding in the middle of the test to compute the next subgraph will be helpful 21:58:01 rahul: this is mostly in the spirit of variance reduction or to make independent tests truly independent. 21:58:36 For instance, if I run A then B, or A' then B, i'd like the result of B to be the same in either case. One way to do that is with substreams; get a different substream for each subtest. 22:00:47 ltriant [n=ltriant@lithium.mailguard.com.au] has joined #lisp 22:00:51 well, I'd do (defun graph-goodness (graph) (let ((*random-state* (make-random-state 12309839283))) ... 22:01:02 -!- Geralt [n=Geralt@unaffiliated/thegeralt] has quit ["Leaving."] 22:01:54 since you can't guarantee anything about a shared random state in the presence of threading 22:01:59 rahul: and what if you have hundreds of subtests? 22:02:08 -!- dstatyvka [i=ejabberd@pepelaz.jabber.od.ua] has left #lisp 22:02:11 dstatyvka [i=ejabberd@pepelaz.jabber.od.ua] has joined #lisp 22:02:13 francogrex [n=user@38.36-244-81.adsl-dyn.isp.belgacom.be] has joined #lisp 22:02:26 pkhuong: those hundreds of subtests will always be the same ones each time you run the test 22:03:07 rahul: that's what I call useless. 22:03:10 if you're talking about trying to do two different subtests with the same graph, that's what LET is for 22:03:19 pkhuong: that's what it seems they want 22:03:36 they want goodness to be the same for the same graph 22:03:40 The problem is that your random subtests aren't really independent: they depend on the number of random numbers drawn in the previous tests. 22:03:52 fe[nl]ix [n=algidus@88-149-210-168.dynamic.ngi.it] has joined #lisp 22:03:53 pkhuong: in the previous _sub_tests 22:04:08 which are all run in the same order each time you run the overall test 22:04:18 -!- rdd [n=user@c83-250-145-223.bredband.comhem.se] has quit [Read error: 110 (Connection timed out)] 22:04:32 rahul: and? As soon as there's a single discrepancy, everything will differ. 22:05:27 why would there be a discrepancy in the random numbers generated from the same seed? 22:05:50 rahul: This is like how quickcheck/clickcheck do their randomized testing, right? Seems like a good approach to me. 22:05:55 rahul: one test doesn't work and asks for a different number of random values. 22:06:19 pkhuong: why would it not work? 22:06:33 it would generate the same set of random values to use 22:06:56 hehe predictable random numbers, 22:06:57 pkhuong: it's not a regression test, iiuc... it's a goodness calculation 22:07:11 Guthur: of course they're predictable 22:07:13 i know its true 22:07:18 Guthur: algorithms always are 22:07:22 i know 22:07:29 just stating the obvious 22:07:50 my lecturer was complaining about it last weel 22:07:52 week 22:07:58 rahul: Again, the point is to have several independent but repeatible random sequences. 22:08:09 for those fancy random state generators, genetic algorithms 22:08:23 pkhuong: several? 22:08:28 yes, thousands. 22:08:46 pkhuong: well, I don't think guaqua needs that 22:08:59 others might, sure 22:09:01 Why not? That's the sort of thing I'd want in a simulation, and in a test unit. 22:09:20 I'm just showing how independent substreams are useful in the context you described, a sequence of tests. 22:09:34 he wants a single random set of subgraphs 22:09:49 Sure, but what if the subgraphs are generated dynamically, as the test looks at it, for instance? 22:10:14 that wouldn't make sense 22:10:19 rahul: wtf not? 22:10:24 then you're not comparing all graphs based on the same criteria 22:10:38 Yes: the PRNG is deterministic. 22:10:59 So is the algorithm, so the only reason for a discrepancy is a bug in your algorithm. 22:11:04 no, you're not comparing different graphs based on the same criteria if the criteria depend on the structure of the graph 22:11:20 _sohail_ [n=Sohail@CPE001bfc8b793b-CM000a73a081a5.cpe.net.cable.rogers.com] has joined #lisp 22:11:42 No, they're the same graph if the random state is the same! 22:11:46 -!- _sohail_ [n=Sohail@CPE001bfc8b793b-CM000a73a081a5.cpe.net.cable.rogers.com] has quit [Read error: 54 (Connection reset by peer)] 22:12:04 the graph is the input to the fuction... 22:12:14 rahul: and? 22:12:20 pkhuong: so why would it be the same? 22:12:30 how are you comparing graphs if they're the same? 22:13:00 No, you're comparing the output of your test case on the random graph. 22:13:07 -!- kjbrock [n=kevinbro@173-11-106-193-SFBA.hfc.comcastbusiness.net] has quit [] 22:13:23 eh? 22:13:37 You always get the same random graph, so the result is deterministic. 22:13:50 no, the graph is the input! 22:14:03 And? 22:14:06 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit ["Leaving."] 22:14:07 the randomness is the subgraphs to test 22:14:19 sure. Now I generate the graph on-demand. 22:14:22 and you want to test the sme subgraphs 22:14:34 so? 22:14:42 Sure, and if my algorithm must also look at the same vectices in the same order, I can generate the graph on demand 22:14:53 _sohail_ [n=Sohail@69-165-134-82.dsl.teksavvy.com] has joined #lisp 22:14:54 and the order in which the graph is looked at will influence the resulting graph. 22:14:57 then use a lexical variable that's passed around or a global variable that's private to those functions 22:15:17 That's not the point. The point is that you want independent substreams for each subtest. 22:15:23 -!- _sohail_ [n=Sohail@69-165-134-82.dsl.teksavvy.com] has quit [Connection reset by peer] 22:15:32 pkhuong: he's testing random graphs for goodness? 22:15:36 sure 22:15:44 and those are called random states 22:15:57 is there some quick way to comment out a line in slime? 22:16:02 so you make sure that your random state is your random state 22:16:09 rahul: and if you want another one? 22:16:11 rullie: same as all of emacs: M-; 22:16:18 pkhuong: you make one 22:16:23 Based on what? 22:16:31 pkhuong: the seed you want 22:16:39 whatever constant seed it was 22:16:43 rahul: that puts a comment at the end of the line? 22:16:49 And when I want another independent random test? 22:16:50 i want it at the begining... 22:17:06 rullie: M-x comment- and see which one does what you want 22:17:16 pkhuong: the same... 22:17:31 pkhuong: or you can make a random state and then copy it 22:17:38 rullie: don't you rather want to comment out an expression? 22:17:40 rahul: the same what? How do I get another random state? 22:17:49 pkhuong: make-random-state 22:17:57 rahul: that's not repeatable. 22:18:20 if the seed is the same, it is 22:18:25 so you store that seed somewhere 22:18:26 tcr: yeah, is there a way to do that? 22:18:39 rahul: so you'll store a million seeds for your test case? 22:18:48 or you keep making a copy off a template if you don't want it to be repeatable across lisp sessions 22:18:52 pkhuong: no, one 22:19:08 And how do I get another independent but repeatable test case? 22:19:16 pkhuong: another random seed 22:19:20 rullie: #-(and) in front of the expression 22:19:34 rullie: Or: C-M-SPC M-x comment-region 22:19:36 or, if your test case always gets the same number of random values, keep going off that 22:19:43 it's your call 22:19:57 rahul: right, so now we agree on the importance of reseeding between test cases, at last. 22:20:02 rullie: and yes, lines are usually not what you want to comment 22:20:12 -!- Sumpen [n=Sumpen@78-72-33-106-no46.tbcn.telia.com] has quit [Client Quit] 22:20:15 pkhuong: sure, that's what I asked him first 22:20:25 -!- dstatyvka [i=ejabberd@pepelaz.jabber.od.ua] has left #lisp 22:20:40 [16:57] < rahul> I don't see how re-seeding in the middle of the test to compute the next subgraph will be helpful 22:20:51 pkhuong: that's in the middle of a single test 22:21:00 yes, and each subgraph is a subtest. 22:21:12 pkhuong: and each subgraph better always be the same each time you run the test 22:21:23 tcr rahul thanks 22:21:44 and if each subgraph is the same, it came from the same number of random numbers 22:21:48 rahul: right, and that's why you may want to reseed, to make the state totally independent of the previous state (again, the example of on-demand graph generation). 22:22:21 pkhuong: he's computing a _metric_, not a true/false test 22:22:48 rahul: what's the difference? I'm not just talking about guagua's test case, I asked for users of fresh random states. 22:23:08 dagnachew [n=dagnache@modemcable230.220-179-173.mc.videotron.ca] has joined #lisp 22:23:10 pkhuong: I'm saying that he doesn't need it to be particularly fast 22:23:35 Your first argument was rather that it's not helpful, actually. 22:23:54 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:23:56 please, go on. someone other than rahul this time 22:24:25 In fact, comparisons between metrics on random number sequences is the typical use case for streams and substreams. 22:25:39 -!- cvandusen [n=user@12.185.80.194] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 22:25:47 he's comparing metrics based on random number streams 22:25:52 Using the same random sequence for independent runs of a simulation for different parameters is extremely helpful to reduce variance. 22:26:13 can you recognize all (member ...) type specifiers with subtypep? 22:26:28 I guess no 22:26:31 -!- dlowe [n=dlowe@63.107.91.99] has quit ["Leaving."] 22:26:37 levente_meszaros: they are all subtypes of T... 22:26:50 levente_meszaros: I don't see how. `(member ,@(loop for i from most-negative-fixnum upto most-positive-fixnum collect i)). 22:26:55 heh, that's obviously not what I want 22:27:03 levente_meszaros: since anything can be in a member type specifier 22:27:08 -!- Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has quit [Read error: 113 (No route to host)] 22:27:27 levente_meszaros: what's your use case ? 22:27:28 levente_meszaros: if you're looking for all keywords or all symbols or whatever, that's a different thing, and is application-specific 22:27:54 pkhuong: and his graph will be the same if he seeds once with the same seed at the beginning of generating all those graphs 22:27:55 fe[nl]ix, in the meta gui I'm rewriting the factory 22:28:03 it creates components based on the type 22:28:32 maintains a type precedence list, and the first type that is a supertype of the given type tell which component class to use 22:28:43 levente_meszaros: if you see a member type, maybe you should just pick the first one in the type specifier? 22:28:44 -!- psc_bw [n=psc_bw@vpn.breakwater.com] has quit ["Leaving"] 22:29:03 rahul: again, think of dynamic generation of graphs, or any other way that the use of the PRNG can depend on the consumer of the graph. 22:29:22 kjbrock [n=kevinbro@173-11-106-193-SFBA.hfc.comcastbusiness.net] has joined #lisp 22:29:30 rahul, it just kind of breaks the niceness of this subtypep mechanism 22:29:44 levente_meszaros: you're trying to create a GUI component for inputting something descrbied by a MEMBER type? that's a radio button group or a dropdown list 22:29:59 and for member types you want a combo box 22:30:25 technically, a combo box will accept anything at all 22:30:34 it will just have some suggestions 22:30:42 (like the address bar in your browser) 22:31:00 ok, whatever, you know what I mean 22:31:29 yeah, I said what I think you mean already... 22:32:35 amaron [n=amaron@cable-89-216-181-46.dynamic.sbb.rs] has joined #lisp 22:32:44 pkhuong: but you're computing the same metric on the same subgraph, so one would expect the code to traverse it the same way each time... unless there were heuristics to try to avoid computing metrics based on parts of the subgraph that could be assumed to have negligible impact 22:32:51 Ralith [n=ralith@d142-058-084-202.wireless.sfu.ca] has joined #lisp 22:33:50 rahul: right, but what if there's a bug? Then that wouldn't be the case. 22:34:00 a bug is a bug... 22:34:09 Yes, and that's how you'd detect it. 22:34:33 There's a different value. But with your scheme, as soon as there's a single discrepancy, everything will be different. 22:34:43 -!- morphling [n=stefan@gssn-5f757a37.pool.mediaWays.net] has quit [Remote closed the connection] 22:35:36 dreish [n=dreish@minus.dreish.org] has joined #lisp 22:37:04 Jabberwockey [n=jens@port-91757.pppoe.wtnet.de] has joined #lisp 22:37:35 hmm, maybe I meant to check if the type has a finite number of possible values 22:38:49 rajesh [n=rajesh@nylug/member/rajesh] has joined #lisp 22:39:01 pkhuong: then the bug will be easier to detect :) 22:39:57 hmm and I would obviously need all those values even in the case of (or null (member :a :b)) 22:40:12 -!- dto [n=dto@pool-96-252-62-25.bstnma.fios.verizon.net] has quit [Read error: 113 (No route to host)] 22:40:12 and the example that pkhuong pasted just falls into this category 22:40:17 -!- Paraselene__ [n=None@79-68-173-7.dynamic.dsl.as9105.com] has quit [Success] 22:40:57 schoppenhauer [n=css@unaffiliated/schoppenhauer] has joined #lisp 22:42:09 -!- ziga` [n=ziga`@BSN-143-132-218.dial-up.dsl.siol.net] has quit ["Client Quit"] 22:43:36 -!- nha [n=prefect@31-174.4-85.fix.bluewin.ch] has quit [Remote closed the connection] 22:45:29 jcowan [n=jcowan@72.14.228.129] has joined #lisp 22:49:09 thom_logn [n=thom@pool-173-67-109-95.lsanca.fios.verizon.net] has joined #lisp 22:49:46 CoverSlide [n=richard@71-93-131-69.dhcp.rvsd.ca.charter.com] has joined #lisp 22:52:08 dto [n=dto@pool-96-252-62-25.bstnma.fios.verizon.net] has joined #lisp 22:53:34 ZabaQ [n=johnc@host217-44-146-77.range217-44.btcentralplus.com] has joined #lisp 22:54:22 -!- george_ [n=george@189.107.203.239] has quit [Read error: 60 (Operation timed out)] 22:54:33 -!- pfeyz [n=user@146.95.33.225] has quit [Read error: 110 (Connection timed out)] 22:55:18 -!- Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has quit [Remote closed the connection] 22:55:40 good night 22:55:51 -!- serichsen [n=user@hmbg-4d066af6.pool.mediaWays.net] has quit ["once, upon a midnight dreary"] 22:55:54 -!- marioxcc is now known as marioxcc-AFK 22:56:59 -!- mgr [n=mgr@psychonaut.psychlotron.de] has quit [Read error: 110 (Connection timed out)] 23:02:35 reading code you wrote two years ago really hurts. 23:03:02 ZabaQ: reading code i wrote 5 days ago really hurts :) 23:04:03 -!- tcr [n=tcr@host146.natpool.mwn.de] has quit ["Leaving."] 23:04:21 -!- marioxcc-AFK is now known as marioxcc 23:05:22 the attribute list of a file, the first line in a text file, what is it called in emacs 23:05:24 ? 23:08:20 lispm, maybe local variables? 23:08:34 at least that's what emacs calls them when they're "not safe" 23:08:41 and it asks me whether I want to load them 23:08:55 LiamH [n=nobody@pool-72-75-73-155.washdc.east.verizon.net] has joined #lisp 23:09:17 I have a line with Syntax, Package, Base etc. attributes 23:09:41 I was interested if there is a special syntax description for it somewhere 23:10:18 I think just ;;;; -*- Variable: value; indent-tabs-mode: nil -*- 23:10:23 LispWorks is kind of puzzling, because it wants a semicolon after each attribute, even the last 23:10:24 file local variables 23:10:26 the last one is mandatory 23:10:27 -!- demmeln [n=Adium@dslb-094-216-079-058.pools.arcor-ip.net] has quit ["Leaving."] 23:10:42 if you don't include the last one, Emacs gets sad 23:11:05 and as punishment, it spews The Character Of The Beast all over your files 23:11:09 really? 23:11:23 *Adlai* is kidding, but tabs really do suck 23:12:08 oh, was thinking about a trailing semicolon 23:12:26 oh, I was talking about indent-tabs-mode :) 23:12:35 unfortunately 23:12:40 no, you don't need the semicolon. It's a separator, not a terminator. 23:12:55 that's what I thought 23:13:07 LispWorks should change that 23:13:40 ASau` [n=user@83.69.227.32] has joined #lisp 23:15:30 kpreid [n=kpreid@209-217-212-34.northland.net] has joined #lisp 23:16:37 it's easier to ensure that the format is correct if it's treated as a terminator 23:17:03 but I agree, that sounds annoying 23:19:05 what is best solution for CL web server if i need better performance then hunchentoot ? 23:19:21 i need simple web server, just to serve some simple API 23:20:01 apache is great for static pages... 23:20:08 did you try to improve the performance? 23:20:10 it's not static 23:20:16 i tried with hunchentoot 23:20:22 what is slow? 23:20:28 but with 20+ connections i get timeouts 23:20:48 do you have threading? 23:20:50 yes 23:21:06 dysinger [n=dysinger@cpe-75-85-132-170.hawaii.res.rr.com] has joined #lisp 23:21:10 and hunchentoot is taking all your cpu? 23:21:19 not your functions? 23:21:39 drdo [n=drdo@a89-152-179-186.cpe.netcabo.pt] has joined #lisp 23:21:50 hello 23:21:58 hmm, i tried with simple dynamic page and benchmark with 20+ simultan connections i get couple of socket timeouts 23:22:03 under 20 is ok 23:22:08 and page is simple enough 23:22:21 but it's dynamic 23:22:21 -!- CoverSlide [n=richard@71-93-131-69.dhcp.rvsd.ca.charter.com] has quit ["leaving"] 23:22:24 OmniMancer [n=OmniManc@122-57-16-129.jetstream.xtra.co.nz] has joined #lisp 23:22:32 maybe it is your page genaration code that is.. not so fast? 23:22:37 is there a way to have two nested loops in one LOOP ? 23:22:46 milanj: so which function is hogging the cpu? 23:22:49 drdo: no 23:22:50 -!- pavelludiq [n=quassel@83.222.175.184] has quit [Read error: 131 (Connection reset by peer)] 23:22:50 -!- Ralith [n=ralith@d142-058-084-202.wireless.sfu.ca] has quit [Read error: 60 (Operation timed out)] 23:22:52 drdo: no 23:22:57 drdo: well, kind of 23:23:01 you see 23:23:11 milanj: I guess it is the backlog TCP parameter 23:23:12 (loop for x = 0 then (if 23:23:15 (loop doing (loop .. ? ))) :P 23:23:28 i wanted to iterate i from 0 to n and j from 0 to m 23:23:32 for each i 23:23:37 -!- jleija [n=jleija@user-24-214-122-46.knology.net] has quit ["leaving"] 23:23:41 any way to do that in one LOOP? 23:23:47 sure 23:24:00 how? 23:24:02 milanj: the web server needs to set it if it listens to connections 23:24:12 i didnt debug, just wanted to ask for some light solution (lighter than htoot) 23:24:16 (loop for x = 0 then (if (= y max) (1+ x)) for y = 1 then (if (= y max) 0 (1+ y)) until (= x max) ...) 23:24:27 -_- 23:24:33 milanj: it is a parameter change 23:24:38 i obviously meant an elegant way 23:24:39 drdo: (loop for i from 0 to 10 for j from 2 to 10 doing .... ) 23:24:55 drdo, do you want the loops nested or in parallel? 23:25:00 drdo: so you obviously mean you want nested loops 23:25:02 schme, doesn't that iterate that in parallel? 23:25:03 well or from 0 to n and from 0 to m 23:25:21 i want nested 23:25:22 drdo: Is than not what you wanted? 23:25:26 nop 23:25:29 i from 0 to n and j from 0 to m ? 23:25:42 yes, but j from 0 to m for each i 23:25:48 not independently 23:25:49 oh ok 23:25:52 (dotimes (i n) (loop for j from 0 to m do (frob stuff))) 23:26:02 (loop for i from 0 to n doing (loop for j from 0 to m doing ... ))) :P 23:26:10 yeah well, that's the obvious way :P 23:26:14 I unbalance my paranthesis. 23:26:17 -!- dang` [n=daniel@S0106001a704b7fbe.cg.shawcable.net] has left #lisp 23:26:26 but loop does everything so i was just asking if there was a nice way to do this 23:26:31 thanks guys 23:26:34 well, do you want something that's not obvious to the reader? 23:26:42 no, loop loops 23:27:02 rahul: i just don't know the CL spec all that wel 23:27:05 ªwell 23:27:08 There could be a way 23:27:21 drdo: what are you trying to do? 23:27:26 if you really want some way you could .. make a way 23:27:31 a very simple nested loop 23:27:35 just what i said 23:27:44 drdo: then do it simply 23:27:47 drdo: you have to write two loops 23:27:50 -!- _3b [i=foobar@cpe-70-112-214-100.austin.res.rr.com] has quit [sendak.freenode.net irc.freenode.net] 23:27:57 if you want something complicated, then it's a different story 23:28:07 nah i just want something simple 23:28:13 the simple way to nest loops is to nest them :P 23:28:16 was just asking if LOOP had support for nested loops 23:28:25 it doesn't 23:28:28 yes, you nest a loop in the loop 23:28:31 drdo: NNOOOOOOOOOOOOO 23:28:41 rahul: yes, we've reached that 23:28:47 -!- trebor_dki [n=user@mail.dki.tu-darmstadt.de] has quit [No route to host] 23:28:55 yes, we have 23:29:09 there's always iterate :-) 23:29:09 I can't even start to imagine some nicer syntax then actually.. nesting :P 23:29:19 there ARE ways to write nested loops without nesting forms 23:29:24 drdo, I don't even know if any language lets you do that 23:29:46 (without rahul's trick) 23:29:51 ok, ok, you can quit beating on me :P 23:29:52 -!- marioxcc is now known as marioxcc-AFK 23:29:55 i'm nesting it 23:30:00 Adlai: APL 23:30:08 schme: (dolist-nested ((i '(a b c)) (j '(1 2 3)) 23:30:15 btw, does anyone use aquamacs? 23:30:20 ok, true 23:30:20 you can us go and goto as well 23:30:25 rahul: I don't really find that nicer :) 23:30:28 ah even if you do you probably don't have the same issue 23:30:37 portuguese keyboard AltGr problem 23:30:48 schme: it can be nicer if you have lots of nesting of the same kind of iteration 23:30:58 rahul: ok :) 23:31:02 drdo: remap it (: 23:31:08 -!- ASau [n=user@83.69.227.32] has quit [No route to host] 23:31:12 It's a modifier 23:31:17 schme: I've used it for unit testing, for example 23:31:18 so remap it 23:31:31 to test all combinations of the edge cases 23:31:35 i use it to insert chars like (at) 23:31:51 rahul: I see 23:32:09 that could be nicer than (loop doing (loop doing (loop doing (loop )))))) I guess (: 23:32:22 yep :) 23:32:53 there really should be some sort of paredit for #lisp 23:33:03 smileys would be troublesome 23:33:37 arrgh! 23:33:39 we'd need some people who do smileys one way and some who do them the other way online at all times 23:33:47 drdo: I use meta+ german 23:33:51 (defstruct (try-me (:type vector)) (x 0.0) (y 0.0) (z 0.0)) 23:33:57 (make-array 4 :element-type 'try-me) 23:34:10 #(NIL NIL NIL NIL) 23:34:15 . . . 23:34:15 drdo: under >options>option key> 23:34:21 ZabaQ: you expected something else? 23:34:28 lispm: under? 23:34:39 I'm new to OS X, bought a macbook yesterday 23:34:43 aquamacs, menubar 23:34:43 ZabaQ: I get #(0 0 0 0), but oh well 23:34:45 ZabaQ: There is no guarantee that the element type you ask for is the element type you get. 23:34:45 mostly used gnu/linux 23:34:54 ZabaQ: #(0 0 0 0) is what I would expect 23:34:54 menubar>option>option key> 23:35:20 mostly because it's easier on some platforms to zero out memory rather than fill it with nils 23:35:23 jcowan: it figures 23:35:27 schme: We need a powerloop extension to MIT loop (: 23:35:35 rahul, some don't do any initialization at all 23:35:37 and 00 is usually the lowtag for fixnums 23:35:45 lispm: thanks a lot, set it to standard mac characters and it's fine now 23:35:47 In this case the requested type is probably being widened to T. 23:35:54 Adlai: I'm not sure that's legal, as it could cause crashes 23:35:57 ZabaQ: it's explicitly undefined, since you didn't specify any initialisation. 23:36:01 _3b [i=foobar@cpe-70-112-214-100.austin.res.rr.com] has joined #lisp 23:36:11 rahul, "consequences undefined" 23:36:17 pkhuong: uhm.. yeeees.. ok. I've never but. ok. Yeah. with nested loops. 23:36:24 maybe a powerformat too while we're at it 23:36:28 Adlai: yeah, but then using make-array at the REPL is undefined... 23:36:47 I guess it's a quality of implementation issue 23:37:02 schme: ~V kind of takes care of that 23:37:03 now i remember i must install fink to install clisp 23:37:04 pkhuong: I have to do that with :initial-contents, right? 23:37:06 schme: That's a PLT term. for instance. 23:37:11 ZabaQ: or initial-element. 23:37:18 ZabaQ: or map 23:37:20 ASau`` [n=user@83.69.227.32] has joined #lisp 23:38:08 pfft darned thing wants me to log in 23:38:20 pkhuong: full-text available? 23:38:58 -!- carlocci [n=nes@93.37.215.31] has quit ["eventually IE will rot and die"] 23:39:01 schme: basically, in addition to iterating over something, you get to specify recursion over a fresh thing to iterate over. 23:39:07 -!- slash_ [n=Unknown@whgeh0250.cip.uni-regensburg.de] has quit [Client Quit] 23:39:14 ooh 23:39:26 -!- ASau` [n=user@83.69.227.32] has quit [Read error: 60 (Operation timed out)] 23:39:43 (loop for i below 10 nest for j below 10 23:39:52 Hrrm seems I need some membership number for creating an account. :( 23:40:09 rahul: better, because the nesting depth is programmatic. 23:40:16 nest would just be a conjunction like and, but would start nesting at that point instead of parallel iteration 23:40:18 you'll need to pay for hat 23:40:29 francogrex: not bloddy likely I will :) 23:40:33 bloody even 23:40:50 I won't. My company pays but not for those technical journals 23:40:57 -!- dmiles_afk [n=dmiles@c-76-104-220-73.hsd1.wa.comcast.net] has quit [No route to host] 23:41:13 pkhuong: ok, dynamic call to a (nest) function kind of thing... 23:41:21 yeees.. sadly I have no access to TECHNICAL journals :) 23:41:23 rahul: right. 23:41:39 seriously, why doesn't emacs indent LOOP properly? 23:41:50 drdo: define properly 23:41:57 drdo: define emacs also. 23:42:02 (loop foo 23:42:08 bar 23:42:13 bar should be aligned with foo 23:42:37 rahul: gnu emacs 23:42:57 what did you do to make it not aligned? 23:43:17 what packages and all that. I like how it works here with SLIME from october and cl-indent (?). 23:43:18 oh, I see, you're not going to the next line after loop 23:43:45 -!- tobetchi [n=tobetchi@p296ba7.sagant01.ap.so-net.ne.jp] has quit [Remote closed the connection] 23:43:51 rahul: nothing, it's the default 23:43:52 -!- levente_meszaros [n=levente_@apn-94-44-14-25.vodafone.hu] has quit [Read error: 110 (Connection timed out)] 23:43:59 -!- mrSpec [n=Spec@unaffiliated/mrspec] has quit [Read error: 110 (Connection timed out)] 23:44:10 i find that leaving loop on a line by itself doesn't add anything to readability and makes the code bigger and uglier 23:44:25 drdo, so write a macro 23:44:38 a macro to fix emacs's indentation? 23:44:39 *fatalnix1995_* is just learning about macro's 23:44:41 Adlai: this is about indentation, not syntax 23:44:43 -!- fatalnix1995_ is now known as fatalnix1995 23:44:53 pfff 23:44:59 drdo: shrug, I don't use loop often enough to care 23:45:05 sometimes I use citeseer to get free articles 23:45:21 -!- milanj [n=milan@109.93.62.68] has quit ["Leaving"] 23:47:29 Adamant [n=Adamant@unaffiliated/adamant] has joined #lisp 23:51:41 Athas [n=athas@0x50a157d6.alb2nxx15.dynamic.dsl.tele.dk] has joined #lisp 23:53:02 mrSpec [n=Spec@unaffiliated/mrspec] has joined #lisp 23:53:40 -!- marioxcc-AFK is now known as marioxcc 23:53:45 lemonodor [n=lemonodo@144.198.182.10] has joined #lisp 23:54:17 Yawn, up from knap. Nice thing about #lisp is that unless SBCL has a new release or something, mostly people will be reliably kvetching about loop or series;-) 23:55:22 I could kvetch about the lousy CLOS method ordering and selection algorithm instead, if you like. 23:55:40 That's a actually interesting!!!! 23:56:03 I read kvetch as complaining. 23:56:19 Seems to me we're all loving LOOP, so not really kvetching ? 23:57:24 drdo, loop is very cool but it's syntax is somehow "not in the spirit of the rest of CL" somehow. 23:57:37 What is the spirit of CL anyway? 23:57:44 pkhuong: wait... how does powerloop define a new variable at run time for the nested loop? 23:58:08 Depending on how one uses the clauses, their length, order and so on, I can imagine a formatter just not being able to "get it right" all the time. 23:58:15 Summermute: The trouble is that even if (as in ISLISP) you have complete and static information about subclass relationships, you still cannot statically decide what the ordering of methods is. 23:58:17 Summermute: it's in the spirit of the syntax of tagbody, at least 23:58:18 Novel Architecture for Loop Acceleration : A Case Study (Seng Lin Sheey, Sri Parameswarany, Newton Cheungz) 23:58:28 seems good 23:58:29 rahul: with arguments? It's just sugar for a recursive call. 23:58:46 pkhuong: so the nested loop shadows the old one 23:58:55 The spirit visits me on holidays and beats me with old Symbolics manuals. 23:59:18 Summermute: that's the spirit of lisps present 23:59:18 -!- davazp [n=user@156.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 23:59:26 Summermute: you sure you're not just spending your holidays at some bizarre kinkyfest? :) 23:59:30 rahul: sure; either use the return value or store values in a sequence. 23:59:36 the spirit of lisps past beats you with old LISP 1.5 manuals 23:59:43 pkhuong: lame :(