00:00:07 i don't remember when was the last time when i've define a macro for something other than a WITH- wrapper or a DEFINE- specialized function definer 00:00:37 -!- phax [~phax@unaffiliated/phax] has quit [Quit: Leaving] 00:00:42 stassats: well duh! you can do anything you do with macros now as a language feature. part of having macros is needing less features. when users can build such systems themselves in the language, without changing their complete mindset, the language becomes less of a limiting factor. therefore, it can help the programmer. if that help is enough, you can call it a magic bullet. which, as it's so awomely vague defined (b 00:00:42 all), could easily be called a magic bullet in my book. 00:01:21 maybe you know your way around the language's standard macros well enough, but sometimes its quicker to know the system and write what you want than it is to look through manuals and documentation to find it. 00:01:22 stassats: well, your use may differ from mine. and for the theorethical part of it, it is completely irrelevant. 00:02:01 n00b6502: most of the time it is best to reuse what has already been built though :) #haskell will agree with you completely IIRC 00:02:03 if you wrote a macro then find the standard can already do it, maybe you can then go back and simplify it (perhpas its a wrapper making one case more convininent) 00:02:26 well, i'm not accustomed to the dullness of writing in something other than lisp, but even with macros, CLOS, MOP, conditions programming is still hard, error-prone and time-consuming 00:02:58 haskell seems to have surprisingly large emergent complexity in the standard library; i was being told to look for library code relating to emulating "+=" 00:03:00 stassats: if you're not accustomed with other languages, how can you assume that it is not a bullet at all? 00:03:16 and to look for library code to write a simple parser.. 00:03:24 stassats: yes, it may still be error-prone. imagine how much worse it would be if you'd have semi-forced code-duplication. 00:03:29 -!- anon119 [~bman@12.104.148.2] has quit [Quit: Leaving.] 00:03:46 "programming is still hard , error prone" .. .maybe you dont write enough macros :) 00:03:57 anon119 [~bman@12.104.144.2] has joined #lisp 00:04:04 -!- jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has quit [Remote host closed the connection] 00:04:14 n00b6502: macros are in general harder to debug than normal code. 00:05:03 they do appear hard to write, but once you have them they simplify or clarify a lot of 'normal code' 00:05:16 n00b6502: once the problems get hard enough, programming becomes error-prone. i rarely have to write what i've written before (by that time, i'll try to abstract it). when problems are new and increasingly complex, the code itself becomes complex too. macros can help (in my opinion) though. 00:05:31 ^ agree 00:05:55 for much of the programming i've done, the process is usually "start with a hard problem, write some macros / templates (C/C++) that make the solution look easier" 00:06:29 -!- iocor [~textual@unaffiliated/iocor] has quit [Quit: Computer has gone to sleep.] 00:07:05 i'd take CLOS or functional abstractions over macros any day 00:08:03 stassats: you can write CLOS with functional abstractions and macros, why pick? plus, i'd guess the power lies in the combination of all features. the sum of them being bigger than all parts by themselves. 00:08:05 many ways of doing object systems 00:08:07 CLOS can be (and originally was) implemented with macros. try the reverse 00:08:12 -!- anon119 [~bman@12.104.144.2] has quit [Ping timeout: 246 seconds] 00:08:20 You can apply SIMD to functions that don't have branches. 00:08:25 So avoid branches. 00:08:36 branches are turned into selects, conceptually 00:08:37 the goal is not to make local code more succinct, or to minimize code duplication, but to minimize system complexity globally, macros can help here, but not by virtue of being macros. IOW you can't just trow macros at the problem. 00:08:55 pjb: i hope we don't willingly want to throw features out :) 00:08:56 SIMD can be used with simple branching by computing both paths and selecting. 00:09:06 CPUs do this aswell with speculative execution. SIMD is more direct 00:09:21 SIMD saves energy compared to relying on speculative execution 00:09:55 calculate result1; calculate result2; calculate condition; final result = select(condition, result1, result2) 00:10:13 and SIMD is highly specialized and you can't translate every problem to it 00:10:35 yeah but guess what... i'm interested in researching unsolved problems ... 00:11:03 stassats: just thinking here: would it make sense to say that CLOS is so good =because= it was written in lisp? as it was there, it could be tried out, played with, optimized. all in one system. if it were a language feature, it would have been designed and left alone. changes would be more expensive. 00:11:27 ^ +1 00:11:38 macros were sufficiently powerful to design an OO system 00:11:49 stassats: fwiw, i know CLOS/MOP was designed from the combination of other OO systems in lisp, but that doesn't bring the argument down. 00:11:50 madnificent: i don't think that how CLOS came about is relevant to me 00:12:06 stassats: how it came about may not be, but how it turned out is. 00:12:45 that's irrelevant to 00:13:19 so, you don't care how it was built, you don't care how it turned out to be. what do you care about clos? 00:13:30 how it is right now 00:13:45 -!- Bike [~Glossina@63-229-129-146.ptld.qwest.net] has quit [Quit: leaving] 00:13:46 that seems to be the same as 'how it turned out to be'... what is the difference? 00:14:11 i'm not interesting in the process of it turning it to be 00:14:35 turned is past tense. so the turning is finished. to my understading, that means how it is now. 00:14:42 for all i know, it could've been implemented by starving children in the south east asia 00:16:01 either case, if you care about how it is now, and the design has benefitted from the interactive nature of lisp (being that clos could be built in lisp, not as a feature), then you should care about lisp allowing us to build such things as clos. there's a lot of ifs in there, i know. 00:16:35 oh, i didn't get that you implied that CLOS can only be implemented in Lisp 00:17:25 antonv [5d7d31f9@gateway/web/freenode/ip.93.125.49.249] has joined #lisp 00:18:25 macros are as easy to debug as functions. Just write: (defmacro m (args) (m* args)) (defun m* (args) ) an debug (m* 'args). 00:18:30 i didn't want to imply that. what i said was that CLOS, as it is now, may be better because it could be implemented in the language itself. not as a feature of the language. as such, those that built CLOS (and relevant systems before it, like LOOP) could toy with what they had built. it wasn't a rigid thing from the start. such practical experience can make these things better. this isn't completely unique to lisp thou 00:18:42 madnificent: that's just pure speculation 00:19:02 stassats: well, you're soon to hook onto that part of the argument. great fun, that is! 00:19:09 Bike [~Glossina@63-229-129-146.ptld.qwest.net] has joined #lisp 00:19:18 -!- gurrag [~gurrag@unaffiliated/gurrag] has quit [Ping timeout: 264 seconds] 00:19:45 you have no way of knowing how would CLOS turn out if it were done in any other fashion 00:20:05 the authors used all the available features at their disposal, that's all there is to it 00:20:46 i read an analysis saying something seeming relevant here. 00:21:04 building an object system in a C compiler is very hard so once its done, few people make alternatives 00:21:16 thats why people were stuck with C++ and objC 00:21:28 C++ object system has many ommisions 00:21:32 stassats: true. we only have how CLOS turned out and how OO systems in other less dynamic languages turned out. given that data, i'd assume that CLOS comes out as quite a good system. and as such i'd argue that you may assume that lisp may have had something to do with it. other systems could have learned from what CLOS is, but even with that they didn't seem to get that close. 00:21:35 even: (setf final-result (+ (* condition solution1) (* (1- condition) solution2))) ; with condition (member 0 1). 00:21:50 so C++ programmers still revert to bolting their own fixes over the top.. 00:21:57 -!- fisxoj [~fisxoj@cpe-68-174-154-238.nyc.res.rr.com] has quit [Ping timeout: 268 seconds] 00:21:59 n00b6502: and I know no such ad-hoc C object system that doesn't also need a custom preprocessor, I think (that's where macros shine too) 00:22:14 phadthai: well, technically, GObject 00:22:17 -!- Bike [~Glossina@63-229-129-146.ptld.qwest.net] has left #lisp 00:22:26 agree 00:22:34 phadthai: note that not many people wanted to subclass a GObject for quite a long time 00:22:39 (not in C, at least) 00:23:03 madnificent: well, smalltalk's object system looks quite appealing to me on the surface 00:23:11 ah yes that gobject madness :) 00:23:21 with some reservations, since i haven't written anything in it 00:26:00 stassats: i don't have much hands-on experience with it either, but it's quite central to the language IIRC. either case, they are stuck with it. if it doesn't do something it should do, then it can not be changed. when you take a look at less flexible languages, the systems become less clean. even ruby, completely built around OO has an OO system which is less clean than what CLOS/MOP offers. 00:26:18 (though there are benefits to some extent) 00:27:29 smalltalk has metaclasses too 00:27:39 There's not only CLOS. There are a ton of OO systems written in lisp or scheme. 00:28:18 But since CLOS is the Common one, we now just use it. But for example, you can use KR (Knowledge Representation) which is also an object system, and you can easily design your own. 00:28:28 stassats: ... that's so not relevant 00:28:32 -!- sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has quit [Remote host closed the connection] 00:28:33 CLOS's unique selling point is multiple-dispatch, right? thatdoes look very neat 00:28:56 madnificent: that's how i modify CLOS 00:28:58 n00b6502: there are no USPs, i guess the most power comes from the simplicitly and the combination of having it all 00:29:15 stassats: yes, but that wasn't what the argument was about, was it? 00:29:31 n00b6502: then there's MOP 00:29:49 pjb: or prototype-oriented object systems (i seem to like that) :) 00:29:53 madnificent: that i'd take MOP with CLOS over macros any day? 00:29:55 pjb: do you happen to have any good docs on KR? 00:30:04 i don't need macros, because i have MOP 00:30:07 Also, there are several other OO systems written for C. COS, PCOS, etc. They're not too spread I guess indeed because of the difficulty of integrating them with C: namely, you have to write a pre-processor, or be stuck with cpp macros. 00:30:19 pjb: it sounds like DL that went wild and ended up as OOP 00:30:20 stassats: no, it was about lisp being interactive which may have helped CLOS to be as good as it was. 00:30:21 maybe smalltalk's MOP is less powerful, i'm not aware of it 00:30:38 stassats: i'm out of here. perhaps we'll have a good argument about it later.... but i honestly doubt it. 00:31:15 (well, the fact that CLOS could be built /in/ lisp, which thus made development more interactive) 00:31:29 madnificent: well, i wasn't that the discussion was about that 00:31:32 Now, there's one problem with most OO systems: they use function calls instead of message sending. Even Smalltalk does that. But the original theorization of OO was to use message sending. 00:31:34 wasn't aware 00:31:53 Apple tries to do something like this, with some of its action/target protocols. 00:32:15 Where a message has a sender parameter, so that the receiver can send back an answer. 00:32:16 zeissoctopus [~zeissocto@183178133120.ctinets.com] has joined #lisp 00:32:41 pjb: Delphi VCL had something similar 00:32:47 pjb: at least the first version of smalltalk used message passing 00:32:47 p_l: I guess the best doc of KR would be in Garnet sources ;-) 00:32:51 (ql:quickload :kr) 00:32:54 possibly that a challenge was performance, as with monolithic kernels vs early microkernels 00:33:27 can you distinguish between a message and a function call on the lowest level? 00:33:38 Well, indeed, if you don't have a multi-threaded implementation, and perhaps monitors around objects/actors, it's not too useful to insist on asynchronous message sending. 00:33:39 Euthy [~euthy@unaffiliated/euthydemus] has joined #lisp 00:33:45 stassats: you can: use queues. 00:34:00 phadthai: the microkernel vs. monolithic debate was finished by strategic suicide that was Mach, not by real differencies in performance between the theoretical groups 00:34:09 pjb: oh, i don't think it was asynchronous 00:34:12 (defun send (recipient message &rest arguments) (enqueue (list recipient message arguments) *message-queue*)) 00:34:29 And then have a main loop dequeuing the message and calling the methods. 00:34:34 one could consider Erlang/OTP 'behaviours' to be a form of OOP 00:35:01 I guess so (I don't know much about Erlang). 00:35:39 pjb: a behaviour is basically a module which has certain functions and responds to certain common messages 00:36:00 Yes, it sounds like an object. 00:36:02 one of those functions is alwas its message processing loop 00:36:23 Indeed, actor systems usually have a loop in each object. 00:36:32 sabalaba [~Adium@75-101-56-253.dsl.static.sonic.net] has joined #lisp 00:36:35 But this works better with coroutines or threads. 00:36:37 behaviours are kind-of well-known interface sets (gen_fsm, gen_server, etc.) 00:37:27 the functions provide lifetime management framework before the object's thread is spun and after it's stopped, etc. 00:38:50 p_l: there really is an inherent performance problem with microkernels (part of the issue with Mach too), even today for complex systems monolithic modules are commonly used as tasks of a microkernel (i.e. L4+Linux, Mach+BSD (OSX) etc) 00:39:15 -!- Alfa64 [~quassel@190.191.176.143] has quit [Read error: Connection reset by peer] 00:39:43 consider the vfs layer contacting the fs layer contacting the block strategy layer contacting the driver layer etc 00:40:15 Perhaps better hardware support would help. Also avoiding separate addressing spaces to limit context switching when sending a micromessage. 00:40:25 -!- zeissoctopus [~zeissocto@183178133120.ctinets.com] has quit [Quit: ] 00:40:40 I don't remember that EROS had performance problems. 00:40:46 phadthai: afaik a big part of that is actually cost of redoing all the stuff you already have in the monolithic code 00:40:57 can i run EROS on my laptop? 00:41:00 I think p_l is right. 00:41:12 stassats: I guess so. Try it http://eros-os.org/ 00:41:22 pjb: definitely, there actually were decent performance microkernels without memory segmentation on some PCs, i.e. AmigaOS 00:41:35 Now of course, it's a few years old and unmaintained, you probably won't have the drivers to run it on recent hardware. 00:41:36 I think Spring managed to have IPC between modules a bit above the cost of normal function call, below the cost of full-fledged syscall 00:41:42 Try it in a VM. 00:41:54 and Spring was with virtual memory etc. 00:41:58 BeOS worked like this too IIRC. 00:42:02 with a graphical interface, and all the usual desktop shebang? 00:42:22 stassats: it's a research prototype! 00:42:22 phadthai: AmigaOS afaik is not necessarily a classic microkernel 00:42:47 phadthai: actually, there are certain things it shares with both windows and VMS 00:43:05 pjb: so, what can it run? 00:43:27 -!- mattrepl [~mattrepl@pool-72-66-73-241.washdc.fios.verizon.net] has quit [Quit: mattrepl] 00:43:45 can it be used as a network router? or control a washing machine? 00:43:57 stassats: it's just slightly above Movitz in completion status. 00:44:11 -!- quazimodo [~quazimodo@c27-253-100-110.carlnfd2.nsw.optusnet.com.au] has quit [Ping timeout: 245 seconds] 00:44:13 There are a couple of programs. 00:44:48 http://www.eros-os.org/project/status.html 00:44:56 well, i guess it's easy to make it extremely reliable if it's not doing much of anything 00:45:32 -!- ace4016 [~ace4016@cpe-024-074-197-085.ec.res.rr.com] has quit [Disconnected by services] 00:45:32 Atomsk [~ace4016@cpe-024-074-197-085.ec.res.rr.com] has joined #lisp 00:46:14 phadthai: AmigaOS shared with Windows the fact that a lot of the OS was actually implemented in shared libraries, with VMS the ability of userspace code to "dive" into system space, and with microkernels the fact that the core kernel was pretty small (because userspace code could easily jump in) 00:46:26 http://www.eros-os.org/project/build.html lists the hardware requirements. 00:47:00 ivan\_ [~ivan@unaffiliated/ivan/x-000001] has joined #lisp 00:49:04 http://www.capros.org/project/build.html for newer info 00:51:00 -!- pirateking-_- [~piratekin@c-67-169-182-169.hsd1.ca.comcast.net] has quit [Quit: pirateking-_-] 00:52:33 surely it'd be more useful to look at something actually working, like VxWorks 00:52:43 it is trivial to make a microbenchmark that makes microkernels look bad; whether or not that matters is somewhat of an open question 00:53:17 -!- urandom__ [~user@ip-88-152-192-122.unitymediagroup.de] has quit [*.net *.split] 00:53:18 -!- sellout42 [~Adium@c-98-245-92-119.hsd1.co.comcast.net] has quit [*.net *.split] 00:53:18 -!- papajustify [~slugged@static-50-43-23-161.bvtn.or.frontiernet.net] has quit [*.net *.split] 00:53:18 -!- chenbing [~user@58.247.40.126] has quit [*.net *.split] 00:53:18 -!- kushal [~kdas@fedora/kushal] has quit [*.net *.split] 00:53:18 -!- herbieB [~herbie@s15434998.onlinehome-server.com] has quit [*.net *.split] 00:53:18 -!- [SLB] [~slabua@unaffiliated/slabua] has quit [*.net *.split] 00:53:18 -!- pavelpenev [~quassel@85-130-11-8.2073813645.shumen.cablebg.net] has quit [*.net *.split] 00:53:18 -!- macrobat [~fuzzyglee@h-17-133.a328.priv.bahnhof.se] has quit [*.net *.split] 00:53:18 -!- ivan\ [~ivan@unaffiliated/ivan/x-000001] has quit [*.net *.split] 00:53:18 -!- dRbiG [drbig@unhallowed.pl] has quit [*.net *.split] 00:53:18 -!- prip [~foo@host171-133-dynamic.2-79-r.retail.telecomitalia.it] has quit [*.net *.split] 00:53:18 -!- scharan [~scharan@169.235.25.47] has quit [*.net *.split] 00:53:18 -!- phadthai [mmondor@ginseng.pulsar-zone.net] has quit [*.net *.split] 00:53:18 -!- sytse [sytse@vps.swielinga.nl] has quit [*.net *.split] 00:53:18 -!- madnificent [~madnifice@static.146.73.9.176.clients.your-server.de] has quit [*.net *.split] 00:53:18 -!- adeht [void@flash.ignite.lol.vc] has quit [*.net *.split] 00:53:19 -!- ivan\_ is now known as ivan\ 00:55:04 sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has joined #lisp 00:57:20 sellout42 [~Adium@c-98-245-92-119.hsd1.co.comcast.net] has joined #lisp 00:57:20 papajustify [~slugged@static-50-43-23-161.bvtn.or.frontiernet.net] has joined #lisp 00:57:20 chenbing [~user@58.247.40.126] has joined #lisp 00:57:20 kushal [~kdas@fedora/kushal] has joined #lisp 00:57:20 herbieB [~herbie@s15434998.onlinehome-server.com] has joined #lisp 00:57:21 [SLB] [~slabua@unaffiliated/slabua] has joined #lisp 00:57:21 pavelpenev [~quassel@85-130-11-8.2073813645.shumen.cablebg.net] has joined #lisp 00:57:21 dRbiG [drbig@unhallowed.pl] has joined #lisp 00:57:21 prip [~foo@host171-133-dynamic.2-79-r.retail.telecomitalia.it] has joined #lisp 00:57:21 scharan [~scharan@169.235.25.47] has joined #lisp 00:57:21 phadthai [mmondor@ginseng.pulsar-zone.net] has joined #lisp 00:57:21 sytse [sytse@vps.swielinga.nl] has joined #lisp 00:57:21 madnificent [~madnifice@static.146.73.9.176.clients.your-server.de] has joined #lisp 00:57:21 adeht [void@flash.ignite.lol.vc] has joined #lisp 01:00:22 also note that most systems no longer fit the old definitions exactly 01:01:42 Linux, for example, is a bit like Mach 4 or "fixed" Mach 3... without the braindamaged MMU-based IPC (Mach 4 added kernel space servers) 01:01:55 zeissoctopus [~zeissocto@183178133120.ctinets.com] has joined #lisp 01:02:35 -!- piko [~piko@ip4-83-240-108-205.cust.nbox.cz] has quit [Quit: leaving] 01:02:38 macrobat [~fuzzyglee@h-17-133.a328.priv.bahnhof.se] has joined #lisp 01:05:21 also similar to dragonflybsd on that aspect 01:05:25 -!- antonv [5d7d31f9@gateway/web/freenode/ip.93.125.49.249] has quit [Ping timeout: 245 seconds] 01:05:56 mritz [~textual@cpe-66-25-166-122.austin.res.rr.com] has joined #lisp 01:06:48 -!- impulse [~impulse@bas3-toronto48-1176314528.dsl.bell.ca] has quit [Ping timeout: 245 seconds] 01:08:54 impulse [~impulse@bas3-toronto48-1177937051.dsl.bell.ca] has joined #lisp 01:13:24 -!- maxm [~user@unaffiliated/maxm] has quit [Ping timeout: 248 seconds] 01:16:01 -!- kushal [~kdas@fedora/kushal] has quit [Quit: Leaving] 01:23:53 -!- tiripamwe [~tiripamwe@41.221.159.85] has quit [Quit: Leaving] 01:25:10 -!- Atomsk is now known as ace4016 01:26:23 fisxoj [~fisxoj@cpe-68-174-154-238.nyc.res.rr.com] has joined #lisp 01:34:30 phax [~phax@unaffiliated/phax] has joined #lisp 01:41:45 -!- sabalaba [~Adium@75-101-56-253.dsl.static.sonic.net] has quit [Quit: Leaving.] 01:46:37 Erdos2 [Erdos@adsl-69-110-91-138.dsl.pltn13.pacbell.net] has joined #lisp 01:46:55 -!- Erdos2 [Erdos@adsl-69-110-91-138.dsl.pltn13.pacbell.net] has quit [Client Quit] 01:52:18 -!- sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has quit [Remote host closed the connection] 01:55:30 mattrepl [~mattrepl@pool-72-66-73-241.washdc.fios.verizon.net] has joined #lisp 01:55:33 replore_ [~replore@203.152.213.161.static.zoot.jp] has joined #lisp 01:55:59 -!- replore_ [~replore@203.152.213.161.static.zoot.jp] has quit [Client Quit] 02:04:05 -!- Forty-3 [~seana11@pool-96-255-130-43.washdc.fios.verizon.net] has quit [Ping timeout: 244 seconds] 02:11:10 gurrag [~gurrag@bb-216-195-184-91.gwi.net] has joined #lisp 02:11:10 -!- gurrag [~gurrag@bb-216-195-184-91.gwi.net] has quit [Changing host] 02:11:10 gurrag [~gurrag@unaffiliated/gurrag] has joined #lisp 02:24:23 -!- ArmyOfBruce [~bmitchene@waywardmonkeys.com] has quit [Excess Flood] 02:24:55 ArmyOfBruce [~bmitchene@waywardmonkeys.com] has joined #lisp 02:28:47 -!- booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has quit [Remote host closed the connection] 02:32:11 quazimodo [~quazimodo@CPE-124-189-52-202.mqzl1.ken.bigpond.net.au] has joined #lisp 02:34:36 In SBCL, does logcount use the machine instruction when possible? 02:35:34 sellout42: not really 02:35:51 whats logcount 02:35:58 clhs logcount 02:35:58 http://www.lispworks.com/reference/HyperSpec/Body/f_logcou.htm 02:36:20 stassats: Yeah, that's what I figured. 02:36:34 sellout42: sbcl doesn't use any instructions conditionally 02:36:35 -!- zeissoctopus [~zeissocto@183178133120.ctinets.com] has quit [Quit: ] 02:36:59 so, it's only has what works everywhere 02:37:34 i once tested popcnt and the difference wasn't really significant 02:39:02 There are 7 platforms listed for Linux SBCL. Does that mean that a machine instruction is used only if it is present on all 7? 02:39:13 very funny 02:39:19 -!- VieiraN [~VieiraN@187.10.244.166] has quit [Quit: leaving] 02:40:37 whatsyourname [~whatsyour@220.231.18.131] has joined #lisp 02:41:03 Other than not having the instruction available, under what other condition wouldn't it be used? 02:41:28 Lisp is just like python? 02:41:43 Yes. Nothing to see here, just go to #python. 02:41:43 sellout42: it's twice as fast, but the difference between 10 million iterations is 20 ms vs 40 ms 02:42:01 edgar-rft [~GOD@HSI-KBW-078-043-123-191.hsi4.kabel-badenwuerttemberg.de] has joined #lisp 02:42:07 whatsyourname: No, python is sort of like lisp, but not in any useful way. 02:42:16 ah 02:42:29 ah to yes, or ah to no? 02:42:39 lisp inspired a lot of features copied in scripting languages i think 02:42:54 what kind of question was that anyways?! 02:43:00 ThomasH: which instructions are you talking about? 02:43:56 BZ and BFFFO 02:44:12 sellout42: if that's your bottle neck, i can paste the code which adds popcnt support 02:44:18 but in terms of usefulness and functionality, is lisp more powerful than python? 02:44:34 Yes. 02:44:47 Proof: there's cl-python; there's no python-cl. 02:44:48 ThomasH: would be quite hard to require 1-to-1 coverage 02:45:04 coz i am considering whether or not to starting learning lisp 02:45:08 start* 02:45:23 We can only advise you to learn it. http://cliki.net 02:45:43 let me take a look first 02:46:00 http://cliki.net gives all the pointers to the first looks on it. 02:46:14 python will be easier to learn than lisp 02:46:23 whatsyourname see http://www.gigamonkeys.com/book/ 02:46:38 which is listed on http://cliki.net/ amongst even shorter tutorials. 02:46:54 stassats: No specific instructions. I misunderstood your answer about conditionally using machine instructions. 02:47:02 my native programming language is python 02:47:07 i think that helps me learn 02:47:30 whatsyourname: Also look at -> http://lisp.plasticki.com/ 02:47:36 ThomasH: stassats: but even with BFFFO, it might be faster to compute the number of 1-bits with a lookup table. 02:47:44 ThomasH: sbcl doesn't even use SSE on x86-32, because it's not universally available 02:48:05 Eg. if you have a 64-byte L1 data cache, you could process 6 bit by 6-bit all in cache. 02:48:24 pjb: what s BFFFO? 02:48:31 http://www.osdata.com/topic/language/asm/bitstr.htm#bitfield 02:48:57 whatsyourname: learn common lisp. Python will seem dumb afterwards. 02:49:17 stassats: Understood. That was the only condition that I could think of for deciding whether or not to use an instruction, but was assuming the cut was a little finer grained that "All CPUs". 02:49:55 ThomasH: I suspect the x86 backend my expect at least 686 02:50:05 pjb: i believe that'd be BSR on x86 02:50:29 yes./ 02:51:25 teggi [~teggi@113.172.54.215] has joined #lisp 02:51:48 so, SBCL is not as fast as it could be on the latest and greatest CPUs because it uses a common x86-64 instruction set 02:52:36 NikolaiDante [~nikolaida@unaffiliated/knighterrant] has joined #lisp 02:53:48 If someone really needs the performance, they can fund an SBCL dev to implement it. 02:54:03 -!- cataska [~cataska@210.64.6.233] has quit [Quit: leaving] 02:54:40 you can always just add your own VOPs and instructions which do whatever you like 02:54:55 VOPs=? 02:55:45 stassats: I don't have the background/time to do that. If the need arises, I'll leverage comparative advantage and pay someone to do it. 02:58:18 n00b6502: "macroinstructions", let's say 02:58:31 like plugins to the compiler? 02:58:38 (compiler back end plugins?) 02:58:43 no 02:58:43 Virtual OPerations 02:58:59 building blocks used to generate executable code 03:03:21 -!- benny [~user@i577A8A89.versanet.de] has quit [Ping timeout: 252 seconds] 03:04:24 sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has joined #lisp 03:11:48 pnq [~nick@unaffiliated/pnq] has joined #lisp 03:16:46 -!- black_joe [~Kale@75.104.132.171] has left #lisp 03:24:44 -!- NikolaiDante [~nikolaida@unaffiliated/knighterrant] has quit [Quit: run] 03:25:03 -!- foreignFunction [~niksaak@94.27.88.240] has quit [Quit: Leaving.] 03:28:09 organixpear [~organixpe@96-42-14-128.dhcp.fdul.wi.charter.com] has joined #lisp 03:28:36 benny [~user@i577A1BE5.versanet.de] has joined #lisp 03:30:25 -!- ticking [~janpaulbu@87.253.189.132] has quit [Quit: Leaving...] 03:30:44 kushal [~kdas@114.143.163.54] has joined #lisp 03:30:44 -!- kushal [~kdas@114.143.163.54] has quit [Changing host] 03:30:44 kushal [~kdas@fedora/kushal] has joined #lisp 03:31:35 -!- mucker [~mucker@183.83.240.198] has quit [Ping timeout: 252 seconds] 03:32:50 -!- jleija [~jleija@50.8.10.126] has quit [Quit: leaving] 03:36:44 -!- robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has quit [Remote host closed the connection] 03:37:42 oconnore [~eric@38.111.17.138] has joined #lisp 03:50:05 fe[nl]ix: huh? what's too bad? o_O 03:54:40 -!- Natch [~Natch@c-1dcce155.25-4-64736c10.cust.bredbandsbolaget.se] has quit [Remote host closed the connection] 03:54:57 -!- prip [~foo@host171-133-dynamic.2-79-r.retail.telecomitalia.it] has quit [Read error: Operation timed out] 04:00:13 Bike [~Glossina@63-229-129-146.ptld.qwest.net] has joined #lisp 04:00:20 -!- dnolen [~user@pool-71-183-179-249.nycmny.east.verizon.net] has quit [Ping timeout: 244 seconds] 04:01:16 -!- peterhil` [~peterhil@91-157-48-51.elisa-laajakaista.fi] has quit [Ping timeout: 245 seconds] 04:07:47 prip [~foo@host171-133-dynamic.2-79-r.retail.telecomitalia.it] has joined #lisp 04:08:01 wedgeV_ [~wedge@cpe-74-66-8-7.nyc.res.rr.com] has joined #lisp 04:09:17 -!- wedgeV_ [~wedge@cpe-74-66-8-7.nyc.res.rr.com] has left #lisp 04:09:30 booguie [~booguie@ip68-101-218-78.sd.sd.cox.net] has joined #lisp 04:09:30 wedgeV_ [~wedge@cpe-74-66-8-7.nyc.res.rr.com] has joined #lisp 04:09:30 -!- wedgeV_ [~wedge@cpe-74-66-8-7.nyc.res.rr.com] has quit [Client Quit] 04:09:39 wedgeV_ [~wedge@cpe-74-66-8-7.nyc.res.rr.com] has joined #lisp 04:09:49 -!- wedgeV_ [~wedge@cpe-74-66-8-7.nyc.res.rr.com] has quit [Client Quit] 04:10:33 -!- dreish [~dreish@minus.dreish.org] has quit [Quit: dreish] 04:14:30 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 264 seconds] 04:16:31 what is clos binary representation.. are 'objects' datastructures with the firstv word being some class table pointer 04:16:54 eg are all the 'slots' for a class sequential in memory, like a C++ class 04:17:13 so that reading or writing a slot is a trivial operation 04:17:15 unspecified 04:17:48 but it can't really be trivial, because of all the MOP stuff. it's pretty complicated and interesting, how it's made fast 04:18:12 MoALTz [~no@host-92-2-137-86.as43234.net] has joined #lisp 04:18:16 MOP= ? 04:18:40 metaobject protocol 04:18:53 http://www.alu.org/mop/index.html You can read some of it here. 04:19:06 -!- mattrepl [~mattrepl@pool-72-66-73-241.washdc.fios.verizon.net] has quit [Quit: mattrepl] 04:19:28 is there anything garanteed to be like a C datastructure ... a simple sequential table in memory 04:19:37 (maybe defstruct ?) 04:19:50 defstruct with vector storage? 04:19:55 nothing on that level is really specified, so far as I know. 04:19:58 n00b6502: What is this memory of which you speak? 04:20:21 But a defstruct'd vector would probably be implemented that way. 04:21:40 -!- theos [~theos@unaffiliated/theos] has quit [Quit: cya] 04:22:33 -!- Khisanth [~Khisanth@50.14.244.111] has quit [Ping timeout: 252 seconds] 04:22:54 Khisanth [~Khisanth@50.14.244.111] has joined #lisp 04:24:15 i've seen the plists talked about in PCL.. but i'd hope objects are *not* stored like that... 04:24:43 theos [~theos@unaffiliated/theos] has joined #lisp 04:24:52 Not by a good implementation, no. 04:24:54 n00b6502: I've never had to think about how these things are implemented. 04:25:46 n00b6502: the way instances are built and slots are stored depends on the metaclass. 04:26:07 You could write a metaclass that would store data in slots just like C++. 04:26:13 is the metaclass the "run-time-type-info" 04:26:22 It's the metaclass. 04:26:25 Study OO! 04:26:28 Not C++! 04:26:37 i'm familiar with C++ and objC 04:26:45 Those C++ programmers! They believe they know anything. 04:26:58 objc is used to deal with ios stuff 04:27:03 n00b6502: you'd better learn Smalltalk and CLOS. 04:27:21 DDR [~chatzilla@d66-183-118-10.bchsia.telus.net] has joined #lisp 04:27:21 i'm also familiar with the idea of adhoc classes as tables in scripting langauges 04:27:21 Objective-C is inspired with Smalltalk, but they don't have real metaclasses. 04:27:36 s/with/from/ 04:28:09 the thought process is "i want these bytes to work like this..." then find the language feature that corresponds to that 04:28:32 n00b6502: Adjust your thought process, that is not a useful process for lisp. 04:28:39 The standard doesn't mandate anything like that. 04:28:45 (unsigned-byte 8)? 04:28:56 what bytes have anything to do with objects? 04:29:05 You could store integers in ternary and it would be lisp (as long as you presented the right interface) 04:29:14 sure - 04:29:31 but thats not what interests me; i want to reason about size/speed tradeoffs 04:29:32 n00b6502: perhaps you should read sicp before trying to learn Common Lisp? 04:29:45 n00b6502: That's what profiling is for. 04:29:57 If you care about size and speed, you should read LiSP Lisp in Small Pieces http://pagesperso-systeme.lip6.fr/Christian.Queinnec/WWW/LiSP.html http://pagesperso-systeme.lip6.fr/Christian.Queinnec/Books/LiSP-2ndEdition-2006Dec11.tgz 04:30:11 oh, is that the actual book? 04:30:35 But you can do that only after having read sicp and knowing Common Lisp, in a few years. So don't ask anything about speed and size before 2014. 04:30:40 since you cannot manually test every singlee permutation of your program it helps to start with knowledge of datastructures and how they physically work.. you make yuor best guess. then you fine tune with profiling 04:31:02 "dont ask anything about speed and size before 2014" lmao 04:31:09 It doesn't matter until you know CL. Ask again in 2014. 04:31:10 your attitude is astounding 04:31:16 vectors are usually O(1), conses are usually O(n), happy? 04:31:20 Yours is! 04:31:25 no really. 04:31:27 n00b6502: Not really. It's better to get your program working correctly, then let the profiler highlight the bottlenecks. 04:31:43 n00b6502: if you really want gory details, CL:DISASSEMBLE is your friend 04:31:56 n00b6502: "Premature optimization is the root of all evil." 04:32:09 wow: i've never heard that, in 25 years of programming. 04:32:13 thanks for the news. 04:32:23 -!- Bike [~Glossina@63-229-129-146.ptld.qwest.net] has left #lisp 04:32:31 -!- Jubb [~ghost@pool-108-28-0-134.washdc.fios.verizon.net] has quit [Remote host closed the connection] 04:32:48 1- program working correctly. 2- see if user complains for slowness. 3- check the profiler. 4- implement psychological tricks. 5- if the user keeps complaining choose a better algorithm. 6- if the user keeps complaining, check again the profiler and try to "optimize" the bottlenecks. 04:32:51 n00b6502: And if you think you're achieving speed by worrying about the internal memory organization of the data structure and not focusing on the algorithm, you're wasting a lot of time. 04:33:04 again, wow i've never heard tha 04:33:11 n00b6502: you're asking about highly implementation specific things. Things, that in most implementations can be overriden anyway 04:33:21 n00b6502: you really sound like a newbie. 04:33:23 the algorithm & datastructure are intimately tied 04:33:30 CL:DISASSEMBLE will give you unvarnished truth 04:33:43 which is totally implementation dependant. 04:33:57 programming *IS* sometimes an excercise in picking the right datastructure 04:34:06 n00b6502: yet the datastructures are rarely described below the idealized p-code for purposes choosing them 04:34:35 picking the right data structure is not counting the bits, it's choosing the right STRUCTURE! 04:34:38 your questions came of as " 04:34:50 wow, just wow. 04:35:01 the attitude here 04:35:03 came of as "what is the spark time in the engine, not "which engine" 04:35:33 -!- pnq [~nick@unaffiliated/pnq] has quit [Quit: Leaving.] 04:36:09 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 04:36:10 n00b6502: skip a McDo lunch, and buy a $25 Raspberry Pi, with 256 MEGA bytes of RAM! 04:36:31 nkkarthik [~nkkarthik@smtpbt.pramati.com] has joined #lisp 04:37:03 you think i'll only write programs that manipulate 256mb ? 04:37:16 and to really get the idea about speed/size tradeoffs, you will need to experiment with actual code. Most of us have more important details to bother with most of the time, and in various times we need, getting the extra % isn't that hard 04:37:28 p_l: wow. 04:37:34 i've never experimented with actual code 04:37:38 in like 25 fucking years 04:37:58 n00b6502: ... I meant with *lisp* code, okay? 04:38:42 touchy, touchy 04:38:44 it's hard to reason about speed/size tradeoffs till you know the language pretty intimately 04:39:02 n00b6502: The 25 years of coding is your problem, you can't seem to fathom that your C++ experience doesn't translate 1-for-1 to lisp. 04:39:16 n00b6502: and as I said, my favourite tool for that is checking what kind of code gets generated using CL:DISASSEMBLE 04:39:35 stepnem [~stepnem@82.208.57.182] has joined #lisp 04:39:42 you sound like you're writing programs with 256 BYTES of RAM. 04:39:45 What i''m finding remarkable here is.. 04:39:52 *p_l* is just trying to be polite, but it's been unslept night 04:39:53 i'm asking simple questions, 04:40:10 and getting the answer "you haven't studied enough to understand the answer" 04:40:21 like "we're so much smarter than you". 04:40:35 n00b6502: when I started programming in lisp, I converted by library of C++ classes. I had about 30+ classes. Of them, 2 classes were translated in 1/10th the code size. All the other classes were totally useless in lisp. 04:40:37 n00b6502: No, you're getting the answer that "That doesn't really matter, you're worrying about the wrong thing." 04:40:38 you dont know anything about me, and my experience 04:40:53 ThomasH: do you even know what my use case is? 04:40:56 n00b6502: that's about how much X years of experience in C++ are useful to be a lisp programmer. 04:41:07 n00b6502: no, it's because the questions are pretty much vague. It's one thing to ask about specific implementation, another how standard defines it 04:41:30 n00b6502: You presented it as "Learning Lisp" and then started worrying about internal memory organization of data structures. 04:41:43 n00b6502: so we're left without enough context and been suggesting trying it out first and see how it fits you... 04:41:52 There are tens of implementations, each doing it differently! 04:42:26 with different targets to achieve, too 04:44:29 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 04:45:23 Wow... I just came back, reading the backlog. Fun stuff. 04:46:07 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 04:46:46 don't tell me. I just love when headstrong people, otherwise entirely rational, start getting on each others' nerves. 04:47:00 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 04:47:07 Probably only thing I hate more is when I'm one of them, but eh... 04:47:11 I need to either go to bed or drink another beer. 04:47:16 -!- MoALTz [~no@host-92-2-137-86.as43234.net] has quit [Ping timeout: 248 seconds] 04:47:21 "Premature optimization is the root of all evil." 04:47:39 says the person who architects their ps3 games with virtual functions 04:48:01 then has hell re-working it 04:48:19 n00b6502: or uses few clever tricks to have them pre-resolved at compile time 04:48:21 because they missed a low level detail that needs to be considered at the program architecture level 04:48:39 for an imperative program its complete re-ordering 04:49:06 n00b6502: the thing is, with lisp it's much easier to modify that. You have compiler macros, you can locally shadow bindings, etc. 04:50:53 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Client Quit] 04:51:38 cfy [~hamo@unaffiliated/chenfengyuan] has joined #lisp 04:53:30 -!- quazimodo [~quazimodo@CPE-124-189-52-202.mqzl1.ken.bigpond.net.au] has quit [Ping timeout: 264 seconds] 04:54:37 -!- fisxoj [~fisxoj@cpe-68-174-154-238.nyc.res.rr.com] has quit [Ping timeout: 246 seconds] 04:58:08 Someone who is a Scheme user asked me about an introduction to CLOS, and what it's good for. Where should I send him? 04:58:29 I figured that TAOTMOP might be a bit too much 04:58:35 loke_erc: keene 04:58:39 keene? 04:58:51 minion: tell loke_erc about keene 04:58:51 loke_erc: please see keene: "Object-Oriented Programming in Common Lisp: A Programmer's Guide to CLOS" by Sonya E Keene. http://www.cliki.net/keene 04:59:08 Awesome. Thanks. 04:59:28 That's a great book, but there has to be a better overview. 04:59:50 loke_erc: i think clos is compelling if you know and believe in object oriented programming. if you don't, you first need to make believe 05:00:23 -!- qptain_Nemo [~qN@81-235-52-30-no79.bredband.skanova.com] has quit [Remote host closed the connection] 05:00:48 Well, I myself is a believer is CLOS, and I tend to use it quite a bit. However, I'm not sure I could easily explain why it's good to someone who perhaps has only had exposure to the Java model of object orientation. 05:01:23 rtoym [~chatzilla@24.130.4.105] has joined #lisp 05:02:28 keene is not a short overview, but is not epic either. i can recommend it. 05:03:13 "The Common Lisp Object System: An Overview" Linda G. DeMichiel & Richard P. Gabriel, but I think there is an even better one. 05:03:19 That's 24 pages. 05:03:25 well, and there is this google thing where you can enter "clos overview" and get sent to dick gabriel's site by the first link 05:03:38 :) 05:03:46 http://www.dreamsongs.com/CLOS.html 05:04:10 angavrilov [~angavrilo@217.71.227.190] has joined #lisp 05:06:04 I purchased the book "Object-Oriented Programming: The CLOS Perspective" from MIT press. Nice collection of insights into the CLOS. 05:06:48 kmee [~yhiselamu@lap.ee] has joined #lisp 05:09:14 can I expand SLIME inspector for my classes so that it displays more than just slots? for example return values of certain methods 05:12:10 -!- Oddity [~Oddity@unaffiliated/oddity] has quit [Ping timeout: 252 seconds] 05:12:10 Odditys [~Oddity@d154-20-194-103.bchsia.telus.net] has joined #lisp 05:12:44 -!- Odditys is now known as Oddity 05:12:46 -!- Oddity [~Oddity@d154-20-194-103.bchsia.telus.net] has quit [Changing host] 05:12:46 Oddity [~Oddity@unaffiliated/oddity] has joined #lisp 05:15:40 'metaclasses' .. parts of what clos /mop can do may well do things i've built manually in c++ 05:16:52 (such as... building a DSL with dynamic objects in it; and working around the unusably slow dispach of virtual functions on some platforms by sorting-by-class) 05:16:59 -!- Sorella [~quildreen@oftn/member/Sorella] has quit [Quit: (quit :reason 'sleep)] 05:17:29 "for each class (for each instance (do something))" instead of "for each object (do something polymorphic)" 05:17:54 bege [~bege@S0106001d7e5132b0.ed.shawcable.net] has joined #lisp 05:23:02 kmee: yes, I believe you can 05:23:31 -!- tensorpudding_ [~michael@108.87.18.143] has quit [Ping timeout: 244 seconds] 05:25:41 BlastHardcheese [chris@pdpc/supporter/active/blasthardcheese] has joined #lisp 05:34:39 psykotron [43a69480@gateway/web/freenode/ip.67.166.148.128] has joined #lisp 05:34:44 j/oin #common-lisp 05:38:09 jewel [~jewel@196-215-8-208.dynamic.isadsl.co.za] has joined #lisp 05:40:41 gravicappa [~gravicapp@ppp91-77-176-174.pppoe.mtu-net.ru] has joined #lisp 05:41:53 sawjig [~sawjig@gateway/tor-sasl/sawjig] has joined #lisp 05:43:37 loke_erc by digging deep into slime/swank sources or is there some built in mechanism i can use? 05:44:08 kmee: Yes. Exactly that. 05:44:55 tensorpudding_ [~michael@108.87.18.143] has joined #lisp 05:45:22 -!- psykotron [43a69480@gateway/web/freenode/ip.67.166.148.128] has left #lisp 05:46:48 kmee: oh and by the way. If you figure it out, please let me know. I could have a use for that. 05:49:01 -!- oconnore [~eric@38.111.17.138] has quit [Quit: Lost terminal] 05:51:56 kmee: if you type M-. on a generic function's name, slime will present you with the methods that it knows so you can choose from them 05:52:31 kmee: the other way round, no - there is no way to list all generic functions that are specialized for a certain class. 05:53:19 I did not want to list all generic functions. just certain (user selected) methods and their values in the object's inspector 05:53:36 by "their values" I meant (method object-we-are-inspecting) 05:53:49 Bike [~Glossina@63-229-129-146.ptld.qwest.net] has joined #lisp 05:54:04 kmee: methods have no values 05:54:15 ah 05:54:28 sorry. no, but you can call methods from within the inspector 05:54:51 (you can actually not call methods, but functions) 05:55:29 sdemarre [~serge@91.176.31.180] has joined #lisp 05:56:39 kmee: am i understanding you right, you'd like to have something like the "watch expressions" pane in the chrome debugger where you can enter arbitrary expressions which are evaluated whenever the debugger breaks? 05:57:28 peterhil` [~peterhil@91-157-48-51.elisa-laajakaista.fi] has joined #lisp 05:58:41 ehu [ehu@ip167-22-212-87.adsl2.static.versatel.nl] has joined #lisp 06:01:23 I am not familiar with watch expressions. say for example that I have a window class that only has a HANDLE slot (which is a CFFI pointer). I'd like inspector to automatically call X, Y, WIDTH, HEIGHT functions on that window, and display the returned values bellow the All Slots section. what functions are called for what object would be determined by the user in some way. 06:02:12 yeah, watch expressions could do that for you. i do not think that the slime debugger has them or something more akin to what you describe. 06:02:22 c_arenz [~arenz@HSI-KBW-109-193-252-079.hsi7.kabel-badenwuerttemberg.de] has joined #lisp 06:02:29 replore_ [~replore@203.152.213.161.static.zoot.jp] has joined #lisp 06:03:09 -!- ArmyOfBruce [~bmitchene@waywardmonkeys.com] has quit [Excess Flood] 06:03:10 perhaps there should be a swank:sldb-watch generic that returns a list of values to additionally show? 06:03:39 ArmyOfBruce [~bmitchene@waywardmonkeys.com] has joined #lisp 06:04:01 could you have the window class's metaclass have foreign slots, or would that be overcomplicated 06:04:30 Bike: sounds like a large hammer for debugging support 06:07:56 -!- mritz [~textual@cpe-66-25-166-122.austin.res.rr.com] has quit [Quit: Computer has gone to sleep.] 06:08:37 pirateking-_- [~piratekin@c-67-169-182-169.hsd1.ca.comcast.net] has joined #lisp 06:10:29 The McClim inspector has a similar feature, but it's not watch expressions. Basically, you write your own methods for describe-object. 06:12:23 tfb [~tfb@a1.norwich.yourspac.nsdsl.net] has joined #lisp 06:13:18 quazimodo [~quazimodo@CPE-124-189-52-202.mqzl1.ken.bigpond.net.au] has joined #lisp 06:20:54 -!- sdemarre [~serge@91.176.31.180] has quit [Ping timeout: 276 seconds] 06:21:04 -!- phax [~phax@unaffiliated/phax] has quit [Ping timeout: 246 seconds] 06:21:28 -!- ehu [ehu@ip167-22-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 268 seconds] 06:24:01 mrSpec [~Spec@89-78-118-138.dynamic.chello.pl] has joined #lisp 06:24:02 -!- mrSpec [~Spec@89-78-118-138.dynamic.chello.pl] has quit [Changing host] 06:24:02 mrSpec [~Spec@unaffiliated/mrspec] has joined #lisp 06:24:10 alvis` [~user@tx-184-6-183-254.dhcp.embarqhsd.net] has joined #lisp 06:25:10 -!- alvis [~user@tx-184-6-183-254.dhcp.embarqhsd.net] has quit [Read error: Connection reset by peer] 06:27:08 prxq [~mommer@mnhm-590c2db5.pool.mediaWays.net] has joined #lisp 06:27:24 n00b6502: Please try to understand what we've been telling you for days. Learning lisp isn't just learning to use a new syntax and going through a bucket list features you must learn. It's adopting a new value system, a new way of looking at what is important in software. A new value system can only come with new experience. I can only imagine what it must be for many years of experience to be made irrelevant by a new context. 06:27:24 But in a new context you are, and you can't just fall back on old assumptions and old values that might or might not translate well(as pjb explained, most won't). 06:28:25 i have actually implemented a dynamic languages myself 06:28:55 what i find rather surprising here is this attitude "you are a C++ programmer it wil take you 2 years to think in something other than c++" 06:29:28 n00b6502: it took me months to get rid of bad assumptions i got from _CLOJURE_ 06:29:29 i know "an object" needn't be a sequential table. i've written such a language myself. 06:30:10 -!- tensorpudding_ [~michael@108.87.18.143] has quit [Ping timeout: 246 seconds] 06:30:46 -!- stardiviner [~stardivin@218.74.176.7] has quit [Quit: my website: http://stardiviner.dyndns-blog.com/] 06:31:45 I've been learning common lisp for a year and a half now(more or less), I still don't know half of it probably. Lisp requires a bit of humility I believe. 06:32:08 just curious, what langauges have you dealt with other than lisp 06:32:14 i have been a professional cl programmer for 10 years now and i'm still learning. 06:32:33 to me it would seem that lisp is a never ending pursuit. 06:32:50 H4ns what other langauges have you used 06:32:54 and for how long 06:33:21 n00b6502: i'm a pro-level c++, perl and javascript programmer and also know pascal, smalltalk, forth, vhdl and c from real projects 06:33:30 I know enough to be dangerous in C, python, js, clojure and scheme, and enough to pass exams for school in: prolog, vba, C++, and I've dealt with very small amounts of java 06:33:30 n00b6502: maybe some other stuff i forget now. 06:34:16 n00b6502: and by "pro-level" i mean that i've dealt with these languages, in real projects, for several years and spent substantial amounts with them. 06:34:18 -!- edgar-rft [~GOD@HSI-KBW-078-043-123-191.hsi4.kabel-badenwuerttemberg.de] has quit [Quit: supernova explosion] 06:34:25 amounts of time. 06:34:49 H4ns: how did lisp change your way of thinking with those languages? 06:35:29 did it have a profound impact on the way you coded, say Perl? 06:35:30 lcc: i find it hard to get along without a repl or macros now. but i can still enjoy any other language. 06:35:55 lcc: no. i don't do that anymore. i'm using perl on the command-line now, when it is more succinct than a long pipe. 06:36:15 lcc: real programs i write in cl :) 06:37:36 macros are contraversial here. 06:37:44 some of you guys have told me "avoid them" 06:37:52 n00b6502: nobody did that. 06:37:56 a few did 06:37:59 n00b6502: you just did not read right. 06:38:08 n00b6502: use macros when a function won't do. 06:38:40 n00b6502: and my recommendations: don't modify the language without a good reason. stick to common macro idioms. 06:39:10 n00b6502: not controversial, there is a consensus: don't use macros, unless you have to. It think thats common sense myself. 06:39:10 -!- fantazo [~fantazo@91-119-125-214.dynamic.xdsl-line.inode.at] has quit [Remote host closed the connection] 06:39:37 many other lanugaes can do functions as well as lisp; and you can look at "other languages" as a set of "macros" hardwired into the compiler. If i just want to follow someone elses path... i wouldn't be here 06:40:54 n00b6502: as I learned when at 17 when I decided to not be an anarchist wanna be anymore: pointless rebellion is pointless, find a better cause :) 06:40:55 n00b6502: if you want to be just different for the sake of it, you'll be alone. please don't bother us with that. 06:41:04 if macros were sufficient as a compilation mechanism we'd use them as a compilation mechanism, but we don't. we use other transforms (which are helped by Lisp's homoiconicity, but that's something else) 06:41:23 look at how the open source CL's compile. SBCL uses block structures for instance 06:42:18 n00b6502: also, perl 6 has macros, why don't you give them a try :P 06:42:25 xan__ [~xan@ppp-180-150.28-151.libero.it] has joined #lisp 06:42:26 dont need or want perl 06:42:28 -!- xan__ [~xan@ppp-180-150.28-151.libero.it] has left #lisp 06:44:01 joekarma [~joekarma@70-36-57-169.dyn.novuscom.net] has joined #lisp 06:44:17 mvilleneuve [~mvilleneu@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has joined #lisp 06:44:52 -!- jewel [~jewel@196-215-8-208.dynamic.isadsl.co.za] has quit [Ping timeout: 246 seconds] 06:44:55 mishoo [~mishoo@178.138.34.39] has joined #lisp 06:51:39 n00b6502: Using macros or not is a matter of judgement or taste, and those take time to acquire in any language. I don't think macros should be avoided as such; for example, if I find myself using dynamic binding and/or unwind-protect, that might be more clear when expressed as a macro. 06:51:44 LaughingMan [~chatzilla@boccacio.fh-trier.de] has joined #lisp 06:52:56 FWIW, The first C++ code I wrote, coming from Lisp, was pretty laughable. 06:54:00 to give you an example of something that i'm looking for 06:54:18 its possible to create an object graph with pointers or references in many languages 06:54:33 its possible to precompile an object graph into a binary 'blob' 06:54:43 -!- angavrilov [~angavrilo@217.71.227.190] has quit [Ping timeout: 252 seconds] 06:54:53 it would be nice to have one place for describing an object graph, then have both a dynamic and precompiled version implemented 06:55:21 in the 'blob' version, pointers are no longer used, rather implicit sequential links, and relative pointers. 06:55:52 the usual approach to something like that in C/C++ is some combination of templates and #defines 06:56:17 i head.. lisp macros are the best; i saw some guide on the web showing how lisp macros could implmenet schemas 06:56:29 i heard^ 06:56:33 Is the point of the relative pointers to save space? 06:56:39 and cache coherencey. 06:56:57 the point is precompiling and clustering things according to access pattern 06:57:02 leo2007 [~leo@124.248.202.119] has joined #lisp 06:57:12 n00b6502: lisp macros are a tool. you need to learn how to operate the tool in order to effectively use them 06:57:29 (there is synergy between cache-coherency and relative pointers, a local reference is also smaller yes) 06:57:39 n00b6502: from what you describe, i do not see how lisps macros would be especially suitable as primary implementation device for what you do. 06:57:51 ( a reference that is simply "the next object is sequential in memory" is even smaller .. zero bytes) 06:58:13 perhaps they could be used for spitting out some C++ classes.. i dont know 06:58:15 -!- DataLinkDroid [~DataLinkD@1.133.174.113] has quit [Ping timeout: 260 seconds] 06:58:32 -!- booguie [~booguie@ip68-101-218-78.sd.sd.cox.net] has quit [Remote host closed the connection] 06:58:36 n00b6502: you'll never know if you don't learn lisp 06:58:45 First off, you are moving into unportable garbage collector features to allocate objects from a contiguous array; it's not even clear that the primitive parts of a clos object would be stored in that array. 06:59:08 n00b6502: you can introspect data about objects with functions fine. 06:59:28 thats one thing i've always found myself desperately wanting in C/C++ 06:59:39 the workarounds being "x-macros" there 07:00:46 given how long it took C++ to get type-inference, i think i'm in for a long wait if its up to the standards committee when they will generate structures capable of introspectioin there 07:00:50 paolo_m [~user@2-228-95-110.ip190.fastwebnet.it] has joined #lisp 07:00:56 n00b6502: On the other hand, you can write any load-time code you want in a lisp source file, so the result of loading a file can be arbitrary binary blobs. 07:01:11 jjkola_ [~androirc@193-64-22-143-nat.elisa-mobile.fi] has joined #lisp 07:03:33 stardiviner [~stardivin@218.74.190.25] has joined #lisp 07:04:39 clhs make-load-form 07:04:39 http://www.lispworks.com/reference/HyperSpec/Body/f_mk_ld_.htm 07:05:37 reasoning about object sizes was essential on projects i worked on. The best example of the need for blobs was the cell processor. The local store is a specific size (256k) and DMA is used to transfer to & from main memory. The job of tools is to precompile object graphs to that specific size. given the small size, 'local' references can be very small. 07:05:53 Bike: exactly. 07:06:00 asvil [~asvil@178.121.13.75] has joined #lisp 07:06:39 yeah, that was for n00b's benefit. 07:07:18 interesting 07:07:23 n00b6502: That would seem to be at cross purposes with garbage collection :) 07:07:31 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #lisp 07:07:46 interestingly the CELL is a platform that could implement compacting efficiently 07:08:00 it has no overhead for moving things when they are processed 07:08:37 there is nothing wrong with using static allocation in common lisp. i've seen cons-less code a lot, and while it does not look as idiomatic as the usual cl, it still is lisp and more fun to work with than c++ code. 07:09:23 pskosinski [~pk@czu186.internetdsl.tpnet.pl] has joined #lisp 07:09:59 with static allocations, macros are often quite handy because they allow you to do compile-time allocation of memory 07:10:12 moore33: the unit of garbage collection might be '64k blobs' 07:10:30 and lisp provides nice tools to write custom compilers for experimental languages 07:10:38 otoh, CL's object system is all function-based, so you have the flexibility to make a blob look like a collection of objects to the rest of the system. 07:10:42 ^(thats the sort of thing i'm here for) 07:10:58 -!- Xach [~xach@pdpc/supporter/professional/xach] has quit [Ping timeout: 252 seconds] 07:11:26 n00b6502: what I'm trying to say at least is that looking at lisp just for the macros is a pretty narrow view, and that you'd be missing out on a lot of tools for what you want to do. that's why I think your macros are strange anyway 07:11:41 at one extreme i could build my own langugae from the ground up. at another; probably wasteful, and it would exist in a vaccum. ,At another extreme, i could write something that is basically a code-generator for C 07:11:46 n00b6502: before you can time lions, you need to be able to tame ant eaters. 07:11:54 ivan-kanis [~user@nantes.visionobjects.com] has joined #lisp 07:11:55 Xach [~xach@pdpc/supporter/professional/xach] has joined #lisp 07:12:04 i've tamed lions thanks 07:12:05 n00b6502: you could do all that if you had the required cl knowledge, true. 07:12:15 n00b6502: you've not tamed them in lisp. 07:12:41 n00b6502: you waste your time here wading through your doubts rather than starting to learn. 07:13:11 DataLinkDroid [~DataLinkD@1.156.90.131] has joined #lisp 07:13:24 -!- DataLinkDroid [~DataLinkD@1.156.90.131] has quit [Client Quit] 07:14:43 -!- Bike [~Glossina@63-229-129-146.ptld.qwest.net] has quit [Quit: sleep] 07:14:47 is there some way to have multiple heaps in sbcl, gc them separately be specifying a list of entry points? I'm looking for something like apr pools, for request handling. 07:14:51 -!- DDR [~chatzilla@d66-183-118-10.bchsia.telus.net] has quit [Ping timeout: 260 seconds] 07:14:59 Beetny [~Beetny@ppp118-208-139-49.lns20.bne1.internode.on.net] has joined #lisp 07:15:00 flip214: no 07:15:03 varjag [~eugene@122.62-97-226.bkkb.no] has joined #lisp 07:15:30 DDR [~chatzilla@d66-183-118-10.bchsia.telus.net] has joined #lisp 07:17:21 n00b6502: you work in console games? 07:17:32 i have done yes. not now 07:18:26 n00b6502: but your Cell work was on the PS3? And you sound like you like the Bungie guys methodologies. 07:18:38 yes cell/ps3 07:18:49 I used precompiled object graphs on PS1 07:19:23 i dont even like using general purpose heap 07:19:40 attila_lendvai [~attila_le@5.34.30.65] has joined #lisp 07:19:40 -!- attila_lendvai [~attila_le@5.34.30.65] has quit [Changing host] 07:19:41 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 07:21:51 sony platforms always had some sort of explicit cache 07:23:30 -!- tfb [~tfb@a1.norwich.yourspac.nsdsl.net] has quit [Ping timeout: 264 seconds] 07:24:30 ferada [~ferada@dslb-188-097-130-203.pools.arcor-ip.net] has joined #lisp 07:25:07 n00b6502: I'd suggest forgetting about all of that for a while and living a happy, carefree life during the early learning months. 07:25:57 n00b6502: after all, it isn't like you're going to ship something on a PS3 using Lisp any time soon  so no need to restrict yourself in that way. 07:26:23 PS3 needed its custom language to be ready 7 years ago 07:26:26 :) 07:26:49 Sure. And I doubt that you've got PS4 hardware. 07:27:01 its going to be more conventional 07:27:19 n00b6502: read http://prog21.dadgum.com/ too, for inspiration on relaxing some of your old habits 07:27:20 -!- cfy [~hamo@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 07:27:22 but there's GPGPU 07:29:01 -!- bege [~bege@S0106001d7e5132b0.ed.shawcable.net] has left #lisp 07:29:09 dim: I would have suggested the Naggum archive, but thats the opposite of relaxing old habits, more like shredding them violently :) Very inspirational though. 07:30:02 ISF [~ivan@189.61.221.122] has joined #lisp 07:30:06 well you get to choose to follow him suit or just inspire from him, I guess ;) 07:33:36 Erik Naggum has violently destroyed many of my preconceptions about the world and programming, while inspiring me to do better and learn. n00b6502 is lucky he isn't around :) 07:34:59 from that link, "purely functional doesn't work" 07:35:27 pretty sure not being dogmatic and mixing techniques is the way to go 07:35:43 naeg [~naeg@194.208.239.170] has joined #lisp 07:38:02 is anyone here successfully scraping data from websites using css selectors? I've tried using the css-selectors library but it fails on just about any query more than one token long. The gist of my problem: https://gist.github.com/3549907 07:38:12 I like writing functions that are referentially transparent, but mutate local state. And not just because it pisses the church of purity off. 07:42:41 trebor_dki [~user@kvpn.lbf.fraunhofer.de] has joined #lisp 07:43:32 robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has joined #lisp 07:44:35 pavelpenev: Why not? Caching would be the most common such use 07:44:56 pavelpenev: People who has a problem with that on principal grounds are idiots IMHO 07:45:36 stat_vi [~stat@dslb-094-218-231-182.pools.arcor-ip.net] has joined #lisp 07:47:59 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 07:49:21 -!- pskosinski [~pk@czu186.internetdsl.tpnet.pl] has quit [Read error: Connection reset by peer] 07:49:38 phax [~phax@unaffiliated/phax] has joined #lisp 07:51:25 -!- quazimodo [~quazimodo@CPE-124-189-52-202.mqzl1.ken.bigpond.net.au] has quit [Ping timeout: 272 seconds] 07:53:07 AndChat| [~lcc@206.29.182.184] has joined #lisp 07:53:37 -!- replore_ [~replore@203.152.213.161.static.zoot.jp] has quit [Remote host closed the connection] 07:58:07 Can I easily combine lisp and Perl? 07:59:02 AndChat|: no 07:59:42 AndChat|: there is no perl implementation written in cl and no established ffi interface to interface between either's runtime 08:00:35 AndChat|: (and no cl implementation written in perl either) 08:01:31 AndChat|: anyway there is a 'Language::Lisp' Module on CPAN 08:02:04 punee [~punee@213-245-106-105.rev.numericable.fr] has joined #lisp 08:02:18 uh, i stand corrected. 08:02:19 bobbysmith007: I suppose my previous question could be directed at you 08:04:00 AndChat|: i retract all my answers. apologies. 08:04:32 What is Language::Lisp? A Lisp in Perl? 08:05:01 loke_erc: no, a perl interface for lisp (apparently) 08:05:26 there also seems to be an ecl module for perl, so either way is there 08:05:29 -!- [SLB] is now known as [SLB]` 08:05:30 Neat. Although I have a hard time envisioning a situation where I would need that. :-) 08:05:35 not sure about the "easy" though 08:05:53 loke_erc: i think that triggered my premature dismissal :) 08:06:37 -!- em [~em@unaffiliated/emma] has quit [Ping timeout: 272 seconds] 08:07:03 n00b6502: Common Lisp is all about mixing techniques (imperative, Object Oriented, Functional, you name it) 08:07:57 hmm there's also http://www.cliki.net/perl-in-lisp 08:08:54 judging from that page, i'd say there "was" perl-in-lisp 08:09:26 -!- [SLB]` is now known as [SLB] 08:10:52 pskosinski [~pk@czu186.internetdsl.tpnet.pl] has joined #lisp 08:11:00 attila_lendvai [~attila_le@5.34.30.65] has joined #lisp 08:11:01 -!- attila_lendvai [~attila_le@5.34.30.65] has quit [Changing host] 08:11:01 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 08:14:36 -!- kmee [~yhiselamu@lap.ee] has quit [Quit: quit] 08:19:41 to anyone who cares, the problem I mentioned above with css-selectors was solved by using STP and stp-query (forked from css-selectors) instead 08:19:47 leoncamel [~user@219.142.143.21] has joined #lisp 08:20:29 em [~em@unaffiliated/emma] has joined #lisp 08:20:48 -!- paolo_m [~user@2-228-95-110.ip190.fastwebnet.it] has left #lisp 08:21:42 The question I really wanted to ask is if there's a library like jQuery available for Common Lisp web scraping. To the Googlers and log searchers, the answer seems to be yes, and the library is called stp-query 08:22:00 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 08:22:35 -!- EyesIsMine [~Eyes@WiseOS/Founder/EyesIsMine] has quit [Read error: Connection reset by peer] 08:22:57 -!- PECCU [~peccu@KD106179020073.ppp-bb.dion.ne.jp] has quit [Ping timeout: 268 seconds] 08:28:18 joekarma: I use Closer-HTML 08:28:35 THanks loke_erc, I'll check into that too 08:28:59 Sorrt. Closure-HTML 08:29:13 It allows you to load HTML into a cxml DOM tree 08:29:40 ah, yes, I'm actually using that 08:30:11 I was parsing into a cxml dom tree, but using stp now instead 08:30:17 It works well, although I had to patch it so that it didn't choke on the horrible mess left by Microsoft office 08:30:36 (It leaves tags with colons in them, so I had to add #\: as a valid character in HTML tags) 08:31:00 I actually enjoy using DOM with the Xpath library 08:31:08 I was using xpath before 08:31:19 but I don't like how complicated that makes selecting elements with a given class name 08:31:38 Is it complicated? 08:31:51 something like tag[class='foo'] 08:32:18 not so much complicated as not concise 08:32:31 if an element has multiple class names for example 08:32:51 Hmm 08:33:09 Well, whatever floats your boat. :-) It works for me 08:33:15 would it not be possible to write some functions to make that easier with plexippus-xpath? 08:33:48 H4ns: of course, I actually googled "convert css to xpath" as that would be one such solution 08:33:55 This is my code that messes with the HTML DOM: http://code.google.com/p/gnus-outlook-style/source/browse/format-html-email/format.lisp 08:34:33 joekarma: i thought more in the lines of writing additional xpath functions that made dealing with html easier while preserving the xpath syntax 08:34:35 but then I found stp-query and no longer needed to fiddle with all that... getting all the img tags in a blockquote with a given class name is now quite easy 08:34:40 just thinking aloud 08:34:54 H4ns: that's probably a good idea 08:35:18 xpath is still awesome for all the flexibility it provides 08:35:35 but for quick and dirty I like css selectors a little better 08:35:53 understood 08:36:08 loke_erc: thanks for the link 08:37:29 angavrilov [~angavrilo@217.71.227.190] has joined #lisp 08:40:13 - 08:42:27 ticking [~janpaulbu@eduroam-pool6-0857.wlan.uni-bremen.de] has joined #lisp 08:42:59 add^_ [~add^_@m90-141-38-195.cust.tele2.se] has joined #lisp 08:43:01 -!- ka2be [~ka2be@KD027083117212.ppp-bb.dion.ne.jp] has left #lisp 08:46:58 here's what I was trying to do: https://gist.github.com/3550384 code critique welcome! 08:47:09 -!- kushal [~kdas@fedora/kushal] has quit [Ping timeout: 272 seconds] 08:48:16 joekarma: that looks nice 08:48:35 attila_lendvai [~attila_le@5.34.30.65] has joined #lisp 08:48:35 -!- attila_lendvai [~attila_le@5.34.30.65] has quit [Changing host] 08:48:35 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #lisp 08:49:09 thank you 08:49:30 joekarma: it is a case where i'd not use variable names, though 08:49:58 yes, I wondered if it was a bit much 08:49:59 joekarma: the mapcar wants to be read from the end, which breaks the sequential reading of the let* 08:50:45 joekarma: i'd just write (mapcar ...) as it'd then be immediately apparent that the call needs to be read starting from the end. 08:51:01 kushal [~kdas@fedora/kushal] has joined #lisp 08:51:01 -!- DDR [~chatzilla@d66-183-118-10.bchsia.telus.net] has quit [Quit: for the love of god this is not safe for work] 08:52:24 ok. thanks for the help! 08:54:52 voodoo_ [~voodoo@31.45.174.214] has joined #lisp 08:54:52 -!- pirateking-_- [~piratekin@c-67-169-182-169.hsd1.ca.comcast.net] has quit [Quit: pirateking-_-] 08:54:57 Hello 08:57:14 joekarma: i'm also using upper-case characters for format directives as they're usually easier to spot that way 08:57:18 when controlling an interactive cli program with ccl:run-program is there a way to check if output stream has some characters to be read to avoid blocking on read indefinitely? 08:57:29 am0c [~am0c@124.49.51.146] has joined #lisp 08:57:39 H4ns: great idea 08:57:44 voodoo_: Threads! 08:58:18 H4ns: so something more like this? https://gist.github.com/3550384 08:58:19 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 08:58:20 voodoo_: you can use AIO, poll the stream resp. the underlying filehandle 08:58:27 every time someone offers threads as a "simple solution to async i/o", a kitten dies. 08:58:41 ah, just noticed your edit 08:59:30 joekarma: right ;) 08:59:39 H4ns: hey! It helps weed out the men from the kittens. :-) 08:59:57 heh 09:00:44 well, westerner that I am, I best be heading to bed. Thanks again! 09:01:02 How do i pool filestream in ccl? Do i have to use ffi? 09:01:04 -!- joekarma [~joekarma@70-36-57-169.dyn.novuscom.net] has quit [Quit: joekarma] 09:01:09 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 09:01:15 poll 09:02:07 does run-program give you a cl stream, a flexi-stream, or what do you get? 09:04:52 -!- add^_ [~add^_@m90-141-38-195.cust.tele2.se] has quit [Quit: add^_] 09:05:11 I'd see first if LISTEN works on it. 09:05:22 or use READ-CHAR-NO-HANG. 09:05:48 it returns CLOS instance which contains PID, input/output streams, and a bunch of other stuff that seem unrelated 09:06:10 on the input stream of course. 09:07:14 great it worked! 09:10:58 ngz [~user@254.214.67.86.rev.sfr.net] has joined #lisp 09:11:05 jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has joined #lisp 09:15:03 -!- hugod [~user@70.24.177.33] has quit [Read error: Connection reset by peer] 09:15:22 hugod [~user@70.24.177.33] has joined #lisp 09:15:25 add^_ [~add^_@m90-141-38-195.cust.tele2.se] has joined #lisp 09:16:47 -!- stardiviner [~stardivin@218.74.190.25] has quit [Ping timeout: 246 seconds] 09:17:00 -!- cryptic [~cryptic@pool-74-108-14-99.nycmny.fios.verizon.net] has quit [Read error: Connection reset by peer] 09:17:19 cryptic [~cryptic@pool-74-108-14-99.nycmny.fios.verizon.net] has joined #lisp 09:17:31 -!- ivan\ [~ivan@unaffiliated/ivan/x-000001] has quit [Ping timeout: 245 seconds] 09:18:52 -!- Nisstyre [~yours@oftn/member/Nisstyre] has quit [Ping timeout: 246 seconds] 09:18:59 wbooze [~wbooze@xdsl-78-35-174-152.netcologne.de] has joined #lisp 09:19:00 ivan\ [~ivan@unaffiliated/ivan/x-000001] has joined #lisp 09:19:13 stardiviner [~stardivin@218.74.190.25] has joined #lisp 09:19:18 -!- piko_ [~piko@ip4-83-240-108-205.cust.nbox.cz] has quit [Ping timeout: 264 seconds] 09:19:47 -!- [SLB] is now known as [SLB]` 09:21:31 Nisstyre [~yours@oftn/member/Nisstyre] has joined #lisp 09:21:57 -!- kuzary [~who@gateway/tor-sasl/kuzary] has quit [Remote host closed the connection] 09:23:08 -!- chenbing [~user@58.247.40.126] has quit [Ping timeout: 256 seconds] 09:23:53 kuzary [~who@gateway/tor-sasl/kuzary] has joined #lisp 09:29:28 benkard [~benkard@002608dc9535.dfn.mwn.de] has joined #lisp 09:29:47 -!- gekko_ [~jjk@78.157.103.6] has quit [Quit: Ex-Chat] 09:29:50 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 09:30:13 -!- whatsyourname [~whatsyour@220.231.18.131] has quit [Ping timeout: 246 seconds] 09:30:17 -!- [SLB]` is now known as [SLB] 09:33:18 -!- kuzary [~who@gateway/tor-sasl/kuzary] has quit [Ping timeout: 276 seconds] 09:35:47 EyesIsMine [~Eyes@WiseOS/Founder/EyesIsMine] has joined #lisp 09:40:06 -!- benkard [~benkard@002608dc9535.dfn.mwn.de] has quit [Ping timeout: 240 seconds] 09:40:18 m7w [~chatzilla@178.172.228.43] has joined #lisp 09:42:57 quazimodo [~quazimodo@c27-253-100-110.carlnfd2.nsw.optusnet.com.au] has joined #lisp 09:44:17 benkard [~benkard@002608dc9535.dfn.mwn.de] has joined #lisp 09:45:06 -!- jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has quit [Ping timeout: 264 seconds] 09:45:48 jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has joined #lisp 09:48:15 kuzary [~who@gateway/tor-sasl/kuzary] has joined #lisp 09:51:33 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Ping timeout: 260 seconds] 09:53:00 milanj [~milanj_@79-101-197-111.dynamic.isp.telekom.rs] has joined #lisp 09:57:26 -!- em [~em@unaffiliated/emma] has quit [Ping timeout: 240 seconds] 10:01:30 krrrcks [~krrrcks@krrrcks.de] has joined #lisp 10:02:56 hi, what's the perhaps "best" way to connect my linux clozure common lisp with a microsoft sql server? 10:03:01 best == minimal pain ;) 10:03:12 -!- kuzary [~who@gateway/tor-sasl/kuzary] has quit [Ping timeout: 276 seconds] 10:03:24 i am fiddling with plain-odbc but it is not working yet 10:05:20 iLogical [~iLogical@unaffiliated/ilogical] has joined #lisp 10:05:29 what is about http://code.google.com/p/cl-mssql/? 10:05:58 krrrcks: ^ 10:06:08 -!- leo2007 [~leo@124.248.202.119] has quit [Ping timeout: 244 seconds] 10:06:25 sepeth [~sepeth@176.216.115.40] has joined #lisp 10:09:18 let's have a look 10:11:07 -!- benkard [~benkard@002608dc9535.dfn.mwn.de] has quit [Ping timeout: 240 seconds] 10:12:21 -!- c_arenz [~arenz@HSI-KBW-109-193-252-079.hsi7.kabel-badenwuerttemberg.de] has quit [Ping timeout: 252 seconds] 10:12:32 zeptis [~zeptis@c-50-129-69-74.hsd1.il.comcast.net] has joined #lisp 10:13:06 complains about a missing libsybdb.so.... hmm... have you ever used it, asvil ? 10:14:00 unfortunately no 10:14:09 well... 10:15:27 hello, my interpreter, gosh, is throwing 'real number required: #' when I try to feed it: (define (abs-new x) (if (< x 0) (-x) x)). I know I'm reinventing the wheel, and failing at it, but this is babby's first lisp, and I got the syntax out of SICP. How am I being dumb, here? 10:15:28 leo2007 [~leo@119.255.41.67] has joined #lisp 10:15:42 zeptis: you are missing a space. 10:16:30 oh boy 10:16:55 between - and x, correct? 10:17:15 zeptis: think. study. experiment. 10:17:35 krrrcks: what is about "package-manager install libsybdb" 10:18:03 well, i managed to install it. 10:18:27 asvil: let's see if i can connect to the mssql. unfortunately, cl-mssql lacks some documentation ;) *G* 10:19:42 paolo_m [~user@2-228-95-110.ip190.fastwebnet.it] has joined #lisp 10:20:31 -!- Vivitron [~Vivitron@pool-98-110-213-33.bstnma.fios.verizon.net] has quit [Quit: trivial-irc-0.0.3] 10:20:42 krrrcks: there are not so many functions:) https://github.com/archimag/cl-mssql/blob/master/src/packages.lisp 10:20:46 hm. okay, seems like a working connection. thanks for the hint. 10:21:31 -!- wbooze [~wbooze@xdsl-78-35-174-152.netcologne.de] has quit [Read error: Connection reset by peer] 10:21:44 there is possible "problem" with encoding, if you will have it, configure /etc/freetds.conf 10:21:59 most disturbing thing: the library is called cl-mssql but you have to load it via (ql:quickload "mssql") ;) *G* 10:22:10 ah, yeah. that's a good hint with the encoding. 10:23:20 it complains already about malformed utf-8 strings ;) *G* 10:23:22 well... 10:23:27 kuzary [~who@gateway/tor-sasl/kuzary] has joined #lisp 10:23:40 I am happy that I didn't count all the time I struggled with encoding problems. 10:24:05 -!- ticking [~janpaulbu@eduroam-pool6-0857.wlan.uni-bremen.de] has quit [Quit: Leaving...] 10:25:25 wbooze [~wbooze@xdsl-84-44-177-129.netcologne.de] has joined #lisp 10:26:01 Alice3 [~Alice@cpc3-grim12-0-0-cust856.12-3.cable.virginmedia.com] has joined #lisp 10:27:20 -!- voodoo_ [~voodoo@31.45.174.214] has quit [Quit: quit] 10:27:44 -!- sepeth [~sepeth@176.216.115.40] has quit [Quit: WeeChat 0.3.8] 10:29:45 sepeth [~sepeth@176.216.115.40] has joined #lisp 10:35:03 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 10:37:10 -!- bitonic [~user@vm-shell1.doc.ic.ac.uk] has quit [Remote host closed the connection] 10:37:46 bitonic [~user@vm-shell1.doc.ic.ac.uk] has joined #lisp 10:37:46 -!- bitonic [~user@vm-shell1.doc.ic.ac.uk] has quit [Remote host closed the connection] 10:38:16 bitonic [~user@vm-shell1.doc.ic.ac.uk] has joined #lisp 10:38:29 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 10:39:01 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 10:40:39 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 10:40:47 TDJACR [~TDJACR@lilug/member/tdjacr] has joined #lisp 10:40:56 I've been up for 3 hours with this thing and I'm still stumped 10:41:09 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 10:41:49 -!- jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has quit [Ping timeout: 244 seconds] 10:42:37 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 10:42:52 jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has joined #lisp 10:43:07 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 10:43:57 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 10:44:31 -!- loke_erc [~user@c-1756e555.012-14-67626717.cust.bredbandsbolaget.se] has quit [Remote host closed the connection] 10:45:11 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 10:46:23 xpololz [~xpololz@80.203.124.203] has joined #lisp 10:46:37 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 10:46:40 iocor [~textual@unaffiliated/iocor] has joined #lisp 10:47:14 ignas [~ignas@office.pov.lt] has joined #lisp 10:48:01 zeptis: Are you sure you are using a scheme implementation? 10:48:40 Oh I see, maybe you are writing your own. 10:49:04 asvil: thx. now it's working. 10:49:52 krrrcks: no problem:) 10:51:04 It's gauche, which purports itself as R5RS Scheme 10:51:20 -!- jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has quit [Ping timeout: 252 seconds] 10:51:44 it's also totally my fault because I didn't read about how LISP handles whitespace 10:52:03 -x is mistake? 10:52:12 jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has joined #lisp 10:52:14 one of them 10:53:49 Vivitron [~Vivitron@pool-98-110-213-33.bstnma.fios.verizon.net] has joined #lisp 10:55:06 -!- dan [~dan@gateway/tor-sasl/dan] has quit [Remote host closed the connection] 10:55:20 em [~em@unaffiliated/emma] has joined #lisp 10:55:47 sykopomp` [~sykopomp@gateway/tor-sasl/sykopomp] has joined #lisp 10:58:28 -!- magnific1ab [~duranain@202.168.106.176.dynamic.rev.eftel.com] has quit [Ping timeout: 245 seconds] 10:58:41 starting over, I guess 10:59:06 -!- sykopomp [~sykopomp@gateway/tor-sasl/sykopomp] has quit [Ping timeout: 276 seconds] 10:59:16 magnificrab [~duranain@202.168.106.176.dynamic.rev.eftel.com] has joined #lisp 11:01:26 lisp v python - lisp's advantages are compiled,multiple-dispatch,macros ..any others 11:02:52 and is lisp actually faster than java? i found a page of benchmarks claiming that.. 11:06:19 kmee [~yhiselamu@lap.ee] has joined #lisp 11:07:01 those benchmarks may be a bit outdated. 11:07:27 ok i thought it sounded unusual 11:07:39 n00b6502: conditions and restarts too 11:07:58 I don't know (because I don't really care) but you make some tests and see if it's faster. 11:08:02 bignums? 11:08:04 +can 11:08:08 rationals 11:08:16 sane lambda 11:08:23 ah thats a big one 11:08:40 lambda rocks 11:08:47 closures 11:09:04 voodoo_ [~voodoo@31.45.174.214] has joined #lisp 11:09:57 object and metaobject evolution 11:10:36 does pythons duck typing have that covered 11:10:53 dan [~dan@gateway/tor-sasl/dan] has joined #lisp 11:11:06 -!- sepeth [~sepeth@176.216.115.40] has quit [Ping timeout: 240 seconds] 11:11:14 (are pythons objects sufficiently adhoc to do that) 11:11:20 not directly related to the language, but I haven't found environment as awesome as SLIME for python. symbol completion, argument hints, live, interactive coding, inspector, built in debugger 11:12:34 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #lisp 11:13:57 -!- leo2007 [~leo@119.255.41.67] has quit [Quit: rcirc on GNU Emacs 24.2.1] 11:14:40 python could in theory be as interactive as lisp, but it's community seem to be content with just reloading all the code in repl or restarting script after changes 11:15:28 is lisp the only thing that supports interpreting/interaction and compiling so well 11:16:49 n00b6502: java is much more sophisticated in that 11:17:13 sepeth [~sepeth@78.186.252.240] has joined #lisp 11:18:16 huh, java? 11:19:07 kmee: of course. both intellij and eclipse are much more advanced in term of interactive development support than slime. not that i like them or java better. 11:19:11 i must be missing something because im doing the old edit/recompile/restart cycle every time i'm coding in java 11:19:14 n00b6502: common lisp has sane scoping rules 11:19:49 kmee: it might be that i've just used eclipse wrongly, but i found it rather impressive every time i used it. 11:20:01 h4ns have an example of what you can do that you can't with slime? 11:20:31 pirateking-_- [~piratekin@c-67-169-182-169.hsd1.ca.comcast.net] has joined #lisp 11:20:37 Morgawr [~morgawr@host124-237-static.38-79-b.business.telecomitalia.it] has joined #lisp 11:20:42 -!- Morgawr [~morgawr@host124-237-static.38-79-b.business.telecomitalia.it] has left #lisp 11:20:43 kmee: refactoring, intelligent reformatting, non-intrusive lookup of symbols and documentation. these things just worked for me in eclipse with zero effort or configuration. 11:21:14 but i'm not here to praise eclipse 11:22:58 H4ns: how do you compare eclipse with Lispworks or Allegro IDEs? 11:23:12 ah, well it makes sense it does that better since it's statically compiled. by interactive development i thought we are talking about changing the code live, without restarting the program 11:23:38 dim: i can't because i've never used either of them for any relevant time. with lisp, i find myself always using slime because i know it 11:23:40 http://www.lispworks.com/images/lw-ide-gtk.png it somehow looks like the eclipse contender for Lisp 11:24:03 a friend of mine who does java for a living tells me eclipse eats memory like a mobile home eats gas. 11:24:09 n00b6502: http://www.lispworks.com/products/lispworks.html if you want to try :) 11:24:13 H4ns: same here 11:24:16 pavelpenev: *shrug* 11:24:25 except that I don't use eclipse at all 11:25:40 i see color-coded braces in that screenshot :) 11:25:50 ^parens not braces 11:27:07 i'd love to do a lispworks based project some day. an ide written in cl must be awesome 11:27:27 in fact, i've hacked some stuff into the allegro ide in the past and that was pretty neat 11:27:32 The old MCL ide (fred editor was pretty rockin'. 11:27:47 i.e. have the allegro ide spit out asdf system definitions when writing out franz' private project files. 11:28:00 n00b6502: this screencast uses lispworks to develop a dsl in lisp: http://www.youtube.com/watch?v=5FlHq_iiDW0 11:28:03 moore33: so good that some people still use it :) 11:28:13 H4ns: Yep. 11:28:29 H4ns: Genera falls in that category too :) 11:28:38 leoncame` [~user@219.142.143.21] has joined #lisp 11:28:38 -!- kmee [~yhiselamu@lap.ee] has quit [Quit: changing servers] 11:28:55 moore33: i can see people running ibm mainframe emulations on their pc just so that they can continue using os/360's original XEDIT :) 11:29:02 bbl 11:29:51 i like the idea of objects being able to change class. (yes, I have tried over-writing the vtable in c++) 11:32:12 arzo [~user@adsl-ull-194-216.49-151.net24.it] has joined #lisp 11:32:30 urandom__ [~user@ip-88-152-218-149.unitymediagroup.de] has joined #lisp 11:32:54 -!- Beetny [~Beetny@ppp118-208-139-49.lns20.bne1.internode.on.net] has quit [Ping timeout: 276 seconds] 11:34:21 -!- add^_ [~add^_@m90-141-38-195.cust.tele2.se] has quit [Quit: add^_] 11:34:24 n00b6502: check out this by the way. http://random-state.net/features-of-common-lisp.html 11:35:15 ah the quotient..fractions 11:36:11 -!- leoncamel [~user@219.142.143.21] has quit [*.net *.split] 11:36:12 -!- mrSpec [~Spec@unaffiliated/mrspec] has quit [*.net *.split] 11:36:12 -!- nkkarthik [~nkkarthik@smtpbt.pramati.com] has quit [*.net *.split] 11:38:03 ah values for multi-value return, nice 11:38:37 -!- sepeth [~sepeth@78.186.252.240] has quit [Ping timeout: 244 seconds] 11:42:41 i do prefer the way it declares methods outside classes 11:42:58 mrSpec [~Spec@unaffiliated/mrspec] has joined #lisp 11:43:03 I like that too 11:43:22 astronick [~astronick@123-243-124-128.static.tpgi.com.au] has joined #lisp 11:43:32 add^_ [~add^_@m90-141-38-195.cust.tele2.se] has joined #lisp 11:43:34 this link is pretty good 11:44:15 sepeth [~sepeth@78.186.252.240] has joined #lisp 11:46:39 c_arenz [~arenz@HSI-KBW-109-193-252-079.hsi7.kabel-badenwuerttemberg.de] has joined #lisp 11:47:24 agumonkey [~agu@249.217.72.86.rev.sfr.net] has joined #lisp 11:47:35 gffa [~unknown@unaffiliated/gffa] has joined #lisp 11:54:53 MoALTz [~no@host-92-8-154-81.as43234.net] has joined #lisp 11:56:10 stassats [~stassats@wikipedia/stassats] has joined #lisp 12:00:14 peterhil [~peterhil@gatekeeper.brainalliance.com] has joined #lisp 12:06:10 -!- phax [~phax@unaffiliated/phax] has quit [Ping timeout: 246 seconds] 12:07:03 -!- peterhil [~peterhil@gatekeeper.brainalliance.com] has quit [Ping timeout: 265 seconds] 12:07:12 -!- stat_vi [~stat@dslb-094-218-231-182.pools.arcor-ip.net] has quit [Quit: leaving] 12:07:32 -!- arzo [~user@adsl-ull-194-216.49-151.net24.it] has left #lisp 12:07:33 FreeArtMan [~fam@93.177.213.54] has joined #lisp 12:15:05 loke: do you use clsql-oracle? 12:19:04 -!- astronick [~astronick@123-243-124-128.static.tpgi.com.au] has quit [Remote host closed the connection] 12:21:38 -!- add^_ [~add^_@m90-141-38-195.cust.tele2.se] has quit [Quit: add^_] 12:28:16 phax [~phax@unaffiliated/phax] has joined #lisp 12:29:22 -!- kushal [~kdas@fedora/kushal] has quit [Quit: Leaving] 12:35:10 (defmethod foo ((class (eql 'bar))) ...) is the same thing as (defmethod foo ((class bar)) ...), right? 12:35:20 no 12:35:35 benkard [~benkard@002608dc9535.dfn.mwn.de] has joined #lisp 12:35:49 not even close to being same 12:36:04 the example I see with the former then does (make-instance class) 12:36:08 ok I'm confused 12:36:21 where do I read to understand that method dispatching better? 12:36:24 PCL maybe? 12:36:35 In the former, class is an argument that must be so that (eql class 'bar) is true 12:36:35 minion: tell dim about keene 12:36:36 dim: have a look at keene: "Object-Oriented Programming in Common Lisp: A Programmer's Guide to CLOS" by Sonya E Keene. http://www.cliki.net/keene 12:36:48 So it pretty much has to be 'bar 12:36:58 clhs 7.6.6 12:36:58 Method Selection and Combination: http://www.lispworks.com/reference/HyperSpec/Body/07_ff.htm 12:37:00 Mon_Ouie: "pretty much"? 12:37:06 so it's a symbol, not a class named bar? 12:37:27 dim: it can be anything that can be compared with eql in a meaningful way 12:37:32 -!- stardiviner [~stardivin@218.74.190.25] has quit [Quit: my website: http://stardiviner.dyndns-blog.com/] 12:37:36 so the method dispatch in that example is specialized on a symbol, ok 12:37:50 H4ns: Well, it has too; I'm just cautious in case someone would be able to override such behavior :p 12:37:59 to* 12:39:16 -!- AndChat| [~lcc@206.29.182.184] has quit [Ping timeout: 248 seconds] 12:42:45 -!- phax [~phax@unaffiliated/phax] has quit [Quit: Leaving] 12:47:07 -!- gurrag [~gurrag@unaffiliated/gurrag] has quit [Ping timeout: 246 seconds] 12:48:25 mcsontos [mcsontos@nat/redhat/x-sktdlgydmwersyjt] has joined #lisp 12:57:48 -!- naeg [~naeg@194.208.239.170] has quit [Quit: WeeChat 0.3.8] 12:58:28 mattrepl [~mattrepl@pool-72-66-73-241.washdc.fios.verizon.net] has joined #lisp 13:01:03 -!- papajustify [~slugged@static-50-43-23-161.bvtn.or.frontiernet.net] has quit [Quit: 'bye.] 13:01:46 fantazo [~fantazo@91-119-125-214.dynamic.xdsl-line.inode.at] has joined #lisp 13:02:13 Is .l a common Lisp file extension too? 13:02:21 fasta: not usually 13:02:28 Because my Emacs opens SLIME mode for some reason? 13:02:37 How can I disable that? 13:03:08 fasta: C-h v auto-mode-alist RET might help 13:03:10 Xach: Is there a roadmap for quicklisp? Maybe a lisp of Frequently Requested Features? 13:03:17 s/lisp /list / 13:03:40 naryl: there is a roadmap but it is mostly in my head 13:04:09 Xach: ("\\.l\\'" . lisp-mode) 13:04:32 Xach: but the real question I would like to ask my software system is "which line of code put it there?". 13:04:56 (which is, AFAIK, a question which no software system can answer currently) 13:05:02 does it matter? 13:05:10 (which I think is a design failure) 13:05:27 stassats: are you talking to me? 13:05:46 yes 13:05:56 -!- angavrilov [~angavrilo@217.71.227.190] has quit [Ping timeout: 248 seconds] 13:05:57 stassats: yes, that matters, because I have the same problem with UNIX. 13:06:10 foreignFunction [~niksaak@94.27.88.6] has joined #lisp 13:06:10 stassats: i.e., which line of code set a particular environment variable? 13:06:22 It's a question which many more people have in general. 13:06:37 well, i don't know about unix, but in emacs, it doesn't matter, you just change it to the way you want 13:06:40 It's just a design failure that no proper solution is provided on modern systems to be used by people. 13:06:41 -!- FreeArtMan [~fam@93.177.213.54] has quit [Ping timeout: 245 seconds] 13:07:06 stassats: yeah, great, 100s of programs undoing each other's work. 13:07:31 are you trying to get things done or what? 13:07:48 stassats: I also try to keep things maintainable. 13:08:30 i ran out of nice words, so i'll stop here 13:08:44 zeissoctopus [~zeissocto@183178133120.ctinets.com] has joined #lisp 13:08:55 stassats: I already answered my own question now. 13:09:05 stassats: the answer is that it is an Emacs builtin. 13:09:15 And as such, your solution does indeed apply. 13:09:22 Unless I patch it, which I am not going to do. 13:09:31 NikolaiDante [~nikolaida@unaffiliated/knighterrant] has joined #lisp 13:09:40 add^_ [~add^_@m90-141-38-195.cust.tele2.se] has joined #lisp 13:09:54 i don't see a condition where changing it wouldn't apply 13:10:08 -!- zeissoctopus [~zeissocto@183178133120.ctinets.com] has quit [Client Quit] 13:10:15 -!- NikolaiDante [~nikolaida@unaffiliated/knighterrant] has left #lisp 13:11:29 zeissoctopus [~zeissocto@183178133120.ctinets.com] has joined #lisp 13:11:46 stassats: if one of my third party Emacs Lisp scripts did it, there might have been some other, better solution. 13:13:30 that's a way to over-think it 13:14:02 dnolen [~user@cpe-69-203-204-197.nyc.res.rr.com] has joined #lisp 13:14:14 -!- kcj [~casey@unaffiliated/kcj] has quit [Ping timeout: 265 seconds] 13:15:25 -!- zeissoctopus [~zeissocto@183178133120.ctinets.com] has quit [Remote host closed the connection] 13:16:14 angavrilov [~angavrilo@217.71.227.190] has joined #lisp 13:19:32 FreeArtMan [~fam@93.177.213.54] has joined #lisp 13:19:34 araxeus [~araxeus4@c-66-41-112-222.hsd1.mn.comcast.net] has joined #lisp 13:20:52 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Ping timeout: 248 seconds] 13:25:05 -!- jjkola_ [~androirc@193-64-22-143-nat.elisa-mobile.fi] has quit [Ping timeout: 244 seconds] 13:25:49 -!- gravicappa [~gravicapp@ppp91-77-176-174.pppoe.mtu-net.ru] has quit [Ping timeout: 272 seconds] 13:26:25 leo2007 [~leo@222.130.135.202] has joined #lisp 13:26:46 so I'm still looking at dsl-in-lisp, there's a macro that produces a class with two methods, and two calls to that macro. when I'm trying to package that the generic function call is not finding the methods 13:27:00 I'm adding some (eval-when) but I'm failing 13:28:37 dim: you need to show some code that exposes the problem 13:28:49 yes I'm preparing a paste 13:28:55 and I feel like it's a typo 13:29:24 -!- __main__ [~main@c-67-180-22-241.hsd1.ca.comcast.net] has quit [Ping timeout: 248 seconds] 13:29:46 http://paste.lisp.org/display/131385 13:30:11 papajustify [~slugged@static-50-43-23-161.bvtn.or.frontiernet.net] has joined #lisp 13:30:19 when evaluating things with C-M-x (SLIME) it then just works in the REPL 13:31:23 dim: type is a string, strings can't be compared with eql 13:31:34 dim: also, don't use intern if find-symbol will do. 13:32:02 I'm just writing the code from the video 13:32:06 The issue is that the DEFMAPPING INTERN is called with a different value for *PACKAGE* than the PARSE INTERN. 13:32:27 I couln't find the sources as text/plain and I've learnt several things from it, I want it in a local file 13:32:27 When defmapping is evaluated, it is the package named DSL-IN-LISP, but at the REPL, it is CL-USER. 13:32:41 Xach: that, too 13:32:50 keywords to the rescue 13:32:55 ah that I'm following, thanks 13:33:04 so I shouldn't be using intern? 13:33:17 H4ns: there is no issue with strings and eql, is there? 13:33:33 dim: you should be using intern if you want to create symbols, but not when you want to look them up 13:33:36 you can use keywords directly, when defining a class 13:33:43 and then just do find-symbol when parsing 13:34:00 Xach: as far as i can see, type is passed as string to the invocation of defmapping and not interned 13:34:00 and don't forget about case 13:34:09 here I could forget about symbols and just specialize the methods on a string, right? 13:34:25 no 13:34:29 dim: that is what i said in the beginning. strings cannot be compared with eql 13:34:39 can I use another comparator? 13:34:47 dim: no. but you can use keywords 13:34:53 H4ns: what about the (intern type) bit? 13:35:07 so how do I use keyword dynamically? static way is :foo I think 13:35:17 dim: or other symbols if you know how to find or intern them into the right package 13:35:19 dim: use the second argument of intern 13:35:27 hehe, right 13:35:32 dim: (find-symbol "FOO" :keyword) or (intern "FOO" :keyword) 13:35:35 I could use my own package, right? 13:35:41 you could 13:35:48 you could even not use packages at all 13:35:50 I'm (in-package #:dsl-in-lisp), so... 13:35:58 Xach: in the parse function, intern is not needed and i'd not recommend it 13:36:03 stassats: I'm currently not using package in intern and it fails 13:36:16 dim: i mean at all, intern still uses a package 13:36:22 Xach: the parse function only does symbol lookup, so there is no point in interning a new symbol from the externally supplied string. 13:36:36 you can "intern" string into a hashtable, then retrieve them and do eql lookup on them 13:36:43 strings 13:36:50 H4ns: how do you arrange for the symbol to exist in a package? 13:36:56 dim: :foo is just a shorthand for keyword::foo 13:37:00 yes 13:37:09 findiggle [~kirkwood@50-194-56-154-static.hfc.comcastbusiness.net] has joined #lisp 13:37:10 -!- jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has quit [Ping timeout: 246 seconds] 13:37:28 defmacro can do (intern type #:dsl-in-lisp) I guess 13:37:29 dim: intern creates the symbol. and using intern in your macroexpansion is fine, because there you actually want to create symbols that you'll later look up. 13:37:32 H4ns: Is that a change from the previous discussion regarding strings and eql, though? 13:37:40 H4ns: ok now, thx 13:38:05 Xach: no. you pointed out the intern problem, i pointed out the strings are not eql problem and both have been discussed simultaneously 13:38:06 jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has joined #lisp 13:38:31 H4ns: Ok. I don't understand the "strings are not eql" problem as there are no strings being compared for eql-ity, are there? 13:38:45 The comparisons are on interned symbols. 13:38:52 but you don't need to use in the macroexpansion, because you can pass :svcl directly 13:39:12 use intern, that is 13:39:21 Xach: you are right 13:39:44 Xach: i was confused. dim, i hope i did not confuse you more. 13:39:53 how do I convert a path to a string? 13:40:03 ivan-kanis: pathname? 13:40:16 ivan-kanis: namestring is one way to get a string from a pathname. 13:40:38 Xach: thank you 13:40:38 H4ns: I think I'm confused, trying to decipher 13:41:04 dim: ignore what i said about strings not being comparable by eql, i've misread your code. 13:41:22 -!- leo2007 [~leo@222.130.135.202] has quit [Quit: rcirc on GNU Emacs 24.2.1] 13:41:27 that part, ok 13:41:30 ivan-kanis: namestrings are really 100% useful to the same implementation that produced them. if you need to use them to pass to some external thing, many implementations have a "native namestring" idea. 13:42:00 for example, if you want to construct a call to an external program and give it a reference to a path that it will understand, namestring might not do what you want all the time. 13:42:05 `fogus [~fogus@burke-matrex.d-a-s.com] has joined #lisp 13:43:16 Xach: don't worry, I am not doing anything serious, just hacking stumpwm a bit 13:45:20 Xach: H4ns: http://paste.lisp.org/display/131385#1 13:45:25 thx guys :) 13:45:44 kiuma [~kiuma@2-230-138-74.ip202.fastwebnet.it] has joined #lisp 13:46:13 lcc1 [cec0b51e@gateway/web/freenode/ip.206.192.181.30] has joined #lisp 13:46:37 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 240 seconds] 13:46:39 dim: not that it'd be right now 13:46:50 -!- lcc1 [cec0b51e@gateway/web/freenode/ip.206.192.181.30] has quit [] 13:46:57 yeah but the goal was only to have the code from the video handy 13:47:04 not to fix the code from the video :) 13:47:26 because _now_ i am pretty sure that you're passing the type string as the eql specialization argument 13:47:34 well, fix it so that it runs as a QL package is already a fix I guess 13:47:55 and besides, ::foo is not legal syntax. 13:48:14 #: would raise not found variables 13:48:28 di ~. 13:48:39 dim: there are other ways how you can create strange errors, too 13:48:51 dim: but keywords are prefixed by one colon, not two 13:49:13 Well, you can use two if you like. 13:49:42 The great colon shortage of the 90s is over, after all. 13:49:45 fixed anyway 13:51:13 Zhivago: the spec was written in that era and specifically mentions two-colon keywords as undefined syntax 13:51:57 gko [~user@114-34-168-13.HINET-IP.hinet.net] has joined #lisp 13:58:34 tensorpudding [~michael@108.87.23.209] has joined #lisp 13:59:36 lusory [~lusory@bb42-60-31-187.singnet.com.sg] has joined #lisp 13:59:54 gravicappa [~gravicapp@ppp91-77-164-227.pppoe.mtu-net.ru] has joined #lisp 14:00:05 NikolaiDante [~nikolaida@unaffiliated/knighterrant] has joined #lisp 14:00:14 -!- araxeus [~araxeus4@c-66-41-112-222.hsd1.mn.comcast.net] has quit [Quit: Leaving] 14:03:06 -!- mcsontos [mcsontos@nat/redhat/x-sktdlgydmwersyjt] has quit [Quit: Leaving] 14:03:27 -!- krrrcks [~krrrcks@krrrcks.de] has left #lisp 14:08:59 chenbing [~user@223.167.92.55] has joined #lisp 14:10:39 zeissoctopus [~zeissocto@183178133120.ctinets.com] has joined #lisp 14:13:00 -!- gravicappa [~gravicapp@ppp91-77-164-227.pppoe.mtu-net.ru] has quit [Ping timeout: 252 seconds] 14:13:37 paul0 [~paul0@177.16.148.231] has joined #lisp 14:13:55 rillo [~patrick@89.21.60.154] has joined #lisp 14:16:28 leo2007 [~leo@222.130.135.202] has joined #lisp 14:17:07 kushal [~kdas@114.143.163.54] has joined #lisp 14:17:07 -!- kushal [~kdas@114.143.163.54] has quit [Changing host] 14:17:07 kushal [~kdas@fedora/kushal] has joined #lisp 14:17:17 -!- quazimodo [~quazimodo@c27-253-100-110.carlnfd2.nsw.optusnet.com.au] has quit [Ping timeout: 252 seconds] 14:18:23 -!- findiggle [~kirkwood@50-194-56-154-static.hfc.comcastbusiness.net] has quit [Quit: Leaving.] 14:21:14 peterhil [~peterhil@gatekeeper.brainalliance.com] has joined #lisp 14:22:15 -!- pskosinski [~pk@czu186.internetdsl.tpnet.pl] has quit [Ping timeout: 255 seconds] 14:24:17 quazimodo [~quazimodo@c27-253-100-110.carlnfd2.nsw.optusnet.com.au] has joined #lisp 14:24:58 -!- SHUPFS [~user@S0106001111de1fc8.cg.shawcable.net] has left #lisp 14:25:32 LiamH [~none@pdp8.nrl.navy.mil] has joined #lisp 14:26:21 -!- NikolaiDante [~nikolaida@unaffiliated/knighterrant] has quit [Quit: Konversation terminated!] 14:26:48 stat_vi [~stat@dslb-094-218-015-220.pools.arcor-ip.net] has joined #lisp 14:27:52 pskosinski [~pk@czu186.internetdsl.tpnet.pl] has joined #lisp 14:29:13 NikolaiDante [~nikolaida@unaffiliated/knighterrant] has joined #lisp 14:33:49 paul0_ [~paul0@177.16.148.140] has joined #lisp 14:34:18 -!- paul0 [~paul0@177.16.148.231] has quit [Ping timeout: 264 seconds] 14:34:18 -!- paul0_ is now known as paul0 14:38:25 gravicappa [~gravicapp@ppp91-77-164-227.pppoe.mtu-net.ru] has joined #lisp 14:38:53 -!- NikolaiDante [~nikolaida@unaffiliated/knighterrant] has quit [Read error: Connection reset by peer] 14:39:02 -!- cmm [~cmm@bzq-79-176-232-193.red.bezeqint.net] has quit [Ping timeout: 252 seconds] 14:39:21 When performing a binary operation on 2 arrays, it is useful to specify the element type of the result array. I divine the result element type using -> http://paste.lisp.org/display/131389 14:39:28 -!- mishoo [~mishoo@178.138.34.39] has quit [Ping timeout: 246 seconds] 14:40:00 It seems to work for me, but I'd appreciate some feedback, because I don't think it is correct in a very general sense. 14:40:10 Natch [~Natch@c-1dcce155.25-4-64736c10.cust.bredbandsbolaget.se] has joined #lisp 14:42:28 Would (upgraded-array-element-type `(or ,a ,b)) suffice? I'm not sure. 14:44:23 I think that would always return the upgraded-array-element-type of a since the OR form would always return a. 14:44:40 That's not an or form. 14:44:47 That's an or type specifier. 14:45:03 e.g., (or string integer) 14:45:03 Thanks, need more coffee. 14:46:10 centipedefarmer [~centipede@75-170-156-72.desm.qwest.net] has joined #lisp 14:46:44 Would that respect contagion rules? 14:46:51 I'll try it and see 14:48:20 (upgraded-array-element-type '(or single-float double-float)) => T 14:48:24 ThomasH: it might give too wide a type. 14:49:00 Yes, I'm wanting to be specific as possible. 14:49:25 Well, upgraded-array-element-type does specify that ... 14:49:58 -!- asvil [~asvil@178.121.13.75] has quit [Ping timeout: 246 seconds] 14:50:04 I'm not sure how clever CL implementations are required to be about OR types, though. 14:50:55 maxm [~user@unaffiliated/maxm] has joined #lisp 14:51:17 -!- sykopomp` is now known as sykopomp 14:51:28 Zhivago: an OR-type is the wrong tool for ThomasH's goal. 14:51:42 In my test above, (or single-float double-float) probably is FLOAT, which is then T when upgraded. 14:52:31 -!- rillo [~patrick@89.21.60.154] has left #lisp 14:52:35 -!- trebor_dki [~user@kvpn.lbf.fraunhofer.de] has quit [Read error: Operation timed out] 14:52:56 The function I posted works for me, but I have a nagging feeling it's not quite general enough and is going to bite me in the ass at some point. 14:53:24 wakeup [~max@xdsl-89-0-70-16.netcologne.de] has joined #lisp 14:53:40 The fear of being bitten in the ass can sometimes be more damaging than actually getting bitten in the ass. -- Abraham Lincoln, probably 14:53:40 hi all 14:53:53 rillo` [~user@89.21.60.154] has joined #lisp 14:53:58 Xach: I like it, good quote. :-) 14:54:06 -!- sepeth [~sepeth@78.186.252.240] has quit [Ping timeout: 240 seconds] 14:54:33 stardiviner [~stardivin@122.236.242.135] has joined #lisp 14:54:41 how do I decode printed-quotabl strings like "=?utf-8?b?zso8cg==?="? 14:54:48 cl-qprint throws an error 14:55:46 (I am working with email, such a mess ugh) 14:56:46 -!- dnolen [~user@cpe-69-203-204-197.nyc.res.rr.com] has quit [Ping timeout: 240 seconds] 14:57:32 findiggle [~kirkwood@50-194-56-154-static.hfc.comcastbusiness.net] has joined #lisp 14:57:35 or what encoding is that anyways if not quoted-printable? 14:57:42 -!- iLogical [~iLogical@unaffiliated/ilogical] has quit [Read error: Connection reset by peer] 14:58:09 http://en.wikipedia.org/wiki/MIME#Encoded-Word 14:58:48 mritz [~textual@cpe-66-25-166-122.austin.res.rr.com] has joined #lisp 15:00:01 thanks 15:00:33 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 15:00:57 -!- MoALTz [~no@host-92-8-154-81.as43234.net] has quit [Ping timeout: 260 seconds] 15:01:18 sabalaba [~Adium@2602:306:cfc8:8c30:15e9:1794:ef5d:10db] has joined #lisp 15:01:56 MoALTz [~no@host-92-8-232-113.as43234.net] has joined #lisp 15:02:01 -!- stardiviner [~stardivin@122.236.242.135] has quit [Quit: my website: http://stardiviner.dyndns-blog.com/] 15:02:13 is this just me or is email/mime the worlds biggest clusterfsck? 15:02:19 -!- voodoo_ [~voodoo@31.45.174.214] has quit [Quit: quit] 15:02:19 -!- zeissoctopus [~zeissocto@183178133120.ctinets.com] has quit [Quit: ] 15:02:31 i've seen bigger 15:02:55 that's comforting 15:02:56 stardiviner [~stardivin@122.236.242.135] has joined #lisp 15:03:11 -!- stardiviner [~stardivin@122.236.242.135] has quit [Client Quit] 15:04:00 wakeup: The one time I tried, I wound up aggregating regexp-based hacks until it worked, mostly. 15:04:03 stassats [~stassats@wikipedia/stassats] has joined #lisp 15:04:10 stardiviner [~stardivin@122.236.242.135] has joined #lisp 15:04:28 is there a common lisp lib available that decodes encoded-word? 15:04:59 -!- sabalaba [~Adium@2602:306:cfc8:8c30:15e9:1794:ef5d:10db] has quit [Client Quit] 15:05:03 pkhuong: This may seem unpragmatic but I only use regexps in emacs 15:05:51 minion: cl-mime? 15:05:51 cl-mime: CL-MIME is a library for constructing and manipulating MIME objects in Common Lisp. http://www.cliki.net/cl-mime 15:05:59 -!- stardiviner [~stardivin@122.236.242.135] has quit [Client Quit] 15:07:10 minion: documentation for cl-mime? 15:07:11 cl-mime: please look at documentation: We also have Documents and Documentation tools. http://www.cliki.net/documentation 15:07:20 fisxoj [~fisxoj@cpe-68-174-154-238.nyc.res.rr.com] has joined #lisp 15:07:21 yeah thought o ;) 15:08:33 booguie [~booguie@ip68-101-218-78.sd.sd.cox.net] has joined #lisp 15:08:49 does anyone know by chance where in cl-meme this decoding function is hidden? 15:09:52 in the source code? 15:10:04 cl-meme! that is the name i will use if i ever publish wigflip sources 15:12:13 stassats: if that is the case it doesn't go by the name encoded-word. 15:13:22 who would name it like that? 15:13:45 -!- lcc [~lcc@unaffiliated/lcc] has quit [Ping timeout: 252 seconds] 15:14:12 how would you name it? 15:15:11 decode-something 15:15:38 stassats: probably decode-encoded-word 15:16:14 pkhuong: were you talking about http://common-lisp.net/project/rfc2822/ ? 15:16:27 lcc [~lcc@unaffiliated/lcc] has joined #lisp 15:16:30 I would define a generic function decode. 15:17:48 the way I see it cl-mime does not support encoded-words 15:19:05 wakeup: I think I used that, plus workarounds for outlook and mail.app. 15:19:11 in emacs you can do (require 'rfc2047) 15:19:18 lisp* 15:19:27 sepeth [~sepeth@78.186.252.240] has joined #lisp 15:22:03 wedgeV_ [~wedge@static-96-239-100-26.nycmny.fios.verizon.net] has joined #lisp 15:23:07 -!- LaughingMan [~chatzilla@boccacio.fh-trier.de] has quit [Ping timeout: 240 seconds] 15:24:44 axion: oh thanks found it 15:25:36 -!- wedgeV_ [~wedge@static-96-239-100-26.nycmny.fios.verizon.net] has quit [Client Quit] 15:27:01 araxeus [~araxeus4@c-66-41-112-222.hsd1.mn.comcast.net] has joined #lisp 15:29:12 who is behind CL-MIME? 15:29:15 ANyone knwo? 15:29:16 know 15:29:52 minion: cl-mime 15:29:52 cl-mime: CL-MIME is a library for constructing and manipulating MIME objects in Common Lisp. http://www.cliki.net/cl-mime 15:30:21 ah 15:30:25 kliph [~user@unaffiliated/kliph] has joined #lisp 15:30:29 -!- mvilleneuve [~mvilleneu@LLagny-156-36-4-214.w80-14.abo.wanadoo.fr] has quit [Quit: Leaving] 15:30:30 Who is robert marlow? Is he ever here? 15:33:30 iLogical [~iLogical@unaffiliated/ilogical] has joined #lisp 15:34:47 -!- paolo_m [~user@2-228-95-110.ip190.fastwebnet.it] has left #lisp 15:35:49 -!- ferada [~ferada@dslb-188-097-130-203.pools.arcor-ip.net] has quit [Quit: Leaving] 15:36:19 paolo_m [~user@2-228-95-110.ip190.fastwebnet.it] has joined #lisp 15:36:46 -!- paolo_m [~user@2-228-95-110.ip190.fastwebnet.it] has left #lisp 15:36:48 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #lisp 15:38:44 -!- booguie [~booguie@ip68-101-218-78.sd.sd.cox.net] has quit [Remote host closed the connection] 15:40:04 -!- centipedefarmer [~centipede@75-170-156-72.desm.qwest.net] has quit [Quit: Leaving] 15:41:08 http://news.ycombinator.com/item?id=4459084 seems too few people really get conditions/restarts 15:41:11 -!- ngz [~user@254.214.67.86.rev.sfr.net] has quit [Ping timeout: 246 seconds] 15:41:19 erp 15:41:32 wrong link http://news.ycombinator.com/item?id=4459131 15:43:01 comment thread on a blog post "An Introduction to Condition Handling for Non-Lispers" 15:43:06 few people who even use CL use advanced features of conditions 15:43:31 -!- PuercoPop [~PuercoPop@190.41.173.174] has quit [Ping timeout: 244 seconds] 15:44:46 PuercoPop [~PuercoPop@190.41.173.174] has joined #lisp 15:45:44 I have used conditions only in parsing so far... 15:46:46 how long would you imagine does it tae to compile GCC on a 900mhz ARM prcesso? 15:47:15 a fortnight 15:47:39 good guess 15:48:12 running about 16 hours now 15:49:00 1,8Ghz dualcore did it in under an hour 15:49:22 SBCL can be compiled way faster! 15:49:37 SBCl doesn't rn on ARM :( 15:49:41 run* 15:49:45 port it! 15:49:53 pay someone to port it! 15:49:57 haha 15:50:00 I am a student 15:50:05 I think there are some arm ports floating around the ethernet. 15:50:16 ThomasH: not of SBCL 15:50:20 CCL does run on ARM 15:50:25 thats why I started using it 15:50:47 implementation diversity can only improve potability 15:50:52 -!- fisxoj [~fisxoj@cpe-68-174-154-238.nyc.res.rr.com] has quit [Ping timeout: 246 seconds] 15:51:05 i have really no desire to run SBCL on my phone, but on something like a tablet with an attachable keyboard, and with emacs, it'd be nice 15:51:28 I am trying to build a minimal linux/cl environment 15:51:41 -!- prxq [~mommer@mnhm-590c2db5.pool.mediaWays.net] has quit [Quit: Leaving] 15:51:52 or rather cl/linux ;) 15:51:54 although soon x86-based tablets would be available 15:52:22 -!- iLogical is now known as ranhento 15:52:24 s/available/widely available/ 15:54:39 I was confusing the PPC port with an ARM port. I have a little NAS box with a Freescale MPC8533 chip and played with sBCL on it. 15:54:51 srolls [~user@c-76-126-212-192.hsd1.ca.comcast.net] has joined #lisp 15:55:54 -!- mritz [~textual@cpe-66-25-166-122.austin.res.rr.com] has quit [Quit: Computer has gone to sleep.] 15:57:29 well, SBCL is officially ported to PPC 15:58:28 -!- `fogus is now known as `fogus|away 15:59:05 -!- peterhil [~peterhil@gatekeeper.brainalliance.com] has quit [Ping timeout: 272 seconds] 16:00:52 -!- rillo` [~user@89.21.60.154] has quit [Read error: Operation timed out] 16:01:33 rillo` [~user@89.21.62.149] has joined #lisp 16:02:01 -!- paul0 [~paul0@177.16.148.140] has quit [Quit: paul0] 16:02:22 jjkola_ [~androirc@212-226-51-222-nat.elisa-mobile.fi] has joined #lisp 16:03:03 -!- add^_ [~add^_@m90-141-38-195.cust.tele2.se] has quit [Quit: add^_] 16:03:17 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 16:03:46 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 16:04:37 add^_ [~add^_@m90-141-38-195.cust.tele2.se] has joined #lisp 16:05:27 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Remote host closed the connection] 16:06:57 Groomm [~Groomm@93.180.108.80] has joined #lisp 16:09:02 Should time-zone of DECODE-UNIVERSAL-TIME not default to the systems time zone? 16:09:35 no 16:09:38 utc is utc 16:10:06 -!- Groomm [~Groomm@93.180.108.80] has quit [Client Quit] 16:11:06 Bike [~Glossina@63-229-129-146.ptld.qwest.net] has joined #lisp 16:11:08 but the implementation should be aware of the systems time zone? 16:11:27 -!- stat_vi [~stat@dslb-094-218-015-220.pools.arcor-ip.net] has quit [Quit: leaving] 16:12:25 RomyRomy [~stickycak@cpe-69-203-115-155.nyc.res.rr.com] has joined #lisp 16:15:02 cfy [~cfy@unaffiliated/chenfengyuan] has joined #lisp 16:16:34 apparently returning circular lists to slime is bad heh 16:16:55 piko [~piko@ip4-83-240-108-205.cust.nbox.cz] has joined #lisp 16:17:19 -!- araxeus [~araxeus4@c-66-41-112-222.hsd1.mn.comcast.net] has quit [Quit: Leaving] 16:17:55 mucker [~mucker@183.83.240.198] has joined #lisp 16:18:01 woudshoo [~user@ironhead.xs4all.nl] has joined #lisp 16:19:24 -!- jjkola_ [~androirc@212-226-51-222-nat.elisa-mobile.fi] has quit [Ping timeout: 245 seconds] 16:19:24 chenbing` [~user@223.166.93.94] has joined #lisp 16:19:24 oGMo: I believe there is a special variable to circumvent the problem 16:19:24 oGMo: *print-circle* 16:19:24 wakeup: yeah, *print-circle* doesn't help there 16:19:24 hmm 16:19:26 stassats: http://www.open-pandora.org/ 16:19:33 oGMo: are you sure? I thought it helped me 16:19:37 -!- chenbing [~user@223.167.92.55] has quit [Ping timeout: 240 seconds] 16:20:26 Vivitron: doesn't seem to. note this is a matter of returning (i.e., you see the value in the modeline), not just printing in the repl 16:20:27 naryl: That thing has failure written all over it. 16:21:24 which you would think would be governed by the same thing, but it doesn't seem to be. it may be that it's dynamically bound and a setf won't change it, but i'm not sure where to change that binding .. .swank.lisp doesn't seem to pick it up 16:22:49 ThomasH: I like the idea+design its just to expensive for my case 16:23:17 Forty-3 [~seana11@pool-96-255-130-43.washdc.fios.verizon.net] has joined #lisp 16:23:44 -!- ivan-kanis [~user@nantes.visionobjects.com] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 16:23:49 even setf at the top of .sbclrc and building a new core doesn't seem to help. hrm. 16:25:11 -!- KingsKnighted [~quassel@c-174-52-149-13.hsd1.ut.comcast.net] has quit [Remote host closed the connection] 16:27:15 jjkola [~androirc@212-226-40-214-nat.elisa-mobile.fi] has joined #lisp 16:29:15 killerboy [~mateusz@217.17.38.43] has joined #lisp 16:29:36 have you tried (let ((*print-circle* t/nil)) '(#1# #1#)) ? 16:32:10 -!- ranhento [~iLogical@unaffiliated/ilogical] has quit [Ping timeout: 246 seconds] 16:32:57 arzo [~user@adsl-ull-194-216.49-151.net24.it] has joined #lisp 16:33:13 anyone here ever used net.telent.date? 16:33:32 I can't make sense of its parse-time function 16:33:38 mgra [~defn@78-3-62-118.adsl.net.t-com.hr] has joined #lisp 16:35:31 wakeup: that doesn't affect printing 16:36:09 oGMo: slime interactive eval is usually running in its own thread, it may not have the bindings you want it to have 16:36:16 what does *print-circle* C-x C-e say? 16:36:23 stassats: yeah 16:36:38 well, t, now that i set it that way heh 16:36:45 oGMo: and there's no returning when it comes to slime, everything is printed on the lisp side and sent to emacs 16:37:16 I'd like to generate local variables in a function, depending on the number of input variables, how can I possibly do that? 16:37:16 stassats: right, or lisp wouldn't be crashing 16:37:17 zeissoctopus [~zeissocto@183178133120.ctinets.com] has joined #lisp 16:37:30 mgra: impossible 16:37:45 there's no local variables at run-time 16:37:52 anyhow i'm just write-to-string as this is a test value 16:39:02 booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has joined #lisp 16:39:19 -!- mucker [~mucker@183.83.240.198] has quit [Quit: leaving] 16:39:25 anon119 [~bman@12.104.148.2] has joined #lisp 16:40:51 and you can do (write-to-string x :circle t) with it 16:41:23 peccu [~peccu@KD106179020073.ppp-bb.dion.ne.jp] has joined #lisp 16:41:33 mucker [~mucker@183.83.240.198] has joined #lisp 16:42:15 -!- mucker [~mucker@183.83.240.198] has quit [Client Quit] 16:42:43 rillo`` [~user@89.21.60.89] has joined #lisp 16:42:44 -!- peccu is now known as PECCU 16:43:57 mucker [~mucker@183.83.240.198] has joined #lisp 16:44:21 -!- mgra [~defn@78-3-62-118.adsl.net.t-com.hr] has left #lisp 16:44:36 -!- sepeth [~sepeth@78.186.252.240] has quit [Ping timeout: 245 seconds] 16:44:46 -!- rillo` [~user@89.21.62.149] has quit [Ping timeout: 240 seconds] 16:45:15 ranhento [~iLogical@unaffiliated/ilogical] has joined #lisp 16:45:16 is net.telent.date seriously buggy? 16:45:37 Nah, just comicly buggy 16:46:03 paul0 [~paul0@177.16.148.140] has joined #lisp 16:47:45 maybe my understanding of time is broken... 16:48:26 -!- sellout42 [~Adium@c-98-245-92-119.hsd1.co.comcast.net] has quit [Quit: Leaving.] 16:48:26 wouldn't wonder me if it's not only you! 16:48:50 -!- RomyRomy [~stickycak@cpe-69-203-115-155.nyc.res.rr.com] has quit [Quit: RomyRomy] 16:49:01 -!- mucker [~mucker@183.83.240.198] has quit [Quit: leaving] 16:49:24 mucker [~mucker@183.83.240.198] has joined #lisp 16:49:40 -!- c_arenz [~arenz@HSI-KBW-109-193-252-079.hsi7.kabel-badenwuerttemberg.de] has quit [Ping timeout: 246 seconds] 16:50:05 Houl [~Parmi@unaffiliated/houl] has joined #lisp 16:50:57 -!- mucker [~mucker@183.83.240.198] has quit [Client Quit] 16:51:10 time sucks 16:51:17 but still 16:51:19 mucker [~mucker@183.83.240.198] has joined #lisp 16:51:23 3d too 16:51:38 -!- gko [~user@114-34-168-13.HINET-IP.hinet.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 16:51:39 that's why 3d+time sucks too! 16:51:46 lol 16:51:52 edgar-rft [~GOD@HSI-KBW-078-043-123-191.hsi4.kabel-badenwuerttemberg.de] has joined #lisp 16:52:08 if I parse a time stamp encoded in my timezone i don't expect the hour to jump or even the DATE 16:54:19 ok wait CL's internal time is fucked up 16:54:34 sdemarre [~serge@91.176.31.180] has joined #lisp 16:54:37 it thinks system time = universal time 16:54:43 is it? 16:54:46 at least here on CCL 16:55:20 can you be more specific? 16:55:32 well I am on CEST 16:55:36 +0200 16:55:40 its 19:00 16:56:09 if I decode (get-universal-time) I get -1 as timezone and the same time 16:56:21 -1 should be 2 as far as I understand 16:56:22 -!- ignas [~ignas@office.pov.lt] has quit [Ping timeout: 244 seconds] 16:57:08 l1sp.org/cl/glossary/time_zone 16:57:09 nope, it shouldn't be 16:58:49 replore [~replore@FLH1Ahd118.kng.mesh.ad.jp] has joined #lisp 16:59:00 clhs glossary/time zone 16:59:01 http://www.lispworks.com/reference/HyperSpec/Body/26_glo_t.htm#time_zone 16:59:08 Xach: we can do that too! 16:59:51 -!- varjag [~eugene@122.62-97-226.bkkb.no] has quit [Quit: Leaving] 16:59:51 and clhs is outdated, it's now always -4 in Moscow 17:00:25 j_king: I gave up discussing lisp(or anything) on HN a while ago. 17:01:19 i gave up on discussing lisp with anyone who doesn't know it already 17:04:50 stassats: the problem isn't those who don't know it, but those who think they do! 17:05:30 Dunning-Kruger effect? 17:08:22 NikolaiDante [~nikolaida@unaffiliated/knighterrant] has joined #lisp 17:08:54 rillo``` [~user@89.21.63.216] has joined #lisp 17:10:37 -!- rillo`` [~user@89.21.60.89] has quit [Ping timeout: 256 seconds] 17:11:03 -!- booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has quit [Remote host closed the connection] 17:11:11 ecce lisper 17:11:12 lisp is one of those technologies, that few know, but every body has strong opinions on, so you get weird discussions. I just got tired and moved no #lisp :) 17:11:28 I remember the orkut lisp wars all too well 17:12:12 -!- kennyd [kennyd@78-1-156-70.adsl.net.t-com.hr] has quit [Ping timeout: 276 seconds] 17:12:22 Xach: they mowed us down by the dozens. 17:12:28 lisposis! 17:12:30 http://www.orkut.com/Main#Community?cmm=13789 <-- it's still around 17:12:39 it gets all! 17:12:41 lol 17:13:15 Members (45) 17:13:23 for some reason, I love this, Xach (: 17:13:37 repent, sinners 17:13:38 nathan carl "ncm" meyers was carrying over his lisp troll act from advogato 17:15:47 -!- Obfuscate [~keii@unaffiliated/obfuscate] has quit [Quit: WeeChat 0.3.8] 17:16:18 kennyd [kennyd@93-136-89-61.adsl.net.t-com.hr] has joined #lisp 17:18:29 whiteCatRunning [45ae3a5c@gateway/web/freenode/ip.69.174.58.92] has joined #lisp 17:19:34 Obfuscate [~keii@unaffiliated/obfuscate] has joined #lisp 17:20:41 -!- benkard [~benkard@002608dc9535.dfn.mwn.de] has quit [Ping timeout: 244 seconds] 17:20:57 -!- leo2007 [~leo@222.130.135.202] has quit [Ping timeout: 260 seconds] 17:21:28 stassats: wh shouldn't it be 2? 17:21:47 after all i am 2 hours ahead of GMT/UTC 17:22:13 -!- Oddity [~Oddity@unaffiliated/oddity] has quit [Ping timeout: 246 seconds] 17:22:29 wakeup: CL TZ is not POSIX TZ 17:22:38 wakeup: see links given 17:22:48 ivan-kanis [~user@89.83.137.164] has joined #lisp 17:23:16 wakeup: you get correct TZ minus DST 17:24:55 so CL GMT is not the same as actual GMT? 17:25:48 wakeup: no, different form of reporting it 17:26:17 reverse of how POSIX/ISO does it 17:26:31 so CEST is -2 17:26:33 step by step: why is my TZ -1? 17:26:34 CET is -1 17:26:44 oh ok 17:26:44 wakeup: because you didn't get DST for some reason 17:26:54 CEST is CET with DST 17:26:59 so, you get T -1 17:27:08 correct 17:28:49 stat_vi [~stat@dslb-094-218-235-038.pools.arcor-ip.net] has joined #lisp 17:29:14 wakeup: what are the final two values of (get-decoded-time)? 17:29:54 if you have penultimate value is T, you add DST, if not, you don't 17:30:44 sepeth [~sepeth@77.79.126.225] has joined #lisp 17:30:56 wakeup: about time: http://unix4lyfe.org/time/ http://naggum.no/lugm-time.html http://infiniteundo.com/post/25326999628/falsehoods-programmers-believe-about-time have fun! 17:30:57 17:31:33 cfy` [~cfy@125.123.43.163] has joined #lisp 17:31:39 haha. "wakeup: about time" is what you say to a person who likes to sleep in. 17:32:32 -!- cfy [~cfy@unaffiliated/chenfengyuan] has quit [Ping timeout: 244 seconds] 17:32:46 who has the puniest nick? 17:33:35 wakeup: btw, what country? 17:34:15 heh 17:34:27 *p_l* loves nicks without custom hosts 17:34:53 no privacy! 17:40:50 http://paste.lisp.org/display/131394 17:41:33 I removed the 24 to get expected behaviour, was this a bug or am I not getting something? 17:41:46 what do you want to do? 17:42:04 stassats: fix the packages incorrect behaviour 17:42:27 what do you want to do? 17:42:35 try (net.telent.date:parse-time "Fri, 31 Aug 2012 18:51:45 +0200") 17:42:53 it will parse this as 1st of Sep 17:43:31 qptain_Nemo [~qN@81-235-52-30-no79.bredband.skanova.com] has joined #lisp 17:43:32 because it calculates the CL TZ to be 24 - 2 17:43:48 where I tink it should be -2 17:45:21 (see the paste) 17:46:09 -!- woudshoo [~user@ironhead.xs4all.nl] has quit [Ping timeout: 260 seconds] 17:47:18 redscare [~user@CP-ONE-THIRTY.MIT.EDU] has joined #lisp 17:49:05 any opinions? 17:50:26 i'm creating a package, and as per the advice of "Practical Common Lisp", I'm putting the defpackage in a file separate from the code that defines my package. the only problem is that even though "tool-package.lisp" (containing the defpackage) and "tool.lisp" (containing the actual code), calling (load "tool.lisp") from "tool-package.lisp" fails -- I have to give the full directory of "tool.lisp". Is there any way to tell the file to 17:50:26 look in it's own directory first? 17:50:33 wakeup: well, don't use it then 17:51:14 redscare: there is a way, but it is not good to load stuff like that, usually. 17:52:03 redscare: the way would involve something like *load-truename* or related variables. the more typical way is to define a system that expresses what files are part of your project, and let a system loader load everything for you. 17:53:05 -!- rillo``` [~user@89.21.63.216] has quit [Ping timeout: 240 seconds] 17:53:13 redscare: either use ASDF or put everything into one file 17:53:55 -!- ranhento [~iLogical@unaffiliated/ilogical] has quit [Quit: Leaving] 17:53:56 ok. it's a very small package so I think I'll just put everything into one file. Is that acceptable practice -- "Practical Common Lisp" discourages this? 17:54:23 it is 17:54:26 redscare: I don't like it because it's harder to fit into an ecosystem of other systems. 17:54:31 stassats: huh? I am trying to FIX it, because I believe its broken. And I am looking for a more experienced opinion to check if my "solution" is correct. Where does "dont use it then fit in there?" 17:54:42 redscare: but for small one-off stuff it's no big deal. 17:54:53 I means AFAIK its a widely used library no? 17:54:57 wakeup: no. 17:54:57 -!- PECCU [~peccu@KD106179020073.ppp-bb.dion.ne.jp] has quit [Quit: WeeChat 0.3.6] 17:55:05 peccu [~peccu@KD106179020073.ppp-bb.dion.ne.jp] has joined #lisp 17:55:06 wakeup: I don't know of anyone who uses net.telent.date on purpose 17:55:18 and thealternatices are? 17:55:29 the alternatives* 17:55:49 -!- peccu is now known as PECCU 17:55:53 wakeup: localtime? 17:55:59 I don't know, sorry. When I needed what net.telent.date allegedly does, I wrote something from scratch. 17:56:02 local-time, rather 17:56:13 stassats: thanks 17:56:38 wakeup: there are also date libraries associated with many of the database libraries (so if you are already using one of those, it might be worth using its related dates) 17:58:26 -.- 17:59:13 -!- bitonic [~user@vm-shell1.doc.ic.ac.uk] has quit [Remote host closed the connection] 18:06:18 Oddity [~Oddity@unaffiliated/oddity] has joined #lisp 18:08:13 -!- chenbing` [~user@223.166.93.94] has quit [Ping timeout: 244 seconds] 18:10:02 the way I see it net.telent.date is the only CL rfc822 date implementation. I think it's important and I will maintain/refactor it. 18:13:24 - 18:21:19 -!- abeaumont [~alfredo@168.Red-88-7-16.staticIP.rima-tde.net] has quit [Quit: Konversation terminated!] 18:21:43 ehu [ehu@ip167-22-212-87.adsl2.static.versatel.nl] has joined #lisp 18:23:26 abeaumont [~alfredo@168.Red-88-7-16.staticIP.rima-tde.net] has joined #lisp 18:23:30 -!- wakeup [~max@xdsl-89-0-70-16.netcologne.de] has quit [Ping timeout: 264 seconds] 18:26:31 -!- mucker [~mucker@183.83.240.198] has quit [Quit: leaving] 18:28:37 rswarbri1k [~rupert@cpc1-cove3-0-0-cust941.3-1.cable.virginmedia.com] has joined #lisp 18:32:00 araxeus [~araxeus4@c-66-41-112-222.hsd1.mn.comcast.net] has joined #lisp 18:33:19 -!- NikolaiDante [~nikolaida@unaffiliated/knighterrant] has quit [Quit: Konversation terminated!] 18:34:13 booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has joined #lisp 18:34:39 -!- FreeArtMan [~fam@93.177.213.54] has quit [Quit: Out of this 3D] 18:34:55 -!- booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has quit [Remote host closed the connection] 18:35:37 bege [~bege@S0106001d7e5132b0.ed.shawcable.net] has joined #lisp 18:35:59 -!- teggi [~teggi@113.172.54.215] has quit [Remote host closed the connection] 18:39:42 -!- jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has quit [Ping timeout: 264 seconds] 18:40:12 jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has joined #lisp 18:45:29 __main__ [~main@c-67-180-22-241.hsd1.ca.comcast.net] has joined #lisp 18:47:00 -!- kushal [~kdas@fedora/kushal] has quit [Quit: Leaving] 18:50:29 -!- papajustify [~slugged@static-50-43-23-161.bvtn.or.frontiernet.net] has quit [Quit: 'bye.] 18:50:42 bitonic [~user@027cae25.bb.sky.com] has joined #lisp 18:51:36 Oxyd [~oxyd@pdpc/supporter/student/oxyd] has joined #lisp 18:55:49 uselpa [~uselpa@83.99.17.21] has joined #lisp 18:55:54 -!- jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has quit [Ping timeout: 264 seconds] 18:56:07 -!- CampinSam [~user@24-176-98-217.dhcp.jcsn.tn.charter.com] has quit [Read error: Connection reset by peer] 18:56:40 jtza8 [~jtza8@196-210-142-207.dynamic.isadsl.co.za] has joined #lisp 18:58:12 -!- replore [~replore@FLH1Ahd118.kng.mesh.ad.jp] has quit [Remote host closed the connection] 18:59:00 CampinSam [~user@24-176-98-217.dhcp.jcsn.tn.charter.com] has joined #lisp 18:59:05 what's the name of the throw-away variable? 18:59:32 reactormonk: throw-away-variable 19:00:10 temp 19:00:17 acc 19:00:19 still gives me ; caught STYLE-WARNING: 19:00:22 ; The variable THROW-AWAY-VARIABLE is defined but never used. 19:00:30 reactormonk: (declare (ignore throw-away-variable)) 19:00:50 ikki [~ikki@189.196.110.141] has joined #lisp 19:01:08 stassats: is there a default value of ignore? 19:01:18 nope 19:01:33 is there a convention? 19:01:36 no 19:01:43 it's better to name it as it is 19:02:14 Communicates to someone else reading the code. Why would there be a default value to ignore? 19:02:16 I'd use _ 19:02:30 Yuuhi` [benni@p5483AC83.dip.t-dialin.net] has joined #lisp 19:02:32 reactormonk: you can use only one _ 19:02:43 reactormonk: Are you destructuring? 19:03:05 ThomasH: what's that? 19:03:06 i assume you're dealing with some third party API, name the variable as what it's expected to be and ignore it 19:03:25 reactormonk: Nevermind, I'm just trying to figure out what you're doing. 19:04:05 ThomasH: http://pastie.org/private/t45uy0tz0bbigeeafc3hq 19:04:17 -!- Yuuhi [benni@p54839764.dip.t-dialin.net] has quit [Ping timeout: 268 seconds] 19:04:29 One thing I don't like about using _: If one day you have to change your code to use it, there's a chance you won't remember what that _ contains 19:04:54 -!- abeaumont [~alfredo@168.Red-88-7-16.staticIP.rima-tde.net] has quit [Quit: Konversation terminated!] 19:05:15 Mon_Ouie: I assume I won't forget the meaning of _ 19:05:53 booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has joined #lisp 19:06:33 abeaumont [~alfredo@168.Red-88-7-16.staticIP.rima-tde.net] has joined #lisp 19:06:33 Mon_Ouie: or you think of what the variable contains? 19:06:36 Argh, my eyes. Misaligned paren. 19:06:50 -!- paul0 [~paul0@177.16.148.140] has quit [Quit: civ5] 19:07:01 I did say "what _ contains". 19:07:06 -!- `fogus|away is now known as `fogus 19:07:46 well, i wouldn't use reduce to compute length 19:08:03 I think this is just an exercise, but agreed. 19:08:21 (count (constantly t) list) would do a better job! 19:08:31 count-if 19:08:33 reactormonk: Read the hyperspec page on reduce. 19:08:36 clhs reduce 19:08:37 http://www.lispworks.com/reference/HyperSpec/Body/f_reduce.htm 19:08:53 tvaalen: http://pastie.org/private/wjhaxv2eiyqhj2rknx2hea 19:08:55 better? 19:09:06 it's the same! 19:09:29 -!- booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has quit [Remote host closed the connection] 19:09:31 stassats: yeah, the question was how to build it with reduce 19:10:08 well, reduce is not suited for this 19:10:35 reactormonk, sorry, it's the last poor lonely paren I'm thinking of. 19:11:02 tvaalen: make it less lonely, move it up one line? 19:11:10 stassats: yes, it is not 19:11:22 Yes. 19:11:43 is there a slime hotkey for this? 19:11:48 reactormonk: so, you would avoid having to ignore a variable by choosing a more appropriate operator 19:11:59 reactormonk: M-^ 19:12:14 stassats: nice, thanks 19:12:41 not even slime-specific \o/ 19:13:07 paredit is really nice for not ending up with code like that. It's hard to start out with, but it's worth it. 19:14:13 already started using it 19:15:09 http://www.emacswiki.org/pics/static/PareditCheatsheet.png 19:15:12 copy+replace+typo = confused why it doesn't work 19:15:32 reactormonk, good! 19:16:44 now I see why you should not care about ((())) in lisp ;-) 19:17:25 -!- araxeus [~araxeus4@c-66-41-112-222.hsd1.mn.comcast.net] has quit [Quit: Leaving] 19:20:14 booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has joined #lisp 19:24:48 -!- robonyankitty [~mechanyan@li125-243.members.linode.com] has quit [Ping timeout: 246 seconds] 19:24:53 -!- Zhivago [~zhivago@li49-59.members.linode.com] has quit [Ping timeout: 250 seconds] 19:25:05 DDR [~chatzilla@d66-183-118-10.bchsia.telus.net] has joined #lisp 19:25:33 -!- fmu [UNKNOWN@unaffiliated/fmu] has quit [Ping timeout: 245 seconds] 19:26:12 -!- slava_ [~slava@li32-38.members.linode.com] has quit [Ping timeout: 246 seconds] 19:26:12 -!- dnm_ [~dnm@li97-254.members.linode.com] has quit [Ping timeout: 246 seconds] 19:26:12 -!- nuba [~nuba@pauleira.com] has quit [Ping timeout: 248 seconds] 19:26:13 -!- edgar-rft [~GOD@HSI-KBW-078-043-123-191.hsi4.kabel-badenwuerttemberg.de] has quit [Quit: paranoia] 19:26:16 -!- dan64 [dan64@2600:3c03::f03c:91ff:fedf:7dc0] has quit [Ping timeout: 245 seconds] 19:26:37 -!- nicdev [user@2600:3c03::f03c:91ff:fedf:4986] has quit [Ping timeout: 246 seconds] 19:26:54 -!- elliottc1ble [~me@ell.io] has quit [Ping timeout: 265 seconds] 19:27:06 -!- egn [~egn@li101-203.members.linode.com] has quit [Ping timeout: 264 seconds] 19:27:24 -!- djinni`_ [~djinni@li125-242.members.linode.com] has quit [Ping timeout: 276 seconds] 19:30:50 gendl [~gendl@c-68-41-192-171.hsd1.mi.comcast.net] has joined #lisp 19:38:12 mishoo [~mishoo@178.138.32.250] has joined #lisp 19:39:52 -!- booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has quit [Remote host closed the connection] 19:41:51 steffi_s [~marioooh@bas5-montreal28-1178024994.dsl.bell.ca] has joined #lisp 19:44:34 -!- leoncame` [~user@219.142.143.21] has quit [Ping timeout: 255 seconds] 19:44:52 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Ping timeout: 248 seconds] 19:46:07 lionping [~itsme@cm.mpi.univie.ac.at] has joined #lisp 19:47:01 cmm [~cmm@bzq-79-181-234-135.red.bezeqint.net] has joined #lisp 19:47:50 -!- Yamazaki-kun [~bsa3@jetalone.facefault.org] has quit [Quit: leaving] 19:52:40 nicferrier [~nicferrie@140.35.155.90.in-addr.arpa] has joined #lisp 19:53:47 hey lispers. is it considered good form, generally helpful, not evil, to have something like (if (symbolp variable) (symbol-value variable) variable) to automatically de-reference a symbol reference to a variable? 19:54:34 yes 19:54:48 as in, it's not going to work 19:55:00 nicferrier: how do I pass a symbol then? 19:55:18 booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has joined #lisp 19:56:23 I am thinking of a function which does something like take a database. the database could be either passed around by value or it could be referenced by a symbol. 19:57:38 Sounds more likely to cause hard-to-find bugs than anything else. I don't even see the point: why would one pass around symbols that refer to the database rather than passing the database around directly? 19:58:36 actually there is a very narrow reason. I'd like to allow the database to be specified to functions as a key argument and I'd like a default 19:58:53 nicferrier: so? 19:58:54 so I'd like something like &key (db default-db) 19:59:09 nicferrier: that evaluates default-db. 19:59:13 right 19:59:30 nicferrier: why not (db *default-db*) or (db (open-database-connection)) or similar? 19:59:32 whereas I should use 'default-db and then resolve the symbol at runtime, no? 19:59:38 NO 19:59:44 nicferrier: I don't see why? 19:59:59 default arguments in CL are evaluated each time the function is called. 19:59:59 nicferrier: Do what Xach recommended. You have 2 options that work well. 20:00:25 (unless the default is overridden by arguments, of course) 20:00:29 there are truly many options 20:00:38 -!- sepeth [~sepeth@77.79.126.225] has quit [Quit: WeeChat 0.3.8] 20:01:42 what does *default-db* mean? 20:01:46 not come across that. 20:01:54 it's a variable name 20:02:17 araxeus [~araxeus4@c-66-41-112-222.hsd1.mn.comcast.net] has joined #lisp 20:02:37 nicferrier: kind of like using (stream *standard-output*) 20:02:43 djinni` [~djinni@li125-242.members.linode.com] has joined #lisp 20:02:55 dnm [~dnm@li97-254.members.linode.com] has joined #lisp 20:03:03 mechanyancat [~mechanyan@li125-243.members.linode.com] has joined #lisp 20:03:10 iLogical [~iLogical@unaffiliated/ilogical] has joined #lisp 20:03:19 -!- dnm is now known as Guest29583 20:03:29 Xach: right. I don't see the difference between default-db and *default-db* personally. but if they're evaluated at call time that's what I need I guess. 20:03:31 thanks! 20:03:48 slava [~slava@li32-38.members.linode.com] has joined #lisp 20:03:54 nicferrier: it's not good to have a global special variable without following the star naming convention 20:04:14 nicferrier: It's understood that *name* is a global variable, reduces confusion. 20:04:19 -!- `fogus [~fogus@burke-matrex.d-a-s.com] has quit [Quit: Leaving] 20:04:23 gotcha. thanks. 20:04:45 -!- kiuma [~kiuma@2-230-138-74.ip202.fastwebnet.it] has quit [Remote host closed the connection] 20:06:32 nicferrier: it works, but only for special variables. 20:07:13 Well, not exactly. You don't need a special symbol to do that. Just a symbol on which you've set the symbol-value. 20:08:12 pjb: thanks. I was more concerned about how people did it, but my specific use case was wrapped up in defaults for function &key params and I hadn't understood those were eval'd every time. 20:08:17 so all is cool. cheers. 20:08:19 Thank goodness your delayed reaction to the conversation isn't confusing, pjb 20:08:44 replore [~replore@FLH1Ahd118.kng.mesh.ad.jp] has joined #lisp 20:08:58 Xach: really? I've not read it too closely either. 20:10:20 What I mean is that you can use symbols to name things without really defining them as variables, and for this, you can use the symbol-value slot. 20:10:30 Xach: I'm not a beginner. I understood him. 20:10:41 I'm not saying it's the best way to do it, just that it's possible. 20:11:29 wakeup [~max@xdsl-89-0-70-16.netcologne.de] has joined #lisp 20:11:32 hi again 20:11:48 -!- ivan-kanis [~user@89.83.137.164] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 20:12:39 an CCL people here? For some reason it spits out iso8859 instead of utf-8 on this machine 20:13:02 wakeup: ccl doesn't use the locale. You have to set encodings yourself. 20:13:19 wakeup: http://paste.lisp.org/display/128640 20:13:20 The only difference between the two machines is x86/arm 20:13:24 (setf ccl:*default-file-character-encoding* :utf-8 ccl:*default-socket-character-encoding* :utf-8 (pathname-encoding-name) :utf-8 ccl:*default-external-format* :utf-8) 20:13:29 Good. 20:13:31 wakeup: see the manual, section 2.5 20:13:37 -!- replore [~replore@FLH1Ahd118.kng.mesh.ad.jp] has quit [Ping timeout: 260 seconds] 20:13:37 and -u option 20:13:50 err 20:13:54 -K utf-8 20:14:02 No, -K is for clisp, not cc. 20:14:03 ccl 20:14:03 -!- jnbek|wc [~jnbek@pdpc/supporter/active/jnbek] has quit [Remote host closed the connection] 20:14:36 no 20:14:44 -K is also for ccl 20:14:53 what stassas said did it 20:15:05 Ah, right. 20:15:17 I had set *default-file-encoding* and -K already before but it didnt make difference 20:15:30 What a strange choice of a letter for terminal encoding 20:15:43 KODING 20:15:45 ;) 20:15:56 letter options are strange anyhow 20:15:59 While -C and -E are free. 20:16:01 Yes. 20:16:54 -!- nicferrier [~nicferrie@140.35.155.90.in-addr.arpa] has left #lisp 20:17:24 general question: how hard is it to modify/overload the pathname/file routines of a CL implementation, say CCL? 20:18:02 sellout42 [~Adium@70.96.9.235] has joined #lisp 20:18:18 I have been thinking about implementing (just for hobbyist purposes) a versioned/fancy filesystem for lisp. 20:18:47 I would guess tweaking the implementation is the least difficult part of something like that. 20:19:57 wakeup: just use logical pathnames mapping the version to .~nn~ 20:20:14 pjb: It's cruel to offer sarcastic remarks like that. 20:20:20 well, ok, not all implementations allow you to do that, but IIRC cmucl does it even by default. 20:20:28 no no 20:20:36 I thought about doing that 20:20:38 Or use ISO-9660. 20:20:55 I will definitely try that 20:20:56 But you'd have to write a write/update option for this file system. 20:21:28 but some characteristics of current pathname implementation are not acceptable 20:21:59 more fancy than iso9660 ;) 20:22:02 less low level 20:22:11 It shouldn't be too hard to patch an existing file system to add versionning. It may be somewhat hairier to patch the unix open, rename, etc, to do it correctly. 20:22:47 -!- arzo [~user@adsl-ull-194-216.49-151.net24.it] has quit [Remote host closed the connection] 20:23:02 pjb: thats exactly what dont need, I plan to use a generic fs underneath 20:23:06 So you mean doing it at the "application" level, with a good lisp pathname mapping. 20:23:11 yes 20:23:13 That could be done indeed with a library. 20:23:57 bascally I wantto create my own exotic working environment far from the industry 20:23:58 I'd start by studing the old systems that had versionning, to see what primitives they had and how that worked. There are a few freeshell vms systems on the internet. 20:24:13 VMS was quite industrial a system! :-) 20:24:19 was ;) 20:24:29 ssh demo@dahmer.vistech.net 20:25:19 There's also a cray available, I don't know how its file system was: http://www.cray-cyber.org/general/start.php 20:26:22 Just use git. 20:26:29 I had to write an ed-like editor in FORTRAN on VMS; the versionned file system was nice. Too bad the quota was too small to allow for many versions, you basically had to purge all the time 20:27:01 Nowdays, this wouldn't be a problem. 20:28:09 We also have COW file systems. (Copy On Write). Mixing versioning and Copy-On-Write of file ranges (ie. never overriding data, unless the disk is full and some old version is garbage collected) could be fun. But that'd be done at the file system level. 20:28:54 That would mean that disk writing would basically be a sequential operation most of the time. 20:29:11 It's the dream of using beautiful software 20:30:06 pjb: I've been using VMS in an industrial setting. It lives on in a VM and I don't see these guys moving all of their stuff of it any time soon. 20:30:53 That's good. 20:31:23 HP still sells VMS, I think natively on Itanium, and also on the VM. 20:31:32 If only VMS had been openned five years earlier, it would have had a chance. Now it's just museum. 20:31:46 It's not open, they just call it that. 20:32:04 Well, at least it's available. 20:32:43 fmu [UNKNOWN@unaffiliated/fmu] has joined #lisp 20:32:45 -!- angavrilov [~angavrilo@217.71.227.190] has quit [Ping timeout: 252 seconds] 20:33:12 well, you can buy the source code license, afaik quite cheaply compared to some others 20:33:23 it was actually delivered with source code upto 4.0 20:33:32 (on microfilm) 20:34:04 useful 20:34:30 ThomasH: Both Alpha and Integrity licenses are commercially sold (you can buy VAX license, but last version published is 7.3 - current is 8.4) 20:35:01 you can register the license on an emulator as well 20:35:03 I know some that would choose VMS over Unix every time. My experience with it is that it has great Fortran integration, but feels too antiquated otherwise. 20:35:45 ThomasH: it's got good things, but unfortunately HP is hell-bent on becoming a printer vendor only 20:36:02 p_l: I called HP earlier this year to see what it would cost to get a license. Got the run-around, never got a response, and gave up. 20:36:32 francogrex [~user@109.130.184.144] has joined #lisp 20:36:38 ThomasH: for personal use or company use? 20:36:50 that is, commercial/noncommercial? 20:36:58 Commercial 20:37:03 ah 20:37:33 well, I heard the people in "big systems" at HP, at least the ones steering the operation, especially on VMS side, are utterly useless 20:37:45 to the point of not knowing what their sections sells 20:38:05 that turned off-topic pretty quickly 20:38:08 dmx [~dmx@adsl-67-121-157-253.dsl.pltn13.pacbell.net] has joined #lisp 20:38:09 yeah 20:38:43 wakeup: for creating exotic working environments, consider porting ECL to Plan9 and try Plan B :) 20:38:45 Hey, it's Friday. Grab a beer and relax. 20:40:49 dan64 [dan64@2600:3c03::f03c:91ff:fedf:7dc0] has joined #lisp 20:41:19 wakeup: the benefit of Plan 9 is that it won't be a problem to implement any external API in CL (as outside syscalls you'd work with CL code only, usually) 20:41:57 interesting idea 20:42:14 but I have tried plan9 and it doesn't support any harware at all 20:42:26 To have the most fun, I'd port a CL implementation on Eros! :-) 20:42:43 wakeup: then run it in a VM, or use 9vx, in beginning 20:43:46 my plan (its called eugene): minimal linux + CL + custom application level networked filesystem 20:43:58 why not just run SBCL directly, not in a vm in a quirky OS? 20:44:35 furthermore an xserver that runs gecko and a HTML/CSS/JS based graphical environment 20:44:56 -!- steffi_s [~marioooh@bas5-montreal28-1178024994.dsl.bell.ca] has quit [Quit: zzzz] 20:45:14 that way you have high portability 20:45:40 and, what's the selling point? 20:45:51 I like it 20:46:05 I will have it be the way I want 20:46:14 -!- milanj [~milanj_@79-101-197-111.dynamic.isp.telekom.rs] has quit [Quit: Leaving] 20:46:22 in 10 years? 20:46:38 milanj [~milanj_@79-101-197-111.dynamic.isp.telekom.rs] has joined #lisp 20:46:53 I will maybe feel unencumbered by the current software situation or get to know the benefits of the current software situation 20:47:00 -!- whiteCatRunning [45ae3a5c@gateway/web/freenode/ip.69.174.58.92] has quit [K-Lined] 20:47:02 stassats: more like 2 or 3 years 20:47:10 all the hard work is already done 20:47:30 I don't have to touch a low level thing 20:47:48 its all just hiding existing stuff under CL 20:48:33 how much did you already accomplish? 20:49:18 I'd say about 10% of the loot 20:49:46 -!- bege [~bege@S0106001d7e5132b0.ed.shawcable.net] has quit [Ping timeout: 246 seconds] 20:49:50 I learn a LOT by thinking about and implementing weird stuff 20:50:47 well, it just looks like you're going to waste 3 years trying to invent some hypothetical thing instead of doing something which could be of some use 20:51:10 -!- sdemarre [~serge@91.176.31.180] has quit [Ping timeout: 246 seconds] 20:51:25 CL already runs fine on linux, nothing needs to be done 20:54:03 -!- ISF [~ivan@189.61.221.122] has quit [Ping timeout: 268 seconds] 20:54:31 tritchey_ [~tritchey@c-68-51-88-12.hsd1.in.comcast.net] has joined #lisp 20:56:05 why do you care? 20:56:14 why do you care whether i care or not? 20:56:52 I question your philosphy 20:57:06 -!- tritchey [~tritchey@c-68-51-88-12.hsd1.in.comcast.net] has quit [Ping timeout: 276 seconds] 20:57:11 i just predict that you'll get nothing done and will end up disappointed 20:57:21 good luck predicting 20:57:21 It's easy to configure a linux kernel with a CL implementation as /bin/init (even easier than emacs, since you can use CFFI to mount the volumes, without requiring an external mount command). All the fun then is in writing userspace. 20:57:39 http://www.informatimago.com/linux/emacs-on-user-mode-linux.html 20:57:56 pjb: best if you compile the implementation to be static 20:58:25 ... well, depending on being launched by /lib/ld.so isn't that bad 20:58:52 -!- tritchey_ [~tritchey@c-68-51-88-12.hsd1.in.comcast.net] has quit [Ping timeout: 246 seconds] 20:59:10 Use http://www.cliki.net/CLXS and stumpwm. 20:59:14 stassats` [~stassats@wikipedia/stassats] has joined #lisp 20:59:59 -!- [SLB] [~slabua@unaffiliated/slabua] has quit [Read error: Operation timed out] 21:00:43 well, with "modern" linux code, I'd be wary of using CL for /init. OTOH, you can do necessary stuff from CL... hmm 21:01:10 p_l: well, the question is, what would be gained with it? 21:01:19 stassats: freedom 21:01:19 that looks like severe NIH 21:01:26 Actually, I feel we have 80% of all the parts. Even for the kernel, Movitz is the biggest part, we just have to add forking processes and a trivial file system. A few lisp hackers could probably produce a 100% CL system with all those parts in a few months. 21:01:40 stassats`: the gain would be 100% CL system. 21:02:01 lets do it 21:02:07 I want a 100% CL system 21:02:07 pjb: i don't need a buggy, incomplete system 21:02:25 which system is complete and bug free? 21:02:38 So, let's say, 6 hackers @ 6 month @ 3000 USD/month, that's $108,000. 21:02:39 less code -> less bugs 21:02:56 jeez 21:02:57 I'd do it for free 21:02:58 Peanuts. How sad I'm not Shuttleworth. 21:03:18 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 268 seconds] 21:03:35 find 5 other of me an shuttleworth can fsck right off 21:03:40 pjb: You want to pay someone 500 USD/month for full time coding? 21:03:49 wakeup: why are you still on IRC and not wokring? 21:03:52 but give us 12 month I work slowly 21:04:04 stassats`: its friday night I coded the whole day 21:04:13 pjb: Sorry, didn't read your full sentence. 21:04:36 got the pop cient working 21:04:50 client* 21:04:57 wakeup: are you un-employed? 21:05:04 yep 21:05:13 student actually 21:05:15 pjb: Ok, revision, 18.75 USD/hour. Seems a little low. 21:05:18 but just for th money 21:05:39 ThomasH: but they'll be high on CL! 21:05:45 do you all cde 40-50 hours a week? 21:05:50 code* 21:06:02 I couldn't stand that for a year 21:06:06 hated my apprenticeship 21:06:08 wakeup: No, coding is just a tool for me. 21:06:15 But I enjoy it. 21:06:24 I enjoy programming a lot too 21:06:37 but out of free will wouldn't do it 200hrs a week 21:06:41 20hrs* 21:06:43 ;) 21:07:24 besides the rates for programmers are pretty high we could all do part time jobs and still live like kings 21:07:38 ... not necessarily 21:08:05 maybe if you do consulting on Mainframes and don't have big requirements 21:08:08 ok, so let's put some real numbers. With taxes and overhead, let's count 8000 USD/month/hacker. Let's say one year. $576,000; If we're 500 lispers we'd have to invest $1152 in crow founding. 21:08:16 sellout421 [~Adium@70.96.9.235] has joined #lisp 21:08:25 I get by great with 600 a month 21:08:45 no kids!:) 21:08:51 kids change everything 21:08:55 was gonna say, try divorce 21:09:09 but I know broke parents too they are doing well 21:09:16 money mkes you stupid anyhow 21:09:37 *stassats`* is fascinated 21:09:48 even without kids, you need to count the money you need for your future: health, housing, food, for when you won't be able to work anymore. 21:10:04 plus taxes. 21:10:14 When we're young we forget all those overhead charges. 21:10:24 Just surviving now is not good enough. 21:10:25 -!- sellout42 [~Adium@70.96.9.235] has quit [Ping timeout: 246 seconds] 21:10:30 that is true 21:10:56 That's what having kids are for. My wife and I call them our 401(kids). 21:11:14 Not with current laws. 21:11:14 -!- gravicappa [~gravicapp@ppp91-77-164-227.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 21:11:23 lol 21:11:30 That's how it worked before Bismark. 21:11:38 haha 21:11:42 -!- francogrex [~user@109.130.184.144] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 21:12:17 I'll see where my lazy nature will get me 21:12:35 but current plan is to never work a day in my life, worked great for my dad 21:13:05 So, what do you think, would we be able to attract half a million USD crowd founding to get a 100% CL system including a kernel, network, filesystem, and userspace X11 server, window manager, and existing CL applications ported to it? (hemlock, maxima, etc). 21:13:34 try bountyoss ;) 21:13:48 like I said I would code on it for free 21:13:56 have no money to invest though 21:14:04 We wouldn't even try to be as good as genera! Just take the existing pieces and add the 20% to make them work together. 21:14:06 pjb: I don't. There's no market for it. Even if we did it, continuing support would have to be done by the user community that would hopefully be drawn to the system. 21:14:23 Sure, no $market. Hence the crowd founding. 21:14:37 pjb: Crowd fund maintenance? 21:14:47 never change a running system 21:14:48 the existing linux software ecosystem took many years of many dedicated programmers to get where it is right now 21:14:49 Well, the goal would be to attrack all lispers to it :-) 21:14:52 so, that's just pipe dreams 21:15:06 Yes, but we have crowd founding nowadays! 21:15:20 stassats`: Friday afternoons were invented for pipe dreams. 21:15:31 When you see what they get money for! 21:15:34 hmmmm 21:15:35 At the risk of an on-topic question... Does anyone know where the contents of ECL's "new manual" come from? I was wondering about a good way to get hold of the contents for the ecl-doc debian package and "wget -l" seemed bad manners... 21:15:46 -!- rswarbri1k is now known as rswarbrick 21:15:47 kiuma [~kiuma@2-230-138-74.ip202.fastwebnet.it] has joined #lisp 21:15:56 *rswarbrick* forgot to fix his nick. 21:16:16 SETI got $75,000! 21:16:20 if there's no market for it create one! 21:16:30 pjb: Would I still be able to compile and run C and Fortran? Install a Python implemention, etc? 21:16:41 hell no 21:16:42 and then they claim me of having bad attidude! 21:16:46 python would bea DSL 21:16:47 ThomasH: no, it's freedom, no python! 21:16:52 heh 21:17:14 ThomasH: some pipe dreams are just too ridiculous 21:18:07 stassats`: I think I never convinced you of anyhing... 21:18:17 maybe its me, or its you ;) 21:18:37 Re ECL's manual (for anyone reading logs): It's linked at the "download" page on ECL's website. Repository name: ecl-doc (d'oh!) 21:18:46 A guy got $162,392 to draw comics!!! 21:18:50 Really! 21:19:25 Another got $177,322 to design a wallet!!!!! fuck! 21:20:05 that's nothing when you know how much chicks will spend on wallets 21:20:13 pjb: at leas it's something real 21:23:07 I'd be happy with a crowd funded, open source, Common Lisp IDE. Maybe get the CCL IDE running cross-platform and cross-implementation. 21:23:22 And a GUI toolkit to go with it. 21:24:01 it is my understanding that crowdsourcing requires a crowd 21:24:20 ThomasH: that's a far better idea 21:24:59 would anyone pay me to document cl-mime? 21:25:19 stassats`: pragmatic or not? 21:25:24 superflit_ [~superflit@63-228-84-93.hlrn.qwest.net] has joined #lisp 21:25:47 ThomasH: there's f2cl, c-on-cl and cl-python. So yes. 21:25:49 wakeup: yes, that's a good idea too 21:26:04 dnolen [~user@pool-71-183-179-249.nycmny.east.verizon.net] has joined #lisp 21:26:30 But an OS written in Movitz would probably not be a unix system. 21:26:56 -!- superflit [~superflit@75-171-247-56.hlrn.qwest.net] has quit [Ping timeout: 246 seconds] 21:26:57 -!- superflit_ is now known as superflit 21:27:02 yep 21:27:56 [SLB] [~slabua@unaffiliated/slabua] has joined #lisp 21:28:19 im off for today 21:28:25 was fun with you guys 21:28:32 see you! 21:28:33 pjb: That's not really practical. f2cl covers F77, sort of, and there are times where you do really need to raw numeric performance of Fortran. Not sure about C-on-CL, but with cl-python, we just added a lot more overhead to project to maintain it. 21:28:35 -!- wakeup [~max@xdsl-89-0-70-16.netcologne.de] has quit [Quit: leaving] 21:29:04 Well, we don't want to promote writing a lot of stuff in other languages than lisp. 21:29:35 If you really need raw numeric performance, write a good CL compiler. 21:30:06 But most importantly, those compilers would serve to show that CL is faster than Fortran, C or python. On CL-OS. 21:30:09 registry economy ? 21:30:32 ? 21:34:01 kcj [~casey@unaffiliated/kcj] has joined #lisp 21:35:41 pjb: If you're striving for CL-OS, I still think it is better to start on top of Linux and then piece by piece convert things to CL, not remove the entire foundation and build it back up. 21:35:59 I agree. 21:36:50 Applications would be written in CL anyways, not in POSIX or unix API> 21:36:51 . 21:37:58 ountual [~book@static-50-43-23-161.bvtn.or.frontiernet.net] has joined #lisp 21:39:21 -!- Alice3 [~Alice@cpc3-grim12-0-0-cust856.12-3.cable.virginmedia.com] has quit [Read error: Connection reset by peer] 21:40:12 -!- araxeus [~araxeus4@c-66-41-112-222.hsd1.mn.comcast.net] has quit [Read error: Connection reset by peer] 21:42:09 oGMo: SBCL is no longer afraid of 1d111111111111111111 21:43:42 -!- [SLB] [~slabua@unaffiliated/slabua] has quit [Quit: Close the world, Open the nExt] 21:44:35 paolo_m [~user@adsl-ull-194-216.49-151.net24.it] has joined #lisp 21:45:27 pjb: why stop at OS? why not CL-Computer? 21:45:41 [SLB] [~slabua@unaffiliated/slabua] has joined #lisp 21:46:54 stassats`: Patience, it will come. 21:46:58 Indeed, that's the next step: use a tagged-data&instruction processor. 21:46:59 Alice3 [~Alice@cpc3-grim12-0-0-cust856.12-3.cable.virginmedia.com] has joined #lisp 21:47:15 Hmm, seems like that was done once. 21:47:20 yes 21:47:36 The most important feature of the matrix is that we're in a loop. 21:48:17 Sometimes, I waste too much time on names in my code. But, there is a certain satisfaction with the right name and I have been confused by code that was poorly named. 21:55:32 Beetny [~Beetny@ppp118-208-154-132.lns20.bne1.internode.on.net] has joined #lisp 21:57:58 -!- LiamH [~none@pdp8.nrl.navy.mil] has quit [Quit: Leaving.] 21:59:42 -!- Alice3 [~Alice@cpc3-grim12-0-0-cust856.12-3.cable.virginmedia.com] has quit [] 22:01:14 -!- milanj [~milanj_@79-101-197-111.dynamic.isp.telekom.rs] has quit [Quit: Leaving] 22:01:45 nuba [~nuba@pauleira.com] has joined #lisp 22:02:07 -!- mishoo [~mishoo@178.138.32.250] has quit [Ping timeout: 240 seconds] 22:03:23 -!- uselpa [~uselpa@83.99.17.21] has quit [Remote host closed the connection] 22:03:44 -!- booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has quit [Remote host closed the connection] 22:05:07 -!- hswe [~hswe@blackhole.space150.com] has quit [Remote host closed the connection] 22:06:49 -!- MoALTz [~no@host-92-8-232-113.as43234.net] has quit [Ping timeout: 268 seconds] 22:07:59 ISF [~ivan@189.61.221.122] has joined #lisp 22:08:42 KingsKnighted [~quassel@c-174-52-149-13.hsd1.ut.comcast.net] has joined #lisp 22:08:53 And they got $291,493 to make men underwear!!!!!!! 22:09:16 We're doomed. 22:09:40 http://www.kickstarter.com/discover/categories/fashion/most-funded?ref=more 22:10:06 booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has joined #lisp 22:10:58 eheh 22:12:24 -!- ountual [~book@static-50-43-23-161.bvtn.or.frontiernet.net] has quit [Quit: 'bye.] 22:13:37 dotpot [~dotpot@78-56-220-44.static.zebra.lt] has joined #lisp 22:14:29 -!- dnolen [~user@pool-71-183-179-249.nycmny.east.verizon.net] has quit [Remote host closed the connection] 22:17:11 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #lisp 22:18:58 -!- sellout421 [~Adium@70.96.9.235] has quit [Quit: Leaving.] 22:19:37 Sign me up for a pair. 22:19:59 ountual [~book@static-50-43-23-161.bvtn.or.frontiernet.net] has joined #lisp 22:21:31 -!- optikalmouse [~user@gw.trapeze.com] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 22:21:48 They don't even have electronics embedded! 22:22:01 If it was wearable computing, I wouldn't say, but not even. 22:23:21 ... dude, I'd pay a lot for advanced fabrics that could keep up with the conditions I have to suffer sometimes 22:23:34 No doubt. 22:23:38 steffi_s [~marioooh@bas5-montreal28-1178024994.dsl.bell.ca] has joined #lisp 22:23:51 Summer in Provence... rough stuff. 22:23:57 (also, I got a wearable computing project idea, but still not found some parts... might be fun thing in future) 22:24:27 dnolen [~user@pool-71-183-179-249.nycmny.east.verizon.net] has joined #lisp 22:24:32 p_l: just buy a military combat uniform 22:25:17 stassats`: too outlandish in some places. It's a good idea for when I go flying, but would look weird in some places 22:26:02 just get a big gun too, nobody will laugh 22:27:01 anyway, if I find the missing piece (the displays), I might look into building a CL powered wearable computer :3 22:27:15 any oled should do. 22:27:33 Hitachi HD44780? 22:27:38 I bet somebody has already tried to incrust an oled in his arm. 22:28:16 bege [~bege@S0106001d7e5132b0.ed.shawcable.net] has joined #lisp 22:28:20 pjb: I want see-through glasses (something like those of Project Glass) 22:28:50 the other bit is manipulator glove (this I have vague idea of where to look for sensors and some ideas on programming 22:29:14 Some do it using the camera of the iPhone/iPad/whaver wearable you use. 22:29:17 -!- zeissoctopus [~zeissocto@183178133120.ctinets.com] has quit [Remote host closed the connection] 22:30:06 pjb: I don't want to be constrained by camera's fov 22:31:19 the glove would provide high quality data on position of your hand (including fingers, rotation, etc.) so you could interact through subtle gestures, make it act as a keyer, manipulate elements on virtual display, etc. 22:32:22 I'm sure you don't need a glove. 22:32:40 Just send some ultrasound in the body, listen for the echoes and determine the position of the whole body from them. 22:33:00 Or with an electro-magnetic signal if you don't like sound. 22:33:57 pjb: ultrasound tends to be directional in practice and has low signal to noise ratio in noisy situations 22:34:44 -!- moore33 [~moore@43.177.125.78.rev.sfr.net] has quit [Quit: Leaving] 22:35:02 as for the glove, the idea was to use thin wires that would change their electric response due to stress 22:35:02 Right. I was thinking more infrasound, like seismic waves. 22:35:25 pjb: don't think it would work for the level of fidelity I want 22:35:56 Well, even better, just use brain waves to detect the hand position directly from the human neural system. 22:36:36 pjb: ... I actually had lectures on that, but non-invasive methods are still iffy, and invasive are outside my reach 22:37:28 I want something I could build by myself, not something that would require bioethics supervision and advanced medical lab 22:37:36 :-) 22:38:57 not a blue-sky project, but something that I could put schematics and software online and let other people build it in garage ;) 22:41:03 mritz [~textual@cpe-66-25-166-122.austin.res.rr.com] has joined #lisp 22:43:52 -!- wbooze [~wbooze@xdsl-84-44-177-129.netcologne.de] has quit [Ping timeout: 246 seconds] 22:48:50 -!- kiuma [~kiuma@2-230-138-74.ip202.fastwebnet.it] has quit [Ping timeout: 246 seconds] 22:51:04 -!- booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has quit [Remote host closed the connection] 22:57:54 -!- urandom__ [~user@ip-88-152-218-149.unitymediagroup.de] has quit [Remote host closed the connection] 22:58:35 -!- mritz [~textual@cpe-66-25-166-122.austin.res.rr.com] has quit [Quit: Computer has gone to sleep.] 23:02:57 booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has joined #lisp 23:03:56 antifuchs: git.boinkor.net is down 23:04:12 fe[nl]ix: yeah, I'm sorry ): 23:04:18 I'm working on bringing up a replacement 23:04:34 but sadly, jet lag and work haven't been kind to my spare time the last few days 23:05:54 pjb: My last exam is on the 11th, since my school can't teach me much anymore, I'd rather work on pipe dreams. If we can organize a few people like me(stamina of a 22 year old, very little funds required), we can probably work something out, maybe not a full lisp os, but I'm all for a full lisp gui toolkit that doesn't suck, maybe build a smalltalk like environment on top of it. At the very least there could be patches to 23:05:54 existing software, and I would be a way better hacker by the end of the school year, even If I fail completely and go do javascript for cash. :) 23:07:38 besides, pipe dreams about lisp is pretty much the only thing keeping my black goth uniform away, I'd rather try and go forward :) 23:08:43 -!- dotpot [~dotpot@78-56-220-44.static.zebra.lt] has quit [Ping timeout: 246 seconds] 23:08:44 -!- pskosinski [~pk@czu186.internetdsl.tpnet.pl] has quit [Ping timeout: 246 seconds] 23:10:19 fe[nl]ix: I'm hoping to get the new machine shipshape over the weekend 23:10:40 including git.boinkor.net and everything. expect an announcement on my blog (: 23:10:41 -!- stat_vi [~stat@dslb-094-218-235-038.pools.arcor-ip.net] has quit [Quit: Lost terminal] 23:11:05 those who read the blog already knew the scoop 23:11:35 pavelpenev: I'll be blunt - as of recently, I'm usually more angry than idealistic about pipe dreams involving huge doses of NIH and "let's replace shit, best without learning history and any concern for actual usability" 23:11:42 they do! I don't exactly know why the post didn't appear on planet.lisp though 23:11:43 hm. 23:11:53 Sorella [~quildreen@201-58-198-116.user.veloxzone.com.br] has joined #lisp 23:11:56 -!- Sorella [~quildreen@201-58-198-116.user.veloxzone.com.br] has quit [Changing host] 23:11:56 Sorella [~quildreen@oftn/member/Sorella] has joined #lisp 23:12:43 p_l: I'm all for learning from history. I have a folder with old lisp machine paper waiting for me to read them :) 23:12:58 pavelpenev: learn not only from lispm papers, okay? 23:13:06 -!- booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has quit [Ping timeout: 252 seconds] 23:13:11 smalltalk, the web, yeah, I know :) 23:13:18 ah. category was "lisp", not "Lisp" 23:13:20 -!- add^_ [~add^_@m90-141-38-195.cust.tele2.se] has quit [Quit: add^_] 23:13:29 I ought to patch my blogging software about that. 23:14:00 I have many folders with papers in them :) 23:14:01 -!- fe[nl]ix [~quassel@pdpc/supporter/professional/fenlix] has quit [Remote host closed the connection] 23:14:11 pavelpenev: also, please include in it things like Unix (as in original design philosophy, Research UNIX (V8/V9/V10), Plan9, VMS and probably several others 23:14:49 -!- peterhil` [~peterhil@91-157-48-51.elisa-laajakaista.fi] has quit [Ping timeout: 272 seconds] 23:15:18 fe[nl]ix [~quassel@pdpc/supporter/professional/fenlix] has joined #lisp 23:16:25 -!- Sorella [~quildreen@oftn/member/Sorella] has quit [Ping timeout: 246 seconds] 23:17:07 p_l: sure, but there has to be a balance, I can't just spend 10 years learning all of computing history. I'm narrowing my focus on guis for now. But I've noticed others show interest in such topics, maybe if we can get some collaboration, we can get _something_ done. 23:18:33 pavelpenev: I found that I can get more usable results by not redoing everything, just fixing architectural issues. The lisp-os I had idea for is for a complete machine and more of a learning project :) 23:18:54 i don't think that another stillborn toy OS is what CL needs 23:19:00 ^ 23:19:28 wbooze [~wbooze@xdsl-78-35-134-112.netcologne.de] has joined #lisp 23:19:47 I'm just trying to use my last year of school productively, I wasted the previous 3 fiddleing around with lisps, and web apps, and playing minecraft. 23:20:16 Jubb [~ghost@pool-108-28-0-134.washdc.fios.verizon.net] has joined #lisp 23:20:37 superflit_ [~superflit@75-171-222-179.hlrn.qwest.net] has joined #lisp 23:20:39 infidel! 23:20:46 I'm pretty cynical myself, so I think I have the right balance. 23:21:37 -!- superflit [~superflit@63-228-84-93.hlrn.qwest.net] has quit [Ping timeout: 240 seconds] 23:21:37 -!- superflit_ is now known as superflit 23:21:53 -!- ountual [~book@static-50-43-23-161.bvtn.or.frontiernet.net] has quit [Quit: 'bye.] 23:24:08 -!- gffa [~unknown@unaffiliated/gffa] has quit [Quit: sleep] 23:24:23 -!- dnolen [~user@pool-71-183-179-249.nycmny.east.verizon.net] has quit [Ping timeout: 244 seconds] 23:25:24 sellout42 [~Adium@c-98-245-92-119.hsd1.co.comcast.net] has joined #lisp 23:27:04 -!- sawjig [~sawjig@gateway/tor-sasl/sawjig] has quit [Remote host closed the connection] 23:29:27 Sorella [~quildreen@oftn/member/Sorella] has joined #lisp 23:29:27 -!- dmx [~dmx@adsl-67-121-157-253.dsl.pltn13.pacbell.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 23:30:59 ountual [~book@static-50-43-23-161.bvtn.or.frontiernet.net] has joined #lisp 23:31:34 sawjig [~sawjig@gateway/tor-sasl/sawjig] has joined #lisp 23:32:15 -!- cfy` [~cfy@125.123.43.163] has quit [Read error: Connection reset by peer] 23:32:54 tritchey [~tritchey@12.97.199.50] has joined #lisp 23:33:36 -!- Nisstyre [~yours@oftn/member/Nisstyre] has quit [Read error: Connection reset by peer] 23:35:40 -!- Vutral [~ss@mirbsd/special/Vutral] has quit [Ping timeout: 246 seconds] 23:42:13 -!- ehu [ehu@ip167-22-212-87.adsl2.static.versatel.nl] has quit [Ping timeout: 260 seconds] 23:44:58 booguie [~booguie@wsip-98-172-168-236.sd.sd.cox.net] has joined #lisp 23:46:19 holycow [~holycow@host-216-251-135-194.bchsia.skywaywest.net] has joined #lisp 23:49:21 hi lisp 23:49:37 i have a fairly naiive question for anyone awake 23:50:05 lets say that we wanted to rebuild the linux userland tools and replace everything with common lisp 23:50:36 the suspense is killing me 23:50:44 -!- xpololz [~xpololz@80.203.124.203] has quit [Ping timeout: 244 seconds] 23:51:08 how would one deploy small binaries and libraries and tools as they are when compiled with c and other languages? 23:51:44 -!- killerboy [~mateusz@217.17.38.43] has quit [Quit: good night] 23:52:31 holycow: do it like busybox. 23:52:37 my understanding is that i can deploy an image, which is actually really cool. but say we wanted to create a system that would have compiled libraries to be used by various apps and tools ... would this work the same way with common lisp environments? 23:53:07 holycow: sb-heapdump had that 23:53:21 you mean as source code and compile when run? 23:53:22 ECL has that 23:53:26 I'd worry about this once I find myself with users. 23:53:44 p_l: hmmm ... googling 23:53:46 holycow: why do you want to replace the linux userland tools? 23:54:17 pkhuong: heh well, yes indeed. i'm more curious how this might work as an intellectual excercise 23:54:18 holycow: getting it effectively would require some serious work, work that isn't done because some of it would be actually counterproductive for typical use 23:54:43 stassats`: you are right, there is no benefit, just trying to learn more about lisp and map a bit more of this stuff out 23:55:05 well, this doesn't have anything to do with Lisp, actually 23:55:16 holycow: my stance is that OS X shows the issue isn't critical in practice. 23:55:39 holycow: If you really wanted to replace everything with lisp, make it all functions rather than separate binaries. 23:55:57 holycow: but a good example would be making the runtime into ELF interpreter, then modify code generation to ensure you can create PIC modules and pack those into ELF files... 23:56:04 pkhuong: well i guess, one could sort of move all of userland (i guess, not sure about issues) to an image and run quicklisp within the image to install libraries and expand the environment 23:56:18 what is it about today that everybody wants to rewrite everything in lisp? 23:56:20 holycow: that method would reuse a lot of existing infrastructure 23:56:25 stassats`: friday. beer? 23:56:28 it would be perhaps one intersting way to do sandboxing perhaps 23:57:02 stassats`: I've been fighting the urge to rewrite all of conkeror in parenscript all day, I want to know too :) 23:57:04 holycow: BSD jails, KVM images. 23:57:18 -!- tritchey [~tritchey@12.97.199.50] has quit [Quit: tritchey] 23:57:34 proper MAC infrastructure as well 23:57:39 sellout42: huh. thats an interesting thought. 23:58:14 p_l: huh, interesting thought. 23:58:31 stassats`: yes, what p_l said, friday, beer and a bit of free time to dream 23:58:48 ... there are days I'm happy I don't drink beer 23:59:20 how about writing original applications? 23:59:27 is that too much to dream about? 23:59:42 sellout42: like busybox ;)