IRC channel logs

2015-02-05.log

back to list of logs

*jgrant saves.
<please_help>daviid: on gitorious it seems
<please_help> https://gitorious.org/guile-ploy/guile-ploy/source/0c8dba711c79f8e2d545d91693ae0252727d3f31:ploy
<please_help>lloda`: 0.24s is way too slow for me
<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
<please_help>actually, nevermind
<please_help>I tested with 64 3 28 28 instead of 64 28 28 3
<please_help>your solution is actually better than expected
<zacts>mark_weaver: davexunit: hey yo. I just got the teacher's guide for SICP in the mail
<zacts>it's actually pretty cool
<zacts>I like it both for the content, and for the nostalgia
<mark_weaver>I've never seen the teachers guide
<mark_weaver>cool!
<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
<davexunit>I think I saw that for sale at MIT Press
<davexunit>sounds like a good supplement
<zacts>yes
<zacts>it's cool
<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
<nalaginrut>morning guilers~
<wleslie>Hey nalaginrut
<nalaginrut>heya
<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.'
<wleslie>there's a lot to like about EWD
<mark_weaver>indeed
<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
<civodul>Hello Guilers!
<sigmundv>Hi
<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? ☺
<sigmundv>please do, ArneBab!
<ArneBab>sigmundv: http://draketo.de/proj/py2guile/ “After 6 years of intense Python-Programming, I am starting into Guile Scheme. And despite all my expectations, I feel at home.”
<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>civodul: hm, yes. Thanks!
<ArneBab>sigmundv: I hope you enjoy it! (you might want to reload: I just updated it)
<sigmundv>cheers!
<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?
<wleslie>also async was ignored for so long
<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.
<sigmundv>ok
<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.
<sigmundv>yeah
<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
<dsmith-work>Thursday Greetings, Guilers
***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>I can understand the rationale for this.
<mark_weaver>however, I have a few problems with it.
<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 :)
<mark_weaver>my two cents...
<davexunit>mark_weaver: +1
<davexunit>that's why Scheme is cool: we can code in a variety of paradigms, and can easily enough experiment with new styles.
<mark_weaver>including styles that haven't yet been invented :)
<mark_weaver>well, I guess that's what you mean by "new styles"
<davexunit>yeah, but it's ambiguous.
<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>SICP, too.
<mark_weaver>(and I style that I find quite elegant)
<mark_weaver>indeed!
<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.
<mark_weaver>it's related to logic programming, yes
<davexunit>I remember seeing something recently where someone used Clojure's logic programming module for generating dungeons for a video game.
<davexunit>I thought that was quite awesome.
<zacts>I like that
<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>here's the code for the initial "dummy" one:
<please_help> http://paste.lisp.org/+34E7
*mark_weaver looks
<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
<dsmith-work>sneek: later tell zacts Python tastes like chicken.
<sneek>Got it.
<mark_weaver>please_help: you forgot the 'cc' argument
<mark_weaver>please_help: also you can use 'define-syntax-rule' for simple macros like this: http://paste.lisp.org/+34E9
<please_help>I see, thanks
<mark_weaver>yw!