<please_help>at the very, very least it should not take more than 0.07s, and it would be better if it was in the 0.01s and under range <zacts>mark_weaver: davexunit: hey yo. I just got the teacher's guide for SICP in the mail <zacts>I like it both for the content, and for the nostalgia <zacts>mark_weaver: it has a few more exercises, and talks about the concepts more fully <zacts>it's like a map for tackling SICP <zacts>it also discusses the purpose behind many of the exercises <zacts>it's only like 200 pages long I think, it's a relatively thin book, 1/4 of the thickness of SICP itself <zacts>It really reads like a guide book, like if you are at a museum or art gallery, it describes your way thru the gallery. <zacts>the appendix explains which features of scheme are added when <mark_weaver>A quote from Edsger Dijkstra: 'LISP has been jokingly described as "the most intelligent way to misuse a computer". I think that description a great compliment because it transmits the full flavor of liberation: it has assisted a number of our most gifted fellow humans in thinking previously impossible thoughts.' <nalaginrut>well, there's always speople hate Lisp, end of story ;-P <nalaginrut>well, there's always silver bullet from haters: people hate Lisp, end of story ;-P <zacts>the only thing that matters is if it's fun <zacts>and lisp, especially scheme and elisp, can be fun <sigmundv>I'm new to this channel and not programming anything in Scheme <sigmundv>The parentheses have scared me off so far... Anyone care to share their story about how they got into Scheme? <ArneBab>mark_weaver: that quote is great! (I just added it to my list of quotes) <ArneBab>sigmundv: Can I point you to the ebook I’m writing about how I came to Scheme? ☺ <wleslie>at some point I read sicp and ended up liking the language <wleslie>first class functions, and very hygenic (incidentally, the same things I also like about python) <wleslie>especially in guile which has a great module system. <ArneBab>wleslie: what’s your experience about the difference between Python and Guile? I mostly have my own experience but I’m not sure how much that is generalizable. <sigmundv>I think I will read SICP at some point as well. My main language is Python, so I'll read your book with great interest, ArneBab <wleslie>I've found them very similar. python seems to have more up-to-date modules. <civodul>ArneBab: i'm not a native speaker, but I think it should be "Contrary to my expectations" (instead of "Despite all my expectations") <ArneBab>sigmundv: I hope you enjoy it! (you might want to reload: I just updated it) <ArneBab>wleslie: my experience is that Python is more polished - it feels simpler. <ArneBab>wleslie: stuff like getting keyword arguments directly as dictionary and such (in Guile Scheme you have to parse them yourself) <ArneBab>wleslie: but on the other hand Guile gives me more freedom in programming. <wleslie>the things that I don't like about python revolve around the way it grew up, such as not having first-class functions until 2.2ish? <ArneBab>wleslie: for me it’s that I ran into limitations of the language, which are likely intentional to make code easier to reuse, but which started hurting me as I went of the trodden paths. <wleslie>you did the hurd RPC integration stuff, yes? <ArneBab>wleslie: only a very small part of that <ArneBab>I felt that I had explored most of what I could do with Python without resorting to C or only learning new libraries, and I wanted to see what else is possible. <sigmundv>ArneBab: do you always use wisp when you program in Scheme? <ArneBab>sigmundv: nowadays I mostly do, yes. <ArneBab>sigmundv: except when I write stuff I want to discuss <ArneBab>sigmundv: or for small stuff like (/ 360 15.3) <ArneBab>when using the REPL as calculator I mostly use plain Scheme. <ArneBab>and I think that wisp only begins to become really useful when going to code samples which are bigger than a few lines. <ArneBab>for example in the little Schemer, I’d keep the parens for the first 90% of the book. <ArneBab>they only become confusing in the last few chapters where the code examples get bigger. <sigmundv>yeah, with small examples the parens don't really get in the way, but with bigger code it is a lot of noise <sigmundv>ArneBab: good point about generator-expressions vs traditional python. I prefer generator expressions (because I like laziness), but you're right that it is like a new lannguage <sigmundv>In fact python is a bit of everything; it tries to accomodate many different programming styles <ArneBab>I’m glad that that’s not just my impression ☺ <ArneBab>sigmundv: I think Python was much more restrictive earlier, so it’s foundation is a bit too restrictive which causes the feeling that it expands by loosing touch with itself. <lloda`>please_help, I've posted a third solution using CBLAS http://paste.lisp.org/display/145645, it gives me .06s for shape '(64 28 28 3). The profile is 75% / (division) and 25% %run-finalizers, I don't think I can squeeze it more without leaving Scheme. <sigmundv>I don't know a lot about python before 2.6 or 2.7, which is when I got on board <ArneBab>I started with 2.4, and that already felt quite good. I only began batting my head at the limitations of Python in the last few years. ***paroneay` is now known as paroneayea
***dje is now known as xdje
<mark_weaver>"Python is an experiment in how much freedom programmers need. Too much freedom and nobody can read another's code; too little and expressiveness is endangered." (Guido van Rossum, 13 Aug 1996) <mark_weaver>So, it seems to me that Python was specifically designed to be restrictive, so that programmers are strongly encouraged (almost constrained) to program things in a particular style, to ensure uniformity. <mark_weaver>first, the style it strongly encourages is imperative object-oriented programming. <mark_weaver>if it encouraged functional programming instead, I'd like it better. <mark_weaver>but even so, programming styles evolve. and programmers using python are not really in a position to conveniently experiment with other styles. <mark_weaver>and frankly, I would resent being constrained to write in a particular style. <mark_weaver>it's probably appropriate for non-expert programmers, who are likely to botch things up if they have too much freedom. <mark_weaver>but I prefer to give people the freedom to write things the way they think is best (even if I might have some nasty words to say about how they use that freedom sometimes :) <davexunit>that's why Scheme is cool: we can code in a variety of paradigms, and can easily enough experiment with new styles. <davexunit>I thought of that possible confusion when I wrote it. <mark_weaver>"The Reasoned Schemer" is an example of the power of scheme to support radically different programming styles. <davexunit>where they change the evaluator to sort lazy evaluation and such <davexunit>mark_weaver: the reasoned schemer is where you implement a logic programming language, right? <davexunit>that's a paradigm I haven't explored much yet. <davexunit>I remember seeing something recently where someone used Clojure's logic programming module for generating dungeons for a video game. <zacts>I don't personally have a taste for python <please_help>I have trouble trying to define a generator for srfi-42 to work on arrays <please_help>using effectively the same definition, but with lists instead, seems to work. <mark_weaver>bah, the indentation got lost, it's hard to read :-( *mark_weaver copies it into an editor to fix it up