2014-10-04T00:00:23Z c107: Are there any games written in Guile? 2014-10-04T00:01:36Z theseb quit (Quit: Leaving) 2014-10-04T00:02:39Z MouldyOldBones quit (Quit: MouldyOldBones) 2014-10-04T00:05:12Z hiyosi joined #scheme 2014-10-04T00:07:14Z bjz quit (Quit: Textual IRC Client: www.textualapp.com) 2014-10-04T00:07:41Z bjz joined #scheme 2014-10-04T00:07:45Z bjz quit (Client Quit) 2014-10-04T00:08:01Z bjz joined #scheme 2014-10-04T00:10:04Z hiyosi quit (Ping timeout: 250 seconds) 2014-10-04T00:10:12Z sbwhitecap quit (Ping timeout: 260 seconds) 2014-10-04T00:14:46Z kongtomorrow joined #scheme 2014-10-04T00:21:54Z vanila quit (Quit: Leaving) 2014-10-04T00:27:05Z kobain quit (Ping timeout: 260 seconds) 2014-10-04T00:28:35Z MrSavage: anyone here use DrRacket? 2014-10-04T00:30:47Z hiyosi joined #scheme 2014-10-04T00:32:05Z asumu: MrSavage: yes, though there are many more in #racket 2014-10-04T00:32:14Z MrSavage: thanks 2014-10-04T00:38:31Z es917 joined #scheme 2014-10-04T00:38:40Z akp quit (Ping timeout: 250 seconds) 2014-10-04T00:39:09Z es917 quit (Client Quit) 2014-10-04T00:39:43Z kobain joined #scheme 2014-10-04T00:41:01Z kobain quit (Max SendQ exceeded) 2014-10-04T00:41:18Z kobain joined #scheme 2014-10-04T00:41:33Z BossKonaSegwaY quit (Ping timeout: 260 seconds) 2014-10-04T00:48:40Z MrSavage: Can you not somehow run an instruction right after another? 2014-10-04T00:48:57Z MrSavage: lets say I want to print "ah" for each iteration in a recursion, how would it look like in scheme? 2014-10-04T00:49:46Z MrSavage: I tried: ( (display "ah") (f a b) ) 2014-10-04T00:52:52Z akp joined #scheme 2014-10-04T00:55:38Z BossKonaSegwaY joined #scheme 2014-10-04T00:58:13Z MrSavage: pjdelport: you wouln't to happen know? 2014-10-04T01:01:37Z jeapostrophe quit (Ping timeout: 260 seconds) 2014-10-04T01:20:55Z MrSavage: Also I'm stuck on how to print pascal's triangle in scheme without using lists 2014-10-04T01:24:10Z akp quit (Ping timeout: 250 seconds) 2014-10-04T01:40:08Z alexei___ quit (Ping timeout: 258 seconds) 2014-10-04T01:40:11Z akp joined #scheme 2014-10-04T01:40:16Z tobik quit (Ping timeout: 260 seconds) 2014-10-04T01:42:15Z tobik joined #scheme 2014-10-04T01:44:50Z oleo__ is now known as oleo 2014-10-04T01:54:05Z MrSavage: solved it 2014-10-04T01:56:54Z Gyps joined #scheme 2014-10-04T01:58:38Z MrSavage: Also what is the point of using lambda and let? 2014-10-04T02:04:27Z BossKonaSegwaY quit (Ping timeout: 245 seconds) 2014-10-04T02:10:52Z kongtomorrow quit 2014-10-04T02:14:01Z jusss` joined #scheme 2014-10-04T02:21:09Z cidnes quit (Ping timeout: 258 seconds) 2014-10-04T02:26:16Z BossKonaSegwaY joined #scheme 2014-10-04T02:45:58Z duncanm_ joined #scheme 2014-10-04T02:45:59Z rudybot: la la la 2014-10-04T02:48:01Z micro__ joined #scheme 2014-10-04T02:48:21Z stepnem_ joined #scheme 2014-10-04T02:48:48Z finnrobi_ joined #scheme 2014-10-04T02:48:53Z Fare quit (Read error: Connection reset by peer) 2014-10-04T02:49:33Z BossKonaSegwaY1 joined #scheme 2014-10-04T02:52:09Z benaiah` joined #scheme 2014-10-04T02:55:23Z tcsc quit (Quit: bye!) 2014-10-04T02:56:40Z BossKonaSegwaY quit (*.net *.split) 2014-10-04T02:56:40Z stepnem quit (*.net *.split) 2014-10-04T02:56:40Z micro quit (*.net *.split) 2014-10-04T02:56:40Z benaiah quit (*.net *.split) 2014-10-04T02:56:41Z finnrobi quit (*.net *.split) 2014-10-04T02:56:41Z duncanm quit (*.net *.split) 2014-10-04T02:56:45Z stepnem_ is now known as stepnem 2014-10-04T02:56:45Z benaiah` is now known as benaiah 2014-10-04T02:56:57Z offby1: rudybot: seen duncanm 2014-10-04T02:56:57Z rudybot: *offby1: duncanm_ was seen joining in #scheme ten minutes ago, and then duncanm was seen quitting twelve seconds ago, saying "*.net *.split" 2014-10-04T02:57:06Z offby1: curses, foiled again 2014-10-04T03:03:22Z stepnem quit (Ping timeout: 240 seconds) 2014-10-04T03:09:09Z aranhoide quit (Ping timeout: 272 seconds) 2014-10-04T03:09:59Z joneshf-laptop joined #scheme 2014-10-04T03:51:41Z MrSavage quit (Remote host closed the connection) 2014-10-04T03:57:40Z BossKonaSegwaY1 quit (Read error: Connection reset by peer) 2014-10-04T03:57:45Z BossKonaSegwaY joined #scheme 2014-10-04T03:59:03Z kongtomorrow joined #scheme 2014-10-04T04:12:50Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-10-04T04:18:23Z kobain joined #scheme 2014-10-04T04:18:58Z kobain quit (Max SendQ exceeded) 2014-10-04T04:19:14Z phipes joined #scheme 2014-10-04T04:27:24Z kobain joined #scheme 2014-10-04T04:28:00Z kobain quit (Max SendQ exceeded) 2014-10-04T04:28:18Z kobain joined #scheme 2014-10-04T04:52:26Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-10-04T05:03:35Z sbwhitecap joined #scheme 2014-10-04T05:05:27Z kobain joined #scheme 2014-10-04T05:06:51Z kobain quit (Max SendQ exceeded) 2014-10-04T05:07:09Z kobain joined #scheme 2014-10-04T05:07:42Z kobain quit (Max SendQ exceeded) 2014-10-04T05:08:01Z kobain joined #scheme 2014-10-04T05:16:06Z hiyosi quit (Ping timeout: 244 seconds) 2014-10-04T05:16:41Z sbwhitecap quit (Ping timeout: 272 seconds) 2014-10-04T05:25:52Z lrs joined #scheme 2014-10-04T05:33:44Z jusss` is now known as jusss 2014-10-04T05:34:00Z jusss quit (Changing host) 2014-10-04T05:34:00Z jusss joined #scheme 2014-10-04T05:37:23Z hiyosi joined #scheme 2014-10-04T05:50:29Z aranhoide joined #scheme 2014-10-04T05:52:29Z kongtomorrow quit 2014-10-04T05:54:44Z phipes quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-10-04T05:58:22Z kongtomorrow joined #scheme 2014-10-04T06:11:37Z leo2007 quit (Read error: Connection reset by peer) 2014-10-04T06:21:38Z drdanmaku quit (Quit: Connection closed for inactivity) 2014-10-04T06:21:43Z rtra quit (Ping timeout: 244 seconds) 2014-10-04T06:22:21Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-10-04T06:28:22Z daviid quit (Ping timeout: 250 seconds) 2014-10-04T06:33:17Z pnpuff joined #scheme 2014-10-04T06:33:20Z tadni_ quit (Ping timeout: 260 seconds) 2014-10-04T06:42:28Z rtra joined #scheme 2014-10-04T06:43:53Z HisaoNakai joined #scheme 2014-10-04T06:45:40Z atomx_ quit (Remote host closed the connection) 2014-10-04T06:45:40Z atomx quit (Remote host closed the connection) 2014-10-04T06:45:58Z atomx joined #scheme 2014-10-04T06:52:08Z c107 quit (Remote host closed the connection) 2014-10-04T06:56:02Z pnpuff quit (Ping timeout: 256 seconds) 2014-10-04T06:56:38Z c107 joined #scheme 2014-10-04T07:01:11Z c107 quit (Remote host closed the connection) 2014-10-04T07:09:09Z leo2007 joined #scheme 2014-10-04T07:41:18Z ilammy joined #scheme 2014-10-04T07:47:15Z hiroakip joined #scheme 2014-10-04T07:54:03Z aftershave joined #scheme 2014-10-04T07:56:20Z BossKonaSegwaY quit (Ping timeout: 250 seconds) 2014-10-04T07:58:01Z fridim__ joined #scheme 2014-10-04T08:06:05Z HisaoNakai quit (Ping timeout: 244 seconds) 2014-10-04T08:19:46Z pnpuff joined #scheme 2014-10-04T08:22:32Z BossKonaSegwaY joined #scheme 2014-10-04T08:23:26Z kongtomorrow quit 2014-10-04T08:31:34Z Gyps quit (Quit: Gyps) 2014-10-04T08:38:48Z alexei___ joined #scheme 2014-10-04T08:45:48Z stepnem joined #scheme 2014-10-04T08:55:31Z vanila joined #scheme 2014-10-04T08:59:29Z BossKonaSegwaY quit (Ping timeout: 260 seconds) 2014-10-04T09:05:54Z HisaoNakai joined #scheme 2014-10-04T09:06:08Z HisaoNakai: o/ 2014-10-04T09:06:24Z mutley89 quit (Quit: Leaving) 2014-10-04T09:07:17Z hiroakip quit (Ping timeout: 245 seconds) 2014-10-04T09:10:55Z alexei___ quit (Ping timeout: 272 seconds) 2014-10-04T09:11:49Z HisaoNakai: Are there any plans to start maintaining and updating the Scheme Wiki? It seems like a decent platform with it's head in the right place and not irretrievably behind the times - not too late to do it...I'd volunteer but I'm brand new to Scheme and Lisps in general x-P 2014-10-04T09:17:50Z BossKonaSegwaY joined #scheme 2014-10-04T09:22:21Z pnpuff: HisaoNakai: Please notice that there is a lot of useful up-to-date documentation available (i.e. schemers.org) 2014-10-04T09:38:11Z alexei___ joined #scheme 2014-10-04T09:39:38Z HisaoNakai quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-10-04T10:13:09Z gravicappa joined #scheme 2014-10-04T10:20:01Z turbofail quit (Remote host closed the connection) 2014-10-04T10:25:36Z ptcek joined #scheme 2014-10-04T10:29:44Z masm joined #scheme 2014-10-04T10:30:22Z araujo quit (Ping timeout: 240 seconds) 2014-10-04T10:32:13Z araujo joined #scheme 2014-10-04T10:39:33Z effy quit (Quit: No Ping reply in 180 seconds.) 2014-10-04T10:39:57Z effy joined #scheme 2014-10-04T10:47:12Z jeapostrophe joined #scheme 2014-10-04T11:07:00Z atomx quit (Remote host closed the connection) 2014-10-04T11:07:16Z atomx joined #scheme 2014-10-04T11:10:35Z araujo quit (Quit: Leaving) 2014-10-04T11:23:03Z alexei___ quit (Ping timeout: 246 seconds) 2014-10-04T11:24:36Z c74d quit (Remote host closed the connection) 2014-10-04T11:27:42Z c74d joined #scheme 2014-10-04T11:35:45Z ilammy: Do Chez and Petite Chez Schemes have different macroexpanders? 2014-10-04T11:36:23Z ilammy: I see that (Full) Chez compiles Scheme to native code and Petite is an interpreted (pesumably, byte-code one). 2014-10-04T11:36:47Z ilammy: Does this apply to macroexpanding too or both share the same (high-speed) one? 2014-10-04T11:42:00Z Riastradh: Who knows? They won't publish the source code... 2014-10-04T11:44:28Z pnpuff quit (Ping timeout: 256 seconds) 2014-10-04T11:47:16Z ilammy: Maybe someone checked :) 2014-10-04T11:50:04Z ilammy: I just looked though the paper 'An Optimized R5RS Macro Expander' and somewhat surprised with Chez lead by almost *two orders or magnitude* compared to some implementations 2014-10-04T11:50:56Z ilammy: Well, I expect that macroexpanding is not a thing that requires tons of attention in terms of performance, but being _that_ slacky... 2014-10-04T11:53:01Z Nizumzen joined #scheme 2014-10-04T12:08:46Z oleo is now known as Guest98341 2014-10-04T12:11:45Z Guest98341 quit (Ping timeout: 260 seconds) 2014-10-04T12:13:57Z oleo__ joined #scheme 2014-10-04T12:14:05Z oleo__ quit (Read error: Connection reset by peer) 2014-10-04T12:15:26Z oleo joined #scheme 2014-10-04T12:34:15Z taylanub: I really wish Chez weren't proprietary. :( seems it's a really great implementation 2014-10-04T13:00:17Z gravicappa quit (Ping timeout: 272 seconds) 2014-10-04T13:00:49Z kobain joined #scheme 2014-10-04T13:01:25Z kobain quit (Max SendQ exceeded) 2014-10-04T13:01:45Z kobain joined #scheme 2014-10-04T13:02:20Z kobain quit (Max SendQ exceeded) 2014-10-04T13:02:38Z kobain joined #scheme 2014-10-04T13:03:15Z kobain quit (Max SendQ exceeded) 2014-10-04T13:03:33Z kobain joined #scheme 2014-10-04T13:04:10Z kobain quit (Max SendQ exceeded) 2014-10-04T13:04:36Z kobain joined #scheme 2014-10-04T13:05:56Z kobain quit (Max SendQ exceeded) 2014-10-04T13:09:41Z kazimir42 joined #scheme 2014-10-04T13:19:47Z gravicappa joined #scheme 2014-10-04T13:22:43Z kobain joined #scheme 2014-10-04T13:23:18Z kobain quit (Max SendQ exceeded) 2014-10-04T13:23:37Z kobain joined #scheme 2014-10-04T13:29:35Z BossKonaSegwaY1 joined #scheme 2014-10-04T13:31:29Z BossKonaSegwaY quit (Ping timeout: 260 seconds) 2014-10-04T13:41:36Z taylanub quit (Disconnected by services) 2014-10-04T13:41:55Z ptcek quit (Remote host closed the connection) 2014-10-04T13:42:15Z taylanub joined #scheme 2014-10-04T14:10:14Z pnpuff joined #scheme 2014-10-04T14:13:50Z kuribas joined #scheme 2014-10-04T14:16:01Z b4283 joined #scheme 2014-10-04T14:20:29Z leppie quit (Ping timeout: 272 seconds) 2014-10-04T14:24:20Z leppie joined #scheme 2014-10-04T14:35:46Z asumu: ilammy: when your language is built as a tower of macros, your macroexpander performance is like compiler performance. Fast is good. :) 2014-10-04T14:39:16Z ilammy: well, expanding macros *is* a part of compiler's job 2014-10-04T14:40:25Z ilammy: but I believe there are not many people around who routinely write programs that have ~30000 usages of user-level macros that they need to expand 2014-10-04T14:40:56Z ilammy: so noone ever bothers optimizing their macroexpander as well as they can 2014-10-04T14:41:32Z ilammy: I think, Chez is an exception _because_ it is a commercial implementation which _has_ to be excellent 2014-10-04T14:50:36Z mutley89 joined #scheme 2014-10-04T14:58:05Z c107 joined #scheme 2014-10-04T14:58:12Z c107 quit (Changing host) 2014-10-04T14:58:12Z c107 joined #scheme 2014-10-04T14:59:40Z Nizumzen quit (Ping timeout: 260 seconds) 2014-10-04T15:00:08Z davexunit joined #scheme 2014-10-04T15:08:09Z teiresias quit (Read error: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number) 2014-10-04T15:12:15Z Nizumzen joined #scheme 2014-10-04T15:15:23Z MichaelRaskin quit (Remote host closed the connection) 2014-10-04T15:26:43Z MichaelRaskin joined #scheme 2014-10-04T15:31:00Z vanila: Is there a program that checks if my program is valid r7rs scheme code? 2014-10-04T15:31:14Z jusss quit (Remote host closed the connection) 2014-10-04T15:36:15Z drdanmaku joined #scheme 2014-10-04T15:40:08Z samth: vanila: what do you mean by valid? 2014-10-04T15:40:20Z samth: But probably no, that's impossible 2014-10-04T15:42:48Z ilammy: I believe he wants something to check that the program uses only things declared by r7rs, not something implementation specific. 2014-10-04T15:44:25Z ilammy: However, even this does not seem to be possible. 2014-10-04T15:44:34Z ilammy: While one can simply check all imported identifiers to be restricted to ones described by r7rs... 2014-10-04T15:45:06Z ilammy: But I bet some of these standard libraries include some implementation-specific things 2014-10-04T15:45:41Z vanila: check syntax if it's R7RS scheme 2014-10-04T15:45:46Z ilammy: Not talking about checking the semantics, i.e., that car is that car described in r7rs, not a weird way to add numbers 2014-10-04T15:47:39Z ilammy: I believe, the easiest way is to find some r7rs implementation that has a --strict switch and then feed the program to it 2014-10-04T15:47:58Z ilammy: I've not seen any linters for Scheme around. 2014-10-04T15:53:48Z Okasu quit (Ping timeout: 260 seconds) 2014-10-04T15:55:29Z kbtr quit (Ping timeout: 272 seconds) 2014-10-04T15:56:05Z kbtr_ joined #scheme 2014-10-04T16:08:04Z daviid joined #scheme 2014-10-04T16:15:30Z b4283 quit (Quit: Konversation terminated!) 2014-10-04T16:16:49Z pnpuff left #scheme 2014-10-04T16:17:51Z pnpuff joined #scheme 2014-10-04T16:23:38Z BossKonaSegwaY1 quit (Ping timeout: 240 seconds) 2014-10-04T16:24:43Z alexei___ joined #scheme 2014-10-04T16:28:56Z kazimir42 quit (Remote host closed the connection) 2014-10-04T16:29:26Z kazimir42 joined #scheme 2014-10-04T16:33:57Z teiresias joined #scheme 2014-10-04T16:39:46Z hiroakip joined #scheme 2014-10-04T16:41:43Z BossKonaSegwaY joined #scheme 2014-10-04T16:45:48Z davexunit quit (Quit: Later) 2014-10-04T16:46:36Z joobus joined #scheme 2014-10-04T16:48:10Z HisaoNakai joined #scheme 2014-10-04T17:13:58Z joobus: anyone here? 2014-10-04T17:15:16Z kongtomorrow joined #scheme 2014-10-04T17:15:53Z ilammy: o/ 2014-10-04T17:16:42Z BossKonaSegwaY quit (Ping timeout: 272 seconds) 2014-10-04T17:17:32Z HisaoNakai: joobus: me! 2014-10-04T17:17:37Z HisaoNakai: o/ 2014-10-04T17:19:50Z joobus: i'm just starting to mess with scheme, and am using gambit 2014-10-04T17:20:15Z joobus: so i was curious in the interpreter, how can i read a file in and print out the contents? 2014-10-04T17:20:16Z kuribas quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-10-04T17:20:34Z HisaoNakai: joobus: I'll be doing the exact same from about Tuesday onwards :D Good luck fellow beginner :) 2014-10-04T17:20:53Z kongtomorrow quit 2014-10-04T17:21:00Z joobus: it seems like scheme has been forgotten for the most part :( 2014-10-04T17:22:04Z HisaoNakai: joobus: I aim to write actual applications in it. Cross-platform ones, in fact. 2014-10-04T17:22:29Z HisaoNakai: (== all five major platforms) 2014-10-04T17:23:02Z joobus: with which version of scheme? 2014-10-04T17:25:35Z HisaoNakai: joobus: version? O_o If you mean implementation - Gambit (with Chicken/Bigloo/Stalin as fallback options; I'm also open to trying Kawa and the other JVM ones, but that seems like walking on thin ice as they seem to be largely abandoned...). 2014-10-04T17:26:24Z HisaoNakai: (well, I'm aware Scheme has had many RnRSs, but afaik that depends on what the implementation chooses to implement...) 2014-10-04T17:26:43Z pnpuff left #scheme 2014-10-04T17:27:59Z joobus: i've been learning clojure but the main problem with it is the jvm. i'd like to be able to compile smaller programs without having to start and run the jvm 2014-10-04T17:29:22Z BossKonaSegwaY joined #scheme 2014-10-04T17:30:03Z lrs: How can I write a function that uses pair? to does the same procudre as list? 2014-10-04T17:35:24Z alexei___ quit (Ping timeout: 258 seconds) 2014-10-04T17:35:38Z HisaoNakai: Does anyone know if the various Scheme-on-JVM projects are really dead or are they continuing in some secret place I've not yet found? o.o 2014-10-04T17:36:43Z HisaoNakai: (although...we have Scheme-to-C compilers...and if we can use C/C++ libs and can use C code in Android projects (which we can)...then JVM be dashed.) 2014-10-04T17:40:41Z kongtomorrow joined #scheme 2014-10-04T17:53:21Z joobus quit (Ping timeout: 260 seconds) 2014-10-04T17:54:08Z pnpuff joined #scheme 2014-10-04T17:58:01Z pnpuff quit (Quit: Lost terminal) 2014-10-04T17:58:37Z kongtomorrow quit 2014-10-04T17:58:37Z DerGuteMoritz: HisaoNakai: Kawa at least is alive and maintained 2014-10-04T18:04:10Z HisaoNakai: DerGuteMoritz: that's great to hear, but wasn't the last release, like, last year? o_o' 2014-10-04T18:07:16Z DerGuteMoritz: HisaoNakai: I think they don't have as much manpower to put out many releases but the repo is active 2014-10-04T18:07:28Z DerGuteMoritz: HisaoNakai: I would be more worried about Stalin which you mentioned earlier ;-) 2014-10-04T18:07:41Z ilammy: lrs, (define (list? list) (or (null? list) (and (pair? list) (list? (cdr list))))) 2014-10-04T18:09:48Z lrs: ilammy, Why or and "and" 2014-10-04T18:10:11Z HisaoNakai: DerGuteMoritz: I see, it's good that they haven't stopped. I'm not using Stalin...yet...but it's nevertheless sad if a part of the ecosystem dies :( 2014-10-04T18:10:38Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-10-04T18:12:41Z DerGuteMoritz: HisaoNakai: I don't think Stalin was ever more than a prototype. and don't get too sad by dead implementations, Scheme land is full of those :-) 2014-10-04T18:12:55Z ilammy: lrs, because list? checks for proper lists, and a proper list is either an empty list, or a pair which cdr is a proper list 2014-10-04T18:13:54Z ilammy: (to be precise, it should also check for cycles, but meh...) 2014-10-04T18:14:03Z lrs: ilammy, How would you do it with cond 2014-10-04T18:15:40Z BossKonaSegwaY quit (Ping timeout: 260 seconds) 2014-10-04T18:16:15Z ilammy: (or x y) = (if x x y), (and x y) = (if x (if y y #f) #f) 2014-10-04T18:17:38Z HisaoNakai: DerGuteMoritz: Toll. Übrigens...kommen Sie aus Deutschland? 2014-10-04T18:17:40Z DerGuteMoritz: not to forget (if x y z) = (cond (x y) (else z)) 2014-10-04T18:17:51Z DerGuteMoritz: HisaoNakai: ja! ;-) 2014-10-04T18:18:05Z HisaoNakai: Nett xD 2014-10-04T18:18:12Z DerGuteMoritz: und Sie? 2014-10-04T18:20:18Z HisaoNakai: Ich komme aus Indien, und nehme ein Deutschkurs A1. 2014-10-04T18:20:32Z jffmcc joined #scheme 2014-10-04T18:20:34Z HisaoNakai: (not sure if idiomatic or even correct but one's gotta try xD) 2014-10-04T18:21:02Z jffmcc: Hi is there an "and" conditional for scheme? 2014-10-04T18:21:31Z jffmcc: I want scheme to check if x = 5 and y = 7, then x + y 2014-10-04T18:21:33Z ilammy: dud, you should tweak your time machine a bit :) 2014-10-04T18:21:40Z taylanub: jffmcc: yes, "and" 2014-10-04T18:21:42Z DerGuteMoritz: HisaoNakai: you would probably say "belege" instead of "nehme" but very good :-) 2014-10-04T18:21:52Z ilammy: yeah, there is one, it is called 'and' 2014-10-04T18:21:59Z taylanub: jffmcc: (if (and (= x 5) (= y 7)) (+ x y)) 2014-10-04T18:22:12Z jffmcc: Am I able to use "and" under cond? 2014-10-04T18:22:20Z taylanub: read the grammar! :) 2014-10-04T18:22:25Z HisaoNakai: DerGuteMoritz: Nice, I'll keep that in mind :D 2014-10-04T18:22:31Z HisaoNakai: Oh hey, taylanub ! 2014-10-04T18:22:38Z DerGuteMoritz: HisaoNakai: good luck with your studies! 2014-10-04T18:22:48Z HisaoNakai: Hrm, no wasamasa here? O_o 2014-10-04T18:23:01Z HisaoNakai: DerGuteMoritz: Danke schon x) 2014-10-04T18:23:16Z taylanub: (cond ( ...) ...) 2014-10-04T18:23:31Z taylanub: oh, that whole thing must also occur at least once. whatever. 2014-10-04T18:23:31Z DerGuteMoritz: HisaoNakai: you know him from #emacs I guess? he's a colleague of mine :-) 2014-10-04T18:24:00Z DerGuteMoritz: taylanub: (cond) is also legal AFAIK! 2014-10-04T18:24:08Z taylanub: hm, lemme check 2014-10-04T18:24:22Z DerGuteMoritz: at least in R5RS I think 2014-10-04T18:24:27Z taylanub: jffmcc: I'd try to get used to the language of the RnRS. 2014-10-04T18:24:30Z ilammy: no, it's not 2014-10-04T18:24:32Z DerGuteMoritz: it's the shortest portable way to produce an undefined value! 2014-10-04T18:24:40Z DerGuteMoritz: unless it's not portable :-D 2014-10-04T18:24:46Z ilammy: what about (begin) ? 2014-10-04T18:24:50Z ilammy: for undefined values 2014-10-04T18:24:52Z DerGuteMoritz: that's longer than (cond) 2014-10-04T18:24:56Z HisaoNakai: DerGuteMoritz: Yes, from #emacs, #lisp, and ##lisp :D You folks actually use Lisp at work? Lucky! 2014-10-04T18:24:59Z ilammy: or like... (if #f 'foo) 2014-10-04T18:25:10Z taylanub: ilammy: expression-begin must have at least one subform 2014-10-04T18:25:13Z DerGuteMoritz: ilammy: I meant in terms of characters ;-) 2014-10-04T18:25:15Z ilammy: or (when #t) 2014-10-04T18:25:21Z taylanub: definition-begin is allowed to be empty 2014-10-04T18:25:28Z DerGuteMoritz: when is not part of RnRS IIRC 2014-10-04T18:25:34Z taylanub: DerGuteMoritz: R7RS 2014-10-04T18:25:36Z DerGuteMoritz: cond is 4 characters though, begin is 5 2014-10-04T18:25:44Z DerGuteMoritz: SO COND WINS! 2014-10-04T18:25:52Z taylanub: neither are valid expressions :) 2014-10-04T18:25:57Z DerGuteMoritz: damn :-) 2014-10-04T18:26:34Z taylanub: and (if #f #f) is the conventional expression for "the unspecified value" I think, in case it's a single value in some implementation ... well at least Guile uses that, conventionally 2014-10-04T18:26:55Z taylanub AFK 2014-10-04T18:28:16Z jffmcc quit (Quit: Page closed) 2014-10-04T18:29:06Z ilammy: Well, I think we can also use (define undefined (write "")) or like that 2014-10-04T18:29:42Z DerGuteMoritz: heh 2014-10-04T18:30:00Z DerGuteMoritz: we definitely need a SRFI for an elegant portable way of producing an undefined value!! 2014-10-04T18:30:11Z ilammy: But I believe both are said to be 'unspecified' in the standard. So they are to be _some_ value. 2014-10-04T18:30:14Z DerGuteMoritz: HisaoNakai: yeah that's pretty cool! 2014-10-04T18:31:33Z HisaoNakai: DerGuteMoritz: what sorta software do you folks make? o.o 2014-10-04T18:32:00Z BossKonaSegwaY joined #scheme 2014-10-04T18:33:42Z DerGuteMoritz: HisaoNakai: all kinds; our latest project was a messenger we built for a German mobile phone company which uses a common backend for Android and iOS written in CHICKEN 2014-10-04T18:33:54Z DerGuteMoritz: sorry, mobile network provider, not phone company 2014-10-04T18:34:07Z HisaoNakai: oooh o.o 2014-10-04T18:40:23Z tadni joined #scheme 2014-10-04T18:42:10Z Guest_____ joined #scheme 2014-10-04T18:42:19Z Guest_____: Hi how would I check if the variable given is an integer? 2014-10-04T18:42:40Z Guest_____: So (define (function x) 2014-10-04T18:43:50Z Guest_____: Is that even possible 2014-10-04T18:45:15Z DerGuteMoritz: Guest_____: (integer? x) 2014-10-04T18:45:25Z Guest_____: Using R5RS 2014-10-04T18:45:28Z DerGuteMoritz: yep 2014-10-04T18:45:35Z DerGuteMoritz checks again just to be sure 2014-10-04T18:45:45Z DerGuteMoritz: yeah, it's in R5RS 2014-10-04T18:46:33Z DerGuteMoritz: got to go, ciao everyone 2014-10-04T18:51:18Z taylanub: ilammy: it's "unspecified" not "undefined" :P 2014-10-04T18:51:55Z taylanub: DerGuteMoritz: there's no guarantee that every expression returning an unspecified value returns the same value 2014-10-04T18:52:09Z taylanub: I really hope R8RS will make stuff return zero values instead. so much cleaner. 2014-10-04T18:52:25Z ilammy: yeah, I just grepped the r7rs and 'undefined' is mentioned only in the context of letrec and some error conditions 2014-10-04T18:52:37Z Guest_____: I want to check if a value is an integer. If it isnt, I want to return the #f 2014-10-04T18:52:55Z taylanub: Guest_____: there's `integer?', or do you have to implement it yourself? 2014-10-04T18:52:55Z Guest_____: (define (Div23 x) (cond ((not (integer? x)) #f)) 2014-10-04T18:53:26Z Guest_____: My teacher never taught integer? 2014-10-04T18:54:40Z taylanub: by the way you might want to pick a proper nick with the command "/nick nickgoeshere" 2014-10-04T18:54:53Z Guest_____ is now known as ininininfkjg 2014-10-04T18:54:57Z ininininfkjg: http://paste.lisp.org/display/143941 2014-10-04T18:55:00Z taylanub: yeah, much better :P 2014-10-04T18:55:12Z taylanub: Jeebus, it's even longer 2014-10-04T18:55:21Z ininininfkjg: I got #t #t #t #t #t #f 2014-10-04T18:55:36Z ininininfkjg: But its supposed to be #f #t #t #t #t #f 2014-10-04T18:55:53Z ininininfkjg is now known as hqrtlx 2014-10-04T18:56:00Z taylanub: -6 can be divided by 2 and 3 though 2014-10-04T18:56:11Z hqrtlx: But I put the integer check first 2014-10-04T18:56:18Z taylanub: -6 is an integer 2014-10-04T18:56:42Z hqrtlx: ... *Facepalm* 2014-10-04T18:56:44Z taylanub: there's also 'positive?' and 'negative?' and 'zero?' if you want that 2014-10-04T18:56:45Z hqrtlx: Im sorry. 2014-10-04T18:56:46Z ilammy is now known as nickgoeshere 2014-10-04T18:57:08Z visualshock joined #scheme 2014-10-04T18:58:15Z nickgoeshere is now known as ilammy 2014-10-04T18:58:38Z hqrtlx: This works right? ((not (integer? x)) #f) ((negative? x) #f) 2014-10-04T18:59:47Z taylanub: yeah. could also use (or (not (integer? x)) (negative? x)) 2014-10-04T19:00:26Z hqrtlx: Oh thanks 2014-10-04T19:02:20Z hqrtlx quit (Quit: Page closed) 2014-10-04T19:02:53Z lrs quit (Ping timeout: 260 seconds) 2014-10-04T19:03:16Z Kabaka quit (Ping timeout: 260 seconds) 2014-10-04T19:06:26Z lrs joined #scheme 2014-10-04T19:08:03Z lrs: ilammy, 2014-10-04T19:08:11Z lrs: How would you write that with if? 2014-10-04T19:08:31Z ilammy: which that? 2014-10-04T19:08:47Z lrs: (define (listt? list) 2014-10-04T19:08:47Z lrs: (or (null? list) 2014-10-04T19:08:47Z lrs: (and (pair? list) (listt? (cdr list))))) 2014-10-04T19:10:20Z ilammy: (define (listt? list) (if (null? list) #t (if (pair? list) (if (listt? (cdr list)) #t #f) #f))) 2014-10-04T19:11:33Z ilammy: (define (listt? list) (if (null? list) #t (if (pair? list) (listt? (cdr list)) #f))) 2014-10-04T19:11:51Z ilammy: even like this, to keep if tail-recursive 2014-10-04T19:14:44Z alexei___ joined #scheme 2014-10-04T19:17:04Z aftershave quit (Remote host closed the connection) 2014-10-04T19:20:23Z Kabaka joined #scheme 2014-10-04T19:36:45Z gravicappa quit (Ping timeout: 272 seconds) 2014-10-04T19:45:42Z joobus joined #scheme 2014-10-04T19:45:57Z joobus quit (Remote host closed the connection) 2014-10-04T19:46:41Z BossKonaSegwaY quit (Ping timeout: 244 seconds) 2014-10-04T20:00:33Z romcgb joined #scheme 2014-10-04T20:05:57Z lrs: ilammy, hmm 2014-10-04T20:06:42Z lrs: ilammy, Can you explain it in detail? 2014-10-04T20:06:54Z lrs: (if (pair? list) (if (listt? (cdr list)) #t #f) #f))) 2014-10-04T20:10:15Z BossKonaSegwaY joined #scheme 2014-10-04T20:19:41Z [Batou] joined #scheme 2014-10-04T20:21:00Z HisaoNakai quit (Ping timeout: 246 seconds) 2014-10-04T20:28:45Z [Batou] quit (Ping timeout: 260 seconds) 2014-10-04T20:31:38Z drdanmaku quit (Quit: Connection closed for inactivity) 2014-10-04T20:37:16Z romcgb quit (Ping timeout: 250 seconds) 2014-10-04T20:38:03Z kazimir42 quit (Ping timeout: 264 seconds) 2014-10-04T20:55:42Z theseb joined #scheme 2014-10-04T20:58:56Z hiroakip quit (Ping timeout: 250 seconds) 2014-10-04T21:17:19Z visualshock quit (Quit: Leaving) 2014-10-04T21:37:44Z Kabaka quit (Ping timeout: 272 seconds) 2014-10-04T21:41:11Z bars0 joined #scheme 2014-10-04T21:41:45Z Kabaka joined #scheme 2014-10-04T21:43:36Z fridim__ quit (Ping timeout: 246 seconds) 2014-10-04T21:46:23Z lrs: ilammy, Can you explain what the difference is between those two 2014-10-04T21:50:46Z Gyps joined #scheme 2014-10-04T22:01:07Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-10-04T22:03:41Z BossKonaSegwaY quit (Ping timeout: 272 seconds) 2014-10-04T22:04:36Z aranhoide quit (Ping timeout: 246 seconds) 2014-10-04T22:06:18Z Nizumzen joined #scheme 2014-10-04T22:15:22Z ilammy: lrs, :ping: 2014-10-04T22:15:30Z lrs: ilammy, 2014-10-04T22:15:46Z ilammy: the difference is in that tail recursion thing 2014-10-04T22:16:25Z ilammy: if it is (if (listt? (cdr list)) #t #f) then the first call to listt? will have to wait until the second one from this 'if' returns 2014-10-04T22:16:56Z ilammy: but if it's just (listt? (cdr list)) then no such thing happes 2014-10-04T22:17:25Z ilammy: so the second variant will never cause a stack overflow for large lists 2014-10-04T22:17:31Z bars0 quit (Quit: leaving) 2014-10-04T22:17:31Z ilammy: but the first one might 2014-10-04T22:20:38Z BossKonaSegwaY joined #scheme 2014-10-04T22:22:30Z ilammy: talk to me, lrs, or i'll think i have just killed you with brain explosion... 2014-10-04T22:23:04Z lrs: Hmmm 2014-10-04T22:23:36Z Gyps quit (Quit: Gyps) 2014-10-04T22:24:13Z lrs: ilammy, I dont get it 2014-10-04T22:24:33Z lrs: The dfference is that the second thingy has a if in it 2014-10-04T22:26:01Z ilammy: the this is, listt? already returns #t or #f, so you don't have to check the returned value with an if to return #t or #f as a result 2014-10-04T22:26:19Z ilammy: as a result of recursive call 2014-10-04T22:30:22Z lrs scratches head 2014-10-04T22:30:51Z lrs: ilammy, The recurse ne is the one wiht #t #f in hte end right 2014-10-04T22:32:37Z ilammy: probably I should have written it like this: 2014-10-04T22:32:38Z ilammy: (define (listt? list) (if (null? list) #t (if (pair? list) (if (listt? (cdr list)) #t #f ) #f ) ) ) 2014-10-04T22:32:44Z ilammy: buee... 2014-10-04T22:32:55Z ilammy: (define (listt? list) 2014-10-04T22:33:15Z ilammy: (if (null? list) 2014-10-04T22:33:21Z ilammy: #t 2014-10-04T22:33:25Z ilammy: (if (pair? list) 2014-10-04T22:33:28Z ilammy: (if (listt? (cdr list)) 2014-10-04T22:33:32Z ilammy: #t 2014-10-04T22:33:35Z ilammy: #f ) 2014-10-04T22:33:39Z ilammy: #f ) ) ) 2014-10-04T22:34:06Z hiyosi quit (Ping timeout: 272 seconds) 2014-10-04T22:34:47Z ilammy: Now, you see, it's pretty dumb to check the return value of (listt? (cdr list))--which is either #t of #f--to return #t if it is #t and #f if it is #f 2014-10-04T22:35:13Z ilammy: you can simply return it, without this third if 2014-10-04T22:35:37Z lrs: Is it 2014-10-04T22:35:57Z lrs: (if (pair? list) then do (if (listt? (cdr list)) 2014-10-04T22:36:35Z ilammy: yeah, just pay attention to the parenthesis 2014-10-04T22:36:50Z lrs: What does pair do 2014-10-04T22:36:51Z ilammy: if (pair? list) then do (if (listt? (cdr list)) ...) 2014-10-04T22:37:07Z ilammy: and if (listt? (cdr list)) then return #t, otherwise #f 2014-10-04T22:37:33Z ilammy: it checks whether its argument is a pair... returns #t or #f 2014-10-04T22:39:51Z lrs: How would you explain it 2014-10-04T22:39:52Z lrs: In like 2014-10-04T22:39:58Z lrs: A more.. machine-near way. 2014-10-04T22:40:04Z lrs: Uh. 2014-10-04T22:40:12Z lrs: (pair? lst 2014-10-04T22:40:18Z lrs: The pair in this problem is 2014-10-04T22:40:29Z ilammy: About what? ifs or pair? 2014-10-04T22:40:31Z lrs: cons 1(cons 2(cons 3 '()))) 2014-10-04T22:40:35Z lrs: Yeah 2014-10-04T22:41:38Z ilammy: uh? 2014-10-04T22:42:01Z ilammy: cons constructs pairs, for example (cons 1 2) ==> (1 . 2) -- this is a pair 2014-10-04T22:42:30Z ilammy: lists are constructed from pairs, (1 2 3) = (1 . (2 . (3 . ()))) 2014-10-04T22:43:03Z ilammy: but not all things, which are pairs, are also lists 2014-10-04T22:43:36Z ilammy: cdr of the pair has to be either another list (which is a pair which cdr is...), or an empty list 2014-10-04T22:43:55Z ilammy: null? checks whether something is an empty list 2014-10-04T22:44:08Z ilammy: pair? checks for pairs, and cdr returns cdr 2014-10-04T22:50:34Z lrs: So if I do 2014-10-04T22:50:41Z lrs: (pair? (list 1 2 3) 2014-10-04T22:50:43Z lrs: It says 2014-10-04T22:51:01Z lrs: (1 <<--- first pair . (2 . (3 . ()))) <----- second pair 2014-10-04T22:51:24Z askatasuna joined #scheme 2014-10-04T22:51:45Z lrs: Does it loop until the end or what? until it goes to 0 2014-10-04T22:51:52Z lrs: Or how does it work 2014-10-04T22:52:03Z lrs: I mean ()' 2014-10-04T22:53:20Z askatasuna quit (Quit: WeeChat 1.0.1) 2014-10-04T22:54:57Z ilammy: no, the list? is the one that should loop 2014-10-04T22:55:26Z ilammy: pair? will just say #t for (1 2 3) _exactly because_ (1 . anything) is a pair 2014-10-04T22:55:43Z ilammy: it will also say #t for (1 . 2) 2014-10-04T22:55:48Z askatasuna joined #scheme 2014-10-04T22:55:48Z ilammy: while list? returns #f 2014-10-04T22:56:10Z masm quit (Ping timeout: 272 seconds) 2014-10-04T22:56:46Z turbofail joined #scheme 2014-10-04T23:00:00Z hiyosi joined #scheme 2014-10-04T23:03:01Z askatasuna quit (Quit: WeeChat 1.0.1) 2014-10-04T23:05:00Z hiyosi quit (Ping timeout: 260 seconds) 2014-10-04T23:07:17Z jeapostrophe quit (Ping timeout: 245 seconds) 2014-10-04T23:11:09Z lrs: ilammy, I meant 2014-10-04T23:12:00Z lrs: (if (pair? list) < checks if list is a pair and if it is it does the (if(listt? (cdr list= 2014-10-04T23:12:16Z lrs: Im not really sure about the uh... "chain of actions" or arguments, parenthesis or whatever 2014-10-04T23:12:17Z ilammy: yes 2014-10-04T23:12:28Z lrs: So if that is true 2014-10-04T23:12:35Z lrs: It will start doing the if 2014-10-04T23:12:41Z lrs: That says if cdr is a list 2014-10-04T23:12:47Z lrs: It will give true or fale or something 2014-10-04T23:12:59Z ilammy: the parenthesis denote the beginning and the end of... things 2014-10-04T23:13:16Z lrs: I get that 2014-10-04T23:13:23Z lrs: But which one says "run" 2014-10-04T23:13:24Z ilammy: yes 2014-10-04T23:13:35Z ilammy: what run?.. 2014-10-04T23:13:37Z lrs: Or is it just a check 2014-10-04T23:13:38Z lrs: ? 2014-10-04T23:14:31Z lrs: Or rather 2014-10-04T23:14:45Z lrs: Why does it check that if the cdr stuf is a list? 2014-10-04T23:14:58Z lrs: (listt? (cdr list) 2014-10-04T23:15:00Z lrs: That one 2014-10-04T23:17:10Z ilammy: what do you mean by why?.. 2014-10-04T23:17:24Z ilammy: that is the function listt? you wrote that checks whether something is a list 2014-10-04T23:17:43Z ilammy: and it does check whether it is a list, even when listt? itself calls listt? 2014-10-04T23:24:04Z ilammy quit (Ping timeout: 246 seconds) 2014-10-04T23:26:15Z tadni quit (Remote host closed the connection) 2014-10-04T23:29:15Z oldskirt quit (Read error: Connection reset by peer) 2014-10-04T23:29:37Z oldskirt joined #scheme 2014-10-04T23:30:46Z tadni joined #scheme 2014-10-04T23:31:26Z tadni` joined #scheme 2014-10-04T23:34:29Z oldskirt quit (Ping timeout: 260 seconds) 2014-10-04T23:43:05Z lrs: ilammy I think I have a problem with like, the "recursive" shit or something 2014-10-04T23:43:09Z lrs: I dont really get the 2014-10-04T23:43:13Z lrs: (listt? (cdr list) 2014-10-04T23:43:21Z lrs: It says 2014-10-04T23:43:27Z lrs: if (pair? list) is fales 2014-10-04T23:43:28Z lrs: It will do 2014-10-04T23:43:35Z lrs: (listt?? (cdr list)) 2014-10-04T23:45:45Z tadni` quit (Remote host closed the connection) 2014-10-04T23:45:47Z tadni quit (Remote host closed the connection) 2014-10-04T23:45:52Z davexunit joined #scheme 2014-10-04T23:47:05Z c107 quit (Remote host closed the connection) 2014-10-04T23:50:58Z tadni joined #scheme 2014-10-04T23:56:25Z yuv- quit (Ping timeout: 260 seconds) 2014-10-04T23:57:16Z tadni quit (Remote host closed the connection) 2014-10-04T23:59:04Z yuv- joined #scheme