04:14:29 smkl joined #tunes 04:14:29 clog joined #tunes 04:14:29 abi joined #tunes 04:14:29 Kyle joined #tunes 04:14:29 ult joined #tunes 04:56:00 _101 joined #tunes 04:56:03 <_101> 'lo 04:58:47 'hi 05:03:08 [QUIT] Kyle quit: Leaving 06:46:18 [QUIT] _101 quit: Bowser [d40]: server window terminating... 07:31:34 Fare joined #tunes 08:37:56 smkl joined #tunes 09:03:09 adu joined #tunes 09:31:57 [NICK] Fare changed nick to: FareAway 09:35:28 [QUIT] adu quit: [x]chat 14:48:14 eihrul joined #tunes 14:52:08 [QUIT] clog quit: Ping timeout for clog[bespin.org] 14:52:44 clog joined #tunes 16:18:27 ult joined #tunes 17:29:39 water joined #tunes 17:29:52 re all 17:30:25 this meta-patterns book has many surprising similarities with tunes/slate ideas 17:30:35 and interesting notable differences 17:31:27 i'll have to outline this for the list once i get done with the chapters that survey the idea 17:31:44 it's too bad this guy's previous work is all in german in obscure journals 17:33:27 the work is also explained in a rather oblique notation, and uses co-recursive definitions of its terms, but it does work out after a while 17:35:02 the area where it is most similar to tunes is in the uniformity of concepts and the treatment of object-context relationships 17:35:13 i still need to read more, though 17:39:52 will have to order i guess 17:41:06 even if you don't get it, i should at some point soon be able to concisely compare/contrast it with tunes and slate 17:41:19 hopefully it will help me with MO design 18:11:18 [NICK] ink changed nick to: Pitr 19:22:31 Kyle joined #tunes 19:22:38 hey kyle 19:22:47 chk logs 19:22:59 for both #tunes and #{} 19:28:16 hi o 19:28:29 where are #{}? 19:28:37 abi: #{} 19:28:38 #{} is [irc] lots of slate discussion happens herein, generally where noise is signal, come in and hang out, logs at http://www.tunes.org/~nef/logs/noise/ 19:29:06 thanks 19:29:13 np 20:39:04 me joined #tunes 20:39:23 hello 20:45:13 hi me 20:45:45 what brings you to #tunes? 20:47:35 i'm having dificulty understanding "define-macro" style macros and was hopeing i could find some help. 20:48:22 oh 20:49:20 there are a couple of expert lispers here, but i don't know if they're around right now... i'm afraid i'm not that great with using lisp myself 20:49:52 ok 20:51:14 i know fare would know, but he's obviously away. 20:51:25 yeah 20:51:31 actually he's probably sleepin 20:51:33 so would eihrul and maybe smkl 20:53:36 even thought ya probably won't be able to help, i can tell you about what i've found so far just for kicks 20:54:16 ok 20:55:32 "define-macro" is the lisp style macro command, which will allow you to capture the parameters passed to your macro, without automatically evaluating them. (definition of macrO) 20:55:54 i can get the simple macro (define-macro (test p1 p2) p1) to return one when called with (test 1 2) 20:56:29 which makes sense 20:56:37 however: (define-macro (newdefine symbol procedure) 20:56:37 (define symbol procedure)) 20:56:37 (newdefine (x y) (+ y 2)) 20:56:47 returns "ERROR:bad body" 20:57:21 more precicely: ERROR: In procedure lambda: 20:57:22 ERROR: bad body 20:57:22 ABORT: (misc-error) 20:57:41 hm 20:58:23 does the first arg to define-macro have to be a list? 20:58:52 (define-macro (newdefine symbol procedure) 20:58:55 oops 20:59:02 perhaps this... 20:59:06 i'm not shure. i've never seen a formal definition of it. 20:59:11 me listening 20:59:12 heh 20:59:16 abi: clhs 20:59:18 clhs is [lisp+doc] the Common LISP HyperSpec at http://www.xanalys.com/software_tools/reference/HyperSpec/ 20:59:21 abi: r5rs 20:59:25 r5rs is [scheme+doc] the Revised(5) Report on the Algorithmic Language Scheme at http://www.cs.rice.edu/CS/PLT/packages/doc/r5rs/ http://swissnet.ai.mit.edu/~jaffer/r5rs_toc.html 20:59:35 there's your formal specs :) 20:59:42 anyway 20:59:43 r5rs uses define-syntax instead of define-macro 20:59:49 ok. :) 20:59:51 me listens 21:00:37 (define-macro (newdefine (symbol-list) procedure) (newdefine (x y) (+ y 2)) may be it 21:00:44 er... 21:00:56 heh... this is why i don't use lisp 21:01:15 anyway, check the hyperspec 21:03:32 there's also... 21:03:37 abi: cltl2 21:03:37 cltl2 is Common Lisp the Language, 2nd Edition online at http://www.cs.cmu.edu/Web/Groups/AI/html/cltl/cltl2.html 21:06:44 any luck? 21:07:03 nope 21:08:22 (define-macro (newdefine (symbol-list) procedure) (define (symbol-list) procedure)) returns bad formals 21:08:31 maybe it's a bug 21:08:58 i've noticed that macros seem to be able to do everything except for whatever i want to do. 21:09:10 heh 21:10:17 what lisp are you using? 21:10:31 guile 21:11:44 hum 21:11:58 i think maybe you have to quote your (define ...) 21:12:08 within the define-macro 21:15:11 that "clears" without error message, but then x dosn't get defined. (x 4) returns "Unbound variable: x" 21:15:36 i.e. it does nothing 21:16:00 yeah it doesn't get eval'd 21:16:25 what's the differnce between ' and `? 21:17:26 bleh, i'm not up to explaining backquoting 21:17:51 hey eih, why don't you help this guy out? 21:18:02 what's he need help with? 21:18:56 scroll up 21:19:05 eihrul: i'm trying to use the "define-macro" command to adjust the define command. so far i got: 21:19:26 (define-macro (newdefine symbol procedure) 21:19:26 (define symbol procedure)) 21:19:26 (newdefine (x y) (+ y 2)) 21:20:27 it returns: ERROR: In procedure lambda: 21:20:27 ERROR: bad body 21:20:27 ABORT: (misc-error) 21:26:02 and types can be replaced with a more flexible idea of a protocol 21:26:32 i don't understand 21:38:30 damn 21:38:33 wrong channel :) 21:38:34 my bad 21:38:58 ) 02:20:16 nwsh2 joined #tunes