19:12:42 ccl-logbot [n=ccl-logb@setf.clozure.com] has joined #lisp 19:12:42 19:12:42 -!- names: ccl-logbot cmeow stepnem tfb defn bitflip`` Guest81866 addled gonzojive Jabberwock |Soulman| soupdragon Athas grkz bitflip` Xantoz rme Adlai hoeq freiksenet dto1 Dawgmatix_ ehu Sergio` LiamH gruseom marioxcc-AFK potatishandlarn qbg mattrepl puchacz knobo kejsaren sellout ignas legumbre konr stassats` c|mell Alabaman_ alley_cat b4|hraban carlocci morphling cobol000_ tcr beach tsuru ikki RaceCondition kwinz3 grouzen_ bgs100 hugod spilman lichtblau 19:12:42 -!- names: blackened` Zephyrus fiveop Guthur Buganini snearch pr kenjin2201 timor pavelludiq jtza8 HET2 Hun pem daniel_ weirdo Dodek Sumpen dmiles Soulman Edico plutonas` Adamant madsy mrSpec mishoo bitflip xenosoz2 ace4016 djinni` chiiph hicx174 lpolzer_ benny araujo wakeup^ dys Khisanth svaksha myrkraverk kloeri kpreid skeptomai|awa- coyo clog dlowe kom_ Patzy lukjad007 partisan nowhere_man bipt billitch CrazyEddy lnostdal Holcxjo joshe _3b _deepfire 19:12:42 -!- names: spn emma arbscht xinming Modius easyE ASau dto borisc Krystof s0ber dnm_ Foofie koning_r1bot Ralith pjb AntiSpamMeta kuwabara2 lemoinem fihi09 pkhuong mornfall jsnell_ Soulmann ve hdurer specbot G0SUB wgl @slyrus REPLeffect_ Ginei_Morioka sjbach Taggnostr mtd PissedNumlock foom z0d TR2N zbigniew Ri-|away fgtech KatrinaTheLamia schme rsynnott Tristam drwhat foom2 tarbo cataska hohum thijso danderso1 fe[nl]ix kingdon eno Borbus bakkdoor codemonkeyx 19:12:42 -!- names: aking johs rapacity ``Erik rlonstein guenthr pok @Zhivago guaqua peddie joga ironChicken joast ecraven tic froydnj rbancroft erg aja mle tvaalen sykopomp mikezor ud jyujin Orest^bnc prip Intensity jamesstanley Wraithan nasloc__ Raptelan Axioplase_ Aisling sleepydog Stattrav koollman jrockway Ober ianmcorvidae UnwashedMeme frontiers wlr cmatei Jasko2 setheus herbieB cupe rullie kleppari BunzOfSteel emouse yahooooo dostoyev1ky whoppix bdowning 19:12:42 -!- names: frodef derefed anekos kencausey rey_ cods djm cpt_nemo felipe tltstc dalkvist fnordus alexbobp rootzlevel chii Yamazaki-kun blast_hardcheese nuba retupmoca sytse _3b` antifuchs srcerer Demosthenes spoofy bfein clop dcrawford Helheim raison lisppaste spacebat Tordek Spaghettini peterwang antoszka phadthai qeb`away ski bill` newfurniturey PuffTheMagic BrianRice @Xach Fade rotty_ franki^ lharc Legoolas Xof pragma_ krappie scode luis Carnegie 19:12:42 -!- names: rahul madnificent ineiros l_a_m claudia20100115 nicktastic egn Pepe_ boyscared dym yacin guaq j0ni ramus nullman tychoish DrForr housel p_l dfox_ dmm_ ceineke_ 19:12:50 -!- bitflip [n=user@ip98-184-186-177.tu.ok.cox.net] has quit [Read error: 110 (Connection timed out)] 19:12:57 -!- cmeow [i=cmeow@happy.happy.vhost.shellium.org] has quit [Excess Flood] 19:12:57 -!- stepnem [n=stepnem@88.103.132.186] has quit [Excess Flood] 19:12:58 That I don't see anything obviously wrong with it today either. 19:13:08 stepnem [n=stepnem@88.103.132.186] has joined #lisp 19:13:31 billstclair [n=billstcl@unaffiliated/billstclair] has joined #lisp 19:13:32 cmeow [i=cmeow@happy.happy.vhost.shellium.org] has joined #lisp 19:13:53 sykopomp: I think the main loss in having dynamic types is that you need to explicitly say what monad you're in 19:14:19 and of course, if that monad can't be found, you die at run time 19:14:28 does one really need to try haskell to understand those monad things 19:14:32 however, you can use that to your benefit 19:14:35 Guthur: no 19:14:41 Guthur: clojure has monads, too 19:14:52 does one need to understand monads? 19:14:57 you can dynamically search up the stack of monads until you find the monad you want 19:14:57 i more likely to try haskell 19:15:01 stassats`: it's beneficial 19:15:08 stassats` good question 19:15:14 stassats`: it does to state what OOP does to type 19:15:22 lispm [n=joswig@e177157217.adsl.alicedsl.de] has joined #lisp 19:15:27 state transitions become composable 19:15:49 -!- lispm [n=joswig@e177157217.adsl.alicedsl.de] has quit [Remote closed the connection] 19:15:51 or rather patterns of state transition 19:16:03 lispm [n=joswig@e177157217.adsl.alicedsl.de] has joined #lisp 19:16:59 that's a nice description of monads 19:17:07 indeed 19:17:42 rahul: I thought all you needed for monads was first-class functions and closures? 19:17:51 http://intensivesystems.net/tutorials/monads_101.html 19:17:54 and I guess macros to make the syntax a bit more bearable? 19:17:56 -!- stepnem [n=stepnem@88.103.132.186] has quit [Excess Flood] 19:18:02 sykopomp: sure 19:18:08 stepnem [n=stepnem@88.103.132.186] has joined #lisp 19:18:11 sykopomp: same can be said for OOP 19:18:15 sykopomp: Depends on what you mean by "all you need". 19:18:27 all you need for anything is first class functions and closures 19:18:34 the lambda calc is turing complete 19:18:38 all you need is a turing tarpit 19:18:45 Usually, you'll read that all you need for monads is continuations and a mutable cell. 19:18:48 exactly :) 19:19:02 I don't get what this is about closures 19:19:12 Since you then live in ``the mother of all monads'' (: 19:19:22 pkhuong: 'all you need' to have a -decent- implementation without having to jump through to many hoops to get it working. 19:19:31 what's the mutable cell for? 19:19:41 curled up in the fetal position, floating in the warm waters of the womb of the mother of all moads 19:21:18 rahul: and suddenly there's a gigantic space-fetus rearing its head over the horizon, and sarah palin pushes the panic button :\ 19:21:18 quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has joined #lisp 19:21:40 soupdragon: nested monads, iirc. 19:21:49 hmm 19:22:05 I'm thinking about implementing a tiny Lisp. Does a Lisp-2 actually have any advantages over a Lisp-1 (which seems easier to implement) except for the name collision issue? 19:22:18 quotemstr: not really. It's arbitrary. 19:22:35 quotemstr: yes, it's closer to natural languages. 19:22:41 With a Lisp-1, each symbol can have one value slot instead of two, and I don't need FUNCALL. 19:22:43 not monad composition, mind you, but stuff like return [something that internally uses a completely independent monad itself] 19:23:10 This isn't for a large-scale software program. It's a quick interpreter. 19:23:12 quotemstr: you'll have to implement funcall and apply either way. 19:23:16 sykopomp: that's ok, she can only see russia. siberia will get bombed to hell, but the rest of us will be fine 19:23:17 It's really arbitrary. 19:23:30 cools [n=user@CPE000f661aca54-CM001692fae248.cpe.net.cable.rogers.com] has joined #lisp 19:23:34 Thanks. 19:23:35 rahul: siberia always gets the butt end of the deal. 19:23:37 -!- stepnem [n=stepnem@88.103.132.186] has quit [Excess Flood] 19:23:42 quotemstr: there are already a lot of quick interpreters that you can embed in any scale of software program. 19:23:48 stepnem [n=stepnem@88.103.132.186] has joined #lisp 19:23:57 pjb: I could go use Lua, sure. :-) 19:24:02 sykopomp: even when it comes to meteors 19:24:03 -!- Soulman [n=kvirc@154.80-202-254.nextgentel.com] has quit [Read error: 110 (Connection timed out)] 19:24:12 quotemstr: we would rather advise ecl. 19:24:20 wha? 19:24:29 *rahul* beats quotemstr with sykopomp 19:24:49 Isn't ECL a full CL implementation, and pretty big? 19:24:55 "pretty big"? 19:24:59 CL is big. 19:25:00 yeah, it's bigger than nothing 19:25:10 ... let's go shopping 19:25:19 *sykopomp* loves doing (defun foo (foo) (setf foo (make-instance 'foo :foo foo))) 19:25:21 how big is Lua? 19:25:23 what is this about size issues 19:25:34 Yes, pretty big. It must take at least 50 µm²... 19:25:44 does it matter? 19:25:52 -!- bitflip` [n=user@ip98-184-186-177.tu.ok.cox.net] has quit [Success] 19:26:22 soupdragon: common lisp by itself is pretty small compared to a lot of languages :) 19:26:44 doesn't make sense tome 19:27:01 sure it is. Common Lisp doesnt come bundled with an http server :) 19:27:05 doesn't* 19:27:12 or stuff like mysql connectors 19:27:14 Lua is 42 MB, right? 19:27:17 quotemstr: or guile, or tiny scheme etc. 19:27:19 -!- snearch [n=olaf@g225049242.adsl.alicedsl.de] has quit ["Ex-Chat"] 19:27:28 I thought here were laws against bundling software.... 19:27:34 At least in the USA. 19:27:40 or even a threading interface, for that matter. 19:28:11 Guile would be nice, but its license is too restrictive. Tinyscheme looks interesting though. 19:28:12 Thanks. 19:28:12 ECL is under 10 MB when embedded 19:28:19 rahul: 10MB!~ 19:28:25 That's twice the size of my entire distribution 19:28:25 . 19:28:32 quotemstr: and 1/4 the size of Lua! 19:28:41 libecl.so is 1.6M here 19:28:44 Isn't libecl.so a bit larger than 1 meg? 19:28:52 rahul: According to the #lua people, lua is on the order of 150k. 19:28:54 is libecl all you need? 19:29:05 not stripped 19:29:07 quotemstr: that's nothing. My next computer will have at least 6GB of *RAM*! 19:29:14 quotemstr: I see 42 MB installed 19:29:24 and HD will be counted in TBs... 19:29:35 You don't need to ship the compiler with ecl 19:30:00 ecl is pretty neat 19:30:10 I think you also need gmp 19:31:19 oh, no, it is 150k 19:31:29 -!- tfb is now known as tfb|away 19:31:31 anyway, are you really fretting about a couple MB? 19:31:37 -!- madnificent [n=madnific@83.101.62.132] has quit [Read error: 54 (Connection reset by peer)] 19:31:40 that's smaller than A SONG 19:31:51 maybe he's working on a deeply constrained embedded system. :) 19:32:16 madnificent [n=madnific@83.101.62.132] has joined #lisp 19:32:22 balooga [n=00u4440@99.162.211.151] has joined #lisp 19:32:24 Fade: Actually, I *am* code-sized constrained. Otherwise I'd be using a nice fast Javascript JIT compiler. :-) 19:32:48 memory is at a premium in embedded systems 19:32:50 -!- rme [n=rme@pool-70-104-120-122.chi.dsl-w.verizon.net] has left #lisp 19:32:59 a premium like $5 19:33:09 its not cost rahul 19:33:14 most embedded systems have at least 128MB 19:33:27 haw haw. you used "fast" and "javascript" in the same sentence. 19:33:35 heh 19:33:43 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #lisp 19:33:55 Just how constrained is this evironment? 19:33:55 Fade: well, at least it's not slow like lisp! 19:34:03 yeah, well. 19:34:34 rahul: but if you write a serious CL app and the first 42mb (out of 128) goes to the system, you're going to get stuck quite fast. 19:34:47 however, how can you write a serious program in 128mb? 19:35:03 ehu: um, we're talking about 10, not 42 19:35:10 Tinyscheme looks just like what I'm looking for. 19:35:11 Thanks. 19:35:11 quotemstr: tiny scheme is a pretty nice scheme 19:35:12 and possibly even less than 2 19:35:24 The only thing I still have to look at is C++ exception support. 19:35:27 ehu: and yes, serious appications existed in 1990 19:35:36 I need Scheme's equivalent of condition-case to be able to work with them. 19:35:38 quotemstr: support how? 19:35:54 oh, you'll be calling C++ from the scripts 19:36:02 And I need exceptions to propagate out of interpreted stack frames without leaking anything. 19:36:03 Yeah. 19:36:17 you can have the entrypoint wrap the calls in a try/catch that uses a distinctive return value 19:36:21 But maybe I just hack tinyscheme up. 19:36:42 oh, you want the exceptions to go all the way through the script code, too? 19:36:48 Yeah. 19:36:51 Krystof_ [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has joined #lisp 19:36:52 Odin- [n=sbkhh@s121-302.gardur.hi.is] has joined #lisp 19:36:56 wild 19:37:13 quite a feature set youre looking at quotemstr 19:37:14 should have written the whole thing in CL :) 19:37:32 then your scripting language would be the same as the application language 19:37:55 *Fade* chuckles 19:37:58 The last time I looked at actually shipping something written in CL, the binary saved by SBCL was over 30MB. 19:38:03 I do like CL though. 19:38:05 -!- Krystof [n=csr21@84-51-132-95.christ977.adsl.metronet.co.uk] has quit [Read error: 113 (No route to host)] 19:38:10 TBH, I haven't touched Scheme. This should be interesting. 19:38:37 Binaries produced by ecl are smaller 19:39:03 quotemstr: so the biggest possible result is too big? 19:39:19 sbcl is as big as you can get 19:39:21 Dra`vi [n=Draggor@216-80-120-145.alc-bsr1.chi-alc.il.static.cable.rcn.com] has joined #lisp 19:39:30 yeah 19:39:31 way to try to fail 19:39:34 Imagine the 64 bit version 19:39:37 haha 19:39:59 44M + application code :D 19:40:22 -!- gonzojive [n=red@fun.Stanford.EDU] has quit [Client Quit] 19:40:23 rahul: Well, there are alternatives. :-) I just remember being impressed by SBCL's compiler. 19:40:56 quotemstr: yeah, it uses a lot of memory to produce really fast code 19:40:57 just about all common lisps produce smaller images than sbcl. 19:41:03 I can see it now: A McCLIM application, with HUNCHENTOOT support, and the ability to use the Climacs editor... 19:41:06 ecl is at the bottom of the range. 19:41:08 ECL's compiler should suffice for most usages where the big core sizes are bad 19:41:12 nicdev [n=user@dorm-212.subnet-201.amherst.edu] has joined #lisp 19:41:37 quotemstr: if your goal is X, don't try to optimize Y 19:41:58 rahul: It was a different application a few years ago. 19:42:02 and then assume that X is impossible to achieve because Y didn't achieve X 19:42:10 quotemstr: so use ECL for this 19:42:16 it's less than 2 MB 19:43:08 on my system, libecl is 2.2 MB and the whole package (including locales etc.) is under 7MB 19:43:34 -!- cobol000_ [n=r4y@p5496C892.dip.t-dialin.net] has quit [Client Quit] 19:43:49 quotemstr: so the C++ stuff is some legacy code you're extending with an extension language? 19:43:54 I'd say, use Lua, seems like a good fit 19:44:09 i would recommend lua too :) 19:44:09 -!- sleepydog [n=david@64-252-33-33.adsl.snet.net] has quit ["leaving"] 19:44:15 (for legacy code) 19:44:17 Fade: You could say that. It's userspace-threaded, and uses exceptions for "thread" cancelation, among other things. 19:44:18 quotemstr: also, if you need to use C++, ECL is a nice fit 19:44:37 quotemstr: assuming you want to try CL for the task 19:44:37 I agree on the ECL front, fwiw. 19:44:40 retroj [n=retroj@pdpc/supporter/active/retroj] has joined #lisp 19:44:55 but tiny scheme is small; there's truth in advertising there. 19:44:59 Elephant does not work properly under the default clbuild configuration due to it's UFFI (not ... 19:45:02 *p_l* had a VC2008-compatible, C++ capable ECL build once 19:45:16 ECL does look nice, but my size budget is still pretty tight. It's not RAM so much as image size that's the problem, and 2M is getting tight. 19:45:21 p_l: I'd guess this task has been done more often with Lua than with C++, so it might be documented. 19:45:34 what is this system deployed on? 19:45:46 p_l: Also, Lua is definitively more friendly to any other workers if there are any. 19:45:48 tcr: I probably miss some stuff regarding exact objective, so ... :) 19:46:02 Lua is nice. 19:46:06 Fade: Regular machines, but in a heavily bandwidth-constrained environment (thus the image size restrictions) 19:46:49 don't underestimate the bandwidth of fedex+usbdrive, if you can survive the latency. :) 19:46:50 well, I don't know enough about C++ or the targeted runtime to give v. good answer 19:47:29 p_l: For example, are you sure you can integrate c++ exceptions into ecl's condition system? 19:47:31 Fade: :-) 19:47:40 -!- morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has quit [Remote closed the connection] 19:47:53 Fade: or in case of higher badnwidth/lower latency (depends on location), a business jet and a Sun X4550 19:47:55 Gotta live tinyscheme's directness: #define caar(p) car(car(p)) 19:48:03 s/live/love/ 19:48:11 live, too 19:48:19 morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has joined #lisp 19:48:47 what about sbcl? 19:48:49 sbcl has (defun car (cons) (car cons)) 19:48:50 Elephant should not be in clbuild, as it does not work. Stupid pepole like me are fooled in to think that it might work. 19:48:59 (defun car (x) (car x)) 19:49:05 heh 19:49:20 use of uffi in a system is a strike against the system, imo 19:49:27 have you looked at rucksack? 19:49:30 actually, it's named list in sbcl, and rightly so 19:50:05 I find rplacd even more magical 19:50:14 tcr: well, I can define a condition hierarchy representing known C++ exceptions and use a macro for wrapping C++ code 19:50:25 because the vop is called %rplacd, but %rplacd is defined by rplacd again! 19:50:40 Fade: I have not looked at it. Can you recomend it? 19:50:59 I've looked at it, but not used it 19:51:05 I've only played with it, but one of the programmers here who I respect has used it for real work and he recommends it. 19:51:06 rucksack seems pretty good to me 19:51:12 gabnet [n=gabnet@226.23.67-86.rev.gaoland.net] has joined #lisp 19:51:30 tcr: I just don't know enough of C++ runtime to know if I can catch arbitrary exceptions 19:51:34 i see there's a source transform from rplacd to (setf (cdr ...)) 19:51:37 it's written by Arthur Lemmens 19:52:02 it has the advantage of being lisp all the way down. 19:52:15 until you get to the turtles, of course 19:52:29 then it becomes turtles floating in a sea of parens 19:52:37 I don't beleve in the turtels. 19:52:45 I thought it was a deep blue void 19:52:50 rucksack will make you believe 19:52:54 I think it is lisp all the way down 19:52:57 qbg: that's what was there before lisp 19:52:59 Even sbcl is written in lisp 19:53:08 Beetny [n=Beetny@ppp121-45-54-127.lns20.adl2.internode.on.net] has joined #lisp 19:53:08 lisp created the turtles 19:54:14 -!- morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has quit [Remote closed the connection] 19:54:31 morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has joined #lisp 19:55:18 Is it me, or is tinyscheme almost entirely undocumented? 19:55:34 it has source code 19:55:44 scheme people believe the source code is the documentation. 19:56:20 I think I'll go with sqlite 19:57:01 an do the rows -> objects maunaly 19:57:58 montel [n=montel@pdpc/supporter/student/montel] has joined #lisp 19:58:04 rme [n=rme@pool-70-104-120-122.chi.dsl-w.verizon.net] has joined #lisp 19:58:30 -!- morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has quit [Remote closed the connection] 19:58:50 -!- montel [n=montel@pdpc/supporter/student/montel] has left #lisp 19:59:05 heh. After exams I'm going to try my hand at compiler writing and see if I can make a version of SBCL without any C ;-) 19:59:39 will it run without an operating system? 19:59:58 stassats`: only if you use the code written for low-level runtime to implement necessary OS parts 20:00:10 morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has joined #lisp 20:00:28 But the tools will include generating code for all privilege levels etc. 20:00:58 one of the early milestones is after all a macro assembler for MMIX 20:01:08 (x86/x86-64 will go there too) 20:01:52 another milestone will be deployment system 20:02:08 MMIX? 20:02:16 why would you target MMIX? 20:02:23 (This project was origin of my "list of stuff to drop" cleaner) 20:02:33 a hypothetical lisp on a hypothetical machine. 20:02:35 Fade: I'm planning on building a FPGA implementation :P 20:03:10 target axp :) 20:03:12 and if everything goes well, build a few workstations 20:03:27 Fade: Alpha will be included given time and docs 20:03:38 at least for alpha I've got physical machine :) 20:03:46 nyef has a partially completed alpha emulator. 20:03:57 esoteric language for esoteric architectures ? 20:03:58 (an EV45, though. Plus I've got emulated EV68) 20:04:17 axp is a nice architecture. 20:04:41 if I was of a more hardware focused bent, I'd consider starting an opencores.org project to resurrect it. 20:04:59 somebody did, but it appears not to have any actual progress. 20:05:04 Dawgmatix_: nah, MMIX goes first because it has very small ISA. x86 goes next because of ease of testing some of the goals and the fact I've got an XML file with definitions of all opcodes. Alpha.. is Alpha, and that's enough :D 20:05:12 -!- morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has quit [Remote closed the connection] 20:05:36 what's this about an emulated ev68? 20:05:40 Fade: Parts of what I'm going to make for MMIX should be reusable by Alpha project, as MMIX was rather Alpha-based 20:05:59 :) 20:06:02 Fade: I've got alpha-stage commercial ES40 emulator for linux 20:06:14 works stable, but takes tons of resources 20:06:17 -!- addled [n=adl@77.208.184.202] has quit [Read error: 110 (Connection timed out)] 20:06:27 does the alpha consortium still produce alpha processors? 20:06:38 (recommended config is 5 cpu and 4G ram, iirc) 20:07:06 Fade: I don't think so, though you might be able to get some spares for EV68 and EV7z 20:07:17 morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has joined #lisp 20:07:35 dunno what happened to Samsung-made alphas 20:07:43 well, HP is on the hook to support it for quite awhile yet, so they must have spares. my understanding is that they're only available to people with wildfire support contracts, though. 20:08:18 still, Alpha's death is probably one of the most idiotic decisions I had seen 20:08:27 I'd agree with that. 20:08:38 the stuff couldn't have been bought by a worse suitor. 20:09:04 even compaq wasn't as bad as HP. :P 20:09:33 anyhow, i thought MMIX was more influenced by MIPS. 20:09:42 Fade: Alpha's death was engineered by Compaq, though. HP didn't have interest in bringing up a competitor back after it was killed by original owner 20:10:01 I haven't turned on my 3000/600 in years. 20:10:10 Maybe I will one of these days. 20:10:13 Fade: MIPS and Alpha are named as main sources of inspiration, and engineers from both projects cooperated in making MMIX 20:10:40 Fade: Knuth kinda pulled stops when making this one ;-) 20:10:44 Is it ok to implement MMIX, in terms of intellectual property 20:10:49 I've been looking for a wildfire machine for some time, but the people who have them don't let them go 20:10:54 I'd imagine it would never be an issue 20:10:57 just curious 20:11:04 Guthur: yes, it's completely allowed 20:11:24 ok, thanks p_l 20:11:28 Fade: I might get a chance at grabbing a DS10 (the 3U one) 20:11:49 And well... I'll have to weasel around my old job regarding what they are doing with their EV7 servers 20:12:08 we had two EV7, and I think two EV68 20:12:10 sweet 20:12:33 one ES40 somewhere, one GS160, two GS1280 20:13:05 I was at legato before EMC bought them; we had a couple of wildfire machines in the lab. 20:13:06 in earlier days the whole company was mostly backed by Alphas 20:13:26 beautiful hardware 20:13:51 -!- gabnet [n=gabnet@226.23.67-86.rev.gaoland.net] has quit [Read error: 110 (Connection timed out)] 20:13:56 Anything non-x86 is beautiful hardware. 20:14:06 -!- Jasko2 [n=tjasko@c-174-59-195-12.hsd1.pa.comcast.net] has quit [Client Quit] 20:14:18 i don't mind the amd64 stuff, but it's like a baby alpha. 20:14:22 Fade: personally, I've got an AS255 @233 MHz. But I don't have parts for it (lacks memory and wide scsi) 20:14:35 Fade: amd64 is funnier when you get a non-PC one :) 20:14:48 I have a little multia that I haven't been able to boot in quite awhile. 20:15:23 well, mine boots as long as I don't knock the fan from the cpu (it's lying on top of radiator without any mount) 20:15:36 hah 20:15:57 the multia was a gorgeous little workstation for its time. 20:16:05 Jasko [n=tjasko@c-174-59-195-12.hsd1.pa.comcast.net] has joined #lisp 20:16:08 ah well. i guess we're srsly off topic. 20:16:24 gabnet [n=gabnet@152.232.91-79.rev.gaoland.net] has joined #lisp 20:19:06 you guys should start a retro HW channel hehe 20:21:14 prxq [n=mommer@f051178118.adsl.alicedsl.de] has joined #lisp 20:22:23 saikatc [n=saikatc@c-98-210-192-23.hsd1.ca.comcast.net] has joined #lisp 20:24:09 -!- morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has quit [Remote closed the connection] 20:24:39 leo2007 [n=leo@cpc2-cmbg15-2-0-cust694.5-4.cable.virginmedia.com] has joined #lisp 20:25:32 I wonder if anyone here has any experience in using gsll with ccl on osx x86? 20:25:38 unicode [n=user@95.214.58.214] has joined #lisp 20:25:40 morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has joined #lisp 20:26:16 gibsonf1 [n=user@c-76-126-33-113.hsd1.ca.comcast.net] has joined #lisp 20:26:42 -!- benny [n=benny@i577A83ED.versanet.de] has quit [Read error: 110 (Connection timed out)] 20:26:58 -!- gibsonf1 [n=user@c-76-126-33-113.hsd1.ca.comcast.net] has quit [Client Quit] 20:27:49 Guthur: or we could start a project for a LispM ;-) 20:28:06 -!- Zephyrus [n=emanuele@unaffiliated/zephyrus] has quit [Client Quit] 20:28:06 I'd actually be interested in that. 20:28:07 p_l: and call it movitz? 20:28:14 *p_l* ponders where he left his OpenGenera cd 20:28:14 nyef has already done work on an sbclOS 20:28:18 ehu: no, Ivory :) 20:29:01 balooga1 [n=00u4440@147.21.16.3] has joined #lisp 20:29:14 'course it'd probably make more sense to build up a nice system abstraction to talk to a linux kernel, to take advantage of all those drivers. 20:29:15 Is it possible to set heap size when I'd like to use save-lisp-and-die? 20:29:33 -!- ehu [i=52aa21ad@gateway/web/freenode/x-fiynyzqclamcxzha] has left #lisp 20:31:11 Fade: or implement L4/SBCL, then we can run Linux as another process while experimenting with OS design in Lisp 20:31:22 where is sbclos 20:31:32 Zephyrus [n=emanuele@unaffiliated/zephyrus] has joined #lisp 20:31:36 leo2007: i don't know if nyef published the code. 20:33:34 what's wrong with movitz? 20:34:01 I mean, if you're not interested in specifically hacking sbcl's internals 20:34:16 quidnunc [n=user@bas16-montreal02-1242357571.dsl.bell.ca] has joined #lisp 20:34:29 mrSpec: that doesn't make any sense 20:34:33 -!- retroj [n=retroj@pdpc/supporter/active/retroj] has quit [Read error: 60 (Operation timed out)] 20:34:33 mrSpec: what heap? 20:34:34 rahul: I plan on interesting virtual memory system and I'm not sure if Movitz would fit 20:34:35 well, it isn't ANSI conformant, and it has a very restricted heap. 20:34:40 rahul: dynamic-space 20:34:49 mrSpec: heap exists at run time, not on disk 20:34:51 -!- quidnunc [n=user@bas16-montreal02-1242357571.dsl.bell.ca] has left #lisp 20:35:06 rahul: I got "Heap exhausted during allocation: 427503616 bytes available, 500000008 requested" 20:35:08 knobo` [n=user@ti0073a340-2215.bb.online.no] has joined #lisp 20:35:09 p_l: which is, by definition, that which is not in the image 20:35:28 mrSpec: you need to set that at startup of sbcl 20:35:31 rahul: yes, the question was about specifying the defaults for it 20:35:32 ok, 20:35:41 --dynamic-space-size Size of reserved dynamic space in megabytes. 20:35:46 mrSpec: that would be :save-runtime-options. 20:36:21 -!- freiksenet [n=freiksen@hoasnet-fe29dd00-202.dhcp.inet.fi] has quit [Remote closed the connection] 20:36:28 also, confined to x86 20:36:32 *Fade* shrugs 20:37:11 so when I'll use save-lisp-and-die then, my .exe program will reserve memory instead of this default value? 20:37:18 Fade: what do you think of OS-global GC with process separation? (which wasn't in genera) 20:37:54 well, i think process separation is important. 20:37:56 -!- morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has quit [Remote closed the connection] 20:38:10 morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has joined #lisp 20:38:26 especially w/out the elaborate memory management hardware provided by the lispm 20:38:40 mathrick [n=mathrick@dynamic-78-8-149-205.ssp.dialog.net.pl] has joined #lisp 20:38:58 I was thinking of adding support for multiple "cores" that could be shared between applications + hierarchical VM 20:39:39 the lispm provided a hierachial VM in a way 20:40:06 letf actually created a dynamically scoped memory mapping for that cell 20:40:17 xan-afk [n=xan@cs78225040.pp.htv.fi] has joined #lisp 20:40:30 Joreji [n=thomas@134.61.80.139] has joined #lisp 20:40:43 although being single-threaded, the implementation probably wasn't as exciting as it would be now :) 20:40:45 building mandatory access controls in at an early stage would be good. 20:40:49 -!- balooga1 [n=00u4440@147.21.16.3] has left #lisp 20:41:10 mrSpec: or you can specify it when you launch the .exe 20:41:39 rahul: ok, thanks 20:42:13 but frankly, i'm not educated enough on GC principles to talk about the GC/process interaction 20:42:35 i think the boys at Thinking Machines had the right idea. 20:43:20 I really like the way data driven parallelism works out /w the xapping 20:46:51 varjag [n=eugene@226.119.202.84.customer.cdi.no] has joined #lisp 20:47:27 -!- kenjin2201 [n=kenjin@220.120.43.80] has quit [Read error: 110 (Connection timed out)] 20:47:35 -!- balooga [n=00u4440@99.162.211.151] has quit [Read error: 110 (Connection timed out)] 20:48:13 -!- cools [n=user@CPE000f661aca54-CM001692fae248.cpe.net.cable.rogers.com] has quit [Read error: 113 (No route to host)] 20:49:58 -!- tsuru [n=user@c-174-50-217-160.hsd1.tn.comcast.net] has quit [Remote closed the connection] 20:50:42 -!- knobo [n=user@ti0073a340-0817.bb.online.no] has quit [Read error: 110 (Connection timed out)] 20:52:01 retroj [n=retroj@pdpc/supporter/active/retroj] has joined #lisp 20:53:03 -!- Krystof_ is now known as Krystof 20:55:08 gemelen [n=shelta@shpd-78-36-164-142.static.vologda.ru] has joined #lisp 20:58:15 felideon [n=felideon@adsl-074-186-235-232.sip.bct.bellsouth.net] has joined #lisp 21:00:06 -!- lispm [n=joswig@e177157217.adsl.alicedsl.de] has quit [Remote closed the connection] 21:01:17 <<"readme" type of information at the beginning of the file>> 21:01:51 -!- grkz [n=qsvans@c-1dfce255.010-54-6f72652.cust.bredbandsbolaget.se] has left #lisp 21:10:15 re-l [n=re-l@c-98-197-118-188.hsd1.tx.comcast.net] has joined #lisp 21:12:17 -!- quotemstr [n=quotemst@cpe-67-247-228-249.buffalo.res.rr.com] has left #lisp 21:15:43 amnesiac [n=amnesiac@p3m/member/Amnesiac] has joined #lisp 21:18:01 -!- knobo` [n=user@ti0073a340-2215.bb.online.no] has quit [Read error: 110 (Connection timed out)] 21:20:03 -!- tfb|away is now known as tfb 21:23:34 drewc [n=drewc@89.16.166.162] has joined #lisp 21:30:30 -!- Odin- [n=sbkhh@s121-302.gardur.hi.is] has quit [] 21:34:01 cools [n=user@CPE000f661aca54-CM001692fae248.cpe.net.cable.rogers.com] has joined #lisp 21:35:07 is it possible to implement/emulate Arc in CL using Macros? 21:35:36 RaceCondition: drewc did that. 21:35:50 -!- spilman [n=spilman@ARennes-252-1-53-213.w83-195.abo.wanadoo.fr] has quit ["Quitte"] 21:36:12 Xach: i didn't use macro, i wrote an arc interpreter 21:36:21 macros* 21:36:21 but it's not possible with macros? 21:36:25 http://arclanguage.org/item?id=795 :) 21:36:39 drewc: ah 21:37:01 Xach: I did, however, steal the reader etc... 21:37:03 RaceCondition: I don't think the read syntax is compatible. 21:37:48 Xach: but it's not possible to hack into the parser of CL? 21:37:50 in fact, my implementation was significantly simpler than pg's, as i already had the puns on NIL and didn't have to special case them everywhere like in the arc code 21:38:13 i only had to add tail recursion and continuations, which is comparitively easy, especially in an interpreter. 21:38:18 RaceCondition: It is, but some things are deeply hardwired, like the meaning of : when processing symbols. 21:38:32 oh, OK, I thought even that was hackable 21:38:39 RaceCondition: it is, but why bother? 21:38:45 drewc: Arc's default implemention has no tail-recursion? 21:38:58 drewc: Is it? 21:39:35 Xach: yeah, well, i suppose easy is the wrong word... 21:39:58 oh wait... you mean changing the meaning of : 21:40:10 drewc: but why did you write that parser/nterpreter in the first place? just for fun? 21:40:13 yes, iirc arc uses it for composition or something like that. 21:40:23 (foo:bar:baz 42) 21:40:28 RaceCondition: mostly to try and figure out WTF graham actually did 21:40:29 Arc seems refreshing though (as funny as it might sound for a total Lisp newb) 21:40:44 drewc: have you tried making it into a compiler? 21:40:45 -!- Hun [n=hun@p50993726.dip0.t-ipconnect.de] has quit [Read error: 54 (Connection reset by peer)] 21:41:39 p_l: i did a compiler first, but it was a little too easy and boring.. 21:41:46 lol 21:41:47 -!- sellout [n=greg@c-66-31-201-117.hsd1.ma.comcast.net] has quit [] 21:41:55 p_l: i used arnesi for both lisp-1 and continuations, and relied on SBCL's TCO 21:42:19 I think the CL world could use a nice compiler writing guide (actually, various tutorials on such "advanced" stuff) 21:42:30 RaceCondition: then use arc! It's certainly a step up from python, and when you want a real lisp you can always come back to CL ;) 21:42:49 p_l: drewc's guide to compiler writing in CL : 21:42:52 what's wrong with arc? other than lisp already existing 21:42:56 clhs compile 21:43:12 damnit .. where are my bots! :) 21:43:20 drewc: well, thank you for a sincere recommendation :P but I'll stick to CL for now 21:43:28 or "stick with"? 21:44:32 drewc: ah, I know about (compile ...) I meant a guide on how to approach that instead of "stumbling around writing macros/interpreters" 21:44:33 soupdragon: Nothing, on its own. If you're used to programming in CL, you would miss arrays, an object system, a programmable reader, packages, conditions, multiple mature implementations, rich lambda lists, declarations, and probably more. 21:45:31 Xach: and if you were used to scheme you'd miss sane design choices. 21:46:01 knobo [n=user@ti0073a340-2215.bb.online.no] has joined #lisp 21:46:04 (really pg... defmacro in a single namespace lisp-1?) 21:46:22 For a very tired mind; what again does Cumul% say in sprof? 21:47:04 Xach: same thing goes for Clojure? 21:47:20 iirc, time spent inside that functions including time spent in other functions called by that functions 21:47:26 by that function 21:47:45 felideon: clojure at least has a full set of data structures 21:47:45 -!- Zephyrus [n=emanuele@unaffiliated/zephyrus] has quit [Client Quit] 21:47:58 clojure is an acceptable lisp 21:48:06 I see 21:48:07 felideon: and OOP, although it's optimized for the uncommon case syntactically 21:48:30 but it's a lisp-1, sadly :( 21:48:43 so it will forever be relegated to theory for me 21:48:43 well, i'm sure someone has written a CLOS for both arc and clojure by now. 21:48:57 but Clojure's OOP is thanks to the Java libraries, or the language itself has an object system? 21:49:06 felideon: the language itself 21:49:14 java libraries don't provide OOP.... 21:49:23 well, there's CLOS for Scheme, so porting shouldn't be that hard... there's also a CLOS port to Java 21:49:35 what is this about 'acceptable lisp'? 21:49:38 (but CLOS in Java is rather unusable) 21:49:45 I remember seeing some blog posts about it 21:49:47 p_l: I was gonna say 21:49:52 but I thought it was just a joke 21:49:53 felideon: I don't think so. 21:50:01 -!- gabnet [n=gabnet@152.232.91-79.rev.gaoland.net] has quit [Client Quit] 21:50:11 felideon: Rich Hickey and Paul Graham seem worlds apart. 21:50:21 yeah 21:50:32 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Remote closed the connection] 21:50:46 rich being on the world that includes this planet 21:50:48 ruediger [n=quassel@188-23-180-105.adsl.highway.telekom.at] has joined #lisp 21:50:59 haha 21:51:16 arc is released as a tar file named arcN.tar that is replaced in-place for minor changes. the forum is an unmaintained install of the news.arc software that gets about 1 post per day. 21:51:18 I think pg raytraced his own world and went into it 21:51:28 what to think about this post? http://www.oreillynet.com/mac/blog/2006/05/emacs_est_mort_vive_le_textmat_1.html 21:51:36 I mean "think of" 21:51:57 litherp2 [n=piratman@ool-182ff1c9.dyn.optonline.net] has joined #lisp 21:52:02 RaceCondition: are you asking us what you should think? 21:52:18 drewc: I'm asking your opinion regarding the opinions expressed in that post 21:52:31 maybe someone happens to have read it 21:52:47 varjagg [n=eugene@226.119.202.84.customer.cdi.no] has joined #lisp 21:53:53 the guy is a moron 21:54:00 that's what I thought 21:54:02 he thinks that exiting his editor is his primary goal 21:54:08 judging by the title, i don't want to read it 21:54:23 if he likes his editor, why the hell is he so obsessed with how easy it is to make it go away? 21:54:35 lol 21:54:45 "Lisp is just not well-suited to the task of munging text. And what do you to all day in a text editor?" Maybe we should introduce him to Xah Lee :) 21:54:49 what about the part where he talks about the context-sensitivity of kb shortcuts in textmate and not in Emacs? 21:54:52 it's easy, just shut your eyes 21:55:00 how come lisp gets a bad reputation amoungst a lot of beginners unlike stuff like python? 21:55:02 stassats`: or gouge them out 21:55:02 pr_ [n=pr@p579CA2F6.dip.t-dialin.net] has joined #lisp 21:55:09 RaceCondition: I'd call it "Mac(fag) propaganda". As for keybindings - you can always map them. Scripts? Elisp is much more powerful, but still allows you to call external code (sometimes not so external - there are Python and Ruby bridges). The only big change would be if you added an Acme-style interface.. 21:55:13 easyE: here? 21:55:21 soupdragon: because beginners are not in a position to be able to judge? 21:55:31 like in that article it says 'outdated syntax' and when I suggested to someone they could use lisp to make a website they were like 'I'll pretend you didn't say that' 21:55:31 soupdragon: that's why they're beginners, after all. 21:55:40 -!- Jabberwock [n=jens@port-12970.pppoe.wtnet.de] has quit [Read error: 110 (Connection timed out)] 21:55:49 antifuchs: you need to reply to Xach's reply to your comment to his post about logical pathnames :) 21:55:56 -!- cools [n=user@CPE000f661aca54-CM001692fae248.cpe.net.cable.rogers.com] has quit [Read error: 113 (No route to host)] 21:56:02 soupdragon: because they think of dates instead of actual features 21:56:06 p_l: how easy it is to make emacs kb commands context sensitive? 21:56:08 -!- varjag [n=eugene@226.119.202.84.customer.cdi.no] has quit [Read error: 60 (Operation timed out)] 21:56:14 RaceCondition: how are they not? 21:56:21 any company use cl to power their website? 21:56:24 p_l: so that command X is one thing in one context and another thing in another context 21:56:28 leo2007: orbitz 21:56:29 leo2007: yes 21:56:36 leo2007: and wigflip! 21:56:38 leo2007: http://postabon.com/ 21:56:43 http://tech.coop 21:56:44 RaceCondition: they are already sensitive 21:56:45 RaceCondition: that's trivial and is used all the time 21:56:58 I wonder where it comes from 21:56:59 oh, OK 21:57:04 RaceCondition: they are already context-sensitive 21:57:06 soupdragon: rumor 21:57:12 yeah I guess so 21:57:27 soupdragon: why is britney spears popular and the Allman Brothers looked upon as outdated? 21:57:47 people like what they're told to like by people who seem glamorous 21:57:47 there are global and local keybindings in Emacs 21:58:07 RaceCondition: check C-h b, it will show you first keybindings set by current modes (let's call them "context") and then global ones 21:58:15 rahul, weird to see it happen even in technical contexts though 21:58:23 soupdragon: because? 21:58:24 soupdragon: people are people 21:58:26 RaceCondition: also, Emacs was designed for Space Cadet/Knight keyboard layout 21:58:30 p_l: I mean, context as in "where in the your source code you are at the moment" 21:58:39 -!- Xach has set mode -o Xach 21:58:42 RaceCondition: that's possible too 21:58:43 Any idea what common lisp libs they use for those sites? 21:58:48 but do you really need this? 21:58:53 RaceCondition: that depends on the mode - it's not that hard to make context-sensitive mode 21:58:56 -!- Beetny [n=Beetny@ppp121-45-54-127.lns20.adl2.internode.on.net] has quit [Read error: 104 (Connection reset by peer)] 21:58:57 I don't know just seems like technical people would make a stronger effort to be rational about objective things but I guess it's not the case :p 21:58:58 "I love my new space cadet keyboard, but I hate having to type quadruple-bucky left bracket to get a lowercase q" 21:58:59 LiamH: hi 21:59:09 leo2007: http://postabon.com/what-lisp-is-this-running 21:59:15 -!- Joreji [n=thomas@134.61.80.139] has quit [Read error: 60 (Operation timed out)] 21:59:21 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 21:59:38 soupdragon: there are people who use technical things and there are people who think analytically 22:00:08 soupdragon: reminds me of http://www.xach.com/naggum/articles/3231686262094385@naggum.net.html a bit. 22:00:10 leo2007: tech.coop is a cliki, i've got web apps running for a few organisations that run UCW... maybe 80% of the web work i've done has been UCW related. 22:00:12 soupdragon: a 747 pilot doesn't need to figure out whether airbus or boeing are better. he is told to fly a 747. 22:00:13 so Hunchentoot is used for the http server, what about libs for developing web apps? 22:00:31 ucw? 22:00:49 leo2007: weblocks 22:01:03 http://aulapolska.pl/ for example 22:01:06 drewc: can you invite minion? 22:01:13 rahul: but his experiences with different planes will shape the choices later (feedback is quite important) 22:01:18 ahhh.. are we +i? 22:01:27 drewc: ? 22:01:43 or is minion just AWOL? 22:01:58 leo2007: and http://www.thanandar.de/ 22:02:03 #lisp(+Rcn) <--- I think he is just AWOL 22:02:18 drewc: I'm not sure if we still are, but Xach set the mode to +R yesterday (or two days ago) 22:02:24 because of some stupid flooding attack 22:02:26 drewc: the other 20% has been non-Lisp? 22:02:40 Ok seems like we are, drewc: +R requires registered nicks 22:02:46 felideon: no, non UCW 22:02:48 p_l: no, his job is his job and he will rationalize why his tools are the best out there because he has to use them 22:02:52 maybe we should drop it again now? I find it rude anyway 22:02:55 drewc: oh ok 22:03:25 felideon: i have not worked on an application that didn't involve lisp in some way in almost 6 years. 22:03:28 leo2007: i pretty much use hunchentoot directly. 22:03:42 drewc: lucky you! 22:04:20 felideon: indeed... more importantly, i've not had to touch Java much at all! :D 22:04:32 davazp [n=user@205.Red-83-46-0.dynamicIP.rima-tde.net] has joined #lisp 22:04:36 rahul: actually, he will fly, but he might give his opinion during surveys or for internal use regarding various tips&tricks, as well as he might be required to state his opinion by higher ups during investigations 22:04:41 -!- ChanServ has set mode +o drewc 22:04:54 p_l: depends on if he's an analytical thinker or not 22:05:04 p_l: most people aren't 22:05:19 -!- drewc has set mode -R 22:05:48 rahul: when you get 1k hours, you start to notice stuff anyway ;-) 22:05:50 they'll just go "dooood, I can descrabmble CSS in 5 lines of perl. Lisp suxxors, man!" 22:06:11 BTW, what does hunchentoot mean? 22:06:22 That naggum guy writes very well 22:06:29 soupdragon: wrote :( 22:06:31 leo2007: it is a reference to a zappa work 22:06:47 *leo2007* is checking out weblocks and impressed by its website. 22:06:54 _JFT_ [n=_JFT_@modemcable204.87-177-173.mc.videotron.ca] has joined #lisp 22:06:55 hunchentoot names a spider, i think 22:07:08 -!- pr [n=pr@unaffiliated/pr] has quit [Read error: 101 (Network is unreachable)] 22:07:19 i see ;) 22:07:21 -!- lisppaste [n=lisppast@common-lisp.net] has quit [Remote closed the connection] 22:07:21 -!- specbot [n=specbot@common-lisp.net] has quit [Remote closed the connection] 22:07:32 http://wiki.killuglyradio.com/index.php/Hunchentoot 22:07:34 leo2007: impressions are deceiving! 22:07:48 leo2007: not that I've ever used weblocks of course 22:08:53 I found weblocks interesting, but I couldn't wrap my mind around it 22:09:00 weblocks is not so bad... if UCW didn't exist i'd probably use it. 22:09:28 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:09:32 however, the CPS transformation makes for bloated and hard to debug code. 22:10:18 Edward [n=Ed@AAubervilliers-154-1-69-119.w81-249.abo.wanadoo.fr] has joined #lisp 22:12:42 drewc: that's true 22:13:12 doesn't UCW use its own flavour of CPS? 22:13:18 -!- fiveop [n=fiveop@g229076065.adsl.alicedsl.de] has quit ["humhum"] 22:13:34 -!- tfb is now known as tfb|away 22:13:48 -!- tfb|away [n=tfb@restormel.cley.com] has quit ["sleeping"] 22:14:03 mathrick: No, UCW includes an interpreter for a (large) subset of common lisp + call/cc 22:14:58 it doesn't transform to CPS, it walks the source code to a data structure and interprets that... continuations are easy to implement when you control the stack. 22:15:02 drewc: does it actually interpret it at the runtime, or does it compile down to CL? 22:15:35 it interprets at runtime 22:15:42 why doesn't it use conditions instead of continuations? 22:15:52 doesn't it cause a huge perf hit? 22:15:58 oh okay 22:16:00 soupdragon: æh? 22:16:15 mathrick: that depends on how you define performance hit. 22:16:22 CPS? 22:16:42 lisppaste [n=lisppast@common-lisp.net] has joined #lisp 22:16:44 -!- pr_ is now known as pr 22:16:50 erjag [n=eugene@226.119.202.84.customer.cdi.no] has joined #lisp 22:16:57 drewc: things go slower :) 22:17:26 -!- _JFT_ [n=_JFT_@modemcable204.87-177-173.mc.videotron.ca] has quit [] 22:17:31 I dunno how else you could define that 22:17:47 i know, but where when and how... 22:18:04 fractalis [n=user@cpe-98-27-191-210.neo.res.rr.com] has joined #lisp 22:18:06 first off, if the code in your continuation is your bottleneck, you've done something wrong. 22:18:10 leo2007: Continuation-passing style 22:18:21 minion [n=minion@common-lisp.net] has joined #lisp 22:18:27 specbot [n=specbot@common-lisp.net] has joined #lisp 22:18:41 i spend 1000% more time reading and writing from sockets then i do inside a ucw action. 22:18:46 (in general) 22:18:53 drewc: presumably, but don't you need to interpret everything to be able to do continuations? 22:19:12 I see. I seem to recall watching a video on that. 22:19:25 mathrick: what's everything? 90% of my 'actions are probably less than 3 lines of code. 22:19:29 leo2007: buh? They make videos on *CPS* now? 22:19:32 youngsters... 22:19:42 drewc: thor awaits your login 22:19:47 drewc: the non-actions code I mean 22:19:49 mathrick: marco did a UCW video some 4 years ago 22:19:55 _icecube_ [n=icecube@pd956be5d.dip0.t-ipconnect.de] has joined #lisp 22:20:14 any take on lisp-on-lines? 22:20:17 mathrick: why would you transform non-actions? If you don't need to reify a continuation, why transform the code? 22:20:25 leo2007: best framework ever! 22:20:38 leo2007: drewc wrote it :) 22:20:38 minion: welcome back! 22:20:43 leo2007: I'm learning UCW just so that I can get to use lisp on lines eventually :) 22:20:43 -!- xenosoz2 [n=xenosoz@pe.snu.ac.kr] has quit [Read error: 110 (Connection timed out)] 22:20:44 thanks! 22:20:59 xenosoz2 [n=xenosoz@pe.snu.ac.kr] has joined #lisp 22:21:17 Fade is apparently doing something in ucw/lol/rofl that is working out 22:21:24 drewc: really? 22:21:27 wgl: sweet 22:21:35 drewc: no wonder her lurks in the UCW so much. 22:21:44 drewc: but you can't do continuations across the boundaries of what's interpreted, correct? 22:21:54 drewc: how does dwim.hu fit with UCW? I've read the project page a couple of times, but I can't tell exactly what it is 22:22:15 felideon: dwim.hu is very similar to ucw+lol+rofl 22:22:22 felideon: it's WUI, it has nothing to do with UCW as such 22:22:26 i'd say it's a lot more involved and magical 22:22:33 WUI was UCW 22:22:49 the current ucw code and WUI share a common ancestor 22:22:51 -!- ikki [n=ikki@189.139.217.33] has quit [Read error: 60 (Operation timed out)] 22:23:43 drewc: i can't even open its webpage :( 22:23:47 really? I was sure it was independent 22:24:40 -!- konr [n=user@189.98.61.161] has quit [Read error: 104 (Connection reset by peer)] 22:26:40 mathrick: attila had a fork of ucw_dev called ucw_ajax. Macro eventually gave ucw to Attila, and i moved my ucw_dev code to ucw_ajax. Attilla gave UCW to me, i took my hybrid ucw and released ucw-core. Attila took the ucw_ajax code and morphed it into WUI... in a nutshell. 22:27:04 leo2007: Hello 22:27:37 Macro? 22:27:57 LiamH: hi, I just joined gsll ;) 22:28:27 drewc: is LoL stable or still in development? 22:28:35 all lispers named Marco eventually get called Macro 22:28:48 drewc: isn't rofl part of lol? 22:29:04 leo2007: are you this leo? http://groups.google.com/group/comp.lang.lisp/msg/a812d158fcfcce70 22:29:08 felideon: not really 22:29:26 felideon: i think rofl may depend on lol, but it doesn't actually have to. 22:29:42 LiamH: yes 22:30:21 leo2007: it's both. I do not break interfaces and backwards compatbility, and there is an LoL app that has been in production for almost 4 years now. 22:30:38 huh 22:30:43 -!- morphling [n=stefan@gssn-5f755649.pool.mediaWays.net] has quit [Remote closed the connection] 22:30:44 leo2007: I just cross-posted your bug on the mailing list. I happened to just notice it myself this morning; I don't run CCL that much so I don't know what the origin is. 22:31:13 my generalized sequences support is incomplete. No write-sequence for me 22:31:58 LiamH: how can I provide more debug info for the problem I am seeing? 22:32:49 leo2007: I'm not sure more is needed. 22:33:17 -!- varjagg [n=eugene@226.119.202.84.customer.cdi.no] has quit [Read error: 110 (Connection timed out)] 22:33:39 drewc: what does rofl stand for so I can Google it 22:33:53 -!- prxq [n=mommer@f051178118.adsl.alicedsl.de] has quit ["good night"] 22:34:03 rolling on the floor laughing? 22:34:15 felideon: relational-objects-for-lisp 22:34:17 not quite :) 22:34:26 drewc: right, thanks 22:34:40 -!- erjag [n=eugene@226.119.202.84.customer.cdi.no] has quit [Client Quit] 22:35:05 felideon: google doesn't know much about it beyond the fact that it's in clbuild 22:35:40 drewc: yeah, just saw that. does it have a cliki or commonlisp.net page? 22:36:40 Joreji [n=thomas@134.61.80.139] has joined #lisp 22:36:58 -!- danderso1 is now known as danderson 22:37:24 felideon: nope ... it has a darcs repo ... Fade has some demo code somewhere 22:37:28 Fade: around? 22:40:29 -!- tcr [n=tcr@host146.natpool.mwn.de] has quit [Remote closed the connection] 22:41:43 sellout [n=greg@c-24-128-48-180.hsd1.ma.comcast.net] has joined #lisp 22:42:06 redline6561 [n=AndChat@c-66-56-16-250.hsd1.ga.comcast.net] has joined #lisp 22:42:30 drewc: okay, that's a bit complex genealogy, to be honest 22:43:00 LiamH: Thanks. I am eagerly waiting for a fix ;) 22:44:27 -!- Dra`vi [n=Draggor@216-80-120-145.alc-bsr1.chi-alc.il.static.cable.rcn.com] has quit [Read error: 110 (Connection timed out)] 22:44:50 BTW, at the moment a lot of things seem to be broken but I am using gsll for the first time so I don't know if it is always broken. 22:45:34 drewc: thanks for that info. 22:46:21 Joreji_ [n=thomas@134.61.80.139] has joined #lisp 22:46:21 -!- Joreji [n=thomas@134.61.80.139] has quit [Read error: 104 (Connection reset by peer)] 22:46:34 mathrick: it is indeed. There are other UCW forks as well... core-server is one of them. 22:46:39 kroger [n=user@adsl-76-204-16-60.dsl.pltn13.sbcglobal.net] has joined #lisp 22:48:57 -!- kroger [n=user@adsl-76-204-16-60.dsl.pltn13.sbcglobal.net] has quit [Client Quit] 22:50:54 drewc, what a marvelous lisp world we live in 22:51:11 drewc: oh, interesting 22:52:44 -!- ignas [n=ignas@ctv-79-132-160-221.vinita.lt] has quit [Read error: 110 (Connection timed out)] 22:54:02 francogrex [n=user@91.177.62.135] has joined #lisp 22:54:35 mathrick: UCW is an excellent base for building web application frameworks :). The ucw-core code is an attempt to provide a common base so people don't have to fork... i'm working on a yet-another-framework myself that uses ucw-core to handle requests. 22:55:08 nowhere_man pasted "My (failed) attempt at SPOJ's INTEST problem" at http://paste.lisp.org/display/93540 22:55:18 Hi all 22:55:20 Vonunov [n=jack@99-58-1-192.lightspeed.rcsntx.sbcglobal.net] has joined #lisp 22:55:51 I'm trying to solve some of SPOJ's problems with CL and I'd like to see if someone could help me with this one 22:56:07 it's about being able to process at least 2.5MB/s of data 22:56:14 define SPOJ 22:56:53 -!- Vonunov [n=jack@99-58-1-192.lightspeed.rcsntx.sbcglobal.net] has left #lisp 22:57:14 it's a website where you have programming challenges, you submit the code and it must pass some tests 22:57:15 leo2007: Well I've uncovered a bug in CCL, but that isn't the reason for the problem. I think I understand the reason for the problem, but I don't have a fix yet. 22:57:36 correctness, obiously, and here performance 22:57:38 ok; something like project euler then 22:57:58 IIRC what Project Euler is, yes 22:58:05 ok 22:58:15 I'm wondering if I missed something obvious in my code 22:58:17 -!- RaceCondition [n=erik@82.131.74.61.cable.starman.ee] has quit [] 22:58:39 nowhere_man: have you profiled that? I highly doubt any of your declaration are actually making much of a difference... you're i/o bound 22:59:33 drewc: Are you calling it LEWL or something? 23:00:07 drewc: right, do WUI and core-server actually do that? Ie. use ucw-core without forking? 23:00:07 felideon: working name is dynamic-web 23:00:19 read-line can be sloooowwww 23:00:25 mathrick: no, but hopefully the next guy ... :) 23:00:27 drewc, how about dweeb? :P 23:00:40 Adlai: that's pretty good actually. 23:00:50 nowhere_man: maybe also paste like 3 rows of input data just to see 23:00:51 \o/ 23:00:55 just need a backronym 23:01:04 gigamonkey [n=user@adsl-99-2-148-104.dsl.pltn13.sbcglobal.net] has joined #lisp 23:01:34 minion: paste 92830 23:01:35 Paste number 92830: "Continuation Monad + ContextL = Dynamic Web" by drewc in #lisp. http://paste.lisp.org/display/92830 23:01:49 francogrex: it's https://www.spoj.pl/problems/INTEST/ 23:01:58 i passed it with SBCL, but the code looks terrible 23:02:16 i have a thread that is reading stdout.. i need to make the repl suspend reading and peeking for a bit.. what is the non impl specific way? 23:02:30 erm reading stdin i meant 23:03:15 dynamic web embedded entity bot 23:03:33 minion: what does DWEEB stand for? 23:03:34 Delinter Wryly Edgebone Emption Bailiff 23:04:02 drewc: what does that thing do? 23:05:27 my lisp actualyl can do the same task but not in a thread (call-my-foriengn-code-that-uses-it-own-repl) but its reader is going nutty 23:05:34 dynamic wind -- exit, enter behind! 23:05:35 stassats: and where is the 2.5 MB file? 23:05:54 francogrex: what file? 23:06:03 and why 2.5MB? 23:06:18 doesn't it talk about prcessing 2.5 MB file? 23:06:20 mathrick: well, all that code is there to implement the body of the find-default-render-function form... 23:06:33 francogrex: it doesn't 23:06:46 mathrick: but in short, it does continuations without code walking or CPS transformation 23:07:13 n lines? 23:08:23 mathrick: the DWEB-LET* form is essentially syntax for continuation monad, like haskell's do. 23:09:36 Dynamic Web: Efficiency! Erlang, Begone! 23:09:52 Adlai: it should include DYNAMIC-WIND in the name... it does require it for the implementation. 23:10:33 DYNAMIC-WIND: Eh? Ee's Batty! 23:10:34 dynamic wind ensures excellent browsing 23:10:54 ohhhh 23:11:03 i like! 23:11:25 leo2007: Do a fresh pull on GSD and try again. 23:12:19 ruediger_ [n=quassel@93-82-4-218.adsl.highway.telekom.at] has joined #lisp 23:12:24 dmiles pasted "Lisp reader need spespended?" at http://paste.lisp.org/display/93542 23:12:55 brandelune [n=suzume@pl571.nas982.takamatsu.nttpc.ne.jp] has joined #lisp 23:13:04 -!- brandelune [n=suzume@pl571.nas982.takamatsu.nttpc.ne.jp] has quit [Remote closed the connection] 23:13:13 drewc, awesome, glad to be of assistance/amusement :D 23:13:48 -!- ruediger [n=quassel@188-23-180-105.adsl.highway.telekom.at] has quit [Read error: 60 (Operation timed out)] 23:14:25 -!- davazp [n=user@205.Red-83-46-0.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 23:15:00 drewc: ah, and are those continuations you can (un)wind across arbitrary code not aware of dweb's existence? 23:15:07 francogrex: https://www.spoj.pl/problems/INTEST/ 23:15:11 if so, it'd be very nice to have 23:15:36 nowhere_man: how do you input the data in stdin? 23:16:49 mathrick: yeah, of course... as long as you're aware of the limitations. 23:17:12 in my case, I generated a few files matching that format and just saved an executable core 23:17:21 I then to ./intest < DATA-FILE 23:17:35 using sbcl? 23:17:44 drewc: oooh, nice. And those would be ...? 23:18:00 yes 23:18:16 on my system, it processes at about 5MB/s 23:18:32 is that not good? 23:19:04 drewc: I wonder if I could coax that into the interface used by weblocks. It'd be nice to get rid of CPS and make it function better while we're at it 23:20:01 mathrick: the continuation only includes the frames you have specified, so it's not entirely transparent. This is a goodthing, imo 23:20:02 did yiou test whetehr your declarations are making sense? 23:20:18 francogrex: yes, but when I submit that code to SPOJ, it gets "time limit exceeded" 23:20:34 mathrick: from what i understand about weblocks, absolutely you could use this code. It's not a drop in replacement though 23:20:53 francogrex: what do you mean? 23:21:04 you could automatically transform your code to monadic form... it would be easier than CPS 23:21:10 (to debug) 23:21:23 well, my number obviously are fixnums on any current system 23:21:42 I could check portably that they are, but it's a safe assumption 23:21:57 but it's not meant to be a (with-call/cc ...) ... it's DSL for stack frame reification :) 23:23:12 drewc: I see. I'll need more time on an evening not before the day I fly to DK to even begin digesting that properly 23:23:44 (> (expt 10 9) most-positive-fixnum) => T 23:23:53 on 32-bit sbcl 23:24:01 mathrick: i've got some documentation in the works explaining the whole thing. 23:24:52 nowhere_man: ok; I don't know whether sbcl standalone execuatbales are slower than others, on a system that belongs to the admin of this site; try compiling it to a C code (exe) or use ecl to see if it makes a difference. 23:25:11 (read-line) 23:25:12 zs 23:25:35 sorry; I maent try replacing (read-line) as suggested earlier by someone 23:27:34 I also think that what you generate with read-line is simple-arrays of char and then you convert those to ints/fixnums 23:27:42 nowhere_man: fixnums or no, that's not the slow part... profile that code and you'll find the bulk of your time is spent in i/o and parsing 23:27:55 you really don't need to read-line anyway 23:28:10 you can do the multiply and add in a loop with read-char 23:28:11 read-line is most of the problem 23:28:39 read-line is one of the slowest possible ways to do input in lisp 23:28:51 rahul: read-char? there are no chars 23:29:05 drewc: the input is chars... 23:29:11 he woukld ead it as a char then parse it 23:29:18 then use digit-char-p to convert to a number 23:29:24 are they chars? 23:29:33 i'm reading the wrong spec then... 23:29:37 he's using parse-integer on them afterwards... 23:30:22 rahul: that doesn't mean he's doing it right.... 23:30:30 drewc: docs sound useful, yeah 23:31:12 I also would make a complete CL program from that code usinf file input/output instead of generating executables and the rest 23:31:15 seems to be what the spec is saying 23:31:50 i'm not sure actually... it doesn't say anything about encodings. 23:32:19 it says 'lines' though yeah 23:32:22 which means they're smug unix weenies and use characters 23:32:25 it's in ASCII 23:32:34 more importantly, lines 23:32:35 -!- gemelen [n=shelta@shpd-78-36-164-142.static.vologda.ru] has quit [Read error: 110 (Connection timed out)] 23:32:37 yeah 23:32:39 ok, so i still don't want chars 23:33:13 well, (digit-char-p (read-char)) is ideal for this 23:33:21 how else can you read te data if not as base or std chars? 23:33:33 if it's nil, end the input and process the number 23:34:03 otherwise, (setf i (+ d (* 10 i))) and read the next char 23:34:21 and look, ma! no garbage! 23:34:24 rahul: fair enough.. i was thinking i can get better performance by avoiding consing up a character 23:34:24 i'd use (unsigned-byte 8) stream, external formats might slow down things too 23:34:43 stassats`: right, exactly 23:34:47 stassats`: processing ascii isn't slow... 23:34:47 Joreji [n=thomas@134.61.80.139] has joined #lisp 23:34:54 -!- Jasko [n=tjasko@c-174-59-195-12.hsd1.pa.comcast.net] has quit [Read error: 110 (Connection timed out)] 23:34:56 rahul: tell that to SBCL 23:34:57 -!- knobo [n=user@ti0073a340-2215.bb.online.no] has quit [Read error: 110 (Connection timed out)] 23:35:15 shouldn't sbcl just do an array lookup for ascii? 23:35:23 -!- Joreji_ [n=thomas@134.61.80.139] has quit [Read error: 113 (No route to host)] 23:36:16 that array will be bigger than mine which doesn't need anything but numbers and newline 23:36:34 well, for numbers, you don't even need an array 23:36:35 and, i don't have to create a char 23:36:37 way overkill there 23:36:44 but I doubt this is an issue 23:36:47 yeah, offset 23:36:55 we're trying to optimize i/o 23:37:04 reading a byte is faster than reading a char 23:37:07 get rid of the consing and you'll be way faster than the i/o 23:38:01 but of course, without profiling... this is all talk... but i'm willing to bet it's all going to do a lot more than some scattered fixnum declarations :) 23:38:10 sure 23:38:52 where does the data come from? 23:38:52 read-line is so severely bad that getting rid of it will get him 90% of the way to hand-coded assembly 23:38:58 stdin 23:39:04 drewc: is there async I/O support in SBCL? 23:39:17 p_l: yeah, serve-event... but please don't use it 23:39:23 heh 23:39:26 minion: tell p_l about iolib 23:39:28 p_l: please see iolib: I/O(mainly networking) library containing: a BSD sockets library, a DNS resolver and an I/O multiplexer that supports select(2), epoll(4) and kqueue(2). http://www.cliki.net/iolib 23:40:13 drewc: those are "inform about input/output available" interfaces, not AIO :D 23:40:19 read-line is bad because you don't know ahead of time how much will be read, right? 23:40:39 -!- alley_cat [n=AlleyCat@sourcemage/elder/alleycat] has quit ["Ex-Chat"] 23:40:41 Adlai: mostly 23:40:47 rahul, what else? 23:41:05 Adlai: it also uses a fresh array 23:41:07 *Adlai* is more ignorant than usual when it comes to CL streams 23:41:19 oh right, read-sequence lets you read into an array 23:41:23 exactly 23:41:23 -!- ace4016 [i=ace4016@cpe-76-170-134-79.socal.res.rr.com] has quit ["When there's nothing left to burn, you have to set yourself on fire."] 23:42:00 using read-byte is two times faster for me than using read-line 23:42:09 stassats`: sounds about right 23:42:35 -!- mishoo [n=mishoo@79.112.112.195] has quit [Read error: 110 (Connection timed out)] 23:42:36 drewc: I was thinking of interface to things like POSIX Asynchronous I/O 23:42:56 pit it in a real application and you'll get an even worse hit from GC 23:42:58 put it 23:43:22 p_l: what's wrong with select()? 23:43:46 p_l: sb-posix? 23:44:27 rahul: select() is just a mechanism to know when you can read/write with a filedescriptor. AIO otoh deals with making async. requests and firing them away, to be rescheduled by OS 23:44:44 p_l: or using threads... 23:44:45 -!- gigamonkey [n=user@adsl-99-2-148-104.dsl.pltn13.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 23:45:17 Jasko [n=tjasko@c-174-59-195-12.hsd1.pa.comcast.net] has joined #lisp 23:45:39 -!- francogrex [n=user@91.177.62.135] has quit [Remote closed the connection] 23:45:51 p_l: callbacks and lambda's man 23:45:56 I guess AIO's big benefit is that it CAN use threads 23:46:06 so you can do the I/O in parallel, too 23:46:33 p_l: lisp is the OS :P 23:46:43 rahul: except the threading is done on kernel side (or storage subsystem side, or even another cluster node) 23:47:42 well, threading is always done in the kernel 23:48:08 this is mostly a way to abstract that a bit so you don't need to create your own threads 23:48:18 the library creates them for you 23:48:35 gibsonf1 [n=user@c-76-126-33-113.hsd1.ca.comcast.net] has joined #lisp 23:48:47 Are there any mel-base users here? 23:49:04 gibsonf1: i have used it 23:49:22 drewc: did you use it with ssl or without? 23:49:44 gibsonf1: without 23:50:57 Hmm, I'm trying to find a way to use ssl with it. Unfortunately, I'm not able to get stunnel running on my no longer supported gutsy AMI, and reinstalling the whole server because of that is painful. So I'm trying to use cl+ssl to wrap the stream from mel-base, but so far no luck 23:51:55 rvirding [n=chatzill@h80n1c1o1034.bredband.skanova.com] has joined #lisp 23:51:55 -!- bitflip`` [n=user@ip98-184-186-177.tu.ok.cox.net] has quit [Read error: 54 (Connection reset by peer)] 23:52:08 i've just submitted my code and it took 9.71 s there 23:52:34 tfb [n=tfb@restormel.cley.com] has joined #lisp 23:53:03 Lithos [n=chatzill@DSLPool-net214-62.wctc.net] has joined #lisp 23:53:50 How does "unquote" work. In my mind something like this '( ,(+ 5 1)) should be the same as (+ 5 1) rather than an error. 23:54:06 no 23:54:07 s/'/`/ 23:54:16 it's like (list (+ 5 1)) 23:54:32 Odin- [n=sbkhh@s121-302.gardur.hi.is] has joined #lisp 23:54:33 -!- cmatei [n=cmatei@95.76.26.166] has quit [Read error: 110 (Connection timed out)] 23:54:43 clhs ` 23:54:44 http://www.lispworks.com/reference/HyperSpec/Body/02_df.htm 23:54:53 clhs ' 23:54:54 http://www.lispworks.com/reference/HyperSpec/Body/02_dc.htm 23:55:02 -!- chiiph [n=chiiph@190.1.21.180] has quit ["WeeChat 0.2.6.3"] 23:55:05 note the difference :) 23:55:29 "font fail"? 23:55:58 *stassats`* wonders if using mmap on stdin would be faster 23:56:05 I'll try to figure it out from that link 23:56:28 LiamH: I updated gsd and the unit testing finished. 23:56:36 I'm trying to learn it after seeing chapter 3 in practical common lisp. 23:57:00 leo2007: Did you get 13 errors? 23:57:17 Lithos: did you understand that drewc suggested that you were using the wrong character? 23:57:40 oh 23:57:43 LiamH: I am getting "TOTAL: 1455 assertions passed, 46 failed, 0 execution errors." 23:57:57 no error but 46 fails 23:58:02 Ohhhhh. 23:58:07 leo2007: Hmm, that's a lot; I meant failed. 23:58:07 is that normal? 23:58:08 That makes lots more sense then... 23:58:14 OmniMancer [n=OmniManc@122-57-17-208.jetstream.xtra.co.nz] has joined #lisp 23:58:20 leo2007: Seems high. 23:58:24 Thanks. 23:58:48 leo2007: I used to get 10 failed, now I get 13, in CCL. In SBCL I get 6 failed. 23:59:12 Interesting that I get the anwer in a list (6) rather than as a 6 though. 23:59:36 Lithos: yeah. here's the full output http://paste.lisp.org/display/93543