00:02:37 lisp handles YOU 00:02:45 pizzledizzle [~pizdets@pool-96-250-220-99.nycmny.fios.verizon.net] has joined #lisp 00:04:06 in Soviet Russia, lisp handles YOU (by doing a non-local exit) :) 00:05:16 what a country! 00:06:13 -!- syrinx_ [~syrinx_@unaffiliated/syrinx-/x-4255893] has quit [Ping timeout: 240 seconds] 00:08:55 syrinx_ [~syrinx_@unaffiliated/syrinx-/x-4255893] has joined #lisp 00:10:42 -!- Saeren [~saeren@208.86.225.194] has quit [Quit: leaving] 00:11:16 Saeren [~saeren@mail.skepsi.net] has joined #lisp 00:14:07 Xach: Do you expect to give some feedback on fate of tips (accepted or rejected) or it's just "wait a few weeks and if it's not published then it was likely rejected"? 00:14:23 frozencemetery [~frozencem@128.237.114.120] has joined #lisp 00:18:01 -!- tsuru` [~user@c-68-53-57-241.hsd1.tn.comcast.net] has quit [Ping timeout: 252 seconds] 00:19:18 -!- xcv [~xcv@dsl-225-28.hive.is] has quit [Remote host closed the connection] 00:22:37 -!- littlegiraffe [~littlegir@poco208-2.fredcanhelp.com] has quit [Quit: leaving] 00:22:50 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 255 seconds] 00:23:00 I added (local-set-key (kbd "RET") 'electrify-return-if-match) to my lisp-mode-hook, but RET doesn't seem to be indenting as it should. It works if I do M-x electrify-return-if-match manually (that is, it'll return and indent). I'm using GNU Emacs 23.3.1 (powerpc-apple-darwin, NS apple-appkit-1038.35) 00:23:20 Does anyone have any ideas? 00:23:51 Quadrescence: C-h k 00:25:26 https://gist.github.com/0d7460010b2f7521e746 I messed around with slime-search-buffer-package and I haven't been able to get it to match multiple possibilities. The regex seems to match when I use the regexp-builder, but it doesn't seem to in practice (M-. and C-c C-k don't use the right package). 00:25:46 Hexstream: Not sure. 00:26:08 gienah [~mwright@ppp121-44-70-112.lns20.syd6.internode.on.net] has joined #lisp 00:26:27 akovalenko: It says it "runs the command newline" 00:27:14 hm, it seems when I add it to my slime-mode-hook, it works. 00:27:34 -!- Quadrescence [~quad@unaffiliated/quadrescence] has quit [Quit: bonk] 00:27:52 Quadrescence [~quad@unaffiliated/quadrescence] has joined #lisp 00:27:52 Quadrescence: you need (define-key slime-mode-map (kbd...) ...) 00:28:08 Quadrescence: or something like that 00:28:20 -!- Beetny [~Beetny@ppp118-208-23-85.lns20.bne1.internode.on.net] has quit [Ping timeout: 244 seconds] 00:29:15 local-set-key does it for current major mode, so it's not easy to get something useful from it at all (unless you use M-:) 00:31:04 argh, rebuilt ccl android-arm kernel only to have it say "Heap image is too old for this kernel." 00:32:24 -!- mcsontos [~mcsontos@hotspot8.rywasoft.net] has quit [Quit: Leaving] 00:34:43 trying to bootstrap, "Illegal instruction" 00:34:56 *stassats* isn't particularly happy 00:35:31 Hexstream: it seems that you can't have a correct result from match-string-no-properties, if you combine regexps this way 00:35:56 ??? 00:36:10 akovalenko: was that directed at me? 00:36:10 Hexstream: matches are enumerated according to a left parenthesis location 00:36:20 sykopomp: sorry, yep 00:37:45 I'm not sure why the left parentheses are stopping the matches from working. 00:37:48 sykopomp: .. so what was 2nd match in original regexp, would be seen as (2+???)-th match for other "\\|-branches" 00:38:24 sykopomp: yet when the function returns, it expects it to be the 2nd subexpression 00:38:30 -!- dsevilla [532b4be7@gateway/web/freenode/ip.83.43.75.231] has quit [Quit: Page closed] 00:38:49 ahh, so this is just adding more match expressions 00:39:07 I think I get it. 00:39:23 -!- cheezus [~Adium@75-144-26-36-sfba-ca.hfc.comcastbusiness.net] has quit [Quit: Leaving.] 00:39:31 sykopomp: not sure what it returns for unmatched subexpressions, but if it's NIL, then (or (match-string-no-properties 2) (match-string-no-properties ...)) 00:39:42 -!- dto [~dto@pool-96-252-89-130.bstnma.fios.verizon.net] has quit [Remote host closed the connection] 00:40:23 pnq [~nick@ACA27E9E.ipt.aol.com] has joined #lisp 00:41:35 sykopomp: (some 'match-string-no-properties '(2 5 8)) 00:41:58 akovalenko: that did the trick ^_^ 00:42:47 sykopomp: if you add the (some...)-variant to init file, (require 'cl-extra) 00:43:02 akovalenko: thanks a bunch. :) 00:43:25 -!- zmv [~daniel@c953332e.virtua.com.br] has quit [Ping timeout: 240 seconds] 00:43:29 sykopomp: oh not, don't require cl-extra, only 'cl 00:43:42 it's autoloaded.. 00:44:47 Ah, I already have 'cl required. Guess that's why it didn't blow up :) 00:46:09 oh, it's the mailman day 00:48:17 -!- rme [~rme@50.43.156.82] has quit [Quit: rme] 00:50:39 cheezus [~Adium@75-144-26-36-sfba-ca.hfc.comcastbusiness.net] has joined #lisp 00:50:40 drewc [~user@PC687f74269abb-WM0003D709793f.wbb.net.cable.rogers.com] has joined #lisp 00:51:37 -!- cheezus [~Adium@75-144-26-36-sfba-ca.hfc.comcastbusiness.net] has quit [Client Quit] 00:53:24 -!- mutenewt [~mutenewt@c-65-96-210-138.hsd1.ma.comcast.net] has quit [Read error: Connection reset by peer] 00:55:48 -!- ISF [~ivan@143.106.196.39] has quit [Read error: Operation timed out] 00:56:49 ISF [~ivan@143.106.196.39] has joined #lisp 00:59:02 -!- dwim [~dwim@170.Red-79-156-37.staticIP.rima-tde.net] has quit [Quit: dwim] 01:00:15 -!- lurker-x [~androirc@32.150.100.247] has quit [Remote host closed the connection] 01:00:40 lurker-x [~androirc@c-75-72-88-197.hsd1.mn.comcast.net] has joined #lisp 01:01:08 -!- SegFaultAX [~mkbernard@173.228.45.162] has quit [Remote host closed the connection] 01:01:16 rme [~rme@50.43.156.82] has joined #lisp 01:03:25 -!- hargettp [~hargettp@pool-71-184-177-82.bstnma.east.verizon.net] has quit [Quit: Leaving...] 01:05:17 -!- akovalenko [~user@95.72.99.146] has quit [Quit: for ~48 hours or so] 01:06:23 -!- ISF [~ivan@143.106.196.39] has quit [Ping timeout: 260 seconds] 01:06:31 *|3b|* wonders what the odd are my random slime hacks would survive being submitted upstream... maintaining forks is annoying :/ 01:06:59 that depends on how cool they are 01:07:14 -!- Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has left #lisp 01:08:30 <|3b|> https://github.com/3b/slime/commit/a2517b8c88d0fa45c55a2eca8edbbd2752d13862 and the commit before that i think are the main ones 01:08:47 -!- tsanhwa [~user@2001:da8:8001:240:4849:43ff:fe49:79bf] has quit [Remote host closed the connection] 01:09:12 <|3b|> (also a bug fix a few minutes ago, which i suppose would be a more reasonable candidate for merging) 01:10:21 but c-p-c is totally uncool! 01:10:35 <|3b|> c-p-c ? 01:11:00 compound completion 01:11:06 <|3b|> ah, which would be cooler? 01:11:12 fuzzy completion 01:11:30 *|3b|* should probably try that then 01:11:39 the only feature of c-p-c which fuzzy doesn't have is contextual completion 01:12:08 though c-p-c's contextual completion doesn't know many context 01:12:24 only function keywords and character names 01:12:30 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 01:12:35 *|3b|* likes the bit about knowing keywords 01:13:07 -!- Bike [~Glossina@71-214-109-104.ptld.qwest.net] has quit [Quit: Leaving.] 01:13:09 somebody should totally add that feature to slime-fuzzy 01:13:17 Bike [~Glossina@71-214-109-104.ptld.qwest.net] has joined #lisp 01:14:44 jsn` [~user@c-98-225-158-149.hsd1.pa.comcast.net] has joined #lisp 01:15:03 that should happen right after i understand how slime-fuzzy works 01:15:18 -!- urandom__ [~user@p548A46D0.dip.t-dialin.net] has quit [Remote host closed the connection] 01:15:19 zmv [~daniel@c953332e.virtua.com.br] has joined #lisp 01:15:50 cheezus [~Adium@75-144-26-36-sfba-ca.hfc.comcastbusiness.net] has joined #lisp 01:16:47 jsn`` [~user@c-98-225-158-149.hsd1.pa.comcast.net] has joined #lisp 01:16:55 -!- jsn` [~user@c-98-225-158-149.hsd1.pa.comcast.net] has quit [Read error: Connection reset by peer] 01:17:25 -!- jsn [~user@c-98-225-158-149.hsd1.pa.comcast.net] has quit [Ping timeout: 252 seconds] 01:18:22 |3b|: why do you guard xref against conses? 01:18:45 <|3b|> so M-? (setf foo) doesn't error 01:19:02 <|3b|> (setf foo) not being a valid asdf system name or something like that 01:21:00 how is it supposed to work on systems at all? 01:21:33 *|3b|* has no idea how things are /supposed/ to work, just that when i tried to do that, it broke there, so i added a check 01:22:23 -!- Vivitron [~user@pool-108-7-56-243.bstnma.fios.verizon.net] has quit [Ping timeout: 248 seconds] 01:22:46 slime-edit-uses calls xref on :calls :macroexpands :binds :references :sets :specializes 01:22:50 <|3b|> M-? does seem to list asdf deps when used on a symbol that names a system 01:23:01 how depends-on fits into the picture, i don't see 01:23:24 <|3b|> possibly specific to the swank-asdf contrib? 01:24:08 -!- timack [~timack@hlfx57-1-57.ns.sympatico.ca] has quit [Ping timeout: 244 seconds] 01:24:48 slime-edit-uses is "Lookup all the uses of SYMBOL.", asdf systems doesn't really use symbols in the same way as aforementioned things do 01:25:01 where's tcr when you need him? 01:25:19 <|3b|> M-? on a system name goes to asd files that :depends-on that system 01:25:27 <|3b|> looks like it works on strings or symbols 01:25:54 yes, it works, but it doesn't logically fit into how slime-edit-uses works otherwise 01:26:10 timack [~timack@hlfx62-1-68.ns.sympatico.ca] has joined #lisp 01:26:39 *|3b|* has no opinion on that part 01:26:47 it'll fail on '1' too 01:27:40 well, alright, who cares about consistency (in slime especially), i'll apply it 01:28:25 <|3b|> yeah, might be better to test for a symbol or string than not consp 01:28:50 <|3b|> not that it seems too likely there would be any other xref info for numbers :) 01:29:06 *|3b|* supposes there are other atoms that might though 01:31:40 <|3b|> actually, i guess 'not erroring' is the important part, not whether there is useful info or not 01:32:18 yes, that's how i looked at it 01:34:47 simplechat [~simplecha@unaffiliated/simplechat] has joined #lisp 01:35:59 committed 01:39:16 -!- pinterface [~pinterfac@173-20-55-85.client.mchsi.com] has quit [Ping timeout: 258 seconds] 01:41:42 <|3b|> looks like fuzzy completion doesn't work with local nicknames either though :p 01:42:12 ah, yeah, i remember encountering that 01:42:37 well, it works with nicknames, but it displays the original package 01:43:04 -!- cheezus [~Adium@75-144-26-36-sfba-ca.hfc.comcastbusiness.net] has quit [Quit: Leaving.] 01:44:37 or i'm thinking about something else 01:44:41 <|3b|> looks like it does normal nicknames reasonably 01:44:48 what's a local nickname? 01:45:31 <|3b|> https://github.com/3b/package-local-nicknames 01:46:45 -!- rtoym [~chatzilla@c-67-180-54-112.hsd1.ca.comcast.net] has quit [Ping timeout: 252 seconds] 01:47:02 how does it work? 01:47:12 <|3b|> probably only used by me at this point, since i still haven't gotten around to specifying behavior enough to try to make it an sbcl contrib :/ 01:47:31 <|3b|> 'work' as in usage or implementation? 01:47:36 implementation 01:48:51 ok, i see, it redefines find-package 01:48:58 i thought it was using some clever trick 01:49:09 <|3b|> yeah, just a hack for the moment 01:50:00 <|3b|> though i guess the non-hack version would probably just redefine find-package as well, it would just do it more officially 01:52:24 *|3b|* supposes it shouldn't point to CLHS when complaining about changes in the list of local nicknames for a package 01:53:22 rtoym [~chatzilla@c-67-180-54-112.hsd1.ca.comcast.net] has joined #lisp 01:53:30 <|3b|> not that i have any idea where that actually happens anymore 01:53:46 dmiles_afk [~dmiles@66-87-13-104.pools.spcsdns.net] has joined #lisp 01:55:33 -!- Modius [~Modius@cpe-70-123-140-183.austin.res.rr.com] has quit [Quit: "Object-oriented design" is an oxymoron] 01:56:30 topo [~topo@f053034030.adsl.alicedsl.de] has joined #lisp 01:58:39 -!- topoboto [~topo@f053042193.adsl.alicedsl.de] has quit [Ping timeout: 248 seconds] 02:03:08 neoesque [~neoesque@210.59.147.226] has joined #lisp 02:08:43 oconnore [~Eric@75-150-66-254-NewEngland.hfc.comcastbusiness.net] has joined #lisp 02:09:15 vjacob [~vjacob@78-105-184-157.zone3.bethere.co.uk] has joined #lisp 02:09:39 -!- vjacob [~vjacob@78-105-184-157.zone3.bethere.co.uk] has quit [Client Quit] 02:10:14 |3b|: Xof has some over-arching plan involving subclassable structs. 02:10:20 -!- pnq [~nick@ACA27E9E.ipt.aol.com] has quit [Ping timeout: 260 seconds] 02:14:40 duomo [~duomo@cpe-69-204-169-245.nycap.res.rr.com] has joined #lisp 02:17:42 -!- frozencemetery [~frozencem@128.237.114.120] has quit [Quit: Leaving.] 02:18:46 Phoodus [~foo@68.107.217.139] has joined #lisp 02:22:07 -!- Yuuhi [benni@p5483D3D6.dip.t-dialin.net] has quit [Ping timeout: 248 seconds] 02:22:16 -!- amnesiac [~amnesiac@p3m/member/Amnesiac] has quit [Quit: Leaving] 02:23:39 Phooodus [~foo@68.107.217.139] has joined #lisp 02:25:39 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 258 seconds] 02:30:09 Vivitron [~user@pool-108-7-56-243.bstnma.fios.verizon.net] has joined #lisp 02:30:11 b 02:31:00 -!- dmiles_afk [~dmiles@66-87-13-104.pools.spcsdns.net] has quit [Remote host closed the connection] 02:33:13 -!- blackwol` [~blackwolf@ool-43568cfa.dyn.optonline.net] has quit [Remote host closed the connection] 02:33:22 yay, /me fixed a long-standing bug of fuzzy-complete in a minibuffer 02:33:31 -!- deke [~deke@fl-71-54-184-132.dhcp.embarqhsd.net] has left #lisp 02:33:33 -!- Phooodus [~foo@68.107.217.139] has quit [Ping timeout: 252 seconds] 02:33:37 genieliu [~genieliu@59.78.62.120] has joined #lisp 02:33:54 Phoodus [~foo@68.107.217.139] has joined #lisp 02:34:16 SpringheeledJake [~Spring-he@116.sub-75-204-136.myvzw.com] has joined #lisp 02:34:26 realitygrill [~realitygr@adsl-76-226-139-190.dsl.sfldmi.sbcglobal.net] has joined #lisp 02:35:27 -!- oconnore [~Eric@75-150-66-254-NewEngland.hfc.comcastbusiness.net] has quit [Quit: Leaving.] 02:36:44 dmiles_afk [~dmiles@66-87-13-104.pools.spcsdns.net] has joined #lisp 02:38:09 -!- genieliu [~genieliu@59.78.62.120] has left #lisp 02:38:40 -!- SpringheeledJake [~Spring-he@116.sub-75-204-136.myvzw.com] has quit [Client Quit] 02:38:45 SpringheeledJake [~Spring-he@116.sub-75-204-136.myvzw.com] has joined #lisp 02:39:02 scombinator [~user@121.98.92.184] has joined #lisp 02:39:12 hey everyone 02:39:40 could someone help me with a format directive? 02:40:31 I have (format str "{~{~{~:I~S = ~S~}~^~_~}}" list-of-lists) 02:40:57 but ~:I is giving me a deeper indentation than I want 02:41:49 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 240 seconds] 02:43:12 -!- SpringheeledJake [~Spring-he@116.sub-75-204-136.myvzw.com] has quit [Ping timeout: 260 seconds] 02:43:35 SpringheeledJake [~Spring-he@30.sub-75-202-116.myvzw.com] has joined #lisp 02:45:36 -!- gffa [~gffa@unaffiliated/gffa] has quit [Quit: sleep] 02:47:18 -!- SpringheeledJake [~Spring-he@30.sub-75-202-116.myvzw.com] has quit [Remote host closed the connection] 02:49:00 frozencemetery [~frozencem@128.237.114.120] has joined #lisp 02:50:00 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 260 seconds] 02:50:19 Phoodus [~foo@68.107.217.139] has joined #lisp 02:52:14 -!- Mococa [~Mococa@189.115.146.181] has quit [Remote host closed the connection] 02:54:55 ISF [~ivan@201.82.136.131] has joined #lisp 02:55:57 -!- scombinator [~user@121.98.92.184] has left #lisp 02:56:11 Phooodus [~foo@68.107.217.139] has joined #lisp 02:56:53 gko [~gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 02:59:25 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 258 seconds] 03:00:51 -!- Phooodus [~foo@68.107.217.139] has quit [Ping timeout: 256 seconds] 03:01:08 Phoodus [~foo@68.107.217.139] has joined #lisp 03:01:49 -!- timack [~timack@hlfx62-1-68.ns.sympatico.ca] has quit [Quit: leaving] 03:04:22 Phooodus [~foo@68.107.217.139] has joined #lisp 03:05:19 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 248 seconds] 03:07:06 gcentaur1 [~gcentauri@76-85-193-191.cable.inebraska.com] has joined #lisp 03:08:53 -!- Phooodus [~foo@68.107.217.139] has quit [Ping timeout: 252 seconds] 03:09:12 Phoodus [~foo@68.107.217.139] has joined #lisp 03:10:28 pinterface [~pinterfac@173-20-55-85.client.mchsi.com] has joined #lisp 03:10:34 -!- gcentauri [~gcentauri@76-85-193-191.cable.inebraska.com] has quit [Ping timeout: 244 seconds] 03:13:39 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 252 seconds] 03:13:57 Phoodus [~foo@68.107.217.139] has joined #lisp 03:17:37 -!- gaidal [~gaidal@58.62.105.9] has quit [Ping timeout: 260 seconds] 03:18:25 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 252 seconds] 03:18:47 Phoodus [~foo@68.107.217.139] has joined #lisp 03:18:53 -!- anvandare [~anvandare@78-21-55-92.access.telenet.be] has quit [Read error: Operation timed out] 03:19:35 -!- dmiles_afk [~dmiles@66-87-13-104.pools.spcsdns.net] has quit [Read error: Connection reset by peer] 03:20:13 -!- pinterface [~pinterfac@173-20-55-85.client.mchsi.com] has quit [Ping timeout: 240 seconds] 03:20:17 dmiles_afk [~dmiles@66-87-13-104.pools.spcsdns.net] has joined #lisp 03:21:19 gaidal [~gaidal@58.62.105.9] has joined #lisp 03:23:11 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 252 seconds] 03:26:29 austinh [~austinh@c-67-189-92-40.hsd1.or.comcast.net] has joined #lisp 03:31:45 -!- dmiles_afk [~dmiles@66-87-13-104.pools.spcsdns.net] has quit [Remote host closed the connection] 03:35:13 dmiles_afk [~dmiles@66-87-13-104.pools.spcsdns.net] has joined #lisp 03:35:43 Beetny [~Beetny@ppp118-208-23-85.lns20.bne1.internode.on.net] has joined #lisp 03:37:12 oconnore [~Eric@c-66-31-125-56.hsd1.ma.comcast.net] has joined #lisp 03:37:22 hargettp [~hargettp@pool-71-184-177-82.bstnma.east.verizon.net] has joined #lisp 03:43:00 -!- coyo [~unf@unaffiliated/bandu] has quit [Quit: I need my meds... >.<] 03:47:21 daniel__ [~daniel@p5B326781.dip.t-dialin.net] has joined #lisp 03:48:47 realitygrill_ [~realitygr@adsl-76-226-134-251.dsl.sfldmi.sbcglobal.net] has joined #lisp 03:48:55 -!- dmiles_afk [~dmiles@66-87-13-104.pools.spcsdns.net] has quit [Ping timeout: 252 seconds] 03:49:03 -!- realitygrill [~realitygr@adsl-76-226-139-190.dsl.sfldmi.sbcglobal.net] has quit [Ping timeout: 248 seconds] 03:49:03 -!- realitygrill_ is now known as realitygrill 03:49:08 -!- daniel__1 [~daniel@p5B3261E1.dip.t-dialin.net] has quit [Ping timeout: 245 seconds] 03:51:01 -!- otwieracz [~gonet9@v6.gen2.org] has quit [Ping timeout: 240 seconds] 03:51:03 -!- Beetny [~Beetny@ppp118-208-23-85.lns20.bne1.internode.on.net] has quit [Ping timeout: 260 seconds] 03:51:11 -!- alvis [~alvis@tx-71-2-126-82.dhcp.embarqhsd.net] has quit [Ping timeout: 248 seconds] 03:51:35 otwieracz [~gonet9@v6.gen2.org] has joined #lisp 03:51:59 -!- bgs100 [~ian@unaffiliated/bgs100] has quit [Quit: 1733] 03:54:48 kpavn [~kpavn@77.41.103.59] has joined #lisp 03:59:43 -!- hargettp [~hargettp@pool-71-184-177-82.bstnma.east.verizon.net] has quit [Ping timeout: 248 seconds] 04:01:36 -!- gcentaur1 [~gcentauri@76-85-193-191.cable.inebraska.com] has quit [Ping timeout: 255 seconds] 04:02:23 -!- pizzledizzle [~pizdets@pool-96-250-220-99.nycmny.fios.verizon.net] has quit [Ping timeout: 248 seconds] 04:08:36 gcentauri [~gcentauri@76-85-193-191.cable.inebraska.com] has joined #lisp 04:11:58 -!- kennyd [~kennyd@93-136-110-42.adsl.net.t-com.hr] has quit [Ping timeout: 260 seconds] 04:13:14 kennyd [~kennyd@93-141-21-243.adsl.net.t-com.hr] has joined #lisp 04:16:38 -!- Vutral [~ss@vutral.net] has quit [Excess Flood] 04:18:06 Vutral [~ss@vutral.net] has joined #lisp 04:18:38 pinterface [~pinterfac@173-20-55-85.client.mchsi.com] has joined #lisp 04:26:54 -!- ChibaPet [~mason@c-68-58-147-105.hsd1.in.comcast.net] has quit [Quit: Leaving.] 04:38:10 drdo [~drdo@91.205.108.93.rev.vodafone.pt] has joined #lisp 04:39:14 -!- Vivitron [~user@pool-108-7-56-243.bstnma.fios.verizon.net] has quit [Remote host closed the connection] 04:39:42 -!- frozencemetery [~frozencem@128.237.114.120] has quit [Quit: Leaving.] 04:40:11 ignas [~ignas@ctv-79-132-160-221.vinita.lt] has joined #lisp 04:42:39 -!- oconnore [~Eric@c-66-31-125-56.hsd1.ma.comcast.net] has quit [Quit: Leaving.] 04:46:06 -!- rme [rme@696C65D6.F26E1912.699BA7A6.IP] has quit [Quit: rme] 04:46:06 -!- rme [~rme@50.43.156.82] has quit [Quit: rme] 04:50:34 -!- F7 [~front@118.100.191.94] has left #lisp 04:53:29 pjb [~t@81.202.16.46.dyn.user.ono.com] has joined #lisp 04:54:45 bzzbzz [~franco@modemcable240.34-83-70.mc.videotron.ca] has joined #lisp 05:03:12 -!- fartofagony [fartofagon@c-346ee155.227-1-64736c11.cust.bredbandsbolaget.se] has quit [] 05:08:46 -!- srolls [~user@c-76-126-212-192.hsd1.ca.comcast.net] has quit [Remote host closed the connection] 05:11:34 -!- ignas [~ignas@ctv-79-132-160-221.vinita.lt] has quit [Quit: Ex-Chat] 05:13:22 nicdev [~user@c-98-217-188-86.hsd1.ma.comcast.net] has joined #lisp 05:16:34 dmiles_afk [~dmiles@66-87-27-233.pools.spcsdns.net] has joined #lisp 05:19:54 Spion_ [~spion@unaffiliated/spion] has joined #lisp 05:22:29 -!- Spion_ [~spion@unaffiliated/spion] has quit [Read error: Operation timed out] 05:22:49 Spion_ [~spion@unaffiliated/spion] has joined #lisp 05:23:33 -!- Spion [~spion@unaffiliated/spion] has quit [Ping timeout: 258 seconds] 05:24:08 Phoodus [~foo@68.107.217.139] has joined #lisp 05:27:51 -!- pjb [~t@81.202.16.46.dyn.user.ono.com] has quit [Ping timeout: 252 seconds] 05:28:43 pjb [~t@81.202.16.46.dyn.user.ono.com] has joined #lisp 05:31:53 slyrus [~chatzilla@adsl-99-62-137-105.dsl.pltn13.sbcglobal.net] has joined #lisp 05:32:28 sdemarre [~serge@91.176.76.6] has joined #lisp 05:43:29 realitygrill_ [~realitygr@adsl-76-226-133-118.dsl.sfldmi.sbcglobal.net] has joined #lisp 05:45:01 -!- dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has quit [Quit: dnolen] 05:45:19 -!- realitygrill [~realitygr@adsl-76-226-134-251.dsl.sfldmi.sbcglobal.net] has quit [Ping timeout: 248 seconds] 05:45:19 -!- realitygrill_ is now known as realitygrill 05:46:11 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 252 seconds] 05:46:32 Phoodus [~foo@68.107.217.139] has joined #lisp 05:47:38 alvis [~alvis@tx-71-2-123-220.dhcp.embarqhsd.net] has joined #lisp 05:52:22 Phooodus [~foo@68.107.217.139] has joined #lisp 05:53:09 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 252 seconds] 05:56:27 -!- sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has quit [Remote host closed the connection] 05:57:00 sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has joined #lisp 05:57:04 HG` [~HG@p5DC05AF1.dip.t-dialin.net] has joined #lisp 05:58:13 -!- dmiles_afk [~dmiles@66-87-27-233.pools.spcsdns.net] has quit [Ping timeout: 256 seconds] 05:58:39 -!- gko [~gko@220-135-201-90.HINET-IP.hinet.net] has quit [Ping timeout: 248 seconds] 06:00:47 -!- nicdev [~user@c-98-217-188-86.hsd1.ma.comcast.net] has quit [Ping timeout: 248 seconds] 06:04:38 anvandare [~anvandare@dD5770AB5.access.telenet.be] has joined #lisp 06:07:16 bieber [~quassel@162-78.97-97.tampabay.res.rr.com] has joined #lisp 06:08:32 realitygrill_ [~realitygr@adsl-76-226-137-34.dsl.sfldmi.sbcglobal.net] has joined #lisp 06:09:51 -!- realitygrill [~realitygr@adsl-76-226-133-118.dsl.sfldmi.sbcglobal.net] has quit [Ping timeout: 248 seconds] 06:09:51 -!- realitygrill_ is now known as realitygrill 06:12:21 -!- concave [~concave@c-24-118-48-38.hsd1.mn.comcast.net] has quit [] 06:18:50 -!- Phooodus [~foo@68.107.217.139] has quit [Ping timeout: 260 seconds] 06:19:07 Phoodus [~foo@68.107.217.139] has joined #lisp 06:20:04 gravicappa [~gravicapp@ppp91-77-166-105.pppoe.mtu-net.ru] has joined #lisp 06:20:45 -!- realitygrill [~realitygr@adsl-76-226-137-34.dsl.sfldmi.sbcglobal.net] has quit [Quit: realitygrill] 06:21:19 -!- p_l|backup [~plasek@pp84.internetdsl.tpnet.pl] has quit [Read error: Operation timed out] 06:21:33 p_l|backup [~plasek@pp84.internetdsl.tpnet.pl] has joined #lisp 06:24:40 bozhidar [~user@93-152-182-45.ddns.onlinedirect.bg] has joined #lisp 06:31:24 X-Scale [email@sgi-ultra64.broker.freenet6.net] has joined #lisp 06:31:33 nostoi [~nostoi@104.Red-83-33-71.dynamicIP.rima-tde.net] has joined #lisp 06:33:37 -!- pinterface [~pinterfac@173-20-55-85.client.mchsi.com] has quit [Ping timeout: 244 seconds] 06:41:48 zardoz8 [~zardoz8@76.73.16.26] has joined #lisp 06:41:57 nicdev [~user@c-98-217-188-86.hsd1.ma.comcast.net] has joined #lisp 06:46:15 Beetny [~Beetny@ppp118-208-23-85.lns20.bne1.internode.on.net] has joined #lisp 06:47:34 ngz [~user@80.105.193.77.rev.sfr.net] has joined #lisp 06:49:29 Phooodus [~foo@68.107.217.139] has joined #lisp 06:50:45 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 255 seconds] 06:52:52 -!- bozhidar [~user@93-152-182-45.ddns.onlinedirect.bg] has quit [Remote host closed the connection] 07:09:15 -!- ISF [~ivan@201.82.136.131] has quit [Ping timeout: 255 seconds] 07:09:50 Phoodus [~foo@68.107.217.139] has joined #lisp 07:10:11 -!- sabalaba [~sabalaba_@141.212.20.5] has quit [Ping timeout: 256 seconds] 07:12:01 -!- y3llow [~y3llow@111-240-167-172.dynamic.hinet.net] has quit [Read error: Connection reset by peer] 07:12:13 y3llow_ [~y3llow@111-240-167-172.dynamic.hinet.net] has joined #lisp 07:13:06 -!- y3llow_ is now known as y3llow 07:13:19 -!- Phooodus [~foo@68.107.217.139] has quit [Ping timeout: 248 seconds] 07:14:14 sabalaba [~sabalaba_@141.212.20.5] has joined #lisp 07:14:15 -!- cmm [~cmm@bzq-79-183-206-63.red.bezeqint.net] has quit [Quit: leaving] 07:14:23 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 248 seconds] 07:15:06 Phoodus [~foo@68.107.217.139] has joined #lisp 07:18:31 cmm [~cmm@bzq-79-183-206-63.red.bezeqint.net] has joined #lisp 07:18:51 insomnia1alt [~milan@port-92-204-89-173.dynamic.qsc.de] has joined #lisp 07:18:51 -!- insomnia1alt [~milan@port-92-204-89-173.dynamic.qsc.de] has quit [Changing host] 07:18:51 insomnia1alt [~milan@unaffiliated/iammilan] has joined #lisp 07:19:02 -!- nostoi [~nostoi@104.Red-83-33-71.dynamicIP.rima-tde.net] has quit [Quit: Verlassend] 07:19:49 -!- insomniaSalt [~milan@unaffiliated/iammilan] has quit [Read error: Operation timed out] 07:19:52 -!- insomnia1alt is now known as insomniaSalt 07:21:27 dodecahedron [~joel@lolnet.org] has joined #lisp 07:27:45 -!- pjb [~t@81.202.16.46.dyn.user.ono.com] has quit [Ping timeout: 258 seconds] 07:32:31 Phooodus [~foo@68.107.217.139] has joined #lisp 07:33:59 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 256 seconds] 07:35:35 topo__ [~topo@f053034030.adsl.alicedsl.de] has joined #lisp 07:36:34 -!- topo [~topo@f053034030.adsl.alicedsl.de] has quit [Read error: Connection reset by peer] 07:36:35 -!- topo__ is now known as topo 07:36:55 -!- Phooodus [~foo@68.107.217.139] has quit [Ping timeout: 252 seconds] 07:37:12 Phoodus [~foo@68.107.217.139] has joined #lisp 07:41:20 -!- ngz [~user@80.105.193.77.rev.sfr.net] has quit [Ping timeout: 276 seconds] 07:44:22 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 07:44:29 Phooodus [~foo@68.107.217.139] has joined #lisp 07:44:29 Davidbrcz_ [~david@proxysup.isae.fr] has joined #lisp 07:44:52 MoALTz [~no@host-92-18-23-195.as13285.net] has joined #lisp 07:46:30 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 258 seconds] 07:49:03 -!- Phooodus [~foo@68.107.217.139] has quit [Ping timeout: 248 seconds] 07:49:18 Phoodus [~foo@68.107.217.139] has joined #lisp 07:54:09 topeak [~topeak@118.186.129.140] has joined #lisp 07:54:59 -!- topeak [~topeak@118.186.129.140] has quit [Max SendQ exceeded] 07:55:26 topeak [~topeak@118.186.129.140] has joined #lisp 07:56:22 ramusara [~ramusara@220.156.210.236.user.e-catv.ne.jp] has joined #lisp 07:58:18 -!- yakov [~yakov@95-24-241-16.broadband.corbina.ru] has quit [Ping timeout: 245 seconds] 07:59:29 yakov [~yakov@176.14.242.250] has joined #lisp 08:03:28 ngz [~user@80.105.193.77.rev.sfr.net] has joined #lisp 08:04:31 -!- Phoodus [~foo@68.107.217.139] has quit [Ping timeout: 248 seconds] 08:06:28 -!- paul0 [~paul0@187.112.90.224] has quit [Quit: paul0] 08:12:05 -!- gravicappa [~gravicapp@ppp91-77-166-105.pppoe.mtu-net.ru] has quit [Ping timeout: 259 seconds] 08:12:20 attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has joined #lisp 08:12:20 -!- attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has quit [Changing host] 08:12:20 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 08:16:13 jewel [~jewel@196-209-248-53.dynamic.isadsl.co.za] has joined #lisp 08:16:46 -!- topeak [~topeak@118.186.129.140] has quit [Quit: Leaving] 08:17:31 mishoo [~mishoo@79.112.115.118] has joined #lisp 08:18:02 -!- yakov [~yakov@176.14.242.250] has quit [Read error: Connection reset by peer] 08:19:01 -!- loke [~elias@bb115-66-85-121.singnet.com.sg] has quit [Quit: Leaving] 08:19:39 yakov [~yakov@176.14.242.250] has joined #lisp 08:26:31 gravicappa [~gravicapp@ppp91-77-166-120.pppoe.mtu-net.ru] has joined #lisp 08:28:25 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Ping timeout: 260 seconds] 08:29:00 -!- Davidbrcz_ [~david@proxysup.isae.fr] has quit [Ping timeout: 260 seconds] 08:30:17 kpreid [~kpreid@128.153.212.87] has joined #lisp 08:31:59 peterhil` [~peterhil@ZYKMMMXXX.gprs.sl-laajakaista.fi] has joined #lisp 08:32:23 -!- abeaumont [~abeaumont@90.165.165.246] has quit [Remote host closed the connection] 08:33:15 -!- kpreid [~kpreid@128.153.212.87] has quit [Client Quit] 08:33:15 Kajtek [~nope@nat4-230.ghnet.pl] has joined #lisp 08:33:34 -!- Kajtek is now known as Kajtek2 08:33:40 -!- Kajtek2 is now known as Kajtek 08:33:51 -!- simplechat [~simplecha@unaffiliated/simplechat] has quit [Remote host closed the connection] 08:34:38 -!- yakov [~yakov@176.14.242.250] has quit [Read error: Connection reset by peer] 08:35:28 -!- Bike [~Glossina@71-214-109-104.ptld.qwest.net] has quit [Quit: Leaving.] 08:35:37 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 08:35:59 Davidbrcz_ [~david@proxysup.isae.fr] has joined #lisp 08:36:29 Kenjin [~josesanto@2.80.244.30] has joined #lisp 08:43:45 mishoo_ [~mishoo@79.112.115.118] has joined #lisp 08:44:20 -!- mishoo [~mishoo@79.112.115.118] has quit [Read error: Connection reset by peer] 08:46:43 hagish [~hagish@p57A47299.dip.t-dialin.net] has joined #lisp 08:49:25 -!- cesarbp [~cbolano@189.247.100.41] has quit [Ping timeout: 240 seconds] 08:52:16 nha [~prefect@5-74.104-92.cust.bluewin.ch] has joined #lisp 08:53:39 yakov [~yakov@176.14.242.250] has joined #lisp 08:57:53 morphism [~Nevermind@113.190.180.178] has joined #lisp 08:57:57 hi 08:58:36 I'm wondering: re-defparameter a variable and setq the value of a variable , which one could be faster ? 08:58:49 Bietan_Jarrai [c9a0f3ab@gateway/web/freenode/ip.201.160.243.171] has joined #lisp 08:59:12 I keep getting this error message with my lisp coding: http://i.imgur.com/IrlkN.jpg 08:59:14 why is that? 08:59:38 I am not too experienced with writing and compiling 08:59:43 I am an intermediate lisper 08:59:47 so any advice would be helpful 09:00:07 -!- lurker-x [~androirc@c-75-72-88-197.hsd1.mn.comcast.net] has quit [Read error: Connection reset by peer] 09:02:39 -!- yakov [~yakov@176.14.242.250] has quit [Read error: Connection reset by peer] 09:04:12 yakov [~yakov@176.14.242.250] has joined #lisp 09:06:57 -!- yakov [~yakov@176.14.242.250] has quit [Read error: Connection reset by peer] 09:08:32 leo2007 [~leo@222.77.98.74] has joined #lisp 09:08:38 -!- anvandare [~anvandare@dD5770AB5.access.telenet.be] has quit [Ping timeout: 260 seconds] 09:08:54 -!- ngz [~user@80.105.193.77.rev.sfr.net] has quit [Ping timeout: 255 seconds] 09:10:45 yakov [~yakov@176.14.242.250] has joined #lisp 09:13:36 -!- scrimohsin [~cmsimon@unaffiliated/scrimohsin] has quit [Quit: Leaving] 09:14:55 Salamander_ [~Salamande@ppp118-210-244-215.lns20.adl6.internode.on.net] has joined #lisp 09:15:23 NSFW. again. 09:15:46 -!- yakov [~yakov@176.14.242.250] has quit [Read error: Connection reset by peer] 09:15:53 scrimohsin [~cmsimon@unaffiliated/scrimohsin] has joined #lisp 09:17:18 yakov [~yakov@176.14.242.250] has joined #lisp 09:18:15 -!- setmeaway [~setmeaway@119.201.52.182] has quit [Ping timeout: 256 seconds] 09:18:30 -!- Salamander [~Salamande@ppp121-45-147-40.lns10.adl6.internode.on.net] has quit [Ping timeout: 258 seconds] 09:19:31 pjb`` [~t@81.202.16.46.dyn.user.ono.com] has joined #lisp 09:20:23 -!- pjb` [~t@81.202.16.46.dyn.user.ono.com] has quit [Read error: Connection reset by peer] 09:21:17 -!- DaDaDosPrompt [~DaDaDosPr@184.99.29.100] has quit [Quit: DaDaDosPrompt] 09:21:23 mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has joined #lisp 09:22:45 anvandare [~anvandare@78-22-147-210.access.telenet.be] has joined #lisp 09:24:36 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Quit: Ex-Chat] 09:24:38 -!- Davidbrcz_ [~david@proxysup.isae.fr] has quit [Quit: Ex-Chat] 09:24:59 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 09:25:49 -!- zmv [~daniel@c953332e.virtua.com.br] has quit [Ping timeout: 240 seconds] 09:29:10 mrSpec [~Spec@unaffiliated/mrspec] has joined #lisp 09:31:02 BlankVerse [~pankajm@103.246.106.35] has joined #lisp 09:33:52 francogrex [~user@109.130.138.187] has joined #lisp 09:34:15 tres curieux 09:34:44 bien sur 09:35:42 gko [~gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 09:43:29 -!- mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has quit [Quit: mstevens] 09:45:19 -!- McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has quit [Ping timeout: 248 seconds] 09:47:53 -!- billstclair [~billstcla@unaffiliated/billstclair] has quit [Read error: Connection reset by peer] 09:48:15 billstclair [~billstcla@unaffiliated/billstclair] has joined #lisp 09:50:26 jpop [~redmundia@84.122.73.141.dyn.user.ono.com] has joined #lisp 09:50:27 hello 09:50:39 is there a way to see what #.(...) expands to? 09:52:18 McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has joined #lisp 09:52:58 -!- BlankVerse [~pankajm@103.246.106.35] has quit [Ping timeout: 260 seconds] 09:56:28 Bietan_Jarrai: why jpg? Can't you use a pastebin? 09:57:00 screenshot 09:57:03 -!- jewel [~jewel@196-209-248-53.dynamic.isadsl.co.za] has quit [Ping timeout: 248 seconds] 09:57:09 Sorry I only have a text-mode browser ATM. Can't help you. 09:57:35 why does #.(let ((x 100000000000000000000)) `(eq ,x ,x)) give me T 09:57:44 but (eq 100000000000000000000 100000000000000000000) false 09:59:03 jpop: eq returns true if arguments are the same object. Use eql to compare by value. 09:59:31 why isn't #. expanding to (eq 100.... 100...) ? what is it expanding to? 10:00:30 my question is why i'm getting different results, now how to compare numbers 10:00:39 not how to compare numbers 10:00:45 It expands to (eq 100.... 100...) but there arguments are the same object which was stored in x. WHen you write out (eq 100 100) they are different objects. 10:00:50 Because you are not comparing numbers. 10:01:11 compare 10:01:22 (let ((o (make-instance 'my-class))) (eq o o)) 10:01:24 and 10:01:30 but if it expands to (eq 100.... 100...) then it should have the same result as (eq 100.... 100...) alone 10:01:33 (eq (make-instance 'my-class) (make-instance my-class)) 10:01:41 I keep getting this error message with my lisp coding: http://i.imgur.com/IrlkN.jpg 10:01:44 anybody else can help? 10:01:48 naryl you're not using reader macro there 10:01:50 -!- Vutral [~ss@vutral.net] has quit [Ping timeout: 244 seconds] 10:02:06 Bietan_Jarrai: Just copy the error message to some pastebin. 10:02:28 Phoodus [~foo@68.107.217.139] has joined #lisp 10:02:38 jpop: Using #. won't magically turn o into two objects. 10:03:07 Vutral [~ss@vutral.net] has joined #lisp 10:03:17 You are only deferring `(eq ,x ,x) to run time but x would be the same object with or without #. 10:03:32 If you bind it with let 10:03:56 doesn't (eq 100.. 100..) get passed to the compiler? 10:04:37 yes but 100.. and 100.. are the same object. 10:04:54 no they aren't, as proven by (eq 100000000000000000000 100000000000000000000) => nil 10:05:19 if the same code got passed to compiler with #., the result would be the same 10:05:25 They are not the same object if you write it out. They are the same if you create one object and bind it with LET then use it in the rader macro. 10:05:45 The code is not the same. Numbers are one object if you use LET. 10:05:52 why does it matter what I'm doing at read time if you compiler sees (eq 100.. 100..) ? 10:06:41 read-time code is executed in the same lisp-system as the compiler and the compiled code. It's not a C-like text macro. 10:07:03 (eq 100000000000000000000 100000000000000000000) could return either true or false , the behavior is undefined. see the clhs 10:07:26 depends on whether the implementation chooses to intern this particular constant. 10:08:34 well it doesn't make sense that what's done at read time effects execution at runtime. if compile sees eq 100000000000000000000 100000000000000000000) form how can i get different result depending on how i generated that form 10:08:41 "Notes: 10:08:43 Objects that appear the same when printed are not necessarily eq to each other." 10:08:49 galumph [~ron@bzq-84-111-104-224.red.bezeqint.net] has joined #lisp 10:08:55 -!- galumph [~ron@bzq-84-111-104-224.red.bezeqint.net] has quit [Read error: Connection reset by peer] 10:09:23 jpop: I agree with you within the same implementation, the behavior should be consistent 10:09:24 that has nothing to do with this. it has to do with (eq 1 1) => t but eq 100000000000000000000 100000000000000000000) => nil 10:09:26 jpop: That's not C-style text macro. Compiler sees objects, not text. 10:10:44 Compiler sees different input which just happens to be printed to one text representation. 10:12:05 naryl doesn't macro evaluate to a lisp form? so compiler is fed a lisp form, and if the two forms are the same how can result be different? 10:12:52 same result with this. (defmacro doit () (let ((x 100000000000000000000000000)) `(eq ,x ,x))). getting T, while if I write that eq form manually I'm getting NIL 10:13:30 it's a bug, it shouldn't logically be like that 10:15:20 stassats [~stassats@wikipedia/stassats] has joined #lisp 10:15:50 (defmacro test (x y) `(eq ,x ,y)) , (test 100000000000000000000 100000000000000000000) 10:15:51 exactly the same result with sbcl, ccl, clisp, lispworks 10:15:58 try ecl 10:16:46 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Ping timeout: 258 seconds] 10:16:56 have to add few more zeros with ecl moment 10:16:57 mishoo__ [~mishoo@79.112.115.118] has joined #lisp 10:17:10 -!- mishoo_ [~mishoo@79.112.115.118] has quit [Read error: Operation timed out] 10:17:34 ecl seems to always return T for this so I can't test it 10:18:45 _danb_ [~user@124-149-162-79.dyn.iinet.net.au] has joined #lisp 10:19:33 why are you concerned about this? you shouldn't use EQ to compare numbers anyway 10:20:45 stassats was just trying to understand it, doesn't make sense that there's a difference 10:21:16 true... I think the let here turns the x into an object so (eq x x) becomes true 10:21:42 bozhidar [~user@93-152-182-45.ddns.onlinedirect.bg] has joined #lisp 10:22:18 compiler is allowed to coalesce eql things 10:22:38 although what happens at the repl isn't specified 10:22:54 it's the "let" that makes the difference... I guess it's not incorrect after all 10:23:20 (macroexpand-1 '(doit)) => (EQ 100000000000000000000000 100000000000000000000000) 10:23:32 so compiler gets exactly the same forms in both cases 10:24:24 x no longer exists when compilers gets that form 10:24:32 francogrex: you're talking about #.(let ((x 100000000000000000000)) `(eq ,x ,x))? well, that's easy, you read 10^20 only once, so it's converted to a bignum only once 10:24:59 that makes sense. but what about about macro above? 10:25:04 stassats: but even something like that: (defmacro test () `(let ((x 100000000000000000) (y 1000000000000000000)) (eq x y))) 10:25:26 do you compile this? 10:25:45 I am getting nil there francogrex 10:25:59 that's different than what I had above 10:26:10 jtza8 [~jtza8@41.56.14.105] has joined #lisp 10:26:17 yes it's being compiled 10:26:23 I get nil as well 10:26:30 BlankVerse [~pankajm@103.246.106.35] has joined #lisp 10:26:35 so what's the problem? 10:26:36 anyway, it's such a boring thing, knowing why it works or not won't give you any advantage 10:26:37 :) 10:26:51 Athas [~athas@130.225.165.40] has joined #lisp 10:26:58 just stop caring about minute details of different implementations 10:27:46 zmv [~daniel@c953332e.virtua.com.br] has joined #lisp 10:27:49 jpop you get nil because x and y are different (one zero more) make them the same numbers you'll get T 10:27:51 stassats all implementations give same result, T for eq form that's generated by macro, and NIL if you give that same exact form to the compiler manually 10:28:12 jpop: what you're going to do with this information? 10:28:20 sonnym [~sonny@rrcs-184-74-137-69.nys.biz.rr.com] has joined #lisp 10:28:26 it won't affect in any way how you write programs (if you are sane, of course) 10:28:26 I want someone to explain how that's possible 10:28:36 haha, not here 10:29:26 how is it possible that compiler generates different code when the forms are the same in both cases 10:29:26 sometimes we should let details slide.. yesterday I try to explain to my FB friends that the 5 mondays october thing is wrong and today I have 5 friends less 10:29:37 jpop: which macro? 10:29:56 (defmacro doit () (let ((x 100000000000000000000000)) `(eq ,x ,x))) 10:30:00 francogrex: i'd say that's a win 10:30:26 mishoo_ [~mishoo@79.112.115.118] has joined #lisp 10:30:30 -!- mishoo__ [~mishoo@79.112.115.118] has quit [Read error: Connection reset by peer] 10:30:42 jpop: well, it reads 100000000000000000000000 only once, so it's the same bignum 10:31:13 why is it reading it twice if I enter the same form manually in the repl? 10:31:46 (let ((x 100000000000000000000000)) (eq x x)) => T 10:32:01 stassats huh? that's not what (doit) expands to 10:32:05 you aren't surpised by: (defmacro doit () (let ((x (list 1 2 3 4))) `(eq ',x ',x))) (doit) => T 10:32:10 (let ((x 100) (y 100)) (eq x y)) 10:32:20 jpop: but that's the only way for it to read 100000000000000000000000 once 10:33:10 gives T 10:33:19 -!- yakov [~yakov@176.14.242.250] has quit [Ping timeout: 248 seconds] 10:33:43 (defmacro foo () 1000000000000000000) 10:33:45 I must be completely clueless about how how macros work. aren't they expanded to the forms, that are then passed to thet compiler? 10:33:47 (eq (foo) (foo)) =>T 10:33:55 are you surprised by that too? 10:34:17 yes 10:34:20 jpop: yes they are, but those forms are read before 10:34:21 (let ((x 1000000000000000000000) (y 1000000000000000000000)) (eq x y)) 10:34:34 and (eq 1000000000000000000000 1000000000000000000000) 10:34:57 not the same, so let is the key 10:35:39 francogrex: in sbcl, EQ is evaulate as a simple funcall, LET is put through a compiler 10:35:44 (funcall (compile nil '(lambda () (eq 10000000000000000000000 10000000000000000000000)))) => T 10:35:52 and compiler coalesces EQL constants 10:35:54 so what happens when you call a macro? i thought plain forms were passed to the compiler. similar to how C macros expand to plain text, lisp macros expand to plain forms 10:36:01 ok I see 10:36:22 it's fine then 10:36:37 rather, it's not coalesces them in this case, it replaces (EQ constant constant) with compile-time result 10:37:57 no, that's wrong 10:38:24 what is wrong? 10:38:26 it coalesces, but it seems limited from when it's compiled with COMPILE 10:38:39 what happens when you call (doit)? I thought it just generated (eq 1.. 1...) form, nothing else 10:38:49 (apply #'eq (funcall (compile nil '(lambda () (list 10000000000000000000000 10000000000000000000000))))) => T 10:39:05 (apply #'eq (funcall (compile nil '(lambda () (list '(1 2 3) '(1 2 3)))))) => NIL 10:39:20 jpop: yep, but 1.. is the same 10:40:11 so in the end, what we've been doing for the last 10 minutes is just mental masturbation 10:40:19 exactly 10:40:25 why is not the same if I macroexpand (doit), and give exactly the same form to the compiler? it still doesn't make sense 10:40:29 at times like these I wish I had a life (a woman etc) 10:40:56 and if you put (defun test () (eq '(1 2) '(1 2))) in a file and COMPILE-FILE and LOAD, it will return T 10:41:05 (i'm talking about SBCL all the way here) 10:41:27 jpop: because you give it wrongly 10:41:42 (eval (macroexpand-1 '(doit))) => T 10:42:28 and (eval '(EQ 100000000000000000000000 100000000000000000000000)) => NIL 10:42:31 LOL 10:42:50 yakov [~yakov@176.14.242.250] has joined #lisp 10:43:05 are you serious? i've said that five times already, i'm gonna stop, since it doesn't have any effect 10:43:26 I'm serious, I still don't get it. maybe I'm stupid 10:43:43 abeaumont [~abeaumont@90.165.165.246] has joined #lisp 10:43:58 jpop: you need to get a life maybe, seriously 10:44:04 maybe, but if your stupidity only expands to EQing large numbers, then you're going to be ok 10:44:37 take a break from it, see if you can understand it tomorrow 10:44:46 is lisp hashing non-bignum integer contants? 10:44:49 cashing* 10:45:01 or rather some lisp implementations 10:45:08 kennyd: in this example, no 10:45:21 "this" as in "doit" macro 10:45:45 -!- Bietan_Jarrai [c9a0f3ab@gateway/web/freenode/ip.201.160.243.171] has left #lisp 10:46:14 oh, i've read as "non-bignum", the answer stands, no 10:46:27 it doesn't because they're literal 10:46:45 (except for ABCL, because of Java crazyness) 10:47:16 (read "non-bignum" as "bignum") 10:49:35 and i meant to say "immediate" instead of "literal" 10:50:32 xharkonnen [~charles@host86-141-143-76.range86-141.btcentralplus.com] has joined #lisp 10:50:51 which means that they occupy a single machine word, and comparing them is trivial 10:51:48 but bignums occupy several machines words, and comparing them takes more time, that's why EQ only compares pointers to bignums (and other things), or if things are of a single word length 10:51:51 something like that 10:55:16 wbooze`` [~levgue@xdsl-78-35-136-96.netcologne.de] has joined #lisp 10:55:20 -!- mrSpec [~Spec@unaffiliated/mrspec] has quit [Remote host closed the connection] 10:55:24 homie`` [~levgue@xdsl-78-35-136-96.netcologne.de] has joined #lisp 10:57:00 -!- HG` [~HG@p5DC05AF1.dip.t-dialin.net] has quit [Quit: HG`] 10:57:28 -!- wbooze` [~levgue@xdsl-78-35-171-203.netcologne.de] has quit [Ping timeout: 245 seconds] 10:57:38 HG` [~HG@p5DC05AF1.dip.t-dialin.net] has joined #lisp 10:57:47 -!- homie` [~levgue@xdsl-78-35-171-203.netcologne.de] has quit [Ping timeout: 258 seconds] 11:00:48 -!- xharkonnen [~charles@host86-141-143-76.range86-141.btcentralplus.com] has quit [Quit: To iterate is human, to recurse divine] 11:08:18 -!- anvandare [~anvandare@78-22-147-210.access.telenet.be] has quit [Ping timeout: 245 seconds] 11:12:26 setmeaway [~setmeaway@119.201.52.182] has joined #lisp 11:14:43 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 11:14:47 -!- zardoz8 [~zardoz8@76.73.16.26] has quit [Quit: CGI:IRC (Ping timeout)] 11:14:59 -!- morphism [~Nevermind@113.190.180.178] has quit [Read error: Connection reset by peer] 11:15:18 urandom__ [~user@p548A5F31.dip.t-dialin.net] has joined #lisp 11:16:43 -!- jpop [~redmundia@84.122.73.141.dyn.user.ono.com] has quit [Quit: Chateando desde http://webchat.redmundial.org (Ping timeout)] 11:17:06 akovalenko [~user@89.222.169.233] has joined #lisp 11:18:26 -!- yakov [~yakov@176.14.242.250] has quit [Ping timeout: 276 seconds] 11:21:27 jpop [~redmundia@84.122.73.141.dyn.user.ono.com] has joined #lisp 11:24:47 schaueho [~schaueho@dslb-088-066-052-067.pools.arcor-ip.net] has joined #lisp 11:25:00 -!- leo2007 [~leo@222.77.98.74] has quit [Ping timeout: 258 seconds] 11:25:11 -!- gko [~gko@220-135-201-90.HINET-IP.hinet.net] has quit [Ping timeout: 256 seconds] 11:25:54 gko [~gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 11:26:35 -!- francogrex [~user@109.130.138.187] has quit [Remote host closed the connection] 11:32:27 Joreji [~thomas@vpn-ho1.unidsl.de] has joined #lisp 11:34:00 tfb [~tfb@restormel.cley.com] has joined #lisp 11:39:59 -!- homie`` [~levgue@xdsl-78-35-136-96.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:40:06 -!- wbooze`` [~levgue@xdsl-78-35-136-96.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:40:15 you all knew that one, right? 11:40:24 *Xach* waits for stassats to catch up 11:45:28 it posted while i was asleep! 11:47:05 bgs100 [~ian@unaffiliated/bgs100] has joined #lisp 11:47:14 what is your take on (doit) and (EQ 100000000000000000000000 100000000000000000000000) returning different results? where doit is (defmacro doit () (let ((x 100000000000000000000000)) `(eq ,x ,x))) 11:48:02 Who gives a shit? EQ can do anything it wants. 11:48:09 those are bignums probably, and whether they are EQ is up to the implementation 11:48:32 (as it is for fixnums, but less likely to actually differ) 11:48:36 but why are two same forms producing different results? 11:48:49 Again, who gives a shit? EQ is allowed to do that. 11:49:20 EQ is not interesting here. what's interesting is that compiler produces different results when the same form is generated by macro vs entered manually 11:49:32 i still don't see how that's possible 11:49:36 If you think EQ isn't the important part, you're not getting it. 11:49:38 It's not the same form 11:49:47 that's the point 11:49:55 it *looks* the same, but it's not. 11:50:05 tfb in what way is it different? 11:50:51 jpop: not eq! 11:51:52 they are not eq but they are equal. so why the difference 11:51:57 In one form, the reader reads a number twice, and (in your implementation), it does not coallesce those two numbers to be EQ 11:52:34 In the other, it reads once, and (in your implementation) that number is not then turned into two non-EQ copies of itself 11:53:14 tfb does reader store some information about the objects it returns, (like object addresses) that are then passed to the compiler? 11:53:48 no, it just returns objects 11:54:28 it returns pointers to them? (internally) 11:54:48 prior to allocating memory for them 11:54:59 after even 11:56:34 that's the wrong level to think of it at, really, I think. But I suppose, yes. The useful level to think (I think) is that there are just objects 11:57:29 ok that somewhat makes sense then 11:58:03 jpop: you're mostly given sensible implementation-specific explanations on this issue, but in fact, Xach's "who gives a shit" has an important point: the standard requires not giving a shit here (in other terms, perhaps) 11:58:29 and the confusing thing, here, is: is there just a single, unique, object for each integer? And the snwer is "there doesn't have to be" 11:58:43 homie [~levgue@xdsl-78-35-136-96.netcologne.de] has joined #lisp 11:58:54 so EQ, which tests object identity, can return true or false in confusing ways for numbers 11:58:58 as you dsaw. 11:59:38 I know that. I'm not confused by EQ behavior or specification. I'm confused why reader does different things depending if that equal form is generated by macro or typed in directly 11:59:38 so you should use EQL which is basically EQ without the confusion 11:59:49 -!- hagish [~hagish@p57A47299.dip.t-dialin.net] has quit [Ping timeout: 252 seconds] 12:00:14 It's not just the reader: anywhere in the system it can copy numbers... 12:00:37 wbooze [~levgue@xdsl-78-35-136-96.netcologne.de] has joined #lisp 12:01:41 I assumed that compiler is required to generate same code, given equal forms 12:02:15 or at worst there should be no reason why it shouldn't do that 12:02:54 -!- lnostdal_ [~lnostdal@77.18.196.244.tmi.telenormobil.no] has quit [Ping timeout: 252 seconds] 12:04:31 Well, in the case here, some of the literals in the code are (or may be) different - in one version there's one literal, in another, two 12:04:49 (or there may be) 12:05:36 jpop: see section 3 of the spec 12:05:43 jpop: section 3.1 might be helpful 12:05:53 AspieProlapse [c9a0f3ab@gateway/web/freenode/ip.201.160.243.171] has joined #lisp 12:06:53 topeak [~topeak@118.186.129.140] has joined #lisp 12:07:24 Sorry, 3.2.1 is what I was thinking of 12:08:25 -!- Joreji [~thomas@vpn-ho1.unidsl.de] has quit [Ping timeout: 244 seconds] 12:08:39 Yuuhi [benni@p5483C48B.dip.t-dialin.net] has joined #lisp 12:09:44 any part of that in particular? 12:11:07 Here is a screenshot of the compile error that I am getting. 12:11:07 http://i.imgur.com/IrlkN.jpg 12:11:12 any idea of what is causing this? 12:11:23 troll photo 12:11:33 gay sex 12:11:40 hagish [~hagish@p57A478D3.dip.t-dialin.net] has joined #lisp 12:12:49 -!- sammi` [sammi@gateway/shell/devio.us/x-nalpcweurmpzwnfa] has quit [Quit: leaving] 12:13:03 Xach did you mean that compiler is actually generating the same code, and that it's the reader that's responsible for the difference? allocating one object in first case, two in second 12:14:06 -!- jtza8 [~jtza8@41.56.14.105] has quit [Remote host closed the connection] 12:14:10 -!- ChanServ has set mode +o Xach 12:14:15 -!- Xach has set mode +b *!*c9a0f3ab@*.201.160.243.171 12:14:16 sammi` [sammi@gateway/shell/devio.us/x-pgneuobwrvpytllz] has joined #lisp 12:14:23 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Remote host closed the connection] 12:14:25 What is with that lately? 12:14:34 Joreji [~thomas@vpn-ho1.unidsl.de] has joined #lisp 12:14:38 Don't check the link. 12:14:55 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 12:16:24 rexim [~rexim@91.204.184.177] has joined #lisp 12:16:45 -!- Xach has set mode -o Xach 12:17:08 trollsR'us ? 12:17:11 lol 12:17:15 Yeah. 12:17:17 Xach: isn't it september? 12:17:21 no 12:17:51 I mean: morally september... 12:18:33 -!- AspieProlapse [c9a0f3ab@gateway/web/freenode/ip.201.160.243.171] has quit [Quit: Page closed] 12:18:57 pythonsnake [~pythonsna@unaffiliated/pythonsnake] has joined #lisp 12:19:18 -!- pythonsnake [~pythonsna@unaffiliated/pythonsnake] has left #lisp 12:19:52 -!- schaueho [~schaueho@dslb-088-066-052-067.pools.arcor-ip.net] has quit [Quit: Leaving] 12:19:57 schaueho [~schaueho@dslb-088-066-052-067.pools.arcor-ip.net] has joined #lisp 12:21:40 lnostdal_ [~lnostdal@77.18.196.244.tmi.telenormobil.no] has joined #lisp 12:22:14 Bwaah [bwaah@unaffiliated/bwaah] has joined #lisp 12:24:38 yakov [~yakov@77.72.120.66] has joined #lisp 12:25:13 josemanuel [~josemanue@21.1.222.87.dynamic.jazztel.es] has joined #lisp 12:25:44 yakov_ [~yakov@77.72.120.66] has joined #lisp 12:26:47 -!- yakov_ [~yakov@77.72.120.66] has quit [Client Quit] 12:27:05 yakov_ [~yakov@77.72.120.66] has joined #lisp 12:29:29 -!- yakov [~yakov@77.72.120.66] has quit [Ping timeout: 260 seconds] 12:29:36 -!- yakov_ [~yakov@77.72.120.66] has quit [Client Quit] 12:29:50 yakov [~yakov@77.72.120.66] has joined #lisp 12:32:52 it's always september 12:32:55 -!- jsn`` [~user@c-98-225-158-149.hsd1.pa.comcast.net] has left #lisp 12:34:10 stassats: I think there are still detectable variations in the density of september. I am applying for a grant to measure this. 12:34:20 -!- josemanuel [~josemanue@21.1.222.87.dynamic.jazztel.es] has quit [Quit: Saliendo] 12:36:27 tonussi [~lucaspt@177.16.153.87] has joined #lisp 12:40:20 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Ping timeout: 260 seconds] 12:42:42 -!- schaueho [~schaueho@dslb-088-066-052-067.pools.arcor-ip.net] has quit [Ping timeout: 255 seconds] 12:43:34 sykopomp: chillax build for you? it doesn't for me. 12:43:34 -!- tonussi [~lucaspt@177.16.153.87] has left #lisp 12:45:12 gffa [~gffa@unaffiliated/gffa] has joined #lisp 12:47:06 *Xach* starts bugs a-filin' 12:47:19 h4ns is probably driving down some florida highway right now :( 12:48:25 francogrex [~user@109.130.138.187] has joined #lisp 12:49:15 Salamander [~Salamande@ppp121-45-51-135.lns20.adl2.internode.on.net] has joined #lisp 12:51:51 tonussi [~lucaspt@177.16.153.87] has joined #lisp 12:52:31 -!- Salamander_ [~Salamande@ppp118-210-244-215.lns20.adl6.internode.on.net] has quit [Ping timeout: 248 seconds] 12:53:37 -!- lnostdal_ [~lnostdal@77.18.196.244.tmi.telenormobil.no] has quit [Quit: bbl] 12:55:03 sykopomp: bug filed. 12:55:29 -!- tonussi [~lucaspt@177.16.153.87] has left #lisp 12:55:45 tsuru [~charlie@50.9.237.217] has joined #lisp 12:58:40 *Xach* suffers the pain of project skew so *you* don't have to 13:01:43 superflit_ [~superflit@71-208-204-21.hlrn.qwest.net] has joined #lisp 13:03:17 -!- superflit [~superflit@71-33-190-99.hlrn.qwest.net] has quit [Read error: Operation timed out] 13:03:17 -!- superflit_ is now known as superflit 13:03:28 -!- francogrex [~user@109.130.138.187] has quit [Remote host closed the connection] 13:04:51 -!- Beetny [~Beetny@ppp118-208-23-85.lns20.bne1.internode.on.net] has quit [Ping timeout: 260 seconds] 13:07:02 ngz [~user@80.105.193.77.rev.sfr.net] has joined #lisp 13:08:04 anvandare [~anvandare@78-22-146-21.access.telenet.be] has joined #lisp 13:10:23 deke [~deke@fl-71-54-184-132.dhcp.embarqhsd.net] has joined #lisp 13:10:26 -!- deke [~deke@fl-71-54-184-132.dhcp.embarqhsd.net] has left #lisp 13:12:18 gavinharper [~gavinharp@dyn3-82-128-190-151.psoas.suomi.net] has joined #lisp 13:13:15 -!- gavinharper [~gavinharp@dyn3-82-128-190-151.psoas.suomi.net] has quit [Client Quit] 13:15:43 -!- tfb [~tfb@restormel.cley.com] has quit [Quit: tfb] 13:19:18 -!- oudeis [~oudeis@bzq-79-177-201-46.red.bezeqint.net] has quit [Quit: This computer has gone to sleep] 13:23:11 oudeis [~oudeis@bzq-79-177-201-46.red.bezeqint.net] has joined #lisp 13:23:58 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 13:28:13 -!- ngz [~user@80.105.193.77.rev.sfr.net] has quit [Ping timeout: 240 seconds] 13:29:03 frito [~androirc@cpc12-sotn9-2-0-cust578.15-1.cable.virginmedia.com] has joined #lisp 13:30:21 -!- frito [~androirc@cpc12-sotn9-2-0-cust578.15-1.cable.virginmedia.com] has quit [Client Quit] 13:31:21 This would be a good time to have already built a really slick system where I could just say "Roll back to yason from three days ago and proceed as scheduled." 13:31:36 Alas... 13:32:35 Mococa [~Mococa@189.59.214.138] has joined #lisp 13:34:27 -!- BlankVerse [~pankajm@103.246.106.35] has quit [Ping timeout: 255 seconds] 13:34:57 gaidal_ [~gaidal@58.62.105.9] has joined #lisp 13:37:11 pnq [~nick@AC82CE9C.ipt.aol.com] has joined #lisp 13:37:19 -!- Mococa [~Mococa@189.59.214.138] has quit [Ping timeout: 248 seconds] 13:37:49 tfb [~tfb@restormel.cley.com] has joined #lisp 13:38:26 -!- gaidal [~gaidal@58.62.105.9] has quit [Ping timeout: 258 seconds] 13:38:38 concave [~concave@c-24-118-48-38.hsd1.mn.comcast.net] has joined #lisp 13:38:53 *stassats* produced another tip to match Xach 13:39:20 dang 13:40:10 -!- xristos [~x@ec2-107-20-233-212.compute-1.amazonaws.com] has left #lisp 13:40:34 stassats: ouf, i can barely hit C-A 13:40:41 *Xach* fails at multihand modifier key chords 13:40:54 -!- Joreji [~thomas@vpn-ho1.unidsl.de] has quit [Ping timeout: 244 seconds] 13:41:37 yes, i made it C-c C-d C-a originally, replacing the previous slime-apropos, but helmut changed it back 13:42:46 xristos [~x@ec2-107-20-233-212.compute-1.amazonaws.com] has joined #lisp 13:42:56 http://paste.lisp.org/display/124990 13:43:12 why isn't fun2 restartable in the debugger? 13:43:39 i assume you are talking about SBCL? 13:43:46 yes 13:43:54 ccl doesn't support restart frame anyway ;p 13:43:56 francogrex [~user@109.130.138.187] has joined #lisp 13:45:40 i don't know 13:46:02 should it be or is it up to the compiler? 13:46:18 i'd want it to be restartable 13:46:58 i think the compile-time error prevents it from becoming restartable 13:47:12 so this test-case is really contrived 13:48:53 wolfpython [~wolf@222.95.134.135] has joined #lisp 13:53:00 Mococa [~Mococa@189.59.214.138] has joined #lisp 13:55:25 -!- alvis [~alvis@tx-71-2-123-220.dhcp.embarqhsd.net] has quit [Ping timeout: 240 seconds] 13:59:17 /whoami 14:00:53 akovalenko: cogitas, ergo est 14:01:02 -!- Athas [~athas@130.225.165.40] has quit [Remote host closed the connection] 14:01:19 *Xach* one-ups stassats with lisptips.com 14:02:07 *Xach* does not want to go to slime-tips.com for fear of nsfw 14:02:41 it's empty 14:03:25 phew 14:06:21 -!- cods [~cods@tuxee.net] has quit [Changing host] 14:06:21 cods [~cods@rsbac/developer/cods] has joined #lisp 14:07:54 -!- _danb_ [~user@124-149-162-79.dyn.iinet.net.au] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 14:08:13 -!- neoesque [~neoesque@210.59.147.226] has quit [Quit: Bye!] 14:10:10 -!- gaidal_ [~gaidal@58.62.105.9] has quit [Ping timeout: 260 seconds] 14:10:36 -!- gravicappa [~gravicapp@ppp91-77-166-120.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 14:11:05 -!- hagish [~hagish@p57A478D3.dip.t-dialin.net] has quit [Ping timeout: 252 seconds] 14:11:19 alvis [~alvis@tx-71-2-123-220.dhcp.embarqhsd.net] has joined #lisp 14:12:49 mobile [~tfb@restormel.cley.com] has joined #lisp 14:13:23 paul0 [~paul0@187.112.90.224] has joined #lisp 14:13:43 -!- pnq [~nick@AC82CE9C.ipt.aol.com] has quit [Ping timeout: 245 seconds] 14:14:35 -!- akovalenko [~user@89.222.169.233] has quit [Ping timeout: 276 seconds] 14:15:11 -!- tfb [~tfb@restormel.cley.com] has quit [Ping timeout: 248 seconds] 14:17:19 -!- mobile [~tfb@restormel.cley.com] has quit [Ping timeout: 252 seconds] 14:17:24 -!- francogrex [~user@109.130.138.187] has quit [Remote host closed the connection] 14:17:35 -!- Kenjin [~josesanto@2.80.244.30] has quit [Quit: Get MacIrssi - http://www.sysctl.co.uk/projects/macirssi/] 14:22:25 tfb [~tfb@restormel.cley.com] has joined #lisp 14:23:18 gaidal_ [~gaidal@59.41.113.213] has joined #lisp 14:26:50 killerboy [~mateusz@users69.kollegienet.dk] has joined #lisp 14:30:35 simplechat [~simplecha@unaffiliated/simplechat] has joined #lisp 14:38:15 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 14:41:00 coyo [~unf@pool-71-164-173-28.dllstx.fios.verizon.net] has joined #lisp 14:41:00 -!- coyo [~unf@pool-71-164-173-28.dllstx.fios.verizon.net] has quit [Changing host] 14:41:00 coyo [~unf@unaffiliated/bandu] has joined #lisp 14:42:09 -!- gienah [~mwright@ppp121-44-70-112.lns20.syd6.internode.on.net] has quit [Quit: leaving] 14:43:45 Sepok [~user@d83-183-51-82.cust.tele2.se] has joined #lisp 14:45:03 cesarbp [~cbolano@189.247.100.41] has joined #lisp 14:47:48 H4ns [43174196@gateway/web/freenode/ip.67.23.65.150] has joined #lisp 14:48:35 ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has joined #lisp 14:49:19 -!- cesarbp [~cbolano@189.247.100.41] has quit [Ping timeout: 248 seconds] 14:50:30 -!- wolfpython [~wolf@222.95.134.135] has quit [Remote host closed the connection] 14:50:37 schaueho [~schaueho@dslb-088-066-012-033.pools.arcor-ip.net] has joined #lisp 14:53:25 akovalenko [~user@89.222.169.233] has joined #lisp 14:55:41 BlankVerse [~pankajm@103.246.106.35] has joined #lisp 15:02:54 -!- Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has quit [Ping timeout: 265 seconds] 15:02:54 Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has joined #lisp 15:05:04 Vivitron [~user@pool-108-7-56-243.bstnma.fios.verizon.net] has joined #lisp 15:06:18 Cloud [~cbolano@189.227.214.189] has joined #lisp 15:10:56 lnostdal_ [~lnostdal@124.80-203-136.nextgentel.com] has joined #lisp 15:12:43 -!- ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has quit [Quit: Leaving.] 15:18:18 ikki [~ikki@189.247.120.64] has joined #lisp 15:20:45 -!- Cloud [~cbolano@189.227.214.189] has quit [Ping timeout: 252 seconds] 15:21:07 am0c [~am0c@222.235.56.83] has joined #lisp 15:24:00 attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has joined #lisp 15:24:00 -!- attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has quit [Changing host] 15:24:00 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 15:24:38 jpop: a compiler doesn't have to generate the same code for the same forms: (let* ((x 1) (y #1=(+ x 1))) (let* ((x 2) (z #1#)) z)), if the compiler handled #1 the same way, it would always refer to the first x 15:25:12 jpop: you can actually come up with more contrived examples including declared variable types or (progn (defun ... #1= ... ) (defun ... #1# ...)) where the expressions share no environment, although they're eq to the reader 15:30:00 me345 [~me345@75.15.232.163] has joined #lisp 15:30:26 ska` [~user@ppp-58-8-215-244.revip2.asianet.co.th] has joined #lisp 15:30:40 -!- schaueho [~schaueho@dslb-088-066-012-033.pools.arcor-ip.net] has quit [Ping timeout: 260 seconds] 15:31:17 sykopomp: I've been trying to get my own data to play back with cl-openl. Now I can use alut:load-memory-from-file to play back a WAV file I wrote, but al:get-buffer seems to expect sb-sys:system-area-pointer for the data. So it seems to expect a C pointer to the data? How can I convert a Lisp array to the expected format and get a pointer to it? Is there some readymade function in cl-openal? 15:34:55 It's been a while since I last looked at this... So I'm a bit lost about how openal architecture works, but basically I need to write the data into a buffer in some context, which has a device, listener and a source. Am I right? 15:35:20 -!- H4ns [43174196@gateway/web/freenode/ip.67.23.65.150] has quit [Ping timeout: 252 seconds] 15:36:15 Can I use CFFI to convert a Lisp (or Matlisp) array to a C struct and get a pointer to it? 15:36:59 Spion [~spion@unaffiliated/spion] has joined #lisp 15:37:52 peterhil`: cffi:make-shareable-byte-vector is an (experimental) function creating an array whose data can be used as C pointer 15:38:04 Ok, thanks! 15:38:19 peterhil`: see also cffi:with-pointer-to-vector-data 15:38:34 I'll look into using that. I guess that it gives a kind of a "view" to C side into the Lisp array 15:38:35 ? 15:39:27 peterhil`: yes, that's how it works. However, an implementation may require some specific type.. 15:39:56 peterhil`: as of SBCL, it's a simple array of (unsigned-byte 8) 15:40:16 What no floats? 15:40:43 -!- Spion_ [~spion@unaffiliated/spion] has quit [Ping timeout: 258 seconds] 15:40:48 peterhil`: SBCL's underlying interface used by CFFI can work with various array types, so it's really a CFFI restriction here. 15:41:36 peterhil`: in the Lisp side, you can (defstruct (my-3d-data (:type (vector single-float))) ), so you use the slot accessors instead of aref or svref 15:41:40 peterhil`: if you're on SBCL, with-pinned-objects and vector-sap (in SB-SYS) may be used directly 15:42:25 ok 15:42:43 peterhil`: IIRC, on CCL many complex data types have an "underlying ub8 vector" that you may use 15:43:46 ISF [~ivan@201.82.136.131] has joined #lisp 15:43:57 peterhil`: and if you don't really need *sharing*, CFFI's portable stuff is enough for allocation and access to foreign arrays 15:44:28 Good to know, thanks. 15:45:34 hello 15:45:41 -!- topo is now known as topobot 15:45:52 any idea why this function is not working? 15:45:54 http://paste.lisp.org/display/124992 15:47:03 why are you using special variables? 15:47:08 topobot: don't put subexpressions, like (* (sin ...)), into literal list 15:47:20 ummm 15:47:23 why not? 15:47:39 topobot: it ain't gonna work, as you can see now :) 15:47:42 special variables? you mean parameters? 15:47:49 -!- HG` [~HG@p5DC05AF1.dip.t-dialin.net] has quit [Quit: HG`] 15:47:56 ummm 15:48:01 topobot: You can use let instead to bind variables inside functions. 15:48:02 as in global dynamic variables 15:48:10 so how can i make it work? 15:48:13 and who names their variables "b"? 15:48:26 it's good that your code doesn't work, it's ugly as hell anyway 15:48:28 sorry 15:48:31 topobot: when someone uses a term that *is* defined in CLHS, please look it up in glossary 15:48:33 b is just a switcher 15:48:50 0 = option one, 1 = option two, 2 = option three 15:49:27 why is ugle stassats ? 15:49:31 *ugly? 15:49:33 topobot: (case *b* (0 (list (sin ...) 0 0)) (1 (list 0 (sin ...) 0)) ...) 15:49:33 topobot: to make it work, start with passing (sin..) as a separate argument, like it was in my suggested code before youbroken it 15:49:36 im trying to improve 15:49:51 because you use magic numbers, because you use special variables, because you have duplicates in your code 15:50:00 haha 15:50:31 and magic formulas 15:51:12 why is (truncate (* (sin X) 200)) the way it is? what happens when it's zero? 15:51:17 stassats: what really shines is the *explanations* we receive when we ask for reasons and requirements.. 15:51:20 oh 15:51:26 when its zero it switches 15:51:35 you should strive to write the code which is self-explanatory 15:51:36 b is a switcher 15:51:56 when is 0 then it switch to first option 15:52:03 when is 1 it switch to second option 15:52:11 when is 2 it switch to third option 15:52:14 do you undersntad? 15:52:16 no 15:52:24 stassats: now see how it's as self-explanatory as it gets :-/ 15:52:29 image a multiplexer 15:52:30 numbers have no soul 15:52:50 you're telling me that 1 is one, what of it? 15:53:32 you have a language which has vast means of expressive abstractions, and you just use numbers 15:53:51 ummm 15:54:41 look 15:54:49 this is the old version akovalenko did 15:54:49 http://paste.lisp.org/display/124992#1 15:57:52 I wonder if this mushroom is poisonous.. 15:59:57 i prefer the flowers, they let me throw fireballs 16:01:09 -!- mishoo_ [~mishoo@79.112.115.118] has quit [Read error: No route to host] 16:01:17 mishoo [~mishoo@79.112.115.118] has joined #lisp 16:01:29 I suddenly suspect everybody ate the mushrooms first and asked questions later. 16:04:43 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 16:04:51 any idea why is not working either? 16:04:52 http://paste.lisp.org/display/124992#2 16:05:33 topobot: oh, you almost literally copy-pasted! you're not even calling gl:scale anymore... damn! 16:06:12 ummm 16:06:15 oh right 16:06:18 why are you calling (sin *time*) four times? is *time* changing? 16:06:28 topobot: What isn't exactly working? 16:06:35 no its not changing 16:06:40 and in the test expr of the if you're comparing numbers with eql 16:07:10 if you want to know if (truncate something something) is == 0, use = 16:07:24 this code is a mess. 16:07:27 nope, use zerop 16:07:58 that too 16:08:24 how can i apply to 'gl:scale the result of the list? 16:08:34 "nope" sounds like a predicate 16:08:53 more, (zerop (* (sin *time*) 200)) == (zerop (sin *time)), the amplitude isn't going to change that 16:09:03 at least how i pronounce predicates 16:09:31 acelent: it's (* (sin x) 200), not (sin (* x 200)) 16:09:49 topobot: have you read Practical Common Lisp? 16:10:01 im reading it 16:10:06 didnt finish 16:10:25 stassats: right, so it'll be zero whether you multiply it by 200 or not. oh wait, there's a truncate there... 16:10:31 capture the value returned by (sin *time*) in a let, and use that subsequently. 16:10:40 stassats: rob names his variable bob. 16:10:41 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 16:11:19 topobot: are you a native speaker of English? (maybe you actually *can* explain your code in some other language without resorting to "b is a switcher...") 16:11:37 is it possible to make this? 16:11:49 (apply 'gl:scale (list ((* (sin *time*) 10) 0 0)) 16:11:55 topobot: you should name your variable selected-option, not b. 16:12:04 topobot: why don't you directly call gl:scale? 16:12:05 no im not native english speaker 16:12:14 -!- rexim [~rexim@91.204.184.177] has quit [Remote host closed the connection] 16:12:17 (gl:scale (* (sin *time*)) 0 0) 16:12:22 no 16:12:29 and instead of 0, 1, 2, it should be :print-option :quick-option and :exact-option, or something liket hat. 16:12:32 topobot: what's your mother tongue? really, there are many of us foreigners here :) 16:12:35 the idea is to switch the controller 16:12:42 or :x-axis, etc. 16:13:03 (apply #'gl:scale ...) 16:13:07 the idea is to have this: (gl:scale (* (sin *time*)) 0 0) and then (gl:scale 0 (* (sin *time*)) 0) and then this: (gl:scale 0 0 (* (sin *time*)) ) 16:13:12 do you understand? 16:13:14 which is syntax for (apply (function gl:scale) ...) 16:13:27 topobot: then call it orientation. 16:13:35 or axis. 16:13:36 so i have a value that i call the "switcher" that allows me to select each of them 16:13:39 do you understand? 16:13:39 Anything, but something meaningful. 16:13:46 0 1 2 is not meaningful. Do you understand? 16:14:14 "switcher" is not meaningful. It doesn't mean anything. Just lookup the dictionnary, there are hundreds of meanings = meaningless. 16:14:23 (beware most English words are meaningless). 16:14:30 i see 16:14:46 well in puredata that kind of mechanism is called switcher 16:14:53 thats why i use that 16:14:59 -!- ianmcorvidae [~ianmcorvi@fsf/member/ianmcorvidae] has quit [Remote host closed the connection] 16:14:59 maybe its confusing for you 16:15:04 i also used routing 16:15:05 :P 16:15:13 topobot: so did you watch the video? 16:15:23 *akovalenko* would recognize French native speaker in "dictionnary" even if he didn't know :) 16:15:23 it is like a multiplexer in electronics 16:15:43 -!- nicdev [~user@c-98-217-188-86.hsd1.ma.comcast.net] has quit [Ping timeout: 248 seconds] 16:16:11 Yes, but unless you are simulating an electronic circuit, the word has nothing to do in a program. 16:16:32 you use a "index" value to "switch" or "route" between options 16:16:34 :P 16:16:47 No, no and no. 16:17:03 Unless you change the paradygm of your programming language, you can't do that. 16:17:13 why not? 16:17:19 (I assume if you used cells, you could). 16:17:30 Because procedures don't work like that. 16:17:58 well, im not an academic programmer 16:18:04 mishoo_ [~mishoo@79.112.115.118] has joined #lisp 16:18:09 i like to experiment with that kind of possibilities lisp gives me 16:18:36 topobot: the *explanation* of what's behind your code should look like this: "I want to draw a teapot on the screen, so it gets taller for some period of time, then it gets wider, then it gets thickier..". No switchers and routes! 16:18:55 hahaha 16:19:22 ianmcorvidae [~ianmcorvi@pool-96-233-186-101.spfdma.east.verizon.net] has joined #lisp 16:19:22 -!- ianmcorvidae [~ianmcorvi@pool-96-233-186-101.spfdma.east.verizon.net] has quit [Changing host] 16:19:22 ianmcorvidae [~ianmcorvi@fsf/member/ianmcorvidae] has joined #lisp 16:19:39 topobot: it may look unscientific and naïve, but that's what we'd really *have* a chance to understand. 16:19:57 unless you're on deadline, then the explanations is "uh, that seems to work" 16:20:09 yes akovalenko you understood the idea 16:20:10 :P 16:20:20 basically is that 16:20:35 (now i get it: truncate was so that (eql ... 0) ever worked...) 16:20:39 -!- Mococa [~Mococa@189.59.214.138] has quit [Remote host closed the connection] 16:20:48 -!- mishoo [~mishoo@79.112.115.118] has quit [Ping timeout: 245 seconds] 16:20:54 topobot: since it seems your gl:... function take vectors, you could just work with vectors. 16:21:08 Bike [~Glossina@71-214-96-97.ptld.qwest.net] has joined #lisp 16:21:13 (apply (function gl:scale) (coerce (vector* axis (* 200 (sin *times*))) 'list)) 16:21:21 jdz [~jdz@host252-105-dynamic.14-87-r.retail.telecomitalia.it] has joined #lisp 16:21:41 it doesnt use vectors 16:21:49 you can make something like this 16:21:50 (gl:translate 0 0 -162) 16:21:52 what are the three arguments of gl:scale? 16:21:56 what are the three arguments of gl:translate? 16:22:04 (gl:scale 1 0 1) 16:22:10 No. 16:22:11 what are the three arguments of gl:scale? 16:22:13 what are the three arguments of gl:translate? 16:22:18 pjb``: x, y, and z 16:22:19 rme [~rme@50.43.156.82] has joined #lisp 16:22:21 Right. 16:22:26 acelent: consider this: (zerop (sin 0.001)) => 0, (zerop (truncate (* (sin 0.001) 200))) => T 16:22:26 That's the vector (x y z). 16:22:34 ah ok 16:22:39 -!- ska` [~user@ppp-58-8-215-244.revip2.asianet.co.th] has quit [Ping timeout: 248 seconds] 16:22:42 -!- mishoo_ [~mishoo@79.112.115.118] has quit [Ping timeout: 255 seconds] 16:22:52 what i mean is that you dont need to make this : 16:22:53 (translate (vector 1.1 0 0)) 16:22:55 realitygrill [~realitygr@adsl-76-226-137-34.dsl.sfldmi.sbcglobal.net] has joined #lisp 16:22:59 Then your axis can be the vectors (1 0 0) (0 1 0) or (0 0 1) or whatever. 16:23:01 in scheme you need to make this: (translate (vector 1.1 0 0)) 16:23:14 but in common lisp (gl:translate 0 0 -162) 16:23:15 topobot: we don't care, Look my for above, it uses apply and coerce! 16:23:20 thats what i mean 16:23:21 s/=> 0/=> NIL/ 16:23:57 stassats: 0 is correct. 16:24:03 no 16:24:08 mishoo [~mishoo@79.112.115.118] has joined #lisp 16:24:10 generalized boolean 16:24:21 (zerop 0.1) => 0 is incorrect 16:25:12 ok. 16:25:37 ska` [~user@ppp-58-8-215-244.revip2.asianet.co.th] has joined #lisp 16:26:15 I wonder of the minimum size for short floats, (sin 0.001) could be 0. 16:26:21 stassats: i get that, but if i understand what topobot wants, he shouldn't check for 0 (or zerop), but for the transition. so in fact he'd only have to look at time and a prev-time 16:26:25 s/of/if for/ 16:26:47 pjb``: i dont understand your code 16:26:49 wasao [~wasao@wasao.org] has joined #lisp 16:26:51 where is suppose to go that? 16:27:00 (apply (function gl:scale) (coerce (vector* axis (* 200 (sin *times*))) 'list)) 16:27:01 ? 16:27:12 ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has joined #lisp 16:27:16 what does that (vector* does? 16:27:37 It's a function you should write that multiples a vector with a scalar, giving a new vector. 16:27:39 acelent: i doubt topobot himself understand what he wants 16:27:48 understands 16:27:48 stassats: oh, so true 16:27:57 yes i understand 16:28:17 what i want is this: 16:28:18 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 245 seconds] 16:28:20 topobot: homework? 16:28:38 i want money and fame 16:28:43 i have a value from a sin function that goes from -100 to 100 in cycle all the time 16:28:59 when that value is 0 i want to switch between different options 16:29:25 topobot: also, the point is that if gl:translate is not practical for you because it takes x y z separately, then you MUST write a translate function that takes a vector and calls it. 16:29:26 I want beer and reputation 16:29:35 topobot: you can't rely on the value ever being 0, you must check if it crossed zero from the last iteration 16:29:44 the first time is 0 the sin value, then my switch value is 0, then the second time my sin value is 0 (cycle again) then my switch value is 1, third time my swhich value is 2 16:30:18 topobot: you want to scale x, then y, then z, then x again, etc. 16:30:19 sammi`: Guiness record for beek drinking is 1/1.33 l/s http://www.nutritionadvisor.com/guinness.htm 16:30:34 and then when my switcher value is 0 its generates this: (gl:scale (sin ...) 1 1 ) when its one it generates this: (gl:scale 1 (sin ...) 1 ) 16:30:50 pjb``: that's soft, i beat it every friday 16:31:03 and when my switcher value its 2 it generate this (gl:scale 1 1 (sin ...) ) 16:31:05 thats all 16:31:10 -!- mishoo [~mishoo@79.112.115.118] has quit [Ping timeout: 256 seconds] 16:31:23 topobot: you must think more abstractly, and more generally. Use vectors. 16:31:51 And why are you still talking us of gl:scale. You should have long implemented higher level functions! 16:33:28 i like using gl:scale 16:34:01 You should be using (scale-axis factor axis) 16:35:05 mishoo [~mishoo@79.112.115.118] has joined #lisp 16:36:48 one question 16:36:53 whats wrong with this/ 16:36:54 ? 16:36:55 (list (((* (sin *time*) 10) 0 0))) 16:37:07 ((* (sin *time*) 10) 0 0) is not a function. 16:37:14 Xach: aha. Thanks. I'll push a patch after lunch. 16:37:20 I told you, things like (* (sin *time*) 10) are not functions. 16:37:54 ummm 16:37:56 topobot: (x y...) means call the function x with arguments y... 16:38:22 Unless X is macro or a special operator, in which cases special rules apply. 16:39:26 -!- oudeis [~oudeis@bzq-79-177-201-46.red.bezeqint.net] has quit [Read error: Connection timed out] 16:39:48 -!- wasao [~wasao@wasao.org] has left #lisp 16:39:48 oudeis [~oudeis@bzq-79-177-201-46.red.bezeqint.net] has joined #lisp 16:45:16 -!- ZabaQ [~john.conn@135.114-84-212.staticip.namesco.net] has quit [Quit: Leaving.] 16:47:48 mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has joined #lisp 16:49:43 this doesnt work either 16:49:43 (apply 'gl:scale (case *b* (0 (list ((* (sin *time*) 10) 0 0))))) 16:50:09 of course it doesn't, it's not lisp 16:50:26 codelurker [~codelurke@c-65-96-210-138.hsd1.ma.comcast.net] has joined #lisp 16:50:42 topobot: you have an extra level of parentheses after list 16:50:52 topobot: finish reading PCL 16:51:15 :O 16:51:35 you know enough to tie yourself in knots, but not enough to know why you're tied in knots. 16:53:31 topobot: i still don't understand why you can call `list' directly but not `gl:scale', are you going to make the gl function to call variable? 16:54:25 Joreji [~thomas@vpn-ho1.unidsl.de] has joined #lisp 16:55:02 karswell [~mjc@93-97-29-243.zone5.bethere.co.uk] has joined #lisp 16:56:08 -!- ramusara [~ramusara@220.156.210.236.user.e-catv.ne.jp] has quit [Quit: Leaving...] 16:56:55 spradnyesh [~pradyus@117.192.36.133] has joined #lisp 17:01:44 -!- oudeis [~oudeis@bzq-79-177-201-46.red.bezeqint.net] has quit [Read error: Connection timed out] 17:02:21 oudeis [~oudeis@bzq-79-177-201-46.red.bezeqint.net] has joined #lisp 17:04:30 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Remote host closed the connection] 17:04:58 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 17:06:48 -!- lnostdal_ [~lnostdal@124.80-203-136.nextgentel.com] has quit [Ping timeout: 255 seconds] 17:07:09 lnostdal_ [~lnostdal@124.80-203-136.nextgentel.com] has joined #lisp 17:08:03 Madsn [~madsn@x1-6-00-18-4d-a9-aa-10.k249.webspeed.dk] has joined #lisp 17:08:14 sykopomp: too late 17:08:22 sykopomp: h4ns already added backwards compatibility! 17:10:47 topobot: I thought you were studying "Common Lisp: A Gentle Introduction to Symbolic Computation". If not, you should really stop everything now, and go read that book. 17:10:57 http://www.cs.cmu.edu/~dst/LispBook/ 17:11:12 And if yes, then finish it before going on. 17:11:21 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 17:15:32 Cloud [~cbolano@189.247.100.41] has joined #lisp 17:15:34 i was reading practical common lisp pjb`` 17:15:36 i made it work 17:15:44 morphism [~Nevermind@113.190.180.178] has joined #lisp 17:15:59 -!- drdo [~drdo@91.205.108.93.rev.vodafone.pt] has quit [Ping timeout: 260 seconds] 17:16:02 kenanb [~kenanb@94.54.237.227] has joined #lisp 17:16:49 -!- am0c [~am0c@222.235.56.83] has quit [Remote host closed the connection] 17:16:53 aerique, u there ? 17:17:19 http://paste.lisp.org/display/124994 17:18:05 one question, is there is a way to say "dont change anything until the variable have changed" 17:18:16 of example if i have a variable that is incrementing 17:18:25 0 0 0 0 1 1 1 1 2 2 2 3 3 3 4 4 4 and so on 17:18:32 topobot: yes, but you don't have the means to say it. Try again in a few years. 17:18:46 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Ping timeout: 256 seconds] 17:18:49 chturne [~chturne@host86-141-143-76.range86-141.btcentralplus.com] has joined #lisp 17:18:51 im telling in the code: when the variable is "0" do something 17:19:23 but since "0" is repeating its also "doing something" is being called repeatedly 17:19:25 topobot: you're really working against the grain of lisp. 17:19:49 is it possible to say : just the first time the variable is "0" 17:20:11 what do you mean fade? 17:20:26 topobot: are you human ? 17:20:29 the code you're pasting is highly non-idiomatic. 17:20:37 ok, sorry 17:20:40 forget about it 17:20:48 topobot: where is the routing table ? 17:20:58 which makes it brittle and difficult to extend. 17:21:27 but you also seem highly resistant to such criticism, so carry on. :) 17:21:35 look this: 17:21:37 (if (eql (truncate (* (sin *time*) 100 )) 0) 17:21:37 (something-happens)) 17:21:45 What's wrong with zerop? 17:21:56 everytime it is 0 then it calls (something-happens) 17:22:11 the problem is that im getting a lot of "0"'s 17:22:17 (if (zerop (truncate (* (sin *time*) 100))) (something-happens) ... 17:22:17 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2 22 17:22:19 topobot: don't you know that s*c=0 & c0  s=0 17:22:25 Xach: why do I feel like an opportunity was lost? :( 17:22:44 so it calls 5 times (something-happens) and i just want to call it one time , the first time is "0" 17:22:51 (if (and (zerop x) (not (= x last-x))) (do-stuff)) 17:23:24 or something like that 17:23:32 oh nice idea 17:23:35 thanks rme 17:24:07 If you've read Gentle, you would have known it... 17:24:21 im reading practical common lisp 17:24:28 should i read gentle common lisp first? 17:24:35 I am too 17:24:38 Practical Common Lisp is targetted to programmers. You're not a programmer. 17:24:49 whats a programmer? 17:24:59 academical programmer you mean? 17:25:02 Somebody who don't have to ask the questions you're asking here. 17:25:14 old school programmer? 17:25:22 but the author seems not being entirely a programmer pjb`` 17:25:28 sykopomp: you snooze you lose! it was 11:23am! 17:25:51 academical programmers dont ask in chats? 17:26:03 Not those questions. 17:26:14 hey , setf a variable value or re-defparameter it, which one is faster in performance ? 17:26:14 i see 17:26:19 Programmers don't have trivial syntactical problems. 17:26:20 -!- gko [~gko@220-135-201-90.HINET-IP.hinet.net] has quit [Remote host closed the connection] 17:26:21 thats why maybe some people get angry 17:26:21 morphism: neither one 17:26:49 Programmer know how to detect the first 0 in a sequence, etc. 17:27:01 Even if they don't know how to do it in lisp, they know how to do it. 17:27:19 H4ns [43174196@gateway/web/freenode/ip.67.23.65.150] has joined #lisp 17:27:41 topobot: so you see you have two problems: learn programming, learn Common Lisp. 17:28:55 i dont think they are problems 17:29:06 im learning everyday 17:29:18 more learning, less talking 17:29:24 for fun 17:29:27 Xach, hint me anyway to make robust performance with always re-new data variable :( 17:29:36 gko [~gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 17:29:48 -!- Madsn [~madsn@x1-6-00-18-4d-a9-aa-10.k249.webspeed.dk] has quit [Ping timeout: 255 seconds] 17:30:16 morphism: I don't understand the question. Do you have a problem with something? 17:31:06 Xach, yes, I really have problem in performance 17:31:29 since I have to bind new value to a variable every second 17:31:36 and profiling revealed that the problem is in variable assignment? 17:31:43 I chose to re-define it 17:31:43 morphism: a whole once per second? 17:31:46 morphism: using a defparameter as non-toplevel form is usually bad style. The fact that it can be slower by a nanosecond, too, doesn't matter 17:31:47 MeanWeen [~KAPITAL@cpe-174-099-078-179.nc.res.rr.com] has joined #lisp 17:31:49 instead of setf its value 17:32:09 something is fishy here 17:32:21 double language barriers are rampant today 17:32:26 akovalenko: even with a list of 25 kb string ? 17:32:27 and this whole week 17:33:39 morphism: if you generate this list anew each time, setf/defparameter make no difference here. 17:33:43 -!- sabalaba [~sabalaba_@141.212.20.5] has quit [Ping timeout: 245 seconds] 17:34:03 akovalenko, seem like setf won't solve my problem 17:34:03 :( 17:34:17 and what is your problem? 17:34:26 dto [~dto@pool-96-252-89-130.bstnma.fios.verizon.net] has joined #lisp 17:34:33 morphism: i.e. repeated (defparameter *name* (long-running-form)) and (setf *name* (long-running-form)) are both long-running 17:34:36 indeed, I bind defparameter into a meta form then eval it 17:34:59 but not repeated (defvar *name* (long-running-form)) 17:35:14 morphism: can you explain *why* are you doing it? 17:35:16 yep, I almost never use defvar 17:35:20 something is extremely fishy here 17:35:31 akovalenko, to make new global variable on fly 17:35:53 morphism: and how do you use this "flying... variable"? 17:35:56 *anvandare* throws away the week-old anchovy pizza :[ 17:35:57 so any input I got in string form can be transformed into Lisp data 17:36:01 how do you bind defparameter? what is a meta form? why do you need eval? where is your code? 17:36:23 morphism: remember that it has to be already declared special before you compile any code that uses it 17:36:23 -!- kpavn [~kpavn@77.41.103.59] has quit [Read error: Operation timed out] 17:37:07 stassats, the data form like `( + 1 2) 17:37:12 morphism: seems like you need one toplevel DEFVAR in advance, and BOUNDP test when it's "needed" 17:37:58 again, different in performance between defvar & defparameter ? 17:38:13 morphism: like (defvar *thing*) ... (if (boundp (quote *thing*)) *thing* (setf *thing* (long-running-form))) 17:38:21 you shouldn't think about performance now 17:38:40 morphism: both are used on the top level, so their performance does not affect the overall runtime of your program 17:39:08 morphism: the only difference between the two is that defparamter re-sets the global binding when evaluated, while defvar keeps the previous binding, if any. 17:40:04 stassats, it's very critical in realtime, if your A.I. isn't fast enough, it can affect the overall match performance 17:40:26 if your AI is shitty it doesn't matter how fast it is 17:40:27 H4ns, thanks for remind me 17:40:36 morphism: it's obvious that you're doing something with questionable or incorrect *semantics* 17:40:51 stassats, I don't want to say bad thing like that 17:41:02 morphism: does it matter whether it's fast, if it is not correct? 17:41:09 akovalenko, incorrect ? 17:41:30 *Xach* vaguely remembers jwz quipping "performance is easy if correctness is optional" 17:41:42 morphism: the "declared special" is very important 17:41:46 akovalenko, am I wrong at somewhere ? 17:42:25 morphism: if you do the "declared special" part on demand, (that's what you *are* doing with defparameter-on-demand), it *is* incorrect 17:43:09 akovalenko, I don't quite understand "declared special" , because it will be called in every frame the game running 17:43:34 morphism: and if you "declare special" in advance (with declaim or defvar or defparameter), then repeated defparameter is doing *nothing more than setf* 17:43:45 I just redefine it instead of setf 17:43:57 so as you said, it won't affect performance ? 17:44:16 think like I must locate the bottle neck carefully 17:44:33 morphism: for non-toplevel performance critical usage of defparameter, it may be slow (probably no one cares to optimize it) 17:45:21 morphism: if you don't understand that "proclaimed/declared special" thingie, you really need to *read* some more CLHS before continuing. Really. 17:46:08 if you use EVAL and expect performance, then you're doing it wrong 17:46:09 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 17:46:34 akovalenko, did "eval" cause my bottle neck ? 17:46:42 what's the most precise timing function in standard? I want to create a time like macro that returns elapsed seconds 17:46:43 probably. 17:46:55 jpop: CL:TIME 17:46:55 get-internal-real-time 17:47:01 morphism: most probably 17:47:02 You could profile to find where bottlenecks are... 17:47:12 did you profile the code? 17:47:14 ISF_ [~ivan@201.82.136.131] has joined #lisp 17:47:15 natch 17:47:36 morphism: eval is heavier than almost everything, only COMPILE is even heavier 17:47:46 Fade: i said it 15 minutes ago! 17:47:59 thanks 17:48:03 =.= 17:48:26 time to say goodbye to variable on fly 17:48:41 variable on peregrine falcon is better 17:48:52 -!- ISF [~ivan@201.82.136.131] has quit [Read error: Operation timed out] 17:48:55 Bike , I haven't in dbg, but in analyzing buffer usage 17:49:09 -!- sanjoyd [~sanjoyd@unaffiliated/sanjoyd] has quit [Ping timeout: 255 seconds] 17:49:09 sabalaba [~sabalaba_@141.212.56.132] has joined #lisp 17:49:22 look this is the "working ok " version 17:49:23 http://paste.lisp.org/display/124995 17:49:36 do you think it can be better? i mean better expressed? 17:49:48 bringing you the wrong answer since before you asked... ERROR: Causality Violation 17:50:09 topobot: why do you compute the same expression thrice? 17:50:18 where? 17:50:30 i like how the variable name changes from *a*, to *b*, and now it's *v* 17:50:34 there: (truncate (* (sin *time*) 100 )) there: (truncate (* (sin *time*) 100 )) and there: (truncate (* (sin *time*) 100 )) 17:50:35 I asked about two hours ago. 17:50:47 haha 17:50:48 And also: here: (* (sin *time*) 10), there: (* (sin *time*) 10) and there: (* (sin *time*) 10) 17:51:02 pjb``: in which way should it be? 17:51:20 this construct is an abomination. 17:51:26 why? 17:51:27 topobot: new and scale respectively. 17:51:54 topobot: and again, don't you know that s*c=0 & c0  s=0 ??? 17:52:12 pjb``: what do you mean with that? 17:52:20 -!- gko [~gko@220-135-201-90.HINET-IP.hinet.net] has quit [Ping timeout: 260 seconds] 17:52:23 s*c=0 & c0  s=0 ?whats this? 17:52:28 I mean that you should not compute (* (sin *time*) 100 ) 17:52:29 the (case ..) in particular 17:52:46 meh. 17:52:52 the side effects make me cry 17:53:16 gko [~gko@220-135-201-90.HINET-IP.hinet.net] has joined #lisp 17:53:44 topobot: Also, don't you know that (sin x)=0  x=0[] ? 17:54:00 i dont understand those mathematical formulas 17:54:09 i see pi there? 17:54:16 topobot: "if a number times another number is zero, and the other number isn't zero, the first number must be zero", to put it slightly wrongly 17:54:17 that's the problem. You don't even have the most basic mathematical knowledge. 17:54:25 haha 17:54:31 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Quit: Leaving] 17:54:43 Don't laugh about it, it's seriously impairing your ability to do what you want to do. 17:54:58 ummm 17:55:12 whats this? ? 17:55:20 in CL, it's CL:PI 17:55:27 -!- MeanWeen [~KAPITAL@cpe-174-099-078-179.nc.res.rr.com] has quit [Ping timeout: 255 seconds] 17:55:28 how do I defparameter a variable with a given name ? 17:55:40 don't do that 17:55:42 you've been struggling with an eight line function for hours. what is going to happen when this is embedded in a program written in a similar style. 17:55:50 x = 0 [pi]? 17:55:53 morphism: You mean that you want to change the value of a variable? 17:55:56 So, instead of writing (zerop (truncate (* (sin *time*) 100 ))) you can write (zerop (truncate *time* pi)) 17:56:02 Or what. Sounds confusing 17:56:11 -!- Cloud [~cbolano@189.247.100.41] has quit [Disconnected by services] 17:56:13 x=0[pi] means x is equal to 0 modulo pi. 17:56:30 pi has sinusoildal movement? 17:56:36 Sepok: given a symbol naming the variable 17:56:36 curious how come it's pi and not *pi* ? 17:56:37 Sepok, I mean I want to (defun foo (name) (defparameter name *value*)) 17:56:37 Cloud_ [~cbolano@189.247.100.41] has joined #lisp 17:56:43 jpop: it's a constant 17:56:51 which means, there exist a k in Z such as x=0+kpi 17:56:52 no ear muffs for you! 17:57:05 morphism: you can't. 17:57:08 why this (zerop (truncate *time* pi)) is equivalent? 17:57:10 ummmm 17:57:23 topobot: I explained it above. Basic maths. 17:57:27 pjb``, I am trying to avoid eval 17:57:28 =.= 17:57:31 morphism: if what you want is performance, your approach is all wrong 17:57:37 is that arithmetics? 17:57:38 morphism: you can, but you shouldn't do that 17:57:41 *acelent* palmfaces... 17:58:00 H4ns, so what's next ? back to C++ ? 17:58:05 @.@ 17:58:17 back to learning Common Lisp 17:58:20 morphism: if you don't want to learn common lisp, that might be a good option 17:58:24 topobot: If you don't know what arithmetics is, you need to go back to preschool, where you learn +, -, * and /. 17:58:24 -!- spradnyesh [~pradyus@117.192.36.133] has left #lisp 17:58:28 morphism: You'd do (setf variable-name value) 17:58:30 is it just me, or did I stray into #obtuse? 17:58:41 Fade: my thought, exactly 17:58:43 H4ns, pjb``: just about right! 17:58:47 -!- Vivitron [~user@pool-108-7-56-243.bstnma.fios.verizon.net] has quit [Read error: No route to host] 17:59:08 topobot: it's modular arithmetic: http://en.wikipedia.org/wiki/Modular_arithmetic 17:59:21 it's October the first, and it still feels like September! 17:59:24 it's a rare day that reading this channel makes me feel _dumber_. 17:59:27 ummm 17:59:44 morphism: (defun foo (name) (proclaim (list 'special name)) (setf (symbol-value name) nil)) 17:59:53 theres a relation between sine and pi? 17:59:58 *Xach* slaps forehead 18:00:14 topobot: again go back to school. http://en.wikipedia.org/wiki/Trigonometric_functions 18:00:15 -!- tfb [~tfb@restormel.cley.com] has quit [Quit: gone] 18:00:21 pjb``: Let *time* be pi+.0001. 18:00:26 must... look... at... other... window... 18:00:32 ummm 18:00:49 topobot: http://en.wikipedia.org/wiki/Trigonometry 18:01:07 topobot: you don't even know enough to know that what you've done isn't even wrong yet. 18:01:08 im just cursious between the relationship between sine and pi 18:01:22 http://en.wikipedia.org/wiki/File:Sin_drawing_process.gif 18:01:35 topobot: why are you using SIN if you don't know its relationship with PI? 18:01:46 we have sincerely given you pretty good advice and you seem to just ignore everything that is said. 18:01:51 sin? 18:01:52 attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has joined #lisp 18:01:52 -!- attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has quit [Changing host] 18:01:52 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 18:01:58 because i want sinusoidal movement 18:02:44 trigo what? oh, wheat in portuguese? 18:03:25 Isn't anyone going to answer my question if *time* is (+ pi 0.0001)? 18:04:01 rtoym: notice he used (eql 0 ...) or (zerop ...)... 18:04:09 two hours ago i said: consider this: (zerop (sin 0.001)) => NIL, (zerop (truncate (* (sin 0.001) 200))) => T 18:04:36 All right. 18:04:50 stassats: Sorry. I didn't go back far enough. 18:05:18 but it doesn't change the fact that topobot should understand what is he doing better 18:05:30 What is Topobot trying to do anyway? 18:05:39 he doesn't know 18:05:43 hahah 18:05:45 Ten things at the same time. 18:05:47 topobot is trying to learn out loud 18:05:53 at least, he can't tell us, maybe it's a secret 18:06:06 instead of going off and reading some fundimental source material. 18:06:09 -!- codelurker [~codelurke@c-65-96-210-138.hsd1.ma.comcast.net] has quit [Quit: WeeChat 0.3.5] 18:06:16 and it's becoming increasingly annoying. 18:06:58 i remember that topobot is doing this periodically for the last couple of years 18:08:06 1) fails to possess basic mathematical concepts 2) doesn't understand basic lisp 3) types furiously in irc 18:08:19 this is a recipe for loud failure. 18:08:34 just sayin' 18:08:38 so he got to his opengl example by simple copy-pasting and parentheses bashing? now that's not so bad for an automated mechanism (and he types his humming too) 18:09:02 it's called socially oriented programming, don't you use it? 18:09:41 ah.. 4) ignores everything that is said in response to him 18:09:51 -!- sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has quit [Ping timeout: 248 seconds] 18:09:55 that's one more than three strikes. 18:10:38 topobot: i hope you can really learn from this other than by copy-pasting (note: i haven't tested it and i won't really answer questions if it doesn't compile): http://paste.lisp.org/+2OG3/1 18:11:19 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 18:11:49 topobot: oh, and i'm not using (apply #'gl:scale ...), which is a requirement for which you haven't yet specified the reason, even by saying "because so" 18:11:52 -!- df [~df@163.8.187.81.in-addr.arpa] has quit [Read error: Operation timed out] 18:12:03 -!- ISF_ [~ivan@201.82.136.131] has quit [Read error: Connection reset by peer] 18:12:11 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Read error: Connection reset by peer] 18:12:52 (defun next-axis (axis) (let ((axes '#1=(:x :y :z . #1#))) (second (member axis axes)))) 18:13:14 ok thanks for the recommendation 18:14:02 df [~df@163.8.187.81.in-addr.arpa] has joined #lisp 18:14:56 topobot: What are you doing anyway? 18:15:21 better: (defun next-axis (axis) (getf '#1=(:x :y :z . #1#) axis)) 18:15:24 well, basically im using common lisp for a live coding performance 18:15:36 stassats: that is a delightful trick 18:15:52 im generating complex forms and animations in real time and sonyfing the s-xpressions from lisp 18:15:54 that form is pretty delicious. 18:16:06 Xach: don't repeat for 2D or 4D axes 18:16:21 *don't try it 18:17:01 *Xach* won't 18:17:22 ISF [~ivan@201.82.136.131] has joined #lisp 18:17:31 though it loops if you pass it something else than X Y Z 18:17:44 the thing is that common lisp has some possibilities that makes it very powerful and flexible for that kind of graphics 18:18:09 topobot: indeed. check out fluxus 18:18:15 yes i know 18:18:17 fluxus 18:18:20 i ve tried 18:18:24 hooray, quicklisp update! 18:18:36 but fluxus doenst support sound 18:18:48 -!- benny [~benny@i577A1D6B.versanet.de] has quit [Ping timeout: 255 seconds] 18:18:48 chipz_0.7.4 :( 18:18:55 -!- gko [~gko@220-135-201-90.HINET-IP.hinet.net] has quit [Ping timeout: 248 seconds] 18:19:07 with common lisp im using supercollider server and controlling the sound server from common lisp 18:19:59 benny [~benny@i577A15DB.versanet.de] has joined #lisp 18:20:56 sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has joined #lisp 18:21:06 -!- mstevens [~mstevens@fsf/member/pdpc.active.mstevens] has quit [Quit: mstevens] 18:21:31 -!- topobot [~topo@f053034030.adsl.alicedsl.de] has quit [Read error: Connection reset by peer] 18:21:31 topo [~topo@f053034030.adsl.alicedsl.de] has joined #lisp 18:21:40 -!- morphism [~Nevermind@113.190.180.178] has quit [Read error: Connection reset by peer] 18:21:45 -!- topo is now known as topobot 18:22:04 -!- EyesIsServer [~eyes@unaffiliated/eyesismine] has quit [Ping timeout: 260 seconds] 18:22:29 (cadr (member axis '(:x :y :z :x))) doesn't loop, but it's not as cool 18:22:42 it's pretty cool 18:23:02 i find using circular lists to be more cool 18:23:08 that's a trick for the blog, no foolin' 18:23:38 stassats: (next-axis :w) 18:23:56 it'll return NIL 18:24:45 stassats: no. if getf is given a circular p-list it will never return. 18:24:50 same with member, etc. 18:24:54 pjb``: catch up with scroll 18:25:11 That's why it's better to avoid circular lists. 18:25:31 sure, there's a danger, but it's still cool, like throwing gasoline on a fire! 18:25:59 EyesIsServer [~eyes@unaffiliated/eyesismine] has joined #lisp 18:26:23 -!- topobot [~topo@f053034030.adsl.alicedsl.de] has quit [Ping timeout: 248 seconds] 18:28:09 http://paste.lisp.org/display/124996 another circular-list trick i used once 18:30:24 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 18:31:00 FreeArtMan [~FreeArtMa@93.177.213.54] has joined #lisp 18:31:08 although mapcar requires lists to be proper, so it's better to use LOOP 18:32:30 stassats: are you sure that all lists are required to be proper, not just the first one? 18:32:42 i am 18:32:48 There are so few CL functions that can handle circular lists properly, that you should almost never use circular lists, or then, you should write all the functions processing them yourself. 18:33:06 it requires the shortest list to be proper 18:33:12 "Should be prepared to signal an error of type type-error if any list is not a proper list." 18:33:34 -!- me345 [~me345@75.15.232.163] has quit [Read error: Connection reset by peer] 18:33:48 me345 [~me345@75.15.232.163] has joined #lisp 18:35:22 pjb``: or else, you should really use circular lists when you really need circularity or a sense of rotation/infinity and never treat such list as a bounded list 18:35:42 acelent: read stassats' quote. 18:36:00 You cannot count on CL functions to do anything useful with circular lists. 18:36:08 pjb``: are you going to use mapcar with a circular list? 18:36:08 They could just signal an error right away. 18:36:19 You cannot do so conformingly. 18:36:30 pjb``: you can count on many of them if you know the list, like member 18:36:32 -!- BlankVerse [~pankajm@103.246.106.35] has quit [Ping timeout: 276 seconds] 18:36:48 topo [~topo@f053034030.adsl.alicedsl.de] has joined #lisp 18:36:59 acelent: no. clhs member "Should be prepared to signal an error of type type-error if list is not a proper list." 18:37:08 pjb``: ah right 18:37:14 (member 'x #1='(x . #1#)) ==> error 18:37:15 proper list -> ends with the empty list 18:37:27 (member 'x #1='(x . #1#)) ==> type-error ; I mean. 18:38:33 type-error is a subtype of error 18:38:59 which implementation actually throws a type-error for that call? 18:39:04 now when I re-read the spec, all-lists-must-be-proper seems pretty obvious. But I've seen countless instances of code with mapcar on circular lists... 18:41:40 akovalenko: that's actually why i find reading clhs was quite hard at the beginning, there's a huge amount of terms that must be (recursively?) learned before you start to understand even the most basics of common lisp 18:42:15 it's a spec, not a text-book 18:42:18 akovalenko: then, i snapped once and i started to re-read things and taking sense out of them 18:42:36 sensibility 18:43:33 stassats: exactly. many times, i'd expect to be able to find myself out of trouble by reading the essential points, or the function arguments, behaviour and what not 18:45:07 but one must learn the reader, printer, condition system, clos, macros, setf, etc. at least up to some point to become autonomous, and it's quite a lot to learn 18:45:50 gcv [~gcv@c-76-126-148-240.hsd1.ca.comcast.net] has joined #lisp 18:46:07 acelent: you need to learn that to write full blown applications, but you can write libraries when you only know parts. 18:46:18 and then MOP, common libraries, implementation differences, Slime 18:46:21 acelent: I'm learning bits every day. 18:46:33 acelent: and I maintain an implementation ! :-) 18:46:45 (though not alone, of course) 18:46:52 I found it possible to ignore rather a lot and still get a lot of useful work done. 18:47:00 and learning how to write a good program out of all this pieces isn't easy too 18:47:21 but you can always start by writing it yourself. 18:47:42 there's no immediate need to understand or even know about CONSTANTLY 18:47:52 there's #lisp for that 18:48:08 you submit your code and it becomes idiomatic automatically 18:48:19 (unless you're topobot) 18:48:31 unless it looks like homework 18:49:29 now, with lisptips out there everyone will write idiomatic code like a pro 18:49:38 damn kids these days have it easy 18:50:10 heh. they should watch not to be too easy: copy/paste code doesn't solve the world's problems. 18:50:26 (rather it solves existing problems already solved) 18:53:25 ggg 18:55:35 *Xach* is reminded of a quote greenspun has on his website 18:55:38 "As we enter the 21st century we find that rifle marksmanship has been largely lost in the military establishments of the world. The notion that technology can supplant incompetence is upon us in all sorts of endeavors, including that of shooting." 18:57:32 -!- sabalaba [~sabalaba_@141.212.56.132] has quit [Read error: Operation timed out] 18:57:57 -!- yakov [~yakov@77.72.120.66] has quit [Ping timeout: 255 seconds] 18:59:07 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Ping timeout: 260 seconds] 18:59:19 Xach: imagine someone shooting himself in the foot with a rocket. That's how technology can supplant incompetence, probably :) 19:00:18 i.e. by speeding up natural selection 19:05:49 Technology is mostly used to supplement incompetence, methinks. 19:05:51 -!- dto [~dto@pool-96-252-89-130.bstnma.fios.verizon.net] has quit [Ping timeout: 248 seconds] 19:06:28 "yay, with facebook everybody can see my ignorance now" 19:06:49 mishoo_ [~mishoo@79.112.115.118] has joined #lisp 19:06:55 -!- mishoo [~mishoo@79.112.115.118] has quit [Ping timeout: 258 seconds] 19:08:38 Xach: is it possible to do something in Quicklisp about the world of GBBopen modules? They are available to asdf after gbbopen is loaded, but it would be great to see them recorded in metadata, so we can (ql:quickload :portable-threads) without quickloading GBBopen first... 19:10:59 or it might be not a good idea, as GBBopen overrides my REPL with its extended REPL when loaded, without any additional request 19:11:32 -!- lnostdal_ [~lnostdal@124.80-203-136.nextgentel.com] has quit [Ping timeout: 256 seconds] 19:12:00 lnostdal_ [~lnostdal@124.80-203-136.nextgentel.com] has joined #lisp 19:13:35 sabalaba [~sabalaba_@141.212.20.5] has joined #lisp 19:13:42 -!- me345 [~me345@75.15.232.163] has quit [Read error: Connection reset by peer] 19:13:45 -!- Cloud_ is now known as cesarbp 19:14:07 anyone have some experience with doing many operations on complex numbers 19:14:25 *rtoym* has done that 19:14:36 Like i have this discrete fourier transform function that works on small arrays 19:14:51 but when i try to use something big like an image it throws me some weird bogus object errors 19:14:59 theBlackDragon [~dragon@212.71.14.133.adsl.dyn.edpnet.net] has joined #lisp 19:15:14 There's a bug in your code. 19:15:31 isn't there always? 19:15:38 =( 19:16:12 Turn down the optimization and increase safety. 19:16:13 cesarbp: do you use safety 0? 19:16:45 i havent really declared anything 19:19:21 clarity_ [~clarity@174.134.17.212] has joined #lisp 19:19:25 hai 19:19:25 you can try pasting your code 19:19:35 i suffer from emacs pinky, and weed helps for it! 19:19:46 I actually have full blown chronic tendinitis 19:19:51 or use a pre-existing FFT function. bordeaux-fft has seen a decent amount of testing. 19:19:55 clarity_: #emacs. 19:19:59 erm 19:22:21 MeanWeen [~KAPITAL@cpe-174-099-078-179.nc.res.rr.com] has joined #lisp 19:23:31 http://paste.lisp.org/display/124997 19:23:55 second function works for matrixes by calling the 3rd that works on vectors 19:24:09 but i think the 2nd is fine because all other transforms work fine 19:24:15 but they dont use complex numbers 19:24:26 Amyn1 [~abennama@cac94-2-87-91-21-215.dsl.sta.abo.bbox.fr] has joined #lisp 19:25:56 -!- Amyn [~abennama@cac94-2-87-91-21-215.dsl.sta.abo.bbox.fr] has quit [Ping timeout: 276 seconds] 19:26:29 -!- dstatyvka [ejabberd@pepelaz.jabber.od.ua] has left #lisp 19:27:05 <_3b> are you sure all the transforms return simple-vectors? 19:27:31 <_3b> (and are you sure you want simple-vectors in the first place?) 19:28:02 you can add an (optimize debug safety) declaration. 19:28:10 <_3b> might also try forcing high safety/debug and run it again 19:28:11 arent simple vectors the fastest 19:28:14 *_3b* is slow :( 19:28:26 the forward DFT is fishy. Why aren't you just using complex operations? 19:28:33 -!- lnostdal_ [~lnostdal@124.80-203-136.nextgentel.com] has quit [Quit: Leaving] 19:28:44 *_3b* usually uses typed vectors for code that needs to be fast 19:28:54 cesarbp: array of (complex double-float) will probably be best for arrays that only hold complexes 19:29:12 _3b: typed simple vectors 19:29:27 <_3b> stassats: you mean typed simple arrays? 19:29:49 no, i mean typed simple vectors, not typed SIMPLE-VECTORs 19:29:50 <_3b> since simple vectors can't be typed more specifically than T 19:29:55 <_3b> ok 19:30:10 A_A 19:30:22 <_3b> in that case, yeah... not adjustable or displaced 19:31:36 which complex operations 19:32:06 <_3b> + etc? 19:32:22 oh ok 19:32:23 cesarbp: or / (or, really multiplication by the reciprocal) 19:33:06 <_3b> maybe CIS as well 19:33:54 Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has joined #lisp 19:34:17 stassats: I don't know how I lived without C-c C-y all this time! However I'd like it better if it just reused the last prompt if it's still empty instead of unconditionally introducing a new one. I'm in the habit of C-c M-o'ing reflexively at regular intervals and like the cleanliness... See what I mean? 19:35:00 what do you mean? 19:36:01 Well, let's say I C-c M-o the REPL. And then I go in source code and use C-c C-y. I now have a "double-prompt" and it upsets my sense of aesthetics ;P Minor issue but should be easy enough to fix so I thought I'd mention it. 19:36:15 kk ty 19:36:17 C-c C-y doesn't do that 19:37:03 stassats: Oh, sorry. I probably messed up something earlier. Oh, actually I know exactly what happened. 19:37:36 It is C-c ~ that introduces a new prompt needlessly. 19:38:46 it's ,in that does it 19:39:09 and if the package doesn't change, it looks unnecessary 19:40:19 stassats: Ah, right. But that command syncs not only the package but also the directory, and I sometimes use it to sync the directory while I'm already in the right package. So if the package doesn't change it shouldn't introduce a new prompt. 19:40:29 antifuchs: "12:41:44 bloody hell. restarted chrome and the lisp-tips tip I was typing up is gone ):" <-- You can submit tips by email to lisptips@lisptips.com (it's the new address indicated, if it were me I'd make that submit@lisptips.com...), and then hopefully your email client (gmail in my case) saves drafts at regular intervals. 19:40:44 Xach: lisptips.com works but www.lisptips.com doesn't, in case you're not aware. 19:41:08 stassats: "14:25:05 i got more queued tips than johnson & johnson" "14:25:25 i queue them in my head" <-- Careful not to lose your head, then! ;) 19:42:20 i know what C-c ~ does, i wrote its current incarnation 19:43:31 -!- sabalaba [~sabalaba_@141.212.20.5] has quit [Remote host closed the connection] 19:45:08 Hexstream: www.lisptips.com works for me. 19:45:13 stassats: Ok, well that was in response to "it looks unnecessary", while I expected something like "it's indeed unnecessary". I was just making sure we were on the same page as to the use-case and expectable behavior from a naive user's perspective. I can understand that from an implementation perspective it completely makes sense, but that's missing the point... zomg this is long-winded. 19:46:02 Hexstream: fixed in CVS 19:46:03 Xach: Oh, it didn't earlier for me. Even just a few minutes ago I think. Maybe just a caching issue. It works now. (Did you pull a PG on me?) 19:46:20 stassats: Cool, thanks! 19:47:27 I don't know what that means. 19:47:34 So maybe I did and didn't know it. 19:47:37 all you mortals have to wait 15 minutes for it to hit public CVS 19:48:41 Xach: There was this viaweb story where a customer would call to report a bug and PG would fix it on the fly while the guy is still on the phone and then tell the customer to just try logging out and then back in to see if things work now and then the customer would think maybe they imagined the bug all along. 19:49:30 -!- EyesIsServer [~eyes@unaffiliated/eyesismine] has quit [Ping timeout: 258 seconds] 19:49:30 too bad slime isn't updated on the fly 19:49:44 I did not do that 19:49:54 Xach: Hehe, ok. 19:53:19 stassats: With Awesome CLOS Technology(tm) it would actually be feasible to implement :) You could have a live stream of minor fixes, when a new potential fix comes in the user can review the description and decide to apply it or not, if it's applied then the patch is applied live and the selection is persisted to disk. 19:53:34 Maybe in the successor to Slime :) 19:53:54 too bad fixes often bring in new bugs 19:54:12 well, if they didn't, we'd all be out of a job! 19:54:13 although users are good at spotting them 19:54:33 so, i don't test my code, i release it and wait 19:54:44 stassats: Exactly, hence why I'm suggesting this only for minor fixes, only with explicit user approval, and with an easy way to review the applied patches and selectively disable them, a bit like firefox extensions. 19:55:27 o_O but then your amount of releases'd grow exponentially, depending on whether or not a patch is applied 19:55:44 oh wait, you mean a per-package-patch? 19:57:00 stassats: Right, the bugs would be detected and fixed immediately, while the context is still fresh in the programmer's mind. Some call this "continuous integration", which is a concept I'm quite fond of. Thanks to CLOS we could apply this principle client-side without a restart, while historically this continuous integration thing has been mostly server-side + with a restart of some sort. 19:57:13 frozencemetery [~frozencem@128.237.114.120] has joined #lisp 19:57:40 as i think of it, why not let users fix code themselves 19:57:44 i'll sit and watch 20:00:22 d00mdr34m3r [~resu@97.72.154.166] has joined #lisp 20:00:46 That's not the right way to think about this... First of all, consider a system where by default notifications for new patches are only pushed when the patch has successfully been applied without reported problems to X users. And then you have early adopters that would set their "safety threshold" to 0 so they could immediately test the patches but it would be less stable... 20:01:23 i find that it's sometimes it's easy to send a patch then to describe a problem in english 20:01:30 akovalenko: "14:57:24 dsevilla: you'd better use shared-initialize for this purpose" <-- (where the purpose was initialization depending on other forms ) Why not INITIALIZE-INSTANCE? It's simpler... do you have a specific reason to prefer the former?... (maybe reinitialization? (but most people don't deal with that specifically)) 20:01:59 Hexstream: it depends on how you want to update instances, obviously 20:02:26 Ok. 20:04:48 BrokenCog [~daniel@ip98-162-173-207.pn.at.cox.net] has joined #lisp 20:05:04 Xach: "05:35:54 stassats: ouf, i can barely hit C-A" <-- Just C-c C-d A works... 20:05:24 A is also quite difficult! 20:05:31 *Xach* could barely type it even now 20:05:33 oh right, i should edit it 20:05:51 yakov [~yakov@176.14.242.250] has joined #lisp 20:06:18 Get a real keyboard with a real keyboard layout ;P Pressing the modifiers with one's thumbs is really quite convenient. 20:06:41 *p_l|backup* is planning to grab a Symbolics keyboard, now that he is back in UK 20:06:51 but i find myself rarely in need to use it (now with a winder screen) 20:07:13 but i guess it's indispensable when dealing with mcclim 20:08:28 Hexstream, like? 20:08:50 www.timematrix.com , and I can share my layout modifications for X. 20:09:02 Sorry, typematrix.com 20:09:23 *Hexstream* hopes timematrix.com is not some gay porn site. 20:09:28 can you share them in real-time? 20:09:40 fancy thingy 20:09:58 but as long as my main workstuff is a netbook, won't work (student... ) 20:10:13 stassats: Only in unreal-time, with current technology. 20:10:26 and is it wireless? 20:11:09 -!- zmv [~daniel@c953332e.virtua.com.br] has quit [Ping timeout: 252 seconds] 20:11:11 stassats: Typematrix? Not that I know of. 20:11:30 too bad, though i didn't want to buy it in the first place 20:12:43 -!- StrmSrfr [~user@208.72.159.205] has quit [Read error: Connection reset by peer] 20:12:59 StrmSrfr [~user@208.72.159.205] has joined #lisp 20:13:18 zmv [~daniel@c953332e.virtua.com.br] has joined #lisp 20:13:24 "free skin" offer is nice though, mine is getting worn out 20:13:31 -!- ska` [~user@ppp-58-8-215-244.revip2.asianet.co.th] has left #lisp 20:14:35 -!- FreeArtMan [~FreeArtMa@93.177.213.54] has quit [Remote host closed the connection] 20:14:38 stassats: Your skin is made of silicone? If not I think this will not be a suitable replacement. 20:15:06 fisxoj [~fisxoj@ool-44c7008f.dyn.optonline.net] has joined #lisp 20:15:16 what am i, a biologist? 20:15:37 phf [~phf@c-68-82-21-30.hsd1.pa.comcast.net] has joined #lisp 20:15:38 Who am I to tell you what you are? 20:15:55 how do i know? 20:16:32 It would be awesome if you took this to ##zippy-and-elisa 20:16:53 -!- StrmSrfr [~user@208.72.159.205] has quit [Read error: Connection reset by peer] 20:17:01 StrmSrfr [~user@208.72.159.205] has joined #lisp 20:17:42 -!- grouzen [~grouzen@ip21-159.200.109.crimea.com] has quit [Ping timeout: 244 seconds] 20:18:07 kpavn [~kpavn@77.41.103.59] has joined #lisp 20:21:00 -!- kenanb [~kenanb@94.54.237.227] has left #lisp 20:21:47 clarity_: xahlee.org/emacs/emacs_pinky.html worked for me 20:22:08 -!- gcv [~gcv@c-76-126-148-240.hsd1.ca.comcast.net] has quit [Quit: gcv] 20:24:13 -!- npoektop [~npoektop@213.141.130.13] has quit [Ping timeout: 240 seconds] 20:25:39 djanatyn [~user@173-13-139-236-sfba.hfc.comcastbusiness.net] has joined #lisp 20:27:13 Sometimes my hands hurt, more specifically the joints of the fingers and "in the bone". Is this a sign of RSI? 20:28:02 Sepok: Possibly. One way to find out is to learn Dvorak and see if the symptoms disappear. If they do then it was that ;P 20:29:32 Hexstream: Meh. Well, I could always rearrange my keyboard (got a Model M with removable key caps) and see if it makes any difference. 20:29:37 Euthy [~euthy@unaffiliated/euthydemus] has joined #lisp 20:30:06 a keyboard without letters would be better 20:30:06 Sepok: What?? No need to do that. You're not supposed to look at the keyboard while typing. 20:30:18 stassats: Typematrix has those!! ;P 20:31:01 I use Dvorak with control mapped to the key adjacent to space 20:32:24 Hexstream: True, but learning a new layout is hard. Also, trying to type in passwords will be harder as those are 'stored as muscle memories'. 20:32:55 -!- ISF [~ivan@201.82.136.131] has quit [Quit: WeeChat 0.3.5] 20:33:51 The password problem can be addressed by changing your passwords. One of the good things about learning a new keyboard layout is that it is kind of hard, but it will also make you aware of certain poor choices you may be making in posture and such. 20:34:03 Sepok: It's a worthwhile skill to learn for any profession that includes a good amount of interaction with computers. 20:34:37 Hexstream: I'll think about it. 20:35:31 ISF [~ivan@201.82.136.131] has joined #lisp 20:39:46 -!- shesahskeeze [~kitty@adsl-68-254-166-15.dsl.milwwi.ameritech.net] has quit [Read error: Connection reset by peer] 20:40:38 EyesIsServer [~eyes@unaffiliated/eyesismine] has joined #lisp 20:42:13 -!- d00mdr34m3r [~resu@97.72.154.166] has quit [Quit: Lost terminal] 20:42:31 -!- Hexstream [~hexstream@modemcable075.97-200-24.mc.videotron.ca] has left #lisp 20:48:06 grouzen [~grouzen@ip21-159.200.109.crimea.com] has joined #lisp 20:49:59 gravicappa [~gravicapp@ppp91-77-166-120.pppoe.mtu-net.ru] has joined #lisp 20:59:21 -!- jdz [~jdz@host252-105-dynamic.14-87-r.retail.telecomitalia.it] has quit [Remote host closed the connection] 21:01:27 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has left #lisp 21:03:06 -!- killerboy [~mateusz@users69.kollegienet.dk] has quit [Read error: Operation timed out] 21:03:10 -!- zmv [~daniel@c953332e.virtua.com.br] has quit [Ping timeout: 260 seconds] 21:03:29 -!- StrmSrfr [~user@208.72.159.205] has quit [Ping timeout: 258 seconds] 21:04:02 zmv [~daniel@c953332e.virtua.com.br] has joined #lisp 21:05:05 dsevilla [532b4be7@gateway/web/freenode/ip.83.43.75.231] has joined #lisp 21:06:36 StrmSrfr [~user@208.72.159.205] has joined #lisp 21:11:23 mapping caps-lock to ctrl sufficed to not just relieve pain but not having it at all, even though many people write that it didn't help a bit 21:11:40 i think the difference is that i don't use caps-lock exclusively, but as an option: for C-z, C-x, C-c or C-M-z, i use ctrl, most other things, including C-TAB, i use caps-lock (i don't actually have a rule) 21:12:21 Madsn [~madsn@x1-6-00-18-4d-a9-aa-10.k249.webspeed.dk] has joined #lisp 21:12:38 the drawback is that i end up typing many uppercase characters in other people's machines 21:13:29 -!- ISF [~ivan@201.82.136.131] has quit [Read error: Connection reset by peer] 21:14:47 dwim [~dwim@170.Red-79-156-37.staticIP.rima-tde.net] has joined #lisp 21:15:59 -!- sdemarre [~serge@91.176.76.6] has quit [Ping timeout: 248 seconds] 21:16:29 francogrex [~user@109.130.138.187] has joined #lisp 21:17:02 ISF [~ivan@201.82.136.131] has joined #lisp 21:17:31 -!- zmv [~daniel@c953332e.virtua.com.br] has quit [Ping timeout: 252 seconds] 21:19:26 zmv [~daniel@c953332e.virtua.com.br] has joined #lisp 21:19:32 -!- nha [~prefect@5-74.104-92.cust.bluewin.ch] has quit [Read error: Operation timed out] 21:20:03 heh 21:21:51 -!- mishoo_ [~mishoo@79.112.115.118] has quit [Ping timeout: 248 seconds] 21:22:06 Does anyone consider submitting their research to a peer reviewed journal (like programming and computer software)? there is an unjustified lack of lisp based studies there 21:24:33 somebody does research? 21:24:36 anyway the question came up when I was looking for decompilation algorithms... 21:25:23 well anyone is free to do research 21:26:45 anyway, would it be possible to decompile a fasl file if one doesn't have the original code anymore? 21:26:58 into something sensible? no 21:28:42 is rebinding constants illegal clisp doesn't it but sbcl does. (let ((pi 10)) pi) 21:28:46 hmm... well at least into something 'understandable'... 21:28:49 doen't mind it 21:29:10 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 21:29:38 jpop: consequences are undefined 21:29:49 sbcl do'sn't let you do it 21:30:05 clisp just silently accepts it 21:30:09 jpop: unless you bind it to the same value.. 21:30:46 "The consequences are undefined when constant symbols are rebound as either lexical or dynamic variables" 21:30:51 adeht: actually, you can't rebind. you can defconstant again with the same value 21:30:52 actually SBCL seems to be buggy in this respect, because it signals an error 21:31:04 and what about setf'ing it does clisp let you do that? 21:31:10 adeht: I don't see the bug. 21:31:17 I've just tried. lispworks, ccl, allegro complain about it too 21:31:19 oh.. I misread 21:31:39 pkhuong: yes.. I mixed up the two paragraphs in defconstant's CLHS entry 21:32:37 -!- kpavn [~kpavn@77.41.103.59] has quit [Ping timeout: 258 seconds] 21:32:39 realitygrill_ [~realitygr@adsl-76-226-120-136.dsl.sfldmi.sbcglobal.net] has joined #lisp 21:33:14 -!- phf [~phf@c-68-82-21-30.hsd1.pa.comcast.net] has quit [Remote host closed the connection] 21:33:35 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Client Quit] 21:33:37 don't like how clisp just silently accepts code like that 21:33:47 even with -ansi 21:34:36 -!- Madsn [~madsn@x1-6-00-18-4d-a9-aa-10.k249.webspeed.dk] has quit [Ping timeout: 255 seconds] 21:35:28 -!- realitygrill [~realitygr@adsl-76-226-137-34.dsl.sfldmi.sbcglobal.net] has quit [Ping timeout: 256 seconds] 21:35:28 -!- realitygrill_ is now known as realitygrill 21:35:52 DaDaDosPrompt [~DaDaDosPr@184.99.29.100] has joined #lisp 21:36:37 -!- francogrex [~user@109.130.138.187] has quit [Remote host closed the connection] 21:38:03 ngz [~user@80.105.193.77.rev.sfr.net] has joined #lisp 21:38:56 attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has joined #lisp 21:38:57 -!- attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has quit [Changing host] 21:38:57 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 21:42:06 -!- mattc [~user@ppp118-209-230-154.lns20.mel6.internode.on.net] has quit [Ping timeout: 260 seconds] 21:44:17 -!- dwim [~dwim@170.Red-79-156-37.staticIP.rima-tde.net] has quit [Ping timeout: 252 seconds] 21:46:00 dnolen [~davidnole@cpe-98-14-92-234.nyc.res.rr.com] has joined #lisp 21:46:57 Sepok` [~user@d83-183-51-82.cust.tele2.se] has joined #lisp 21:46:58 -!- neena [~neena@pi.nipl.net] has quit [Quit: leaving] 21:47:01 npoektop [~npoektop@213.141.130.13] has joined #lisp 21:48:11 -!- billstclair [~billstcla@unaffiliated/billstclair] has quit [Quit: Leaving...] 21:48:49 -!- Sepok [~user@d83-183-51-82.cust.tele2.se] has quit [Read error: Operation timed out] 21:51:13 Hello Dragons! 21:51:58 *wbooze* puffs out a dark and dusty smoke! 21:52:05 Just t be sure, its not portably possbile to shaddow a generic function right? 21:52:06 you see! 21:52:08 lol 21:52:27 mon_key: any function can be shadowed 21:52:44 mon_key: in fact, it is not the function that is shadowed, but the symbol 21:53:05 H4ns: as if by flet? 21:53:55 mon_key: ah, different thing. but again, it does not matter whether you're rebinding a generic or a normal function with flet 21:55:14 H4ns: OK. Thanx! 21:55:16 There was a generic-flet, but it was taken out. 21:55:19 except when the said function is from CL 21:55:38 stassats: yes, my current problem 21:55:56 Bike: Yeah, I google generic-flet before asking here. 21:56:33 why do you want to do that? 21:56:57 -!- MoALTz [~no@host-92-18-23-195.as13285.net] has quit [Quit: Leaving] 21:58:12 stassats: I wanted to do something with CL:SLOT-UNBOUND 21:58:26 what? 21:59:52 I'm printing instances of objects with 72 slots and I don't want cl:slot-unbound to bitch during this but otherwise i would like to know about the unbound slot. 22:00:37 mon_key: you can't do that with a local function. function bindings are not dynamic. 22:00:55 use a proper print-object method 22:01:27 -!- blacktooth [~blacktoot@pi.nipl.net] has left #lisp 22:01:55 H4ns: OK. Reason i asked. I rememberd `generic-flet' and thought maybe i could use that but then realized it was removed from spec, then got curious. 22:01:56 -!- ISF [~ivan@201.82.136.131] has quit [Ping timeout: 276 seconds] 22:02:21 generic-flet wouldn't help you 22:02:34 you could use add-method/remove-method for that, but it seems silly 22:02:35 mon_key: even a generic-flet would not be dynamic. the names of local functions are visible only in their lexical context. 22:02:54 hi 22:03:04 is it possible to get the s-expression of a function? 22:03:12 topo: not portably 22:03:15 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 258 seconds] 22:03:24 adeht: that's a bad idea with threads. ContextL gets it right: insert additional methods and use a special to enable/disable them. 22:03:47 if i have a function and then i execute it dynamically , is there any way of getting back that lisp tree that i executed? 22:03:52 is it stored anywhere? 22:03:54 why not use slot-boundp in the printing function 22:03:55 topo: not portably 22:04:02 so this wouldn't work 22:04:02 22:04:03 (defun tt--ffleting (object) (generic-flet ((slot-unbound (c i sn) (print "FOO"))) (print (slot-accessor object)))) 22:04:08 H4ns: what do you mean with that? 22:04:12 not portable? 22:04:26 topo: sometimes it is, usually it is not, and we can't know how to get it until we know what Lisp do you use 22:04:28 it means you shouldn't rely on that in your program 22:04:37 topo: it could be that your implementation stores s-expressions of definitions, but in general, you can't 22:04:40 topo: it means "forget it" 22:04:42 i use sbcl 22:04:45 mon_key: no. 22:04:48 adeht: Yes i thought abotu add/remove-method but as you say that seems silly 22:05:16 sbcl stores s-expressions? 22:05:26 mon_key: why don't you test the slot before trying to access it? 22:05:26 why are you asking? 22:05:29 what do you mean with implementation H4ns ? 22:05:32 topo SBCL compiles s-expressions to machine code by default 22:05:39 did you lost the code to your function? 22:05:41 topo: sbcl, clisp, clozure cl 22:05:47 is it possible to get them back 22:05:51 topo: no. 22:05:54 i need to sonify them 22:06:00 do what? 22:06:01 H4ns: I'm lazy.. 72 is not a small number of slots :) 22:06:05 topo is it possible to get cow back out of a hamburger? 22:06:17 interpret s-expression as sound 22:06:25 mon_key: write a macro to do it for you 22:06:27 i guess ignore-errors will work 22:06:33 Beetny [~Beetny@ppp118-208-0-254.lns20.bne1.internode.on.net] has joined #lisp 22:06:34 mon_key: pkhuong's solution may work for you 22:06:54 ummm well in that programming language called supercollider you can send functions to the server and then you can have them back from the server 22:07:07 or the condition system. Or just generate the code right in the first place. 22:07:08 topo: lisp is not supercollider 22:07:09 i was wondering if something like this is possible in common lisp 22:07:12 -!- mtd [~martin@chop.xades.com] has quit [Ping timeout: 256 seconds] 22:07:22 lisp has no servers 22:07:23 topo: NO, do you read what we write at all? 22:07:37 adeht: that solution being ContextL? 22:07:53 topo you could send lisp forms and then compile them on other machine 22:08:20 mtd [~martin@chop.xades.com] has joined #lisp 22:08:54 mon_key: a method + special variable 22:08:57 what is that useful for jpop ? 22:09:17 this is like a broken telephone 22:09:44 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has left #lisp 22:09:48 adeht: ok thanx. 22:10:27 H4ns: adhet: stassats: pkhuong: Thanks for your input 22:10:36 mon_key: enjoy 22:12:46 -!- concave [~concave@c-24-118-48-38.hsd1.mn.comcast.net] has quit [] 22:15:28 -!- rme [rme@696C65D6.F26E1912.699BA7A6.IP] has quit [Quit: rme] 22:15:28 -!- rme [~rme@50.43.156.82] has quit [Quit: rme] 22:17:12 -!- H4ns [43174196@gateway/web/freenode/ip.67.23.65.150] has quit [Ping timeout: 252 seconds] 22:17:35 H4ns [43174196@gateway/web/freenode/ip.67.23.65.150] has joined #lisp 22:19:17 dto [~dto@pool-96-252-89-130.bstnma.fios.verizon.net] has joined #lisp 22:19:40 -!- yakov [~yakov@176.14.242.250] has quit [Ping timeout: 256 seconds] 22:20:42 killerboy [~mateusz@users69.kollegienet.dk] has joined #lisp 22:21:31 pinterface [~pinterfac@173-20-55-85.client.mchsi.com] has joined #lisp 22:21:44 -!- killerboy [~mateusz@users69.kollegienet.dk] has quit [Client Quit] 22:21:49 killerboy [~mateusz@users69.kollegienet.dk] has joined #lisp 22:21:59 -!- gravicappa [~gravicapp@ppp91-77-166-120.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 22:31:53 zmv_ [~daniel@c953332e.virtua.com.br] has joined #lisp 22:34:54 -!- zmv [~daniel@c953332e.virtua.com.br] has quit [Ping timeout: 255 seconds] 22:35:48 gienah [~mwright@ppp121-44-70-112.lns20.syd6.internode.on.net] has joined #lisp 22:36:31 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 248 seconds] 22:36:37 -!- zmv_ [~daniel@c953332e.virtua.com.br] has quit [Ping timeout: 240 seconds] 22:36:51 zmv [~daniel@c953332e.virtua.com.br] has joined #lisp 22:39:03 Kron_ [~Kron@69.166.23.238] has joined #lisp 22:39:12 wow 22:39:20 pretty filled channel 22:42:14 i can't recall, how to capture stdout to string? 22:42:45 stdout? 22:42:51 you can format nil can't you? 22:42:54 standard output 22:43:03 i mean if i call a function that prints to stdout 22:43:08 (with-output-to-string (*standard-output*) ...) 22:43:09 ahhh 22:43:11 you locall- 22:43:14 dammit beat me to it 22:43:23 you locally bind stdout to a variable 22:43:32 that's it thanks 22:43:51 Can anyone tell me if lispbuilder is well maintained? 22:44:02 Kron_: quite well 22:44:04 I'm thinking of creating a small 2D game, and I am wondering if lisp is an okay option 22:44:09 okay thanks :3 22:44:24 jpop: it is *standard-ouput*, not stdout, though. stdout is from c and usually refers to file descriptor 1 22:44:40 Kron_: Its networking libs are pretty worthless as far as I've understood though 22:44:45 oh :( 22:44:51 I do want it to be multipalyer though 22:44:51 at least I haven't heard complaints from a guy who quite recently made a 2D game with it (it was a marathon competition - ~24h to make a game, team assembled out of people attending) 22:45:02 ooh 22:45:05 Kron_: just use iolib or usocket 22:45:15 SDL interface is good and usable 22:45:16 Kron_: Oh, no problems, just use another networking library. 22:45:22 oh there are others? 22:45:24 thanks! 22:45:25 well 22:45:33 there seem to be some libraries built on top of lispbuilder 22:45:35 like blackthorn 22:45:48 are any of them useful or should I avoid them? x.x 22:45:56 Kron_: there's usocket, which is the most portable, and iolib that is more advanced, but afaik doesn't play well with windows 22:45:59 Kron_: Blackthorne is probably built upon Lispbuilder-SDL and CL-GL (name?) 22:46:12 Kron_: blackthorn uses mainly the SDL support from lispbuilder 22:46:18 usocket then 22:46:37 alanpearce [~alan@home.alanpearce.co.uk] has joined #lisp 22:46:47 alright well would you recommend using blackthorne or lispbuilder or should I try to figure out which would be better for my game by myself? 22:47:03 Is it only I that have found Lispbuilder-SDL to be very confusing in its design? Though I visited it about 4 months ago, perhaps my views has changed 22:47:36 Kron_: Use Lispbuilder-SDL. Keep it simple. 22:49:14 okay! 22:49:33 <|3b|> every layer you add means fewer other people who picked the same combination (not many lispers to start with, and few of those working on games, then the ones of that picked sdl, not many left once you get to a specific lib on top of that) 22:50:23 -!- fisxoj [~fisxoj@ool-44c7008f.dyn.optonline.net] has quit [Ping timeout: 248 seconds] 22:50:29 <|3b|> so a particular lib might be good, but you might not be able to get much help figuring it out from anyone but the original author :/ 22:51:21 Mhm. He could always wait for the Blocky beta-release in a month 22:51:25 gotcha 22:51:31 |3b|: heh. I think quite a lot of the game-developer lispers picked either GL or lispbuilder-sdl (or both) :D 22:51:34 I'm just so glad I've found a lisp using community already 22:51:43 I used to program almost purely in lisp through high school 22:51:47 <|3b|> p_l|backup: or glfw or glop 22:51:50 and around a year or two ago I stopped programming 22:51:54 and I'm trying to get back into it 22:52:01 thankfully I left myself SCADS of libraries 22:52:03 -!- gcentauri [~gcentauri@76-85-193-191.cable.inebraska.com] has quit [Ping timeout: 245 seconds] 22:52:04 |3b|: both are utility libs for GL, aren't they 22:52:04 all rather well documented 22:52:51 <|3b|> p_l|backup: right, there is a bit of convergence at the GL level luckily (though still 2 or 3 other options besides cl-opengl) 22:53:01 Kron_: There's #lispgames, if you didn't know, that might help 22:53:19 oooh 22:53:22 where is that? 22:53:26 quasisane [~sanep@c-76-24-80-97.hsd1.nh.comcast.net] has joined #lisp 22:53:27 on freenode 22:53:29 freenode. 22:53:29 segyr [~terje@230.85-200-233.bkkb.no] has joined #lisp 22:53:39 thanks :3 22:53:50 billstclair [~billstcla@unaffiliated/billstclair] has joined #lisp 22:55:47 -!- ngz [~user@80.105.193.77.rev.sfr.net] has quit [Ping timeout: 252 seconds] 22:58:01 oooh 22:58:08 -!- Mandus [~aasmundo@oro.simula.no] has quit [Remote host closed the connection] 22:58:08 I used to use SBCL, but now I'm on Windows 22:58:24 does anyone know any good common lisp implementations for windows? :x 22:58:44 Kron_: clozure cl works well, as does clisp, lispworks, allegro cl 22:58:44 Kron_: CCL 22:58:51 Kron_: the latter two being non-free 22:59:00 that's also what was used by my friend for his game 22:59:02 have good experience with CCL on windows too 22:59:09 (he is mainly a windows user) 22:59:10 <|3b|> there is a fork of sbcl that works better on windows also 22:59:20 isn't clozure not common lisp? 22:59:29 <|3b|> clozure != clojure 22:59:30 that's clojure 22:59:33 ohh 22:59:37 clozure = common lisp? okay 22:59:52 hmmm 22:59:57 clisp is slow last I checked 23:00:06 Kron_: might be fast enough, though 23:00:11 akovalenko: gbbopen stuff is screwed up in complicated ways that i failed at untangling 23:00:30 between different implementations of the same language, I would prefer to use the fastest though 23:00:42 particularly because I suspect my game may be computationally taxing 23:01:18 <|3b|> ccl can be reasonably fast 23:01:45 Kron_: get Clozure, best performance & stability mix among free implementations 23:01:49 eheh, the dead characters are taxfree! 23:01:52 lol 23:01:59 How fast is Clisp anyway? 23:01:59 *|3b|* hasn't seen any real comparisons between code optimized for ccl and sbcl by people who know how to optimize for each... seems like most people worried about optimization use sbcl 23:02:04 but only in a game.....bleh 23:02:09 okay will do! 23:02:49 Mandus [~aasmundo@rc.simula.no] has joined #lisp 23:09:00 lemoinem [~swoog@216.252.67.140] has joined #lisp 23:09:42 -!- lemoinem [~swoog@216.252.67.140] has quit [Client Quit] 23:10:19 Pretty sure the answer is no, but just in case I'm missing it: Does CFFI have anything like Clisp FFI's :out and :in-out options? 23:11:35 lemoinem [~swoog@216.252.67.140] has joined #lisp 23:13:45 bege [~bege@S0106001d7e5132b0.ed.shawcable.net] has joined #lisp 23:15:41 pinterface: no 23:15:56 Sepok`: not as fast as sbcl :) 23:16:27 -!- homie [~levgue@xdsl-78-35-136-96.netcologne.de] has quit [Read error: Operation timed out] 23:16:49 wbooze` [~levgue@xdsl-78-35-145-59.netcologne.de] has joined #lisp 23:16:58 homie` [~levgue@xdsl-78-35-145-59.netcologne.de] has joined #lisp 23:17:05 fe[nl]ix: Thought so. Thanks for confirming! 23:17:58 madnificent: Yeah yeah, but is it... Python fast? Or is it Ruby fast? I know that these kind of questions doesn't really work 'cuz they perform different at different things but still :) 23:18:34 Sepok`: it's faster than python and ruby 23:18:56 -!- ch077179 [~ch077179@unaffiliated/ch077179] has quit [Ping timeout: 260 seconds] 23:18:59 BrianRice: Oh, then CLisp is pretty much fast enough for most stuff 23:19:13 -!- segyr [~terje@230.85-200-233.bkkb.no] has quit [Quit: segyr] 23:19:14 it is. I've used it for paying work and it held up fine 23:19:25 gcentauri [~gcentauri@76-85-192-184.cable.inebraska.com] has joined #lisp 23:19:44 -!- wbooze [~levgue@xdsl-78-35-136-96.netcologne.de] has quit [Ping timeout: 256 seconds] 23:19:54 kenanb [~kenanb@94.54.237.227] has joined #lisp 23:22:02 Vivitron [~user@pool-108-7-56-243.bstnma.fios.verizon.net] has joined #lisp 23:22:56 khaliG [~khali@203.171.126.201.static.rev.aanet.com.au] has joined #lisp 23:23:15 -!- homie` [~levgue@xdsl-78-35-145-59.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 23:23:21 -!- wbooze` [~levgue@xdsl-78-35-145-59.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 23:23:49 Sepok`: I think comparing clisp to Ruby, especially pre-1.9 ruby (which is still around in production), is like comparing a mid-war barn-duster with post-ww2 early-gen fighter jet ;-) 23:26:10 who is the jet? :) 23:26:17 jpop: clisp 23:26:19 what about SBCL? 23:26:22 LOL 23:26:48 Kron_: that's Concorde/Tu-144, trolling jet bombers with Mach 2 *super-cruise* 23:28:24 anyway, there's no comparison for Ruby 1.8. Python and Ruby 1.9 afaik are slightly better, but I don't know how far their compilation goes 23:28:47 I recall Python's bytecode being quite close to AST dump, or so the docs claimed 23:29:38 this is interesting. no clisp though. http://shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=python3&lang2=sbcl 23:30:00 python 3 up to 75 times slower than sbcl 23:31:31 is it just me or is it that the slower Python is, the less influence I/O and things that simply call a well-optimized C lib have? 23:32:32 jpop: Pretty sure that's typed SBCL though, you should account for that 23:32:39 homie [~levgue@xdsl-78-35-145-59.netcologne.de] has joined #lisp 23:33:29 wbooze [~levgue@xdsl-78-35-145-59.netcologne.de] has joined #lisp 23:34:14 Sepok`: you should also account for the fact that you can't do that kind of typing in Python or Ruby 23:34:57 p_l|backup: Fair enough 23:35:40 CL has quite a bit of tools to work when you need to wring some extra cycles deep in a loop 23:36:18 kpreid [~kpreid@cpe-67-249-228-147.twcny.res.rr.com] has joined #lisp 23:36:29 though I haven't yet the profilers available, something to rectify soon (so far I had nothing performance related to deal with, so...) 23:36:49 gah 23:36:55 where is .emacs in Windows? 23:37:11 -!- Kron_ is now known as Kron 23:37:14 Kron_: depends on your HOME environment variable, which is not normally set 23:37:23 Kron: did you install emacsw32? 23:37:31 yes 23:37:32 HOME 23:37:33 thanks 23:37:37 without it I think it's c:\user\your_username 23:37:42 or whatever the path is 23:37:55 pnq [~nick@ACA21052.ipt.aol.com] has joined #lisp 23:38:09 how do you display that? 23:38:10 HOME? 23:38:39 My Win .emacs is under %appdata%. It's also...rather old. :/ 23:38:40 <|3b|> just open ~/.emacs from emacs 23:38:52 <|3b|> and whereever it ends up is where it expects to find it :) 23:38:57 it's C:\Windows\system32 23:38:58 =/ 23:39:04 okay how do I change it? 23:39:05 o_O 23:39:23 Kron: set the HOME environment variable (in your computer settings) 23:39:25 how old is that windows version? 98? 23:39:31 hmmm 23:39:37 no wait now it's in AppData. Weird. 23:39:39 okay sure 23:40:00 will that screw with any other programs? 23:40:06 It probably should be in appdata 23:40:08 Kron: no. 23:40:41 Only if they're expecting settings in %appdata%\.emacs :P 23:41:54 -!- urandom__ [~user@p548A5F31.dip.t-dialin.net] has quit [Remote host closed the connection] 23:42:29 it works! 23:42:33 now for SLIME! 23:42:45 use quicklisp for that. :) 23:45:04 okay weird 23:45:14 why does C-x C-f always open up in C:\Windows\System32 :P 23:45:29 Kron: Because that's your current working directory (?) 23:45:34 maybe 23:45:52 Kron: define an application shortcut for windows that has a better default working directory 23:46:00 Open up a file and do a C-x C-f again 23:46:19 Is it still in C:\blahblah-whatyousaid 23:46:21 Kron: iirc, the default emacsw32 installation creates an emacsclient application shortcut that you can change to suit 23:47:00 ok 23:50:00 Kron, or more drastically, you could set a %HOME% global. 23:50:15 IIRC, EmacsW32 checks that. 23:51:03 I've managed to move HOME to Users/Kron 23:51:31 You gave it an absolute path name, right? 23:51:52 "You can change your socks or you can change your socks." 23:51:52 (If you're talking about environment variables) 23:52:04 http://groups.google.com/group/comp.lang.lisp/msg/767a42d3e2f44b6e 23:53:17 pizzledizzle [~pizdets@pool-96-250-220-99.nycmny.fios.verizon.net] has joined #lisp 23:54:58 afk 23:59:57 attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has joined #lisp 23:59:59 -!- attila_lendvai [~attila_le@catv-80-98-25-142.catv.broadband.hu] has quit [Changing host] 23:59:59 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp