00:01:12 although i'm sure it's not bad, it shouldn't be the last book about Lisp you read, CLHS always has the last say 00:09:40 -!- agumonkey [~agu@85.158.70.86.rev.sfr.net] has quit [Ping timeout: 252 seconds] 00:10:29 -!- flanfl [~flanfl@cpc1-sgyl27-2-0-cust785.sgyl.cable.virginmedia.com] has quit [Remote host closed the connection] 00:14:04 -!- TimKack [~user@d115007.upc-d.chello.nl] has quit [Ping timeout: 255 seconds] 00:25:48 -!- fold [~fold@71-8-117-85.dhcp.ftwo.tx.charter.com] has quit [Ping timeout: 252 seconds] 00:29:56 gurrag [~gurrag@bb-216-195-184-91.gwi.net] has joined #lisp 00:29:56 -!- gurrag [~gurrag@bb-216-195-184-91.gwi.net] has quit [Changing host] 00:29:56 gurrag [~gurrag@unaffiliated/gurrag] has joined #lisp 00:30:46 quazimodo [~quazimodo@c27-253-100-110.carlnfd2.nsw.optusnet.com.au] has joined #lisp 00:31:46 -!- pnq [~nick@ACA2264A.ipt.aol.com] has quit [Ping timeout: 244 seconds] 00:36:17 peterhil [~peterhil@gatekeeper.brainalliance.com] has joined #lisp 00:36:37 -!- jtza8 [~jtza8@196-210-172-211.dynamic.isadsl.co.za] has quit [Remote host closed the connection] 00:38:40 4 00:41:07 -!- tessier [~treed@kernel-panic/copilotco] has quit [Ping timeout: 240 seconds] 00:41:14 -!- peterhil [~peterhil@gatekeeper.brainalliance.com] has quit [Ping timeout: 265 seconds] 00:41:21 3 00:41:24 2 00:41:25 1 00:41:54 you couldn't ignore it, could you? 00:42:06 nope 00:42:35 0 00:43:08 sorry shitty term emu on my phone. wont let me switch irssi to another # 00:48:30 tsuru`` [~charlie@adsl-74-179-29-120.bna.bellsouth.net] has joined #lisp 00:49:37 -!- cyphase [~cyphase@unaffiliated/cyphase] has quit [Ping timeout: 240 seconds] 00:51:06 -!- tsuru` [~charlie@adsl-98-87-43-250.bna.bellsouth.net] has quit [Ping timeout: 264 seconds] 00:51:29 -!- Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has quit [Remote host closed the connection] 00:53:07 -!- Arbamisto [~Arbamisto@67.197.37.202] has quit [Ping timeout: 240 seconds] 00:53:37 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 240 seconds] 00:54:32 -!- edgar-rft [~GOD@HSI-KBW-078-043-123-191.hsi4.kabel-badenwuerttemberg.de] has quit [Quit: Mental vacuum] 00:54:58 Arbamisto [~Arbamisto@67.197.37.202] has joined #lisp 00:56:13 wakeup [~max@xdsl-89-0-191-132.netcologne.de] has joined #lisp 00:56:16 hi all 00:56:37 is there some definitive way to specify a certain unicode char as a literal in CL? 00:57:08 Found out tha CCL doesn't have #\Next-Line for instane 00:59:43 whereas sbcl doesnt know #\U+0085 (which is #\Next-Line on CCL) 00:59:50 zodiac1111 [~zodiac111@101.68.104.132] has joined #lisp 01:00:28 -!- phelps_ [~cinch@2001:470:1f0f:2fa:d49d:7249:1723:efc2] has quit [Remote host closed the connection] 01:00:43 -!- rmarianski [~rmariansk@mail.marianski.com] has quit [Quit: leaving] 01:02:26 cyphase [~cyphase@unaffiliated/cyphase] has joined #lisp 01:05:41 cl-unicode perhaps 01:05:49 -!- iocor [~textual@unaffiliated/iocor] has quit [Quit: Computer has gone to sleep.] 01:06:31 stardiviner [~stardivin@122.236.251.89] has joined #lisp 01:10:24 -!- fantazo_ [~fantazo@213.129.230.10] has quit [Ping timeout: 250 seconds] 01:10:44 peterhil [~peterhil@91-157-48-51.elisa-laajakaista.fi] has joined #lisp 01:10:50 -!- fantazo [~fantazo@213.129.230.10] has quit [Ping timeout: 250 seconds] 01:12:33 hmm, another thing, CCL (on ARM32) complains that a variable +foo+ is unbound, while i am pretty sure it is a constant, unless defconstant behaves differently in CCL than in SBCL? 01:12:54 wakeup: perhaps a package problem? 01:13:02 (apropos "+FOO+") 01:15:13 CampinSam [~user@24-176-98-217.dhcp.jcsn.tn.charter.com] has joined #lisp 01:15:17 chu [~chu@unaffiliated/chu] has joined #lisp 01:15:40 -!- pnathan [~Adium@75.87.250.229] has quit [Quit: Leaving.] 01:16:15 its defined and used in he same package only 01:16:47 Then it's a question of WHEN it is used. 01:17:02 defconstant has compilation-time and run-time effects, but no read-time effect. 01:17:42 and in SBCL it has? 01:17:45 So if you want the run-time effects of defconstant to be available at a following read-time, you need to wrap it in an eval-when. 01:18:14 (eval-when (:compile-toplevel :load-toplevel :execute) (defconstant +foo+ 42)) (defvar *x* '(#.+foo+)) 01:18:50 I dont think I want that 01:19:00 We don't know what you want. 01:19:12 yeah me neither right now sry 01:19:43 I tried prefixing it with #., no luck 01:19:49 That said, compilation-time/run-time effects of the various cl:def* macros are sometimes implementation dependant. 01:20:40 To be able to use a constant with #. (at read-time, while compilation), you must make sure the run-time effects of defconstant are evaluated at compilation time. 01:20:45 Hence the eval-when form. 01:27:09 it had to do with #. 01:27:15 -!- iLogical [~iLogical@unaffiliated/ilogical] has quit [Remote host closed the connection] 01:27:27 just smapped the constants with defparams 01:28:06 ouch 25 times slower then on sbcl on a celeron... yay ARM :) 01:28:43 if I knew there was no sbcl arm port I would have thought twice about buying this box 01:28:55 but who can rest 13 hours of battery? 01:29:36 defparameter won't make things better than defconstant if you use #. 01:29:55 I just stopped using #. 01:30:05 Here. The right thing to do. 01:30:28 An alternative to eval-when is to put the defconstant/defparameter in a separate file, and compile and load it before using #. 01:30:29 performance gain of defconstant cant be that grat? 01:30:44 wakeup: defconstant gives freedom to the compiler to inline the value. 01:31:17 so eg. for small integers, it can use immediate instructions, instead of fetching a value from a dynamic symbol value slot. 01:31:21 and unboxing it. 01:31:29 I usually have a "compiler" directory in my source tree that contains files with macros, constants, etc, needed before the compilation of the rest of the system. 01:32:54 guess I will have to investigate the impact of these changes furter 01:33:25 but I think I get your points 01:33:31 pnathan [~Adium@64.126.142.148] has joined #lisp 01:34:12 -!- _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has quit [Ping timeout: 255 seconds] 01:34:55 _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has joined #lisp 01:38:14 k0001 [~k0001@host76.190-228-122.telecom.net.ar] has joined #lisp 01:42:06 -!- timack [~timack@hlfx59-2a-205.ns.sympatico.ca] has quit [Ping timeout: 264 seconds] 01:42:43 kanru` [~kanru@36-226-34-183.dynamic-ip.hinet.net] has joined #lisp 01:43:14 -!- dan64 [~dan64@dannyadam.com] has quit [Excess Flood] 01:43:25 timack [~timack@hlfx59-1-48.ns.sympatico.ca] has joined #lisp 01:45:51 mjonsson [~mjonsson@38.109.95.133] has joined #lisp 01:48:11 -!- ukscone [~Russell@cpe-24-193-113-179.nyc.res.rr.com] has left #lisp 01:50:26 pnq [~nick@AC81183D.ipt.aol.com] has joined #lisp 01:50:28 phelps_ [~cinch@74.196.97.195] has joined #lisp 01:53:57 -!- Trystam is now known as Tristam 01:59:25 dan64 [~dan64@dannyadam.com] has joined #lisp 01:59:26 -!- dan64 [~dan64@dannyadam.com] has quit [Excess Flood] 02:00:37 -!- pnathan [~Adium@64.126.142.148] has quit [Quit: Leaving.] 02:01:14 Quaydon [~aaaaaaa@cpe-024-074-028-225.carolina.res.rr.com] has joined #lisp 02:03:42 -!- zeroish [~zeroish@135.207.174.50] has quit [Ping timeout: 264 seconds] 02:12:15 DDR [~chatzilla@d172-218-2-5.bchsia.telus.net] has joined #lisp 02:12:40 -!- _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has quit [Read error: Connection reset by peer] 02:17:05 ice [~ice@123.114.53.196] has joined #lisp 02:18:05 -!- ice_ [~ice@123.123.252.198] has quit [Ping timeout: 246 seconds] 02:20:55 dan64 [~dan64@dannyadam.com] has joined #lisp 02:20:55 -!- dan64 [~dan64@dannyadam.com] has quit [Excess Flood] 02:21:01 kmcorbett [~kmcorbett@173-9-35-41-NewEngland.hfc.comcastbusiness.net] has joined #lisp 02:24:10 dan64 [~dan64@dannyadam.com] has joined #lisp 02:24:10 -!- dan64 [~dan64@dannyadam.com] has quit [Excess Flood] 02:25:23 -!- phelps_ [~cinch@74.196.97.195] has quit [Remote host closed the connection] 02:25:51 -!- lars_t_h [~lars_t_h@002129070251.mbb.telenor.dk] has quit [Quit: Leaving] 02:28:35 homie` [~levgue@xdsl-78-35-167-251.netcologne.de] has joined #lisp 02:29:58 ebobby [~fms@70-36-138-190.dsl.dynamic.sonic.net] has joined #lisp 02:30:33 -!- homie [~levgue@xdsl-78-35-171-82.netcologne.de] has quit [Ping timeout: 245 seconds] 02:30:56 Is using macros to generate functions a "good" practice? 02:32:08 -!- timack [~timack@hlfx59-1-48.ns.sympatico.ca] has quit [Quit: leaving] 02:35:54 Cosman246 [~user@c-66-235-50-85.sea.wa.customer.broadstripe.net] has joined #lisp 02:36:12 -!- Cosman246 [~user@c-66-235-50-85.sea.wa.customer.broadstripe.net] has left #lisp 02:37:41 ebobby: of course. 02:37:45 It's done routinely. 02:38:16 defgeneric and defmethod are macros used to generate some kind of functions. 02:38:47 Other macros such as defstruct, defclass, define-condition, etc, also generate functions. 02:38:59 This is something that's quite natural. 02:40:04 I was just wondering because at least in the ones I just did is not "easy" to see the function name out of the macro call. 02:40:50 Well, that's another question. 02:41:01 carlo_au [~carlo@ppp118-208-15-87.lns20.bne1.internode.on.net] has joined #lisp 02:41:23 Notice that defstruct generate several functions, and the name of those functions is not obviously apparent; you need to know what functions are generated and how their names are constructed. 02:41:52 However, if the purpose of your macro is to create a single function, it can just take the name of the function as parameter. 02:42:04 (define-command my-cmd ) (my-cmd ) 02:42:21 vs. (defstruct point x y) (point-x (make-point 1 2)) 02:43:06 In the case of defclass, we give the name of the functions: (defclass point () ((x :initarg :x :accessor point-x) (y :initarg :y :accessor point-y))) (point-x (make-instance 'point :x 1 :y 2)) 02:47:54 the purpose of the macro is to generate many functions, each functions calculates a total of a given "field" in a list of structs. 02:48:13 so the point of the macro is to generate many functions of the "same" type, just working on a different field 02:48:34 Wouldn't be better to define a single function, taking the name of the field as argument? 02:48:46 I am the only one that's going to use this code anyway so I was just wondering in order to not get a bad habit out of misinformation, in case I ever write some code that OTHER people is going to actually read. 02:49:33 But anyways, there's no difficulty: (define-summed-structure point x y) (make-point 1 2) (make-point 3 4) (point-x-sum) --> 4 02:50:32 There's already (reduce '+ list-of-points :key 'point-x) ; too. 02:50:52 Is defining a function for each field really necessary? (It may be, I don't know). 02:50:53 that's practically the body of the function 02:51:02 *generated* function 02:51:07 PhelpsB [~cinch@2001:470:1f0f:2fa:d49d:7249:1723:efc2] has joined #lisp 02:51:10 dan64 [~dan64@dannyadam.com] has joined #lisp 02:51:11 -!- dan64 [~dan64@dannyadam.com] has quit [Excess Flood] 02:51:22 ebobby: It's a question of design of DSL. 02:51:40 ebobby: anything can be valid, depending on the domain, and the domain specific language. 02:51:44 -!- PhelpsB [~cinch@2001:470:1f0f:2fa:d49d:7249:1723:efc2] has quit [Remote host closed the connection] 02:51:58 You wouldn't make the same choices for a general utility as for a domain specific tool. 02:52:03 the struct has many fields represting parties and parties coalitions in Mexico, they released the information in the election that just happened last sunday 02:52:10 so I am doing some code to play around with the info 02:52:15 reduce with a :key argument is good for a general utility. For a DSL you can do as you wish basically. 02:52:17 get totals of votes for each candidate, and stuff 02:52:38 and having them wrapped in small functions so is easier to aggregate into more information 02:52:41 Yes, if you have a hierarchy of structures, and so on, a mere reduce may not be enough. 02:53:16 Furthermore, it looks like exploratory code. Here you can do anything that help you find out what you want. 02:53:27 im probably not explaning myself clearly, if you have time here's the code (quite short) https://github.com/ebobby/prep-analysis/blob/master/prep-analysis.lisp 02:53:39 in case you are interested on taking a peke 02:53:41 peek* 02:53:43 If later you want to design a library to deal with any kind of similar problem, you can architecture and redesign it with other constraints. 02:54:10 yeah, its exploratory code and trying to get more cl experience under my belt 02:54:51 (apply (function make-casilla) (mapcan (function list) '(:estado :distrito :seccion ) split)) 02:55:19 -!- ku1 [~ku1@75.107.225.229] has quit [] 02:56:40 I see no valid reason to give strings as argument to make-total-function. I would do: (make-total-function total-votos) and then in the macro: (intern (concatenate 'string (string percentage-total-) (string fname)) (symbol-package fname)) 02:56:46 string 'percentage 02:57:10 i was wondering about that, i dont like the way it looks with strings either 02:57:10 dan64 [~dan64@dannyadam.com] has joined #lisp 02:57:10 -!- dan64 [~dan64@dannyadam.com] has quit [Excess Flood] 02:57:14 thanks for the tip 02:58:20 Otherwise it looks good. 02:58:32 (zero-if-nil n) == (or n 0) 02:59:26 aah good point 02:59:40 *ebobby* bows 03:00:00 The symbol-package in intern, is for when you do things like: (other-package:make-total-function 'this-package:my-field) 03:00:32 so that you get this-package::total-my-field instead of current-package:total-my-field 03:01:08 So, who won the elections? Will anything change? 03:01:19 pjb: Excellent tip, I hadn't even thought of that 03:01:57 the old authoritarian oppresive regimen 03:02:01 they won : ( 03:02:26 You mean the same that let drug lords run the country. No change then. 03:02:31 they were in power for 71 years, then the rightmost party won for 12 years in a row, and they are back in power 03:02:33 well 03:02:39 in that particular regard I think there will be a change 03:02:44 they ARE with the drug lords 03:03:00 so violence levels will get reduced just because drug lords will be able to come and go as they please again 03:03:35 in the *old* days they only killed each other, this last term the goverment made war with them and thus the levels of violence raised to incredible levels 03:03:40 -!- k0001 [~k0001@host76.190-228-122.telecom.net.ar] has quit [Ping timeout: 244 seconds] 03:03:48 USA only gets a "its dangerous dont go" in the media 03:03:58 but you wouldnt believe what you would see if you were there 03:04:43 k0001 [~k0001@host76.190-228-122.telecom.net.ar] has joined #lisp 03:04:50 a newspaper in my home town had to close because after publishing some stuff against drug lords, every day a truck would go by and throw granades at their front door 03:04:55 *granades*. 03:04:59 in a big city 03:05:03 whata the hell 03:05:22 It's a shame. I grew up thinking the future would be Star Trek-like, I'm quite disappointed. 03:05:42 If only we could write a macro to solve it all 03:06:02 Perhaps, with replicators. 03:08:12 Yuuhi` [benni@p5483A99C.dip.t-dialin.net] has joined #lisp 03:08:20 -!- carlo_au [~carlo@ppp118-208-15-87.lns20.bne1.internode.on.net] has quit [Quit: Leaving] 03:10:18 -!- Yuuhi [benni@p5483A524.dip.t-dialin.net] has quit [Ping timeout: 264 seconds] 03:11:29 s0ber [~s0ber@36-224-100-109.dynamic-ip.hinet.net] has joined #lisp 03:20:58 -!- BrianRice [~water@63-228-107-33.tukw.qwest.net] has quit [Ping timeout: 245 seconds] 03:22:44 tsuru``` [~charlie@adsl-74-179-198-172.bna.bellsouth.net] has joined #lisp 03:24:07 -!- tsuru`` [~charlie@adsl-74-179-29-120.bna.bellsouth.net] has quit [Ping timeout: 240 seconds] 03:27:16 Gavilan [~haawef@host235.186-125-36.telecom.net.ar] has joined #lisp 03:34:10 -!- ThomasH [~user@pdpc/supporter/professional/thomash] has left #lisp 03:43:18 -!- DDR [~chatzilla@d172-218-2-5.bchsia.telus.net] has quit [Ping timeout: 264 seconds] 03:43:26 -!- kcj [~casey@unaffiliated/kcj1993] has quit [Ping timeout: 252 seconds] 03:43:53 -!- ebobby [~fms@70-36-138-190.dsl.dynamic.sonic.net] has quit [Ping timeout: 245 seconds] 03:45:44 ebobby [~fms@70-36-138-190.dsl.dynamic.sonic.net] has joined #lisp 03:46:07 -!- ebobby is now known as Guest54418 03:47:06 -!- k0001 [~k0001@host76.190-228-122.telecom.net.ar] has quit [Read error: Connection reset by peer] 03:47:39 fold [~fold@71-8-117-85.dhcp.ftwo.tx.charter.com] has joined #lisp 03:49:17 -!- zodiac1111 [~zodiac111@101.68.104.132] has quit [Quit: ] 03:50:21 -!- Guest54418 is now known as fmsoto 03:50:24 -!- Codynyx [~Codynyx@c-75-72-28-122.hsd1.mn.comcast.net] has quit [Quit: WeeChat 0.3.8] 03:50:47 Codynyx [~cody@c-75-72-28-122.hsd1.mn.comcast.net] has joined #lisp 03:50:59 -!- fmsoto is now known as fms 03:51:09 -!- fms is now known as ebobby 03:54:37 -!- wakeup [~max@xdsl-89-0-191-132.netcologne.de] has quit [Quit: Lost terminal] 04:01:52 DDR [~chatzilla@d172-218-2-5.bchsia.telus.net] has joined #lisp 04:10:28 -!- zulu_inuoe [~zulu_inuo@c-174-58-204-235.hsd1.fl.comcast.net] has quit [Quit: ~ Trillian Astra - www.trillian.im ~] 04:10:54 -!- ebobby [~fms@70-36-138-190.dsl.dynamic.sonic.net] has quit [Ping timeout: 264 seconds] 04:13:04 macrobat [~fuzzyglee@h-17-133.a328.priv.bahnhof.se] has joined #lisp 04:22:02 acristin [~Andrew@c-24-19-55-96.hsd1.wa.comcast.net] has joined #lisp 04:25:29 -!- mjonsson [~mjonsson@38.109.95.133] has quit [Quit: Leaving] 04:27:04 -!- Codynyx [~cody@c-75-72-28-122.hsd1.mn.comcast.net] has quit [Quit: leaving] 04:27:41 dan64 [~dan64@dannyadam.com] has joined #lisp 04:28:31 lebro [~monx@ool-18bab6ce.dyn.optonline.net] has joined #lisp 04:31:17 Does anyone has any idea/suggestion of an interesting, complex and difficult software design problem (or domain) to solve/model as an exercise/example? yet small in scope? which uses only "common" knowledge? 04:32:07 Codynyx [~cody@c-75-72-28-122.hsd1.mn.comcast.net] has joined #lisp 04:35:12 ur5us [~ur5us@121-98-128-74.bitstream.orcon.net.nz] has joined #lisp 04:36:01 Kron_ [~Kron@2.49.82.19] has joined #lisp 04:39:42 -!- kanru` [~kanru@36-226-34-183.dynamic-ip.hinet.net] has quit [Ping timeout: 264 seconds] 04:48:25 kcj [~casey@unaffiliated/kcj1993] has joined #lisp 04:51:54 -!- NimeshNeema [u2689@gateway/web/irccloud.com/x-pgyhkavvcgzbwdlb] has quit [Read error: Operation timed out] 04:52:49 pnpuff [~user@unaffiliated/pnpuff] has joined #lisp 04:53:33 -!- mindCrime [~prhodes@c-67-162-98-95.hsd1.in.comcast.net] has quit [Remote host closed the connection] 04:54:23 mindCrime [~prhodes@c-67-162-98-95.hsd1.in.comcast.net] has joined #lisp 04:54:29 ykm [~ykm@180.148.60.165] has joined #lisp 04:54:44 -!- denysonique [u484@gateway/web/irccloud.com/x-evocfhpvkwdvazsd] has quit [Ping timeout: 248 seconds] 04:54:47 -!- SeanTAllen [u4855@gateway/web/irccloud.com/x-yjbabxcjasnncxsw] has quit [Ping timeout: 244 seconds] 04:55:29 -!- rvirding [u5943@gateway/web/irccloud.com/x-dzbkxiazxcpxzubw] has quit [Ping timeout: 265 seconds] 04:55:29 -!- Raynos [u3611@gateway/web/irccloud.com/x-fwfjmhkcvelxclso] has quit [Ping timeout: 265 seconds] 04:58:39 Gavilan: a very ambigious and difficult question to answer :) 04:58:39 -!- ykm [~ykm@180.148.60.165] has quit [Read error: Connection reset by peer] 05:01:52 -!- alexander__b [~alexander@140.100.189.109.customer.cdi.no] has quit [Ping timeout: 246 seconds] 05:04:54 -!- stardiviner [~stardivin@122.236.251.89] has quit [Ping timeout: 264 seconds] 05:05:20 dotemacs [u801@gateway/web/irccloud.com/x-rcaxwgiumqofzljy] has joined #lisp 05:07:16 NimeshNeema [u2689@gateway/web/irccloud.com/x-wxudogehbdlawlmo] has joined #lisp 05:11:43 alexander__b [~alexander@140.100.189.109.customer.cdi.no] has joined #lisp 05:11:53 denysonique [u484@gateway/web/irccloud.com/x-syryyprezvtvcbaf] has joined #lisp 05:11:53 -!- denysonique [u484@gateway/web/irccloud.com/x-syryyprezvtvcbaf] has quit [Changing host] 05:11:53 denysonique [u484@unaffiliated/dennisonicc] has joined #lisp 05:11:53 -!- denysonique [u484@unaffiliated/dennisonicc] has quit [Changing host] 05:11:53 denysonique [u484@gateway/web/irccloud.com/x-syryyprezvtvcbaf] has joined #lisp 05:12:21 Raynos [u3611@gateway/web/irccloud.com/x-xnnbyxmkikbtcvbf] has joined #lisp 05:14:19 -!- ur5us [~ur5us@121-98-128-74.bitstream.orcon.net.nz] has quit [Ping timeout: 265 seconds] 05:16:27 -!- fold [~fold@71-8-117-85.dhcp.ftwo.tx.charter.com] has quit [Ping timeout: 244 seconds] 05:18:04 Spion [~spion@unaffiliated/spion] has joined #lisp 05:21:06 -!- Spion_ [~spion@unaffiliated/spion] has quit [Ping timeout: 264 seconds] 05:22:25 mrSpec [~Spec@89-68-55-121.dynamic.chello.pl] has joined #lisp 05:22:25 -!- mrSpec [~Spec@89-68-55-121.dynamic.chello.pl] has quit [Changing host] 05:22:25 mrSpec [~Spec@unaffiliated/mrspec] has joined #lisp 05:23:10 EmmanuelOga [~emmanuel@host73.190-229-121.telecom.net.ar] has joined #lisp 05:23:36 xaxisx [~xaxisx@184.175.54.34] has joined #lisp 05:25:22 -!- Quaydon [~aaaaaaa@cpe-024-074-028-225.carolina.res.rr.com] has quit [Ping timeout: 252 seconds] 05:30:01 sdemarre [~serge@91.176.86.181] has joined #lisp 05:31:27 SeanTAllen [u4855@gateway/web/irccloud.com/x-zwkfxlwpdvxgijke] has joined #lisp 05:32:12 rvirding [u5943@gateway/web/irccloud.com/x-hoxkxcgvfpirgxtj] has joined #lisp 05:35:03 theos [~theos@unaffiliated/theos] has joined #lisp 05:37:18 -!- lebro [~monx@ool-18bab6ce.dyn.optonline.net] has quit [Ping timeout: 264 seconds] 05:38:01 Quaydon [~aaaaaaa@cpe-024-074-028-225.carolina.res.rr.com] has joined #lisp 05:39:24 -!- McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has quit [Ping timeout: 276 seconds] 05:41:11 McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has joined #lisp 05:42:08 benny [~user@i577A881D.versanet.de] has joined #lisp 05:45:04 angavrilov [~angavrilo@217.71.227.190] has joined #lisp 05:49:02 Gavilan: if that's to learn something, the text adventure game is a nice way to learn. 05:49:31 And it's based only on common knowledge, everybody knows how gold coins or flasks of water work. 05:49:45 (or flasks of magic potion). 05:52:37 -!- pnq [~nick@AC81183D.ipt.aol.com] has quit [Ping timeout: 246 seconds] 06:02:12 peterhil` [~peterhil@gatekeeper.brainalliance.com] has joined #lisp 06:05:03 :)) 06:08:50 nachtwandler [~nachtwand@p57AD7AAA.dip.t-dialin.net] has joined #lisp 06:28:34 -!- setheus [~setheus@cpe-72-190-112-13.tx.res.rr.com] has quit [Read error: Connection reset by peer] 06:28:50 setheus [~setheus@cpe-72-190-112-13.tx.res.rr.com] has joined #lisp 06:32:33 mucker [~mucker@183.83.240.198] has joined #lisp 06:37:31 -!- dfox [~dfox@2001:470:9d8f:0:4261:86ff:fe8e:8446] has quit [Ping timeout: 245 seconds] 06:38:30 -!- gurrag [~gurrag@unaffiliated/gurrag] has quit [Ping timeout: 264 seconds] 06:41:02 ku1 [~ku1@75.107.225.229] has joined #lisp 06:47:16 nostoi [~nostoi@17.Red-80-39-204.dynamicIP.rima-tde.net] has joined #lisp 06:49:24 lebro [~monx@ool-18bab6ce.dyn.optonline.net] has joined #lisp 06:49:42 MoALTz [~no@host-92-8-153-22.as43234.net] has joined #lisp 06:52:42 -!- nostoi [~nostoi@17.Red-80-39-204.dynamicIP.rima-tde.net] has quit [Quit: Verlassend] 06:54:46 -!- ku1 [~ku1@75.107.225.229] has quit [Read error: Connection reset by peer] 06:59:21 -!- McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has quit [Ping timeout: 276 seconds] 07:01:50 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #lisp 07:02:53 dfox [~dfox@rei.ipv6.dfox.org] has joined #lisp 07:03:48 -!- xaxisx [~xaxisx@184.175.54.34] has quit [Quit: xaxisx] 07:04:11 -!- elliottcable [~me@ell.io] has quit [Read error: Operation timed out] 07:07:23 Joreji [~thomas@ip-213-135-245-76.static.luxdsl.pt.lu] has joined #lisp 07:07:29 -!- X-Scale [name@2001:470:1f14:135b::2] has quit [Ping timeout: 272 seconds] 07:08:20 insomnia1alt [~milan@port-92-204-50-216.dynamic.qsc.de] has joined #lisp 07:08:21 -!- insomnia1alt [~milan@port-92-204-50-216.dynamic.qsc.de] has quit [Changing host] 07:08:21 insomnia1alt [~milan@unaffiliated/iammilan] has joined #lisp 07:08:30 -!- treyka [~treyka@85.234.199.185] has quit [Ping timeout: 264 seconds] 07:09:27 -!- insomniaSalt [~milan@unaffiliated/iammilan] has quit [Read error: Operation timed out] 07:09:27 -!- insomnia1alt is now known as insomniaSalt 07:09:53 -!- lcc [~user@unaffiliated/lcc] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 07:10:24 -!- dmiles_afk [~dmiles@dsl-216-155-214-237.cascadeaccess.com] has quit [Read error: Connection reset by peer] 07:11:26 benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has joined #lisp 07:13:36 elliottcable [~me@ell.io] has joined #lisp 07:14:02 -!- DDR [~chatzilla@d172-218-2-5.bchsia.telus.net] has quit [Quit: for the love of god this is not safe for work] 07:17:09 -!- MoALTz [~no@host-92-8-153-22.as43234.net] has quit [Quit: brb] 07:21:26 dmiles_afk [~dmiles@dsl-216-155-214-237.cascadeaccess.com] has joined #lisp 07:22:57 treyka [~treyka@85.234.199.185] has joined #lisp 07:23:17 McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has joined #lisp 07:29:13 MoALTz [~no@92.2.131.0] has joined #lisp 07:30:24 lcc [~user@unaffiliated/lcc] has joined #lisp 07:31:54 -!- EyesIsMine [~Eyes@WiseOS/Founder/EyesIsMine] has quit [Ping timeout: 264 seconds] 07:32:51 -!- benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has quit [Ping timeout: 244 seconds] 07:34:18 -!- tensorpudding [~michael@99.148.200.61] has quit [Ping timeout: 245 seconds] 07:36:54 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Quit: Leaving] 07:37:05 EyesIsMine [~Eyes@WiseOS/Founder/EyesIsMine] has joined #lisp 07:37:24 benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has joined #lisp 07:38:32 Is it possible to solve any dynamic programming problem with the minimum amount of memory automatically? I.e. that one as a programmer can just write down the relation and that some magical compiler figures out a way to evaluate it using minimam CPU and minimal RAM? 07:39:21 I know that 'common practice' is that one needs to design these things every single time from scratch for optimal results, but I don't recall anyone proving that it is impossible to do this. 07:39:23 fasta: write it recursively (top-down) and memoise. That'll come pretty close. 07:39:28 jtza8 [~jtza8@196-210-172-211.dynamic.isadsl.co.za] has joined #lisp 07:39:33 -!- treyka [~treyka@85.234.199.185] has quit [Read error: Operation timed out] 07:39:52 pkhuong: sure, but that's not what I meant. 07:40:01 What do you mean exactly by "dynamic programming problem"? 07:40:18 -!- McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has quit [Ping timeout: 276 seconds] 07:40:29 pjb: a problem for which a dynamic programming solution exists. 07:40:46 pjb: dynamic programming is a very well known term. 07:40:50 By the time the DP relation is well-specified enough, the difference will be negligible. 07:41:10 fasta: usually, problems have a minimum time*space surface. You can trade one for the other. Eg. memoization trades space for time. Recomputing derived data trades time for space. 07:41:35 pjb: I am talking about sliding window tricks, etc. 07:41:36 -!- Jasko [~tjasko@c-174-59-201-95.hsd1.pa.comcast.net] has quit [Read error: Connection reset by peer] 07:41:44 -!- Kvaks [~quassel@15.123.34.95.customer.cdi.no] has quit [Read error: Connection reset by peer] 07:41:45 superflit [~superflit@75-171-217-148.hlrn.qwest.net] has joined #lisp 07:41:50 Kvaks [~quassel@15.123.34.95.customer.cdi.no] has joined #lisp 07:42:01 Jasko [~tjasko@c-174-59-201-95.hsd1.pa.comcast.net] has joined #lisp 07:43:03 It seems that memoization is the most general tool here. 07:43:06 I previously found this: http://bibiserv.techfak.uni-bielefeld.de/adp/adpcomp.html 07:43:15 On the other hand, if you have enough memory, why minimize its use? 07:43:21 But I don't know exactly what it does. 07:43:39 I.e., whether this does something great or whether it is just a cheap hack. 07:43:45 Therefore I'd advise to use weak references in the memoization, so that if there's not enough memory, some memoized values can be dropped. 07:45:04 I believe that's an application of the technique described in Gibbons and de Moor's Algebra of Programming (the Squiggol book). 07:45:22 -!- nachtwandler [~nachtwand@p57AD7AAA.dip.t-dialin.net] has quit [Read error: Operation timed out] 07:45:26 McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has joined #lisp 07:46:11 It won't capture fancy stuff like DP on continuous decision variables, but it's pretty nice. I don't think all the tricks used by humans can be automatically applied either, though proving their correctness in that framework is doable, iirc. 07:46:23 fantazo [~fantazo@91.119.101.47] has joined #lisp 07:46:34 pkhuong: what's the executive summary for that book? 07:46:58 pkhuong: i.e. does it solve Knapsack optimally automatically for example? 07:47:10 fasta: now, when I say space*time surface, it's probably not correct. There may be factors, and it may not be a linear relationship. So for a given class of problems, you could perhaps measure this surface, and find some optimal points. 07:47:11 Lenses and bananas are useful to reason about programs. 07:48:24 Good spectacles for the eyes and phosphor for the brains? 07:48:36 -!- Quaydon [~aaaaaaa@cpe-024-074-028-225.carolina.res.rr.com] has quit [Ping timeout: 248 seconds] 07:49:13 I do understand what pkhuong says. I also understand why it in theory might help. I don't see how it will actually solve a real-world problem. 07:49:51 recursion and memoisation works fine for knapsack. 07:50:01 DrForr [~jgoff@d149031.upc-d.chello.nl] has joined #lisp 07:57:02 treyka [~treyka@85.234.199.185] has joined #lisp 07:57:06 -!- lebro [~monx@ool-18bab6ce.dyn.optonline.net] has quit [Ping timeout: 264 seconds] 07:58:11 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 07:58:47 the constraint optimization (for my satisfaction ;-)) sometimes is too hard .. /o\ 08:01:03 pkhuong: table-design is NP-Complete (what I suspected already), but they basically cover all parts of the problem space. 08:01:18 -!- sdemarre [~serge@91.176.86.181] has quit [Ping timeout: 264 seconds] 08:01:41 Basically, recursion means that you have an exponential number of function calls, but since the subproblems are overlapping, we actually have a linear number of different function calls. With memorisation you will use O(n) memory, and replace O(2^n) function calls by O(n) function calls and O(2^n) memory access. 08:01:49 Bah, what isn't NP hard? As long as it's useful on real instances. 08:02:41 The recursion probably already takes O(n) stack space 08:03:06 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 264 seconds] 08:03:07 -!- pnpuff [~user@unaffiliated/pnpuff] has quit [Remote host closed the connection] 08:03:13 In any case, memoization sounds like a good idea for this kind of problems. 08:04:00 I guess you might be interested in hypergraph decompositions. On structured problems, they provide an automatic way to do dynamic programming in just the right order to minimise storage and computation requirements. Of course, computing such a decomposition (optimally) is NP hard, but there are useful heuristics. 08:04:27 -!- DGASAU [~user@91.218.144.129] has quit [Ping timeout: 265 seconds] 08:04:41 pkhuong: that's related to treewidth, right? 08:04:46 right. 08:06:34 pkhuong: so a hypergraph decomposition is a generalization of a tree decomposition, I suppose? 08:06:53 pkhuong: how come you know about these things? Did you do a Phd in the area? 08:07:04 stat_vi [~stat@dslb-094-218-237-233.pools.arcor-ip.net] has joined #lisp 08:07:09 It's a generalisation of treewidth on the primal graph that takes into account the fact that an alldiff constraint on n variables is probably easier to work with than n^2/2 pairwise != constraints. 08:07:28 Yeah, I don't think you can hide that you did a PhD. ;) 08:07:38 The decomposition probably depends only on the recursion structure and the size of the problem, so it could easily be pre-computed for different problems with the same recursive structure. 08:07:52 There are likely less than 5000 people who know that globally. 08:07:55 Yeah, PhD in Operations Research. I'm more in the math programming side of things than CSP. 08:10:20 (still ongoing, hopefully I'll be submitting around this december) 08:10:33 -!- McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has quit [Remote host closed the connection] 08:11:49 McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has joined #lisp 08:16:42 -!- McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has quit [Ping timeout: 276 seconds] 08:22:10 -!- lobo_d_b [~lobo_d_b@unaffiliated/juan--d--b/x-561435] has quit [Quit: Lost terminal] 08:25:33 pkhuong: is there any library which does these decompositions? 08:26:35 pkhuong: in my experience people in this field write down programs which don't actually work and their performance results are based on hot air. 08:26:38 I think there's one german research group with a publically-available program. It might even work on non-win32 platforms. Bucket elimination was < 1h to write iirc. 08:27:20 pkhuong: I believe they call that "research quality"-code. 08:27:37 I call it broken code on which no inferences should be made. 08:31:14 teggi [~teggi@113.172.45.222] has joined #lisp 08:31:22 pkhuong: that's not a library. That's just a binary blob. 08:31:41 run-program makes it a library. 08:33:03 -!- mucker [~mucker@183.83.240.198] has quit [Ping timeout: 245 seconds] 08:34:10 -!- lcc [~user@unaffiliated/lcc] has quit [Quit: um... I need some soda] 08:34:30 punee [~punee@set25-1-88-166-168-141.fbx.proxad.net] has joined #lisp 08:38:21 poisonarms [~poisonarm@cpe-70-116-22-88.austin.res.rr.com] has joined #lisp 08:39:42 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Quit: Leaving] 08:45:54 -!- jtza8 [~jtza8@196-210-172-211.dynamic.isadsl.co.za] has quit [Ping timeout: 255 seconds] 08:51:43 X-Scale` [name@2001:470:1f14:135b::2] has joined #lisp 08:56:41 teggi_ [~teggi@113.172.61.61] has joined #lisp 08:57:37 -!- teggi [~teggi@113.172.45.222] has quit [Ping timeout: 240 seconds] 09:01:14 -!- X-Scale` is now known as X-Scale 09:01:43 -!- EmmanuelOga [~emmanuel@host73.190-229-121.telecom.net.ar] has quit [Ping timeout: 244 seconds] 09:02:41 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 09:04:56 -!- kmcorbett [~kmcorbett@173-9-35-41-NewEngland.hfc.comcastbusiness.net] has quit [Quit: Leaving.] 09:10:11 jdz [~jdz@89.201.97.48] has joined #lisp 09:10:36 gravicappa [~gravicapp@ppp91-77-170-95.pppoe.mtu-net.ru] has joined #lisp 09:12:21 McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has joined #lisp 09:19:08 getoffmalawn [~getoffmal@14-202-66-99.static.tpgi.com.au] has joined #lisp 09:19:09 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 09:19:33 Alice3 [~Alice@cpc3-grim12-0-0-cust856.12-3.cable.virginmedia.com] has joined #lisp 09:29:46 zodiac1111 [~zodiac111@101.68.104.132] has joined #lisp 09:37:57 Hussaind [~hussain@115.124.115.71] has joined #lisp 09:38:18 -!- Hussaind [~hussain@115.124.115.71] has left #lisp 09:40:47 stassats [~stassats@wikipedia/stassats] has joined #lisp 09:41:39 noss [~cs@110.35.136.223] has joined #lisp 09:43:30 anyone know of an unlispy sexpr language that translates well to java language semantics? i hope the question is not too stupid. 09:43:43 linj. 09:43:45 Clojure 09:44:00 Now if you want a lispy one, it'd be ABCL. 09:44:37 java language semantics? or java vm semantics? 09:45:08 Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has joined #lisp 09:47:37 -!- wormwood [~wormwood@99-39-241-71.lightspeed.miamfl.sbcglobal.net] has quit [Ping timeout: 240 seconds] 09:49:03 -!- homie` [~levgue@xdsl-78-35-167-251.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 09:49:44 wormwood [~wormwood@99-39-241-71.lightspeed.miamfl.sbcglobal.net] has joined #lisp 09:49:44 -!- Jasko [~tjasko@c-174-59-201-95.hsd1.pa.comcast.net] has quit [Read error: Connection reset by peer] 09:49:51 linj was interesting, im going to keep myself busy with the slides about it 09:50:08 Jasko [~tjasko@c-174-59-201-95.hsd1.pa.comcast.net] has joined #lisp 09:51:31 Jeanne-Kamikaze [~Jeanne-Ka@235.177.223.87.dynamic.jazztel.es] has joined #lisp 09:51:41 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [] 09:51:52 homie [~levgue@xdsl-78-35-167-251.netcologne.de] has joined #lisp 09:56:34 mucker [~mucker@183.83.240.198] has joined #lisp 10:02:27 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Remote host closed the connection] 10:02:52 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 10:06:56 So I'd like to parse a text file into a list (possibly a bit nested). How should I generate the symbols for the list? 10:07:20 why symbols? 10:07:30 I'd like to afterwards eval the list as it is code that works in another package than the generated one 10:07:47 Is that a viable solution at all? 10:07:52 have you tried just LOADing it? 10:08:02 Not yet 10:08:03 flanfl [~flanfl@cpc1-sgyl27-2-0-cust785.sgyl.cable.virginmedia.com] has joined #lisp 10:08:24 I'll first tell you what I want to achieve. Maybe I'm doing the wrong thing alltogether 10:09:14 read will read sexp from a stream 10:10:00 I've written a small "assembler" that generates G-code from function calls like (g 1 :x 1 :y 2 :e 100) -> G1 X1 Y1 E100 10:10:12 sepi: (in-package :other-package) (load "generated.lisp") 10:10:32 pjb: not (let ((*package* (find-package))) (load))? 10:10:46 And I'd like to read back gcode into a list of lists like those function calls 10:11:06 so that I can modify my assembly and then evaluate the whole to get my gcode back 10:12:04 <|3b|> if you know all the possible symbols in advance, FIND-SYMBOL, otherwise if you trust the input, INTERN 10:12:17 https://gitorious.org/meshc/meshc/blobs/master/gcode.lisp this is some code to generate g-code 10:12:49 stassats: if you want. 10:14:11 sepi: (process (com.informatimago.common-lisp.cesarum.file:sexp-file-contents "generated.lisp")) 10:14:15 agumonkey [~agu@85.158.70.86.rev.sfr.net] has joined #lisp 10:15:00 reading sexps by hand will take less space than loading and calling this library function 10:15:28 ohhh, I'm so confused by symbols I think 10:15:34 Not if you already have it loaded because you're using it all the time. 10:16:51 jtza8 [~jtza8@196-210-172-211.dynamic.isadsl.co.za] has joined #lisp 10:17:06 i doubt sepi does that 10:17:38 -!- ace4016 [~ace4016@cpe-024-074-197-085.ec.res.rr.com] has quit [Ping timeout: 245 seconds] 10:17:57 -!- fantazo [~fantazo@91.119.101.47] has quit [Remote host closed the connection] 10:18:23 stassats: I don't have it loaded ^^ 10:19:23 (ql:quickload :com.informatimago.common-lisp.cesarum) (process (com.informatimago.common-lisp.cesarum.file:sexp-file-contents "generated.lisp")) takes less characters than the 497 characters needed to implement it. 10:19:46 (with-open-file (s file) (loop for e = (read s nil #1='#:f) until (eq e #1#) collect e)) 10:20:10 takes 88 characters 10:20:10 -!- Jasko [~tjasko@c-174-59-201-95.hsd1.pa.comcast.net] has quit [Read error: Connection reset by peer] 10:20:24 :if-does-not-exist :external-format docstrings. 10:20:37 test cases. 10:20:38 Jasko [~tjasko@c-174-59-201-95.hsd1.pa.comcast.net] has joined #lisp 10:20:40 pjb: can be passed to with-open-file 10:20:49 with-standard-io-syntax. 10:21:09 what if i don't want the standard one? 10:21:10 Yes, and when you're done, y ou've spent more time and more character than just (ql:quickload :com.informatimago.common-lisp.cesarum) (process (com.informatimago.common-lisp.cesarum.file:sexp-file-contents "generated.lisp")). 10:21:12 should not it be (read s nil s) until (eq e s) 10:21:19 debugging time 10:21:34 maxm: that's a variant 10:21:46 shorter too 10:23:33 By definition, functions must be short, no exception for library functions. You cannot take that as an argument for not using libraries. ( Unless you're implementing by hand a "tree shaker" :-) ). 10:23:52 (loop with s =(open file)for e =(read s()s)until(eq e s)collect e) 10:24:35 pjb: that was more of a jab at the length of the name of the library 10:25:11 lcc [~user@unaffiliated/lcc] has joined #lisp 10:25:13 Again, irrelevant. You use slime M-TAB don't you? 10:25:22 pjb: do you use hierarchical packages thing, or you just name them java-like? 10:25:41 For now, just name them like that, until hierarchical packages are adopted by all implementations. 10:27:28 pnq [~nick@AC812ECC.ipt.aol.com] has joined #lisp 10:32:46 i wonder why read-line follows the convention of READ of having eof-value, it should always return strings for not eof 10:34:57 <|3b|> maybe they wanted to be able to have an EOF string? 10:35:42 well, you can always have (or (read stream nil) "EOF") 10:35:46 read-line 10:36:41 still convenient. 10:37:06 did anybody ever used it? i've never specified the third argument to read-line 10:38:21 once I think. I was passing the string to some parsing routine. Classic stuff would be parsing emails for commands until the end or --. 10:39:00 even eof-error-p can be dispensed with, but it's actually convenient 10:39:17 (if (listen stream) (read stream) "EOF") 10:39:23 err, read-line, again 10:48:20 AeroNotix [~xeno@aeao188.neoplus.adsl.tpnet.pl] has joined #lisp 10:50:07 vmmenon [~vmmenon@CPE-124-178-183-138.lns4.pie.bigpond.net.au] has joined #lisp 11:02:36 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Remote host closed the connection] 11:03:02 Davidbrcz [~david@proxysup.isae.fr] has joined #lisp 11:03:06 -!- flanfl [~flanfl@cpc1-sgyl27-2-0-cust785.sgyl.cable.virginmedia.com] has quit [Ping timeout: 264 seconds] 11:09:02 daimrod` [~user@ANantes-653-1-167-8.w90-54.abo.wanadoo.fr] has joined #lisp 11:10:06 -!- Davidbrcz [~david@proxysup.isae.fr] has quit [Remote host closed the connection] 11:10:57 araujo [~araujo@190.73.45.171] has joined #lisp 11:10:57 -!- araujo [~araujo@190.73.45.171] has quit [Changing host] 11:10:57 araujo [~araujo@gentoo/developer/araujo] has joined #lisp 11:11:36 -!- lcc [~user@unaffiliated/lcc] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:16:40 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 11:19:12 -!- daimrod` [~user@ANantes-653-1-167-8.w90-54.abo.wanadoo.fr] has quit [Remote host closed the connection] 11:21:03 pnpuff [~pnpuff@unaffiliated/pnpuff] has joined #lisp 11:27:03 -!- pnpuff [~pnpuff@unaffiliated/pnpuff] has quit [Quit: Reconnecting] 11:27:19 pnpuff [~pnpuff@host123-249-dynamic.49-79-r.retail.telecomitalia.it] has joined #lisp 11:27:20 -!- pnpuff [~pnpuff@host123-249-dynamic.49-79-r.retail.telecomitalia.it] has quit [Changing host] 11:27:20 pnpuff [~pnpuff@unaffiliated/pnpuff] has joined #lisp 11:27:54 stassats: listen and EOF are not the same thing (sockets, pipes, etc). 11:30:21 clhs says it's the same 11:30:22 go figure 11:35:40 -!- pnpuff [~pnpuff@unaffiliated/pnpuff] has quit [Quit: leaving] 11:36:30 pnpuff [~pnpuff@unaffiliated/pnpuff] has joined #lisp 11:38:22 -!- lifeng [~lifeng@bb121-7-108-184.singnet.com.sg] has quit [Ping timeout: 246 seconds] 11:38:47 Sorella [~quildreen@189-12-48-135.user.veloxzone.com.br] has joined #lisp 11:38:47 -!- Sorella [~quildreen@189-12-48-135.user.veloxzone.com.br] has quit [Changing host] 11:38:47 Sorella [~quildreen@oftn/member/Sorella] has joined #lisp 11:39:03 http://paste.lisp.org/display/130426 11:39:30 lifeng [~lifeng@bb219-74-136-226.singnet.com.sg] has joined #lisp 11:39:56 i said i'm getting always into the debugger with heap corruption..... 11:40:22 and making --dynamic-space-size go higher an --control-stack-size go higher won't work out 11:40:32 so what's the issue ? 11:41:08 homie: hard to say without code 11:41:52 -!- MoALTz [~no@92.2.131.0] has quit [Ping timeout: 246 seconds] 11:41:57 -!- jtza8 [~jtza8@196-210-172-211.dynamic.isadsl.co.za] has quit [Remote host closed the connection] 11:43:03 <|3b|> if the code was compiled with low SAFETY, passing the wrong type arguments might break things 11:44:10 <|3b|> might also try the suggestions in the error message, if that isn't the problem 11:44:13 *backend-page-bytes* is 4096 it seems for x86 11:46:12 and *gencgc-card-bytes* is set to it too... 11:46:43 *|3b|* would try using correct types first 11:47:13 -!- j_king [~jking@mortar.walled.net] has quit [Ping timeout: 245 seconds] 11:47:28 not my package, f2cl, lapack..... 11:47:45 -!- Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has quit [Remote host closed the connection] 11:47:55 flanfl [~flanfl@cpc1-sgyl27-2-0-cust785.sgyl.cable.virginmedia.com] has joined #lisp 11:48:36 -!- getoffmalawn [~getoffmal@14-202-66-99.static.tpgi.com.au] has quit [Ping timeout: 244 seconds] 11:49:04 iocor [~textual@unaffiliated/iocor] has joined #lisp 11:50:07 MoALTz [~no@host-92-8-230-153.as43234.net] has joined #lisp 11:51:30 -!- Jeanne-Kamikaze [~Jeanne-Ka@235.177.223.87.dynamic.jazztel.es] has quit [Quit: Did you hear that ?] 11:51:31 -!- pnpuff [~pnpuff@unaffiliated/pnpuff] has quit [Quit: leaving] 11:52:12 <|3b|> you could try recompiling everything with SAFETY forced to 1 or 2 or so using sb-ext:restrict-compiler-policy, and see if that helps 11:52:50 i got rid of cache and slime files, and quicklisp tree now trying all anew 11:53:00 if i get the same problem i'll do that.... 11:55:17 alama [~jessealam@stgt-5f71698e.pool.mediaWays.net] has joined #lisp 11:55:18 -!- theos [~theos@unaffiliated/theos] has quit [Ping timeout: 264 seconds] 11:56:14 -!- vmmenon [~vmmenon@CPE-124-178-183-138.lns4.pie.bigpond.net.au] has quit [Ping timeout: 252 seconds] 11:58:25 -!- tsuru``` is now known as tsuru` 11:59:33 jcazevedo [~jcazevedo@bl11-117-160.dsl.telepac.pt] has joined #lisp 12:00:22 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 255 seconds] 12:04:03 theos [~theos@unaffiliated/theos] has joined #lisp 12:04:38 ok setting both debug and safety levels to 3 is a nogo then.... 12:04:56 debug 2 safety 3 does it i hope.... 12:07:15 jep, it seems to now 12:09:30 -!- kennyd [~kennyd@93-138-191-230.adsl.net.t-com.hr] has quit [Ping timeout: 265 seconds] 12:10:27 silenius [~silenius@i59F77F90.versanet.de] has joined #lisp 12:12:03 getoffmalawn [~getoffmal@14-202-66-99.static.tpgi.com.au] has joined #lisp 12:12:43 stassats: we must consider sockets and pipes and similar to be interactive streams. 12:12:45 kennyd [~kennyd@93-138-98-171.adsl.net.t-com.hr] has joined #lisp 12:12:51 vmmenon [~vmmenon@CPE-120-145-129-95.lnse2.pie.bigpond.net.au] has joined #lisp 12:12:53 -!- vmmenon [~vmmenon@CPE-120-145-129-95.lnse2.pie.bigpond.net.au] has left #lisp 12:13:45 Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has joined #lisp 12:14:14 the debugger is smashing the memory ! 12:14:16 lol 12:14:26 too high a level and bum! 12:15:04 -!- mucker [~mucker@183.83.240.198] has quit [Read error: Operation timed out] 12:15:12 <|3b|> high DEBUG disables some optimizations, so might break code that depended on those optimizations 12:15:28 -!- kcj [~casey@unaffiliated/kcj1993] has quit [Ping timeout: 246 seconds] 12:15:30 ah 12:15:58 code which depends on optimizations? it deserves to be broken 12:16:33 <|3b|> well, some people don't consider TCO an optimization :) 12:17:40 iLogical [~iLogical@unaffiliated/ilogical] has joined #lisp 12:17:48 <|3b|> or it might have only depended on it to the extent that it allowed it to run in a particular amount of ram, but been otherwise 'correct' 12:18:55 when i have a recursive function and i split it into main and helper and define the main before the helper i get various warnings still but not the other way around i.e. the helper defined before the main one.... 12:19:11 -!- jcazevedo [~jcazevedo@bl11-117-160.dsl.telepac.pt] has quit [Quit: jcazevedo] 12:19:21 maybe we should all reorganize our code! 12:19:23 lol 12:19:36 for less warnings stuff! 12:19:57 *|3b|* tends to just use LABELS if i want to split of the recursive part of a function 12:20:02 <|3b|> *split off 12:26:54 fantazo [~fantazo@213.129.230.10] has joined #lisp 12:27:42 mucker [~mucker@183.83.240.198] has joined #lisp 12:29:50 ace4016 [~ace4016@cpe-024-074-197-085.ec.res.rr.com] has joined #lisp 12:34:04 -!- pnq [~nick@AC812ECC.ipt.aol.com] has quit [Ping timeout: 244 seconds] 12:37:54 teiresias [~teiresias@archlinux/trusteduser/teiresias] has joined #lisp 12:41:07 at least that way only real warnings are left ..... 12:42:00 i know the order shouldn't matter, but it does in the end.... 12:42:20 not for calling anyway but for ...other things.... 12:44:42 KingsKnighted [~quassel@c-174-52-149-13.hsd1.ut.comcast.net] has joined #lisp 12:45:02 pnq [~nick@ACA20AE1.ipt.aol.com] has joined #lisp 12:48:04 am0c_ [~am0c@124.49.51.146] has joined #lisp 12:48:58 -!- mucker [~mucker@183.83.240.198] has quit [Read error: Connection reset by peer] 12:49:19 fold [~fold@71-8-117-85.dhcp.ftwo.tx.charter.com] has joined #lisp 12:51:40 mucker [~mucker@183.83.240.198] has joined #lisp 12:52:07 -!- pnq [~nick@ACA20AE1.ipt.aol.com] has quit [Ping timeout: 240 seconds] 12:55:57 -!- agumonkey [~agu@85.158.70.86.rev.sfr.net] has quit [Quit: Lost terminal] 12:56:02 gurrag [~gurrag@unaffiliated/gurrag] has joined #lisp 12:58:48 -!- Vivitron [~Vivitron@pool-98-110-213-33.bstnma.fios.verizon.net] has quit [Quit: trivial-irc-0.0.3] 12:59:05 Vivitron [~Vivitron@pool-98-110-213-33.bstnma.fios.verizon.net] has joined #lisp 13:02:08 agumonkey [~agu@85.158.70.86.rev.sfr.net] has joined #lisp 13:04:35 -!- Gavilan [~haawef@host235.186-125-36.telecom.net.ar] has left #lisp 13:16:01 pnpuff [~pnpuff@unaffiliated/pnpuff] has joined #lisp 13:16:20 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 13:18:27 the pure and the non-pure! 13:22:19 -!- specbot [~specbot@tiger.common-lisp.net] has quit [Disconnected by services] 13:22:23 specbot [~specbot@tiger.common-lisp.net] has joined #lisp 13:23:06 -!- Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has quit [Remote host closed the connection] 13:24:39 the quick and the dead 13:24:40 -!- minion [~minion@tiger.common-lisp.net] has quit [Read error: Connection reset by peer] 13:24:46 minion [~minion@tiger.common-lisp.net] has joined #lisp 13:25:43 the dead and the cowards! 13:25:51 jcazevedo [~jcazevedo@bl11-117-160.dsl.telepac.pt] has joined #lisp 13:26:46 -!- benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has quit [Ping timeout: 244 seconds] 13:30:33 -!- jcazevedo [~jcazevedo@bl11-117-160.dsl.telepac.pt] has quit [Client Quit] 13:30:42 -!- drewc [~user@212.110.167.245] has quit [Ping timeout: 264 seconds] 13:31:07 -!- agumonkey [~agu@85.158.70.86.rev.sfr.net] has quit [Quit: Lost terminal] 13:33:27 lobo_d_b [~lobo_d_b@181.132.160.27] has joined #lisp 13:33:27 -!- lobo_d_b [~lobo_d_b@181.132.160.27] has quit [Changing host] 13:33:27 lobo_d_b [~lobo_d_b@unaffiliated/juan--d--b/x-561435] has joined #lisp 13:33:58 drewc [~user@212.110.167.245] has joined #lisp 13:36:05 jcazevedo [~jcazevedo@bl11-117-160.dsl.telepac.pt] has joined #lisp 13:36:58 -!- KingsKnighted [~quassel@c-174-52-149-13.hsd1.ut.comcast.net] has quit [Remote host closed the connection] 13:37:50 agumonkey [~agu@85.158.70.86.rev.sfr.net] has joined #lisp 13:39:03 -!- agumonkey [~agu@85.158.70.86.rev.sfr.net] has quit [Client Quit] 13:39:18 KingsKnighted [~quassel@c-174-52-149-13.hsd1.ut.comcast.net] has joined #lisp 13:39:43 -!- alama [~jessealam@stgt-5f71698e.pool.mediaWays.net] has quit [Quit: Computer has gone to sleep.] 13:45:32 agumonkey [~agu@85.158.70.86.rev.sfr.net] has joined #lisp 13:46:22 -!- jcazevedo [~jcazevedo@bl11-117-160.dsl.telepac.pt] has quit [Quit: jcazevedo] 13:47:08 -!- lobo_d_b [~lobo_d_b@unaffiliated/juan--d--b/x-561435] has quit [Quit: leaving] 13:47:16 -!- agumonkey [~agu@85.158.70.86.rev.sfr.net] has quit [Client Quit] 13:47:30 -!- am0c_ [~am0c@124.49.51.146] has quit [Ping timeout: 264 seconds] 13:50:21 lobo_d_b [~lobo_d_b@181.132.160.27] has joined #lisp 13:50:21 -!- lobo_d_b [~lobo_d_b@181.132.160.27] has quit [Changing host] 13:50:22 lobo_d_b [~lobo_d_b@unaffiliated/juan--d--b/x-561435] has joined #lisp 13:50:37 agumonkey [~agu@85.158.70.86.rev.sfr.net] has joined #lisp 13:56:36 benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has joined #lisp 13:56:50 alama [~jessealam@stgt-5f71698e.pool.mediaWays.net] has joined #lisp 13:58:39 pnq [~nick@ACA2262B.ipt.aol.com] has joined #lisp 14:01:24 -!- Joreji [~thomas@ip-213-135-245-76.static.luxdsl.pt.lu] has quit [Ping timeout: 248 seconds] 14:01:52 -!- lobo_d_b [~lobo_d_b@unaffiliated/juan--d--b/x-561435] has quit [Read error: Connection reset by peer] 14:13:21 -!- agumonkey [~agu@85.158.70.86.rev.sfr.net] has quit [Quit: Lost terminal] 14:16:17 agumonkey [~agu@85.158.70.86.rev.sfr.net] has joined #lisp 14:16:52 -!- homie [~levgue@xdsl-78-35-167-251.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 14:17:08 derekv [~derekv@c-71-238-24-59.hsd1.mi.comcast.net] has joined #lisp 14:18:34 -!- iocor [~textual@unaffiliated/iocor] has quit [Quit: Computer has gone to sleep.] 14:18:57 -!- benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has quit [Ping timeout: 244 seconds] 14:19:40 -!- alama [~jessealam@stgt-5f71698e.pool.mediaWays.net] has quit [Quit: Textual IRC Client: http://www.textualapp.com/] 14:21:11 homie [~levgue@xdsl-78-35-167-251.netcologne.de] has joined #lisp 14:24:00 benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has joined #lisp 14:27:15 doh, i just realized one can have CL syntax highlighting in README.md on github 14:27:31 wtf i was looking how to do it and was not able to find it 14:27:56 example how: https://github.com/sshirokov/hinge/blob/master/README.md 14:31:11 mcspiff [~user@CPE78cd8ec16698-CM78cd8ec16695.cpe.net.cable.rogers.com] has joined #lisp 14:31:47 -!- xristos [~x@2001:4968:200:0:5652:ff:fe55:7b51] has quit [Read error: Connection reset by peer] 14:32:18 Does anyone know how you'd remove a test from a testsuite when using the LIFT test framework? 14:34:38 c_arenz [~arenz@hsi-kbw-109-193-252-079.hsi7.kabel-badenwuerttemberg.de] has joined #lisp 14:36:26 flavioribeiro [~flaviorib@177.142.160.5] has joined #lisp 14:37:33 -!- benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has quit [Ping timeout: 244 seconds] 14:37:42 xristos [~x@2001:4968:200:0:5652:ff:fe55:7b51] has joined #lisp 14:37:44 ft [efftee@shell.chaostreff-dortmund.de] has joined #lisp 14:37:46 -!- xristos is now known as Guest55144 14:38:00 mcspiff: switch to fiveam :) 14:39:26 -!- derekv [~derekv@c-71-238-24-59.hsd1.mi.comcast.net] has quit [Read error: Connection reset by peer] 14:42:34 fe[nl]ix: not overly commmited to LIFT yet, whats the advantage of fiveam? 14:43:42 Kryztof [~user@81.174.155.115] has joined #lisp 14:44:18 fe[nl]ix: other than it seems you're a dev ;-) 14:44:47 derekv [~derekv@c-71-238-24-59.hsd1.mi.comcast.net] has joined #lisp 14:45:30 oh, seems I was looking at an outdated version before... 14:47:07 -!- fantazo [~fantazo@213.129.230.10] has quit [Ping timeout: 240 seconds] 14:47:28 Jeanne-Kamikaze [~Jeanne-Ka@235.177.223.87.dynamic.jazztel.es] has joined #lisp 14:48:06 ykm [~ykm@182.237.190.58] has joined #lisp 14:59:31 Joreji [~thomas@ip-213-135-245-76.static.luxdsl.pt.lu] has joined #lisp 14:59:44 -!- Jeanne-Kamikaze [~Jeanne-Ka@235.177.223.87.dynamic.jazztel.es] has quit [Quit: Did you hear that ?] 15:00:07 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #lisp 15:01:25 -!- ykm [~ykm@182.237.190.58] has left #lisp 15:03:06 -!- gurrag [~gurrag@unaffiliated/gurrag] has quit [Ping timeout: 264 seconds] 15:05:00 lars_t_h [~lars_t_h@002129070251.mbb.telenor.dk] has joined #lisp 15:06:47 -!- homie [~levgue@xdsl-78-35-167-251.netcologne.de] has quit [Read error: Connection reset by peer] 15:08:56 -!- abeaumont [~Alfredo@90.165.165.246] has quit [] 15:09:19 ISF [~ivan@201.82.158.233] has joined #lisp 15:09:47 homie [~levgue@xdsl-78-35-160-115.netcologne.de] has joined #lisp 15:12:36 -!- Ralith [~ralith@63.64.64.178] has quit [Ping timeout: 255 seconds] 15:12:51 Ralith [~ralith@63.64.64.178] has joined #lisp 15:14:24 Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has joined #lisp 15:15:19 nachtwandler [~nachtwand@p57AD7AAA.dip.t-dialin.net] has joined #lisp 15:24:18 -!- pnq [~nick@ACA2262B.ipt.aol.com] has quit [Ping timeout: 245 seconds] 15:28:04 attila_lendvai [~attila_le@176.222.174.182] has joined #lisp 15:28:04 -!- attila_lendvai [~attila_le@176.222.174.182] has quit [Changing host] 15:28:04 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 15:32:46 abeaumont [~Alfredo@90.165.165.246] has joined #lisp 15:32:51 kushal [~kdas@fedora/kushal] has joined #lisp 15:33:03 stardiviner [~stardivin@122.236.240.29] has joined #lisp 15:33:39 -!- stardiviner [~stardivin@122.236.240.29] has quit [Remote host closed the connection] 15:34:43 -!- theos [~theos@unaffiliated/theos] has quit [Ping timeout: 245 seconds] 15:36:42 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Ping timeout: 264 seconds] 15:37:29 -!- getoffmalawn [~getoffmal@14-202-66-99.static.tpgi.com.au] has quit [Ping timeout: 244 seconds] 15:40:32 -!- Ralith [~ralith@63.64.64.178] has quit [Ping timeout: 246 seconds] 15:41:13 Ralith [~ralith@63.64.64.178] has joined #lisp 15:49:10 Xach: if I want to make a QL system that integrates with Slime, is it cool to use quicklisp-slime-helper as template? Ie the ensure-installed and putting .el files into ~/quicklisp/ ? 15:50:50 theos [~theos@unaffiliated/theos] has joined #lisp 15:51:33 gigamonkey [~gigamonke@adsl-99-17-205-160.dsl.pltn13.sbcglobal.net] has joined #lisp 15:55:18 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 252 seconds] 15:58:02 -!- wormwood [~wormwood@99-39-241-71.lightspeed.miamfl.sbcglobal.net] has quit [Ping timeout: 246 seconds] 15:58:34 -!- gigamonkey [~gigamonke@adsl-99-17-205-160.dsl.pltn13.sbcglobal.net] has quit [Quit: gigamonkey] 15:59:09 gigamonkey [~gigamonke@adsl-99-17-205-160.dsl.pltn13.sbcglobal.net] has joined #lisp 15:59:20 *|3b|* wonders what 32bit ccl, 64bit ccl, and 64bit sbcl do differently when talking to OpenCL.dll on win7... 32 bit ccl works, 64 bit ccl can't even initialize opencl, and something locks up the thread when i try to run a kernel on sbcl 16:00:03 wormwood [~wormwood@99-39-241-71.lightspeed.miamfl.sbcglobal.net] has joined #lisp 16:01:33 schoppenhauer [~christoph@unaffiliated/schoppenhauer] has joined #lisp 16:02:01 -!- homie [~levgue@xdsl-78-35-160-115.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 16:02:50 " As a Ruby project, it unsurprisingly has vocal hipster fanboys. Unfortunately, they forgot to parrot their DRY principle to each other." 16:03:01 -!- Ralith [~ralith@63.64.64.178] has quit [Ping timeout: 255 seconds] 16:03:58 -!- derekv [~derekv@c-71-238-24-59.hsd1.mi.comcast.net] has quit [Read error: Connection reset by peer] 16:04:14 *|3b|* wonders if ccl64 is taking up some address space the dll wants or something 16:06:51 -!- kpreid [~kpreid@adsl-75-36-181-224.dsl.pltn13.sbcglobal.net] has quit [Quit: Quitting] 16:07:16 kpreid [~kpreid@adsl-75-36-181-224.dsl.pltn13.sbcglobal.net] has joined #lisp 16:08:42 kanru` [~kanru@36-226-34-183.dynamic-ip.hinet.net] has joined #lisp 16:10:55 3b: its quite common problem on windows actually, with cygwin at least.. It has special "rebase" command to relink everything to new base address 16:12:13 you can probably attach debugger and set breakpoint on LoadLibrary and see what it returns 16:12:22 <|3b|> yeah, that seems to be it, can talk to the dll if i start ccl64 with --heap-reserve 512M 16:12:41 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #lisp 16:12:43 *|3b|* isn't sure i even have a debugger installed :/ 16:13:04 *maxm* is hopelessy behind the times in windows, my last windows debugger was vc2008 :-) 16:13:25 *|3b|* 's last windows debugger was gdb :p 16:13:43 derekv [~derekv@c-71-238-24-59.hsd1.mi.comcast.net] has joined #lisp 16:14:10 -!- zodiac1111 [~zodiac111@101.68.104.132] has quit [Quit: ] 16:14:19 <|3b|> just haven't bothered to install much dev stuff since i upgraded to win7... barely added lisp dev tools a few weeks ago 16:15:13 will be actually quite funny if windows desktop dies, and all that remains were android, ipads, and linux with kde/gnome as lats refuse of people with normal machines :-) 16:15:25 last refuge 16:16:48 maxm: i'm not sure. i think so. quicklisp-slime-helper is an odd duck. 16:17:54 Xach: well as log as you ok with it, coz I was not sure if putting .el file into ~/quicklisp/ could be controversial somehow.. 16:18:13 homie [~levgue@xdsl-78-35-160-115.netcologne.de] has joined #lisp 16:19:04 a/c running full speed, my fingers frozen and missing letters 16:20:02 gurrag [~gurrag@bb-216-195-184-91.gwi.net] has joined #lisp 16:20:02 -!- gurrag [~gurrag@bb-216-195-184-91.gwi.net] has quit [Changing host] 16:20:02 gurrag [~gurrag@unaffiliated/gurrag] has joined #lisp 16:22:15 Ralith [~ralith@63.64.64.178] has joined #lisp 16:23:00 kwmiebach [~kwmiebach@37-188-126-213.static.cloud-ips.co.uk] has joined #lisp 16:24:29 <|3b|> looks like i can set heap-reserve to 503G, without breaking OpenCL, i guess that probably won't be too limiting :p 16:24:35 maxm: i say go for it, and if it's a problem, time to adapt 16:27:32 tensorpudding [~michael@99.148.200.61] has joined #lisp 16:28:06 -!- McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has quit [Ping timeout: 276 seconds] 16:29:43 McMAGIC--Copy [~McMAGIC--@gateway/tor-sasl/mcmagic--copy] has joined #lisp 16:30:16 apathor [~apathor@c-24-218-104-106.hsd1.ma.comcast.net] has joined #lisp 16:30:41 -!- shmore [~shmore@S01060026f31b5d58.hm.shawcable.net] has quit [Quit: leaving] 16:33:16 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 16:37:48 how do I add a property and value to a plist best? 16:38:19 cons ? 16:38:33 (list* :prop val *plist*) 16:38:40 (cons (a .b) :list) ? 16:39:05 <|3b|> (setf (getf ...)...)? 16:39:41 -!- gigamonkey [~gigamonke@adsl-99-17-205-160.dsl.pltn13.sbcglobal.net] has quit [Ping timeout: 265 seconds] 16:39:58 oh, I forgot to mention, it's not really a plist. it has an opcode and a value before the plist part 16:40:04 so adding stuff in front wont work 16:40:11 <|3b|> so add a CDDR? 16:41:32 Option 1: introduce more explicit structure than just "list". Option 2: a plist is just a list; acquire some list-manipulation-fu. 16:42:16 pkhuong: I think I'll go with 2 16:42:32 pkhuong: lists are needed because I later on eval the whole thing 16:42:52 Reconstruct a list once you're done fiddling around with their contents. 16:43:15 Might as well work with strings everywhere because you end printing stuff in the end. 16:43:18 *maxm* ends just copying a very basic container generics protocol from system to system. (add-item parent child), (parent-of child), (remove-item parent child) and (detach child) 16:43:47 yeah, that's waht I was trying. But I have problems conditionnaly adding properties 16:43:58 in the long run having everything as clos object pays for itself, since you actually think in terms of "add foobaz to foobar" rather then "how to fiddle lists around" 16:44:37 gigamonkey [~gigamonke@adsl-76-254-20-77.dsl.pltn13.sbcglobal.net] has joined #lisp 16:45:33 *|3b|* gets code running on 64 bit ccl with reduced heap, doesn't lock up, but also doesn't return correct values :( 16:46:10 "the engine was shiny, with lots of detailed chrome parts, almost like a real one, except it did not work" 16:47:12 <|3b|> well, it at least partially works (configures opencl, builds kernel, etc) 16:49:53 <|3b|> seems to upload and download data correctly too 16:50:33 -!- noss [~cs@110.35.136.223] has quit [Ping timeout: 245 seconds] 16:52:24 -!- cataska [~cataska@210.64.6.233] has quit [Ping timeout: 244 seconds] 16:52:44 I now just (getf (setf )) on an empty list from behind conditionnaly and then add the opcode and parameter at the ending 16:53:43 Aiwass [~user@86.127.137.190] has joined #lisp 16:54:54 waahaha 16:55:03 i suddenly can't load mcclim 16:55:11 pnq [~nick@ACA284C2.ipt.aol.com] has joined #lisp 16:55:51 hi, when I use parenscript, if I user parenscript:return, i get "Returning from unknown block nilBlock". What cause this? 16:56:18 <|3b|> possibly you want return-from? 16:56:34 -!- KingsKnighted [~quassel@c-174-52-149-13.hsd1.ut.comcast.net] has quit [Remote host closed the connection] 16:56:43 or insert a block named NIL somewhere. 16:57:06 <|3b|> hmm, maybe not, ps return doesn't act like cl return 16:57:35 <|3b|> possibly you are evaluating it as CL code instead of ps code somehow? 16:58:40 minion: lisppaste 16:58:40 lisppaste: lisppaste is an IRC bot that runs under the nickname "lisppaste" and can be used (only for the #lisp IRC channel!) at http://paste.lisp.org/new/lisp - or http://paste.lisp.org/ for other destinations 16:58:55 the code if from a hunchentoot server example 16:59:08 a paste would probably help someone who uses parenscript help you. 17:00:09 -!- leo2007 [~leo@123.114.34.241] has left #lisp 17:00:34 http://paste.lisp.org/display/130427 17:00:37 <|3b|> or maybe ps docs are out of date, and ps RETURN is learning to act like CL RETURN... RETURN-FROM seems to work with no warning in ps 17:00:57 ps is loaded with quicklisp 17:01:08 <|3b|> and BLOCK seems to work as in CL 17:02:35 anyone else not able to load mcclim =? 17:03:01 return-from gives me the same error 17:03:03 <|3b|> hmm, not sure where to add a BLOCK to that to get the same result 17:03:05 find-pacakge :mcclim gives me nil tho it loaded.... 17:03:21 and things depending on it don't run 17:03:34 -!- CampinSam [~user@24-176-98-217.dhcp.jcsn.tn.charter.com] has quit [Read error: Operation timed out] 17:04:12 *|3b|* would say ignore the warning, or maybe ask on the parenscript mailing list how to get rid of that warning in ps-inline 17:04:13 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 17:04:56 can't ignore the warning, the javascript "return false;" is not generated. actually, the function is not compiled 17:05:05 <|3b|> BLOCK wraps things in (function () { }), not sure if that is what you want or not 17:05:35 no, I use inline javascript 17:11:16 nachtwandler_ [~nachtwand@p5089D6C6.dip.t-dialin.net] has joined #lisp 17:11:47 DDR [~chatzilla@d172-218-2-5.bchsia.telus.net] has joined #lisp 17:12:40 sdemarre [~serge@91.176.86.181] has joined #lisp 17:14:30 -!- nachtwandler [~nachtwand@p57AD7AAA.dip.t-dialin.net] has quit [Ping timeout: 264 seconds] 17:14:38 -!- mathrick [~mathrick@85.218.195.174] has quit [Read error: Connection reset by peer] 17:14:55 mathrick [~mathrick@85.218.195.174] has joined #lisp 17:15:58 -!- AeroNotix [~xeno@aeao188.neoplus.adsl.tpnet.pl] has quit [Quit: WeeChat 0.3.8] 17:17:27 -!- Jasko [~tjasko@c-174-59-201-95.hsd1.pa.comcast.net] has quit [Quit: This computer has gone to sleep] 17:18:27 Spion_ [~spion@unaffiliated/spion] has joined #lisp 17:21:28 _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has joined #lisp 17:21:49 Aiwass` [~user@86.127.137.190] has joined #lisp 17:22:13 -!- Spion [~spion@unaffiliated/spion] has quit [Ping timeout: 265 seconds] 17:23:24 wbooze [~wbooze@xdsl-78-35-160-115.netcologne.de] has joined #lisp 17:24:07 -!- c_arenz [~arenz@hsi-kbw-109-193-252-079.hsi7.kabel-badenwuerttemberg.de] has quit [Ping timeout: 246 seconds] 17:25:33 -!- Aiwass [~user@86.127.137.190] has quit [Ping timeout: 245 seconds] 17:27:02 -!- ice [~ice@123.114.53.196] has quit [Quit: leaving] 17:28:42 Sorella_ [~quildreen@189-12-65-107.user.veloxzone.com.br] has joined #lisp 17:28:50 ZC|Mobile [~weechat@unaffiliated/forgottenwizard] has joined #lisp 17:29:36 -!- theos [~theos@unaffiliated/theos] has quit [Quit: cya] 17:31:05 -!- stat_vi [~stat@dslb-094-218-237-233.pools.arcor-ip.net] has quit [Quit: leaving] 17:31:18 -!- Sorella [~quildreen@oftn/member/Sorella] has quit [Ping timeout: 264 seconds] 17:31:22 EmmanuelOga [~emmanuel@host73.190-229-121.telecom.net.ar] has joined #lisp 17:34:26 -!- Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has quit [Remote host closed the connection] 17:35:08 bitonic [~user@host86-154-103-109.range86-154.btcentralplus.com] has joined #lisp 17:35:23 -!- kushal [~kdas@fedora/kushal] has quit [Quit: Leaving] 17:37:08 fe[nl]ix: is there a way to make a heirachy of test suites with 5am? 17:38:27 Jasko [~tjasko@c-174-59-201-95.hsd1.pa.comcast.net] has joined #lisp 17:40:12 AeroNotix [~xeno@aeao188.neoplus.adsl.tpnet.pl] has joined #lisp 17:44:31 -!- wbooze [~wbooze@xdsl-78-35-160-115.netcologne.de] has quit [Quit: Client Quit] 17:45:01 xaxisx [~xaxisx@184.175.54.34] has joined #lisp 17:46:35 jcowan [~John@p-67-158-180-195.dsl1.rtr.chat.fpma.frpt.net] has joined #lisp 17:46:51 Quadresce [~quad@unaffiliated/quadrescence] has joined #lisp 17:48:11 kushal [~kdas@fedora/kushal] has joined #lisp 17:49:43 -!- Quadrescence [~quad@unaffiliated/quadrescence] has quit [Ping timeout: 245 seconds] 17:50:26 Question: Do some CL implementations support arbitrary test functions? If so, does anyone have experience using them in practical situations? 17:52:32 Aiwass`` [~user@86.127.137.190] has joined #lisp 17:53:24 -!- _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has quit [Ping timeout: 248 seconds] 17:53:32 _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has joined #lisp 17:53:50 fantazo [~fantazo@91.119.101.47] has joined #lisp 17:54:03 -!- Aiwass` [~user@86.127.137.190] has quit [Read error: Operation timed out] 17:56:52 jcowan: what are arbitrary test functions? 17:59:55 jcowan: in everything except hash tables, if you mean equlity operators 17:59:58 or what are nonarbitrary test functions? 18:00:34 how can i make the climacs mark-region thing make the marks visible ? 18:00:40 by other color for example ? 18:01:10 Sorry, I have hash tables on the brain, and I forgot to say "in hash tables" 18:01:18 context lossage 18:01:39 yes, some implementations do support them 18:01:40 nearly all of them by now, I think. 18:01:46 Good. 18:02:09 And does anyone have experience in their use? Presumably if you supply an arbitrary test, you need to be able to supply a corresponding hash function, too. 18:02:45 that's how they support them, by you supplying a hash-function 18:03:13 All good. 18:03:15 yup. I like SBCL's way of having a macro to register the default hash function for equality tests, but allowing the user to supply arbitrary pairs of functions with explicit arguments. 18:03:28 -!- Aiwass`` [~user@86.127.137.190] has quit [Remote host closed the connection] 18:03:39 And what test/hash pairs have people used in anger? 18:04:00 What I would like better, as a data structure person, is the ability to specify multiple hash functions, and/or parameterise them on integers. 18:05:05 -!- teggi_ [~teggi@113.172.61.61] has quit [Remote host closed the connection] 18:05:19 pkhuong: Can you expand on that? 18:05:22 I've used spine-only deep equality for hash consing and order-oblivious equality for sets-as-lists. 18:05:48 Thanks, excellent examples. 18:06:31 lobo_d_b [~lobo_d_b@181.132.160.27] has joined #lisp 18:06:32 -!- lobo_d_b [~lobo_d_b@181.132.160.27] has quit [Changing host] 18:06:32 lobo_d_b [~lobo_d_b@unaffiliated/juan--d--b/x-561435] has joined #lisp 18:07:18 jcowan: parameterising a hash function on a small integer (as in universal hashing) helps avoid collisions when rehashing. Also very helpful against DOSes. Multiple suitably-independent hash functions are useful to enable hash tables with better guarantees under load, d-left or cuckoo for instance. 18:08:20 wol [~wol@67.174.222.215] has joined #lisp 18:08:24 -!- Guest55144 is now known as xristos 18:08:30 Well, okay, but how independent can they be if they are just parameterized on a small integer (unless, indeed, the integer is used to switch between otherwise arms-length implementations -- is that what you mean?) 18:09:01 Those are fairly orthogonal features, really. 18:09:07 -!- kushal [~kdas@fedora/kushal] has quit [Quit: Leaving] 18:11:17 I guess the right question is: how much do you have to know about the implementation's hash table framework in order to be sure that you have a good hash function? 18:11:20 Although, parameterising on enough integers is a good way to obtain some independence, enough to be useful. It's mostly useful to avoid unlucky strings of collisions. 18:12:12 jcowan: in theory not much. In practice, nobody checks anyway. 18:12:16 sabalaba [~Adium@199-188-193-145.PUBLIC.monkeybrains.net] has joined #lisp 18:12:52 benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has joined #lisp 18:14:25 -!- pnq [~nick@ACA284C2.ipt.aol.com] has quit [Ping timeout: 265 seconds] 18:14:43 -!- Joreji [~thomas@ip-213-135-245-76.static.luxdsl.pt.lu] has quit [Ping timeout: 245 seconds] 18:15:12 jtza8 [~jtza8@196-210-172-211.dynamic.isadsl.co.za] has joined #lisp 18:16:18 -!- DDR [~chatzilla@d172-218-2-5.bchsia.telus.net] has quit [Ping timeout: 264 seconds] 18:16:32 -!- chu [~chu@unaffiliated/chu] has quit [Quit: leaving] 18:18:41 Quaydon [~aaaaaaa@cpe-024-074-028-225.carolina.res.rr.com] has joined #lisp 18:19:34 ThomasH [~user@pdpc/supporter/professional/thomash] has joined #lisp 18:19:37 phax [~phax@cpc14-haye17-2-0-cust110.haye.cable.virginmedia.com] has joined #lisp 18:19:37 -!- phax [~phax@cpc14-haye17-2-0-cust110.haye.cable.virginmedia.com] has quit [Changing host] 18:19:37 phax [~phax@unaffiliated/phax] has joined #lisp 18:19:38 Greetings lispers 18:19:45 mcspiff: yes 18:20:57 wbooze [~wbooze@xdsl-78-35-160-115.netcologne.de] has joined #lisp 18:22:13 -!- benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has quit [Ping timeout: 245 seconds] 18:22:53 pkhuong: Thanks. The other use case I have is hashing lists where only the car counts and the cdr is just noise of some sort. 18:23:02 I have the exact details somewhere. 18:25:43 iocor [~textual@unaffiliated/iocor] has joined #lisp 18:25:52 fe[nl]ix: I must be missing something, I have two test suites defined, one :on the other. But when I run tests it only runs the name specificed to it, not both suites 18:26:22 -!- iocor [~textual@unaffiliated/iocor] has quit [Client Quit] 18:27:44 iocor [~textual@unaffiliated/iocor] has joined #lisp 18:28:43 jcowan: I made hash keys that were lists of strings compared by set-equality of string-equal elements. I just munged them into something #'equal and sxhashed that for the hash value. I found it to be well documented and easy on the implementations I tried 18:29:54 DDR [~chatzilla@d172-218-2-5.bchsia.telus.net] has joined #lisp 18:30:32 mcspiff: paste the code 18:30:51 stat_vi [~stat@dslb-094-218-236-181.pools.arcor-ip.net] has joined #lisp 18:33:20 Vivitron: Thanks. How did you mung them without sorting them? 18:36:06 I sorted a copy of them:) The sets were guaranteed to be small, and there was a practical limit to the amount of data this code would ever be run on that kept the execution fast 18:36:26 -!- Sorella_ is now known as Sorella 18:39:55 Ah, I see. 18:39:56 dmizzle [~dmizzle@c-76-23-19-120.hsd1.ut.comcast.net] has joined #lisp 18:41:03 Overall I would have just kept the sets sorted in the first place and just used equalp. 18:46:06 yakov [~yakov@37-144-36-142.broadband.corbina.ru] has joined #lisp 18:46:08 -!- lobo_d_b [~lobo_d_b@unaffiliated/juan--d--b/x-561435] has quit [Quit: leaving] 18:49:11 <|3b|> yay, fixed a type and opencl works on 64bit sbcl and ccl 18:49:32 hrs_ [~textual@c-174-62-169-43.hsd1.ma.comcast.net] has joined #lisp 18:50:13 *|3b|* just needs to figure out how to define it so it doesn't break 32bit ccl instead 18:51:07 -!- lars_t_h [~lars_t_h@002129070251.mbb.telenor.dk] has quit [Quit: Leaving] 18:51:12 jcowan: equalp is case insensitive. 18:51:57 Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has joined #lisp 18:51:59 Oh yes, right. 18:52:39 jcowan: they way it worked I had some (gethash (list ...) table) sprinkled throughout which would have had to become (gethash (sort (mapcar #'string-upcase (list ...))) table) 18:53:25 Sure. I was saying that as to sorting (and upcasing) you could do that when you inserted an element into the set rather than at hash time. 18:53:27 Vivitron: powers of encapsulation: (find-string-set strings table). 18:54:01 Isn't it so sad how we dynamic-language users can't have refactoring browsers to do all this for us? *snark* 18:54:20 jcowan: we do. 18:54:28 Hence the *snark* 18:54:38 ah, metasnarkiness. 18:54:57 Refactoring browsers were born in Smalltalk, after all. But you'll see them seriously defended as a big advantage of explicitly statically typed languages. 18:55:13 pkhuong: thanks, that sounds like it would have been a good solution too 18:55:28 Sorella_ [~quildreen@201-58-224-9.user.veloxzone.com.br] has joined #lisp 18:55:35 <|3b|> does cffi have a predefined size_t type? 18:57:03 |3b|: i don't think it does 18:57:13 at least it use to not have 18:57:22 I grovelled to get it 18:57:37 |3b|: at least there's only one LLP64. 18:58:18 -!- Sorella [~quildreen@189-12-65-107.user.veloxzone.com.br] has quit [Ping timeout: 264 seconds] 18:58:41 <|3b|> yeah, checking for windows explicitly would probably be better than grovelling for just 1 type, still annoying though 18:58:46 pkhuong: what do you mean ? 18:59:32 |3b|: it's not windows specific though, right? 18:59:37 fe[nl]ix: where else does CCL or SBCL run and where long is narrower than pointers? 19:00:00 sparc ? 19:00:15 <|3b|> Guthur: what pkhuong said 19:00:18 nope. Unless CCL runs there. 19:00:35 -!- hrs_ [~textual@c-174-62-169-43.hsd1.ma.comcast.net] has quit [Quit: ["Textual IRC Client: www.textualapp.com"]] 19:00:49 <|3b|> also only care about platforms with OpenCL support 19:01:29 Greetings. Looping through a list of variables, trying to print the list variable name as well as the value. I can get the loop variable name and the list variable value, but not the list variable name. Any built-in part of loop that I should be looking at? 19:02:06 pkhuong: I just got bitten by that in libfixposix. I tried compiling it on a Linux/Sparc machine in the GCC compile farm that has 32-bit size_t 19:02:12 wol: your question is confusing. can you paste some code? 19:02:36 fe[nl]ix: SBCL only runs on 32 bit sparcs. 19:02:45 -!- angavrilov [~angavrilo@217.71.227.190] has quit [Ping timeout: 265 seconds] 19:03:01 wol: i think you need to write yourself a macro to do that. 19:03:56 wol: but i may misunderstand as well, so maybe post some code 19:04:10 |3b|: better grovel it anyway 19:04:31 I'd agree with that 19:04:35 lobo_d_b [~lobo_d_b@unaffiliated/juan--d--b/x-561435] has joined #lisp 19:04:47 fe[nl]ix: ah, yes. Break the build for many windows users in order to run on windows (: 19:05:01 seems cleaner than platform specific shenanigans 19:05:03 <|3b|> do windows users generally have C compilers for lisp dev? 19:05:35 well, you can't build sbcl without one 19:05:37 Guthur: I'd say LLP64 is the shenanigan here. 19:05:41 stassats: you can install it. 19:06:12 |3b|: when i developed on windows in lisp, i never had a c compiler. 19:06:28 http://paste.lisp.org/+2SN0 19:06:35 well, my only use of windows for lisp is to check whether sbcl build on it 19:06:39 *|3b|* only has one accidentally, since i installed msys 19:06:42 builds 19:08:06 wol: you can use (symbol-name 'symbol) => "SYMBOL" 19:08:32 Fade: if wol could get ahold of the symbol, I doubt he'd be askind here. 19:09:02 of course. 19:09:04 dubz [~d0ng@ec2-23-23-243-24.compute-1.amazonaws.com] has joined #lisp 19:09:13 -!- dubz [~d0ng@ec2-23-23-243-24.compute-1.amazonaws.com] has left #lisp 19:09:14 sorry. disregard. 19:09:51 Yes. That just got me the name of the loop variable 19:10:01 wol: lexical variables don't work that way 19:10:40 Lexical variables don't exist as Lisp runtime objects. 19:11:16 but what are you really trying to do? 19:12:29 <|3b|> heh, apparently the gcc i have can't compile 64 bit anyway :/ 19:13:21 -!- brendyn [brendyn@2a01:7e00::f03c:91ff:fedf:65b4] has quit [Ping timeout: 245 seconds] 19:16:36 <|3b|> and i get an error even if i try to grovel it for 32 bit 19:17:04 Just being lazy and trying to learn more. I have a bunch of variables not in a list and was trying to see if I could avoid creating 2 lists (the variables) (the variable names). 19:17:20 wol: with a macro. 19:18:43 Will look at that. Thanks 19:18:58 fe[nl]ix: wait, what? 32 bit size_t? How can that work? What happens if one tries to mmap more than 4 GB's worth of data at a time? 19:18:58 <|3b|> ah, apparently it failed to figure out where gcc is for some reason 19:19:39 -!- EmmanuelOga [~emmanuel@host73.190-229-121.telecom.net.ar] has quit [Ping timeout: 244 seconds] 19:21:48 -!- schoppenhauer [~christoph@unaffiliated/schoppenhauer] has quit [Quit: leaving] 19:22:35 Joreji [~thomas@ip-213-135-245-76.static.luxdsl.pt.lu] has joined #lisp 19:22:54 -!- jtza8 [~jtza8@196-210-172-211.dynamic.isadsl.co.za] has quit [Ping timeout: 264 seconds] 19:24:58 -!- jdz [~jdz@89.201.97.48] has quit [Quit: Byebye.] 19:25:37 pkhuong: never mind, my bad. gcc defaults to -m32 there too 19:28:09 brendyn [brendyn@2a01:7e00::f03c:91ff:fedf:65b4] has joined #lisp 19:29:31 *|3b|* just special cases #+(and windows x86-64), anyone that wants to run on other odd platforms can send a patch 19:29:48 <|3b|> not like anyone else runs it anyway :p 19:34:22 SHUPFS [~user@S0106001111de1fc8.cg.shawcable.net] has joined #lisp 19:35:09 -!- prip [~foo@host250-126-dynamic.42-79-r.retail.telecomitalia.it] has quit [Ping timeout: 244 seconds] 19:35:26 -!- brendyn [brendyn@2a01:7e00::f03c:91ff:fedf:65b4] has quit [Ping timeout: 245 seconds] 19:35:43 pnq [~nick@ACA343DB.ipt.aol.com] has joined #lisp 19:36:16 dnolen [~user@pool-68-161-100-113.ny325.east.verizon.net] has joined #lisp 19:38:29 Jeanne-Kamikaze [~Jeanne-Ka@235.177.223.87.dynamic.jazztel.es] has joined #lisp 19:40:08 theos [~theos@unaffiliated/theos] has joined #lisp 19:40:18 -!- sdemarre [~serge@91.176.86.181] has quit [Ping timeout: 264 seconds] 19:45:07 ravster [~user@184.175.28.107] has joined #lisp 19:45:10 Hello everyone 19:46:44 -!- wbooze [~wbooze@xdsl-78-35-160-115.netcologne.de] has quit [Remote host closed the connection] 19:47:22 -!- fantazo [~fantazo@91.119.101.47] has quit [Remote host closed the connection] 19:48:17 prip [~foo@95.233.14.25] has joined #lisp 19:49:24 jtza8 [~jtza8@196-210-172-211.dynamic.isadsl.co.za] has joined #lisp 19:52:44 -!- homie [~levgue@xdsl-78-35-160-115.netcologne.de] has quit [Remote host closed the connection] 19:54:03 r_r_r [~chatzilla@77.126.198.200] has joined #lisp 19:58:05 -!- theos [~theos@unaffiliated/theos] has quit [Quit: cya] 19:59:06 -!- tsuru` [~charlie@adsl-74-179-198-172.bna.bellsouth.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 19:59:48 homie [~levgue@xdsl-78-35-160-115.netcologne.de] has joined #lisp 20:00:00 superflit_ [~superflit@71-218-207-116.hlrn.qwest.net] has joined #lisp 20:00:01 -!- superflit [~superflit@75-171-217-148.hlrn.qwest.net] has quit [Ping timeout: 250 seconds] 20:00:01 -!- superflit_ is now known as superflit 20:00:34 is it possible (and how to?) unbind the definition of a function? 20:00:56 I've been doing defun and now want to keep the name but for a defmethod... 20:01:17 <|3b|> clhs fmakunbound 20:01:17 http://www.lispworks.com/reference/HyperSpec/Body/f_fmakun.htm 20:01:23 thx 20:01:25 atsidi [~nkraft@ip72-192-253-246.dc.dc.cox.net] has joined #lisp 20:01:42 defmethod should offer a restart 20:02:09 agreed 20:02:20 agreed on what? 20:02:51 that defmethod should offer a restart that calls fmakunbound 20:03:05 dim if you're using SLIME you can also inspect #'method, and it'll list all the methods of the generic with a remove button next to them 20:03:25 dim: that wasn't a suggestion, your implementation should have it already 20:03:35 I didn't see it 20:04:04 the standard only specifies the exceptional situations but no mandatory restart 20:04:07 -!- silenius [~silenius@i59F77F90.versanet.de] has quit [Remote host closed the connection] 20:04:30 dim: what is your implementation? 20:04:40 ccl 1.8 20:04:41 i hope it's not clisp 20:05:53 then you haven't been looking carefully for the restart 20:06:33 that's a possibility yes, sorry 20:07:35 in fact, it's the first one 20:08:19 (loop for r below 9 ...), is there any chance than declaring the type of r will impact perfs in a sensible way, and how to? 20:08:41 have you profiled it already? 20:08:51 not yet, no, just wondering 20:09:02 also I begin to think about my options, in case 20:09:29 Switch to bitsets if you want performance. 20:09:51 if you're using ccl, you're not using the fastest performing implementation anyway 20:09:56 I'm already using bit-vectors here 20:10:08 Fixnums will be faster 20:10:40 I'm using fixnums in some places where I know how to declare that 20:11:01 I have e.g. (declare (type (integer 0 9) row col)) 20:11:04 You don't need declarations to use fixnums instead of bit vectors. 20:11:06 tehnoobeh [~tehnoobeh@2a02-8420-6f5c-4200-0218-deff-feca-a4fa.rev.sfr.net] has joined #lisp 20:11:32 what I need is a pointer to some docs or an example, then :) 20:11:51 and to publish my code (which is plently fast as of now btw, inquiring my options) 20:11:52 fixnum is an integer, it has bits 20:11:55 clhs ldb 20:11:55 http://www.lispworks.com/reference/HyperSpec/Body/f_ldb.htm 20:12:00 clhs logtest 20:12:01 http://www.lispworks.com/reference/HyperSpec/Body/f_logtes.htm 20:12:02 clhs logand 20:12:02 http://www.lispworks.com/reference/HyperSpec/Body/f_logand.htm 20:12:15 -!- Quaydon [~aaaaaaa@cpe-024-074-028-225.carolina.res.rr.com] has quit [Quit: Leaving] 20:12:17 clhs logbitp while we're at it. 20:12:17 Sorry, I couldn't find anything for logbitp while we're at it.. 20:12:18 (aref bit-vector position) is quite clean to manipulate 20:12:57 when using (make-array 10 :element-type 'bit :initial-element 1) will it be as fast as doing it "manually" with fixnums and binary arithmetic? 20:12:59 (ldb (byte 1 position) integer) is as well 20:13:46 dim: #x1FF is always faster 20:13:56 the question is, will the compiler be smart enough to produce equivalent code, or is there some noticable gains to expect here? 20:14:02 no, it won't be 20:14:05 If you want speed, you should test whether bit vectors or byte vectors are faster, especially when you mutate them, since that involves reading them before writing them (which byte vectors do not) 20:14:09 ok, good to know, thanks 20:14:19 -!- tehnoobeh [~tehnoobeh@2a02-8420-6f5c-4200-0218-deff-feca-a4fa.rev.sfr.net] has quit [Client Quit] 20:14:32 The gains will be in additional simplifications using small integers will enable. 20:14:54 Point. 20:15:21 mmm, I read "simplifications" here as "hard to maintain math tricks" 20:15:47 cl offers a number of high-level bit-manipulation routines 20:16:00 there seems to be a weird "valley" between declaring everything and not declaring everything 20:16:02 like ldb, dpb, mask-field, and others 20:16:05 CL is a better language for bit manipulation than C, that's for sure. 20:16:21 I need to count set bits, for example, and I only want to store 9 values 20:16:29 under speed 3 safety 0 declaring every integer speeds up almost to the level of C 20:16:34 logcount to count set bits 20:16:50 cool 20:16:52 integer-length to find set bits. 20:17:00 but under safety 1 if you use a lot of small functions and each has declare of all its args, and they are called a lot, it will slow down a bit, due to all assertion checks 20:17:18 pkhuong: not left-most bit? 20:17:19 maxm: I rarely declare anything but argument types and a couple variables that are assigned to. 20:17:21 -!- kanru [~kanru@118-163-10-190.HINET-IP.hinet.net] has quit [Ping timeout: 255 seconds] 20:17:34 "Lisp programmers know the value of everything and the cost of nothing" 20:17:37 so I might as well switch from bit-vectors to integers then 20:17:46 it's just a matter of finding the right API apparently 20:17:50 -!- pnq [~nick@ACA343DB.ipt.aol.com] has quit [Ping timeout: 252 seconds] 20:18:03 jcowan: More applicable to C++ nowadays ;) 20:18:03 comparing to no declares at all.. I ended up doing safety 0 in the end, for production/researcht runs, but debug 3 safety 2 for development 20:18:24 pkhuong: Indeed, but my rant about C++ is rather less epigrammatic 20:18:26 stassats: most significant, yes. 20:18:51 how do I make sure I create a fixnum? 20:18:55 "In C++ you do not trust the compiler, you do not trust the library, you do not trust your coworkers, and above all you do not trust yourself." 20:19:03 dim: you only use fixnum values. 20:19:25 like (let ((values 0)) ... ) and I can assume it won't be anything else that a fixnum? 20:19:29 pkhuong: yea same here, the difference is not worth it, if I'm ever up and running with serious data size, extra 20-40% here or there won't matter, since only way to scale big is clustering anyway 20:19:31 "C++ is a low-level language masquerading as a high-level language." 20:19:32 stassats: there's always the very classy (logxor x (1- x)). 20:20:00 kirin` [telex@xn--phnix-ibb.net] has joined #lisp 20:20:01 "In C++, there are fifty ways to do anything, forty-nine of which are Evil and Wrong (including the clear and obvious way)." 20:20:03 And like that. 20:20:05 what I mean I don't declare much in normal code 20:20:11 <|3b|> dim: "fixnum" is just a specific range of integers 20:20:23 dim: you can't optimize code for all implementations equally 20:20:31 -!- s0ber [~s0ber@36-224-100-109.dynamic-ip.hinet.net] has quit [Ping timeout: 255 seconds] 20:20:44 stassats: but fixnum must be a supertype of (unsigned-byte 9). 20:21:04 stassats: I hope I'm still in the generic optimisation strategies when talking bit-vector / fixnums 20:21:46 smithzv [~smithzv@99-71-111-56.lightspeed.whtnil.sbcglobal.net] has joined #lisp 20:21:48 dim: yes, i expect fixnums to be better optimized across implementations 20:22:17 as opposed to bit-vectors 20:23:17 you can also declare ftypes of functions 20:23:23 stassats: or (1+ (ash (logxor x (1- x)) -1)) (: Integer arithmetic is incredibly useful to propagating bit changes. 20:23:30 from what I understand that would get rid of 1 level of indirection, and enable better optimizations 20:24:05 pkhuong: exactly what I meant by unmaintainable maths tricks 20:24:40 <|3b|> dim: easy enough to maintain if you name it properly 20:24:59 dim: just name it. It's very clear what it does. And there's nothing to maintain. 20:25:11 two's complement integers aren't changing any time soon. 20:26:17 and you have a head-start with the already existing high-level operations 20:26:28 you can treat integers just like bit-vectors 20:29:07 I wouldn't worry about small scale complexity. That's easily fixed with good names and a bit of documentation. It's the complexity that leaks out and makes the whole system brittle and hard to understand that's dangerous. 20:29:21 although a bit-vector of 729 elements will yield a more compact strucutre than an array of 81 (unsigned-byte 9) 20:30:14 pkhuong: this very case is a sudoku solver exercise, though :) 20:30:22 dim: and? 20:30:37 so complexity of the whole system is not that big 20:30:57 stassats: that's a pain to work with. You'll get nicer SWARing with the second way. 20:31:27 ; Evaluation aborted on #. --- that should never happen from code nested in (ignore-errors ...) right? 20:31:28 dim: there are lots of ways to make the search painful. Using fixnums instead of bit vectors isn't one of them. 20:31:46 of course, the most compact representation of sudoku is... an unsolved sudoku 20:32:23 dim: code should never be nested into ignore-errors 20:32:28 pkhuong: I'm not used to reading logand or ldb or logcount of even integer-length and knowing what it means in that context, whereas aref is very very clear 20:32:41 jcorneli [896c9127@gateway/web/freenode/ip.137.108.145.39] has joined #lisp 20:32:41 -!- nachtwandler_ [~nachtwand@p5089D6C6.dip.t-dialin.net] has quit [Read error: Operation timed out] 20:32:49 so I keep that idea as an optimisation at the expense of readibility one 20:32:56 well, you're have much CL to learn yet 20:33:01 I can understand that's very personal and subject to change 20:33:03 stassats: sure 20:33:14 ldb i very readable 20:33:18 that's why I appreciate joining this channel :) 20:33:19 is 20:33:45 although i've used a specialized version for working with single bits at a time 20:33:49 -!- Sorella_ is now known as Sorella 20:34:56 how does one write sudoku solvers, is it just brute force recursive search? 20:35:12 fantazo [~fantazo@213.129.230.10] has joined #lisp 20:35:30 ie like n-queens or such? 20:35:58 one can do better than complete brute force 20:36:10 -!- sabalaba [~Adium@199-188-193-145.PUBLIC.monkeybrains.net] has quit [Quit: Leaving.] 20:36:22 several approaches are possible, Knuth uses DANCE which is a n-queen generalisation IIUC, and Norvig uses some brute force in http://norvig.com/sudoku.html 20:36:41 I'm porting that Norvig algo from python to CL 20:36:54 Backtracking (the usual N-queens algorithm) is not the same as brute force, anyway. 20:37:03 he's not doing backtracking in there 20:37:16 will you aim for an industrial-strength sudoku solver? 20:37:36 It (backtracking) makes sense when each step in the search is a single change to a large data structure, but is complicated when each assignment can lead to many other changes via constraint propagation. 20:37:43 stassats: no 20:37:48 maxm: there's always some level of propagation, but at some point, we have to guess (well, unless we go for cutting planes, but I don't think anyone has even considered that as a valid option for sudokus) 20:37:49 http://en.wikipedia.org/wiki/Sudoku_algorithms <-- good discussion, not too difficult 20:37:54 my goal is to teach myself some CL and practice, that's about it 20:38:07 dim: no, it's not complicated. 20:38:12 *maxm* never played sudoku so need to read up on the rules first 20:38:22 pkhuong: sorry, that was quoting Norvig 20:38:26 Hi, is this a good place to ask about clsql questions? 20:38:30 The simplex algorithm, WP says, works well. 20:38:33 (not saying that he's right though) :) 20:38:56 I want to port the python code, implement the same ideas 20:38:57 jcorneli: yes, but clsql mailing list is the best 20:39:00 dim: you might want to eventually look at *debugger-hook* 20:39:04 that's my exercise here 20:39:19 I'm trying to install clsql on OS X 20:39:37 and I can't get libmysql, libmysqlclient to load 20:39:55 do you have them for the right architecture? 20:40:02 64 vs 32 20:40:15 I installed both 20:40:33 and what error do you get? 20:40:34 *drewc* might have to mention "use postgresql and POSTMODERN" if he cared about such things ;) 20:40:36 jcowan: the problems are tiny enough that it's almost assuredly embedded in a branch and bound, without any cutting plane round. We're just using LP as one helluva good propagator here. 20:41:04 drewc: i'd prefer an in-memory lisp db 20:41:06 Can't load foreign libraries "libmysqlclient", "libmysql" 20:41:11 ah I would go for evolution/genetic thing, since I already have all teh code 20:41:57 stassats: true! 20:42:38 pkhuong: Well, yes, but isn't that just an artifact of the grid having to be small enough to be readable at the size of an A4 page at most? 20:42:44 ZombieChicken [~weechat@unaffiliated/forgottenwizard] has joined #lisp 20:43:35 stassats: and there is also the 'on-disk functional btree db' that I wrote a long time ago and never finished :) 20:44:20 jcowan: of course. Arbitrary-size sudoku is NP-complete. Doesn't mean we shouldn't focus on the instances that actually crop up in practice. 20:44:31 Mmmm. 20:45:00 -!- JuanDaugherty [~Ren@cpe-72-228-189-184.buffalo.res.rr.com] has quit [Quit: Exeunt IRC] 20:45:06 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 264 seconds] 20:46:35 -!- Jeanne-Kamikaze [~Jeanne-Ka@235.177.223.87.dynamic.jazztel.es] has quit [Quit: Did you hear that ?] 20:49:24 benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has joined #lisp 20:51:27 superflit_ [~superflit@71-218-192-87.hlrn.qwest.net] has joined #lisp 20:52:18 -!- superflit [~superflit@71-218-207-116.hlrn.qwest.net] has quit [Ping timeout: 264 seconds] 20:52:18 -!- superflit_ is now known as superflit 20:52:21 -!- yakov [~yakov@37-144-36-142.broadband.corbina.ru] has quit [Ping timeout: 246 seconds] 20:52:30 @stassats: oops I had downloaded the powerpc version 20:52:32 do'h 20:52:36 got it sorted 20:52:37 _Thanks 20:55:35 k0001 [~k0001@host76.190-228-122.telecom.net.ar] has joined #lisp 20:59:00 DDR_ [~chatzilla@d172-218-2-5.bchsia.telus.net] has joined #lisp 21:00:17 superflit_ [~superflit@63-225-246-162.hlrn.qwest.net] has joined #lisp 21:00:17 -!- benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has quit [Read error: Connection reset by peer] 21:00:33 syamajala [~syamajala@c-75-68-106-118.hsd1.ma.comcast.net] has joined #lisp 21:00:41 -!- DDR [~chatzilla@d172-218-2-5.bchsia.telus.net] has quit [Ping timeout: 250 seconds] 21:00:43 -!- DDR_ is now known as DDR 21:01:10 -!- k0001 [~k0001@host76.190-228-122.telecom.net.ar] has quit [Ping timeout: 265 seconds] 21:01:40 -!- superflit [~superflit@71-218-192-87.hlrn.qwest.net] has quit [Ping timeout: 248 seconds] 21:01:41 -!- superflit_ is now known as superflit 21:01:48 k0001 [~k0001@host76.190-228-122.telecom.net.ar] has joined #lisp 21:02:08 ur5us [~ur5us@121-98-128-74.bitstream.orcon.net.nz] has joined #lisp 21:05:11 there should totally be a some better way to tell that the library in question is for a different arch 21:05:26 just saying "i can't load it" isn't that helpful 21:06:31 Error feedback is kind of like documentation, no one wants to write it or budget for it. 21:06:47 jcazevedo [~jcazevedo@bl11-117-160.dsl.telepac.pt] has joined #lisp 21:07:39 benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has joined #lisp 21:07:49 I'm guilty of it myself. I can get away with it because I'm working with my own code, but I have aspirations of eventually selling some of the tools. I know I have a lot of development to do on conditions. 21:14:07 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 21:15:43 -!- Kron_ [~Kron@2.49.82.19] has quit [Read error: Connection reset by peer] 21:16:54 -!- apathor [~apathor@c-24-218-104-106.hsd1.ma.comcast.net] has quit [Quit: leaving] 21:18:00 pnq [~nick@ACA2744A.ipt.aol.com] has joined #lisp 21:19:54 pnpuff_ [~pnpuff@95.238.250.238] has joined #lisp 21:20:36 -!- MoALTz [~no@host-92-8-230-153.as43234.net] has quit [Quit: bbl] 21:21:26 -!- pnpuff [~pnpuff@unaffiliated/pnpuff] has quit [Read error: Operation timed out] 21:21:31 meiji11 [~user@96.51.60.120] has joined #lisp 21:24:53 -!- gravicappa [~gravicapp@ppp91-77-170-95.pppoe.mtu-net.ru] has quit [Ping timeout: 255 seconds] 21:24:56 -!- syamajala [~syamajala@c-75-68-106-118.hsd1.ma.comcast.net] has quit [Remote host closed the connection] 21:25:40 syamajala [~syamajala@c-75-68-106-118.hsd1.ma.comcast.net] has joined #lisp 21:27:38 superflit_ [~superflit@65-128-59-189.hlrn.qwest.net] has joined #lisp 21:28:54 -!- superflit [~superflit@63-225-246-162.hlrn.qwest.net] has quit [Ping timeout: 264 seconds] 21:28:54 -!- superflit_ is now known as superflit 21:34:21 kcj [~casey@unaffiliated/kcj1993] has joined #lisp 21:36:41 -!- homie [~levgue@xdsl-78-35-160-115.netcologne.de] has quit [Read error: Connection reset by peer] 21:37:27 -!- mucker [~mucker@183.83.240.198] has quit [Remote host closed the connection] 21:37:46 -!- X-Scale [name@2001:470:1f14:135b::2] has quit [Remote host closed the connection] 21:37:46 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 252 seconds] 21:38:09 homie [~levgue@xdsl-78-35-160-115.netcologne.de] has joined #lisp 21:39:02 -!- AeroNotix [~xeno@aeao188.neoplus.adsl.tpnet.pl] has quit [Quit: WeeChat 0.3.8] 21:39:28 AeroNotix [~xeno@aeao188.neoplus.adsl.tpnet.pl] has joined #lisp 21:40:41 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Quit: Leaving] 21:40:51 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #lisp 21:40:56 -!- Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has quit [Remote host closed the connection] 21:42:26 -!- homie [~levgue@xdsl-78-35-160-115.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 21:44:19 -!- fantazo [~fantazo@213.129.230.10] has quit [Ping timeout: 244 seconds] 21:44:35 apathor [~apathor@c-24-218-104-106.hsd1.ma.comcast.net] has joined #lisp 21:46:18 -!- superflit [~superflit@65-128-59-189.hlrn.qwest.net] has quit [Ping timeout: 264 seconds] 21:46:31 homie [~levgue@xdsl-78-35-160-115.netcologne.de] has joined #lisp 21:47:47 gravicappa [~gravicapp@ppp91-77-160-249.pppoe.mtu-net.ru] has joined #lisp 21:47:54 -!- gravicappa [~gravicapp@ppp91-77-160-249.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 21:48:22 -!- Guest24792 is now known as mafs 21:48:38 -!- mafs [~michael@208.122.1.210] has quit [Changing host] 21:48:38 mafs [~michael@unaffiliated/maikeru/x-7708887] has joined #lisp 21:49:24 -!- apathor [~apathor@c-24-218-104-106.hsd1.ma.comcast.net] has left #lisp 21:50:58 -!- meiji11 [~user@96.51.60.120] has quit [Remote host closed the connection] 21:51:05 saschakb [~saschakb@p4FEA0C9A.dip0.t-ipconnect.de] has joined #lisp 21:52:19 -!- AeroNotix [~xeno@aeao188.neoplus.adsl.tpnet.pl] has quit [Quit: WeeChat 0.3.8] 21:52:39 -!- em is now known as ninkasi 21:56:01 -!- ninkasi is now known as em 21:57:24 -!- poisonarms [~poisonarm@cpe-70-116-22-88.austin.res.rr.com] has quit [Quit: Computer has gone to sleep] 22:00:37 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Quit: Leaving] 22:01:07 -!- syamajala [~syamajala@c-75-68-106-118.hsd1.ma.comcast.net] has quit [Remote host closed the connection] 22:04:24 -!- mrSpec [~Spec@unaffiliated/mrspec] has quit [Quit: mrSpec] 22:15:38 -!- pnq [~nick@ACA2744A.ipt.aol.com] has quit [Ping timeout: 250 seconds] 22:20:47 -!- jcowan [~John@p-67-158-180-195.dsl1.rtr.chat.fpma.frpt.net] has quit [Quit: Leaving] 22:24:20 -!- kcj [~casey@unaffiliated/kcj1993] has quit [Quit: kcj] 22:26:13 -!- Alice3 [~Alice@cpc3-grim12-0-0-cust856.12-3.cable.virginmedia.com] has quit [] 22:30:12 -!- p8m [~dmm@64.15.82.28] has quit [Ping timeout: 248 seconds] 22:32:59 pnq [~nick@AC81CA45.ipt.aol.com] has joined #lisp 22:33:08 kcj [~casey@unaffiliated/kcj] has joined #lisp 22:35:07 EmmanuelOga [~emmanuel@233-20-17-190.fibertel.com.ar] has joined #lisp 22:35:16 -!- EmmanuelOga [~emmanuel@233-20-17-190.fibertel.com.ar] has quit [Client Quit] 22:35:46 CampinSam [~user@24-176-98-217.dhcp.jcsn.tn.charter.com] has joined #lisp 22:36:36 stlifey [~stlifey@121.11.44.25] has joined #lisp 22:36:36 -!- Joreji [~thomas@ip-213-135-245-76.static.luxdsl.pt.lu] has quit [Ping timeout: 248 seconds] 22:37:32 -!- benkard [~benkard@mnch-5d854eab.pool.mediaWays.net] has quit [Ping timeout: 244 seconds] 22:38:30 -!- stat_vi [~stat@dslb-094-218-236-181.pools.arcor-ip.net] has quit [Quit: leaving] 22:39:10 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 255 seconds] 22:39:38 -!- Kvaks [~quassel@15.123.34.95.customer.cdi.no] has quit [Read error: Connection reset by peer] 22:40:51 Kvaks [~quassel@15.123.34.95.customer.cdi.no] has joined #lisp 22:43:37 -!- jcazevedo [~jcazevedo@bl11-117-160.dsl.telepac.pt] has quit [Quit: jcazevedo] 22:44:14 -!- punee [~punee@set25-1-88-166-168-141.fbx.proxad.net] has quit [Quit: punee] 22:50:02 s0ber [~s0ber@114-25-206-65.dynamic.hinet.net] has joined #lisp 22:51:07 -!- DrForr [~jgoff@d149031.upc-d.chello.nl] has quit [Ping timeout: 240 seconds] 22:53:30 -!- agumonkey [~agu@85.158.70.86.rev.sfr.net] has quit [Ping timeout: 264 seconds] 22:57:36 -!- bitonic [~user@host86-154-103-109.range86-154.btcentralplus.com] has quit [Remote host closed the connection] 22:58:07 bitonic [~user@host86-154-103-109.range86-154.btcentralplus.com] has joined #lisp 22:58:10 -!- gigamonkey [~gigamonke@adsl-76-254-20-77.dsl.pltn13.sbcglobal.net] has quit [Quit: gigamonkey] 22:59:20 Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has joined #lisp 22:59:28 today I was bored and I read the first 9 chapters of "practical CL", and it's quite nice 22:59:29 but 22:59:56 what facilities does CL offer for programming concurrent programs? 23:00:35 my feeling is that there is nothing in the spec, is there some accepted library to do for example erlang-style messages, or STM, or whatever? 23:00:53 CL itself has none. 23:01:01 sorry, stm has nothing to do with it, I was thinking about mvars, but anyway 23:01:11 bordeaux-threads is widely used. I've been using it for a while. 23:01:26 There are some Erlang-esque libraries floatin' around, but I haven't tried any of 'em. 23:02:04 Tuxedo: is bordeux-thread a classic OS threads, shared memory thing? 23:02:18 Yes. 23:02:37 uhm. OK. 23:02:50 bitonic: it's a thin portability layer. Message queueing, tasking, etc. libraries have been written on top of it. 23:03:23 pkhuong: understood. but for example there is no runtime that enables lightweight threads 23:03:47 some do. They're buggy, at least if you want pre-emption. 23:04:55 wait, there are non-preemptive ones? 23:04:57 I remember, 12 years ago, people used to complain when implementations only had lightweight threads, and made them go through IPC to exploit multiprocessors. 23:05:35 pkhuong: lightweight threads != just one OS thread 23:05:35 bitonic: CMUCL has a form of stack switching. I don't know if anyone has used it in the last couple years. 23:06:14 jschaefer [~user@99-122-69-191.lightspeed.milwwi.sbcglobal.net] has joined #lisp 23:06:31 bitonic: I also remember when people threw out solaris-style two-level scheduling because getting to perform as well in practice as it could in theory was a black art (: 23:06:32 I mean Haskell and Erlang distribute their lightweight threads on the available cores 23:07:22 pkhuong: I'm not familiar with that, but now there are very practical implementation of runtimes that have lightweight threads which use multiple processors 23:07:58 -!- flavioribeiro [~flaviorib@177.142.160.5] has quit [Remote host closed the connection] 23:07:59 anyway. I feel like I can't really do anything cool without that after some years of Haskell and Erlang, so I'm a bit sad that CL does not have that :P 23:08:10 I'm sure you'll find a way. 23:08:44 pkhuong: well that's not one of those things that's easily implementable 23:08:59 I mean it's not a containers library or whatever. It's hard work :P 23:09:20 well then hacks and glory await 23:10:03 It's not hard to capture a task's state when the task was coded with that in mind. 23:10:28 pkhuong: I'm not sure I get what you're saying 23:11:46 The hard part about implementing green threads is supporting all sort of code that probably shouldn't even be run in a green thread to begin with. If you're not looking for transparence, the stuff that's usually implementation specific is only a couple macros. 23:12:24 smithzv_ [~smithzv@99-71-111-56.lightspeed.whtnil.sbcglobal.net] has joined #lisp 23:13:18 well in the programming languages I use currently every thread is a green thread 23:13:25 and it works beautifully 23:13:36 what do you mean with transparence? 23:13:49 without annotation. 23:14:02 fantazo [~fantazo@91.119.101.47] has joined #lisp 23:14:26 pkhuong: you mean that you have to handle green threads explicitly? 23:14:46 -!- saschakb [~saschakb@p4FEA0C9A.dip0.t-ipconnect.de] has quit [Quit: Ex-Chat] 23:15:03 -!- peterhil [~peterhil@91-157-48-51.elisa-laajakaista.fi] has quit [Ping timeout: 265 seconds] 23:16:11 anyway, I was just curios about whether CL had some accepted capability of this kind, and the answer seems to be no. 23:16:38 mostly, I mean that instead of cl:let* and cl:progn, you use foo:let* and foo:progn, and threads are only suspended when evaluating a direct child of such forms, or that the suspendable part of threads are written in a state machine DSL, etc. 23:17:12 People seem to be able to express tasks fine. It can't be worse than node.js's explicit CPS. 23:17:44 pkhuong: why would that be necessary? 23:17:52 yeah node.js is ugly 23:19:53 I mean I see how it makes things easier. 23:20:14 bitonic: because, as far as I can tell, that's the most syntactic sugar that's found in systems that work. 23:20:28 pkhuong: have you ever looked at Erlang and Haskell? 23:20:37 yes. We're talking common lisp here. 23:20:46 ah ok. that work *in common lisp*. 23:21:01 pkhuong: could you point me at some example of these constructs? 23:23:01 There's , for example, or Shriram K's classic Swine before Perl state machine macro. 23:24:18 pkhuong: ok. I'll check those out. thanks. 23:24:57 Or just plain objects with generic functions called on events. 23:26:34 -!- dmiles_afk [~dmiles@dsl-216-155-214-237.cascadeaccess.com] has quit [Read error: Connection reset by peer] 23:33:58 ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has joined #lisp 23:36:11 gigamonkey [~gigamonke@adsl-76-254-20-77.dsl.pltn13.sbcglobal.net] has joined #lisp 23:37:29 dmiles_afk [~dmiles@dsl-216-155-214-237.cascadeaccess.com] has joined #lisp 23:38:03 -!- ehu [~ehuels@ip118-64-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 245 seconds] 23:41:52 -!- AntiSpamMeta [~MetaBot@AntiSpamMeta/.] has quit [Ping timeout: 246 seconds] 23:42:07 -!- Guthur [~user@host86-148-164-73.range86-148.btcentralplus.com] has quit [Remote host closed the connection] 23:43:08 AntiSpamMeta [~MetaBot@AntiSpamMeta/.] has joined #lisp 23:44:54 -!- alexander__b [~alexander@140.100.189.109.customer.cdi.no] has quit [Ping timeout: 250 seconds] 23:45:00 pnpuff [~pnpuff@unaffiliated/pnpuff] has joined #lisp 23:46:32 -!- pnpuff_ [~pnpuff@95.238.250.238] has quit [Read error: Operation timed out] 23:53:44 *maxm* is wondering if with current threading, its not easier to simply have thread wait on semaphore, with timout instead of doing cps 23:54:05 I mean modern linux handles 2k threads easily right? Since they had then O^1 threading lib? 23:54:34 maxm: you'll run out of address space before that on 32 bit SBCL. 23:55:03 who runs 32-bit these days? 23:55:15 ask the X32 people. 23:55:41 why would it run out of address space with 2k threads, stack? 23:55:51 alexander__b [~alexander@140.100.189.109.customer.cdi.no] has joined #lisp 23:56:03 stack, bindings, guard page, TLS 23:57:04 I mean its kind of a disconnect in usage patterns. Code where continuations help write good programs, would be really complex fat app logic, with lots of page transitions. Ie some kind of intranet rewrite of a fat Win32 app 23:57:42 which not going to have 2k users.. There are very few website with load pattern like twitter or reddit or such, and these don't really have complex guis, its just volume 23:57:57 that's not what bitonic is asking about. 23:58:27 I understand, but I'm kind of surprised so many people want to do it, and wondering if they do have actual use case for it? 23:58:53 I don't know. But then again, I only code tiny trivial web stuff, and only rarely. 23:59:47 maxm: when you get rid of the idea that thread creation is an expensive operation, a lot of doors open