Camelia, the Perl 6 bug

IRC log for #masakism, 2013-04-25

| Channels | #masakism index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
07:57 RichiH joined #masakism
08:16 woolfy joined #masakism
09:24 cognominal joined #masakism
11:22 Farow joined #masakism
11:36 j0se joined #masakism
12:37 GlitchMr joined #masakism
12:47 masak -op GlitchMr
12:55 cognominal afk for ~45 minutes
13:01 GlitchMr lol, ok ;-)
13:02 GlitchMr I'm just wondering how it will look. Actually, I have no idea why I joined, considering the channel has logs, but whatever.
13:04 masak there will likely not be much action here until Wednesday.
13:04 masak only anticipation :>
13:05 GlitchMr ;-)
13:07 GlitchMr 2013-05-01T16:00Z -- 2013-05-01T20:00Z
13:07 GlitchMr I assume it is in UTC
13:12 east GlitchMr: "GMT time is also referred to as "Z" or, phonetically, "Zulu" time"
13:14 GlitchMr Oh, I cannot read.
13:15 GlitchMr Why I haven't noticed it's ISO 8601...
13:19 masak GlitchMr: you can also follow the link in the gist. it will take you to the correct timestamp and show it in different time zones.
13:19 GlitchMr That page confused me when I entered it
13:29 masak anything you'd do to improve it?
13:52 pmichaud the link in the gist (when I looked) didn't actually show the UTC time anywhere.
13:53 masak it should show the time-in-all-timezones as a vertical line.
13:53 masak but -- correct -- I see no UTC+0 time either.
13:54 pmichaud yeah, so I wasn't entirely certain that the time it was displaying corresponded to the time in the gist
13:54 isBEKaml joined #masakism
13:54 masak since I'm in UTC+2 (CET), it shows 6:00 pm here, with a green line.
13:54 isBEKaml ooh, activity. :)
13:56 isBEKaml masak: 6pm? that's surely not right? It's 1930 hrs here where I am.
13:56 isBEKaml Oh, you must be on DST.
13:57 * isBEKaml stupidly gets confused by TZs.
13:57 masak yes, most of Europe is on DST.
13:57 masak and I wasn't talking about the current time, I was talking about the time of the workshop.
13:58 isBEKaml masak: ah, okay.
14:59 ggoebel joined #masakism
15:03 japhb isBEKaml, it's not stupid to be confused by TZs.  They're confusing all on their own.
15:16 ggoebel joined #masakism
15:20 isBEKaml japhb: yeah, spherical problems.
15:20 ggoebel_ joined #masakism
15:25 isBEKaml_ joined #masakism
15:27 isBEKaml joined #masakism
15:47 isBEKaml joined #masakism
15:48 isBEKaml japhb: yeah, spherical problems. :)
15:50 isBEKaml doh, sorry about that double message (lost connectivity and all) :|
16:53 Farow|2 joined #masakism
17:41 mjgardner joined #masakism
17:42 mjgardner I'll be attending the workshop on May 1.
18:07 raiph masak: thesis: "It is more difficult to achieve simplicity in a language whose runtime is known for the "DWIM" principle: "do what I mean"." # your reaction?
18:09 raiph (let's give that proposition the tag #simplicity)
18:09 raiph #readability thesis: "It is more difficult to achieve readability in a language whose community prides itself on clever shorthand"
18:10 raiph #elegance thesis: "it is more difficult to achieve elegance in a language which requires so many baroque decorations to accomplish basic things."
18:10 raiph (these are from http://www.reddit.com/r/coding/comments/1d1puj​/on_simplicity_readability_and_elegance_free/ )
18:11 raiph masak: i'm mulling these atm and intend to respond this afternoon
18:19 cognominal raiph: s/baroque/admnistrative/;   instead terse languages superficially look baroque, other language just look boring and are stalinian in their look (as in stalinain architecture) and in their coercive behaviour.
18:21 cognominal raiphL but the "baroque" in terse languages have a purpose. they are an huffmanization of some boring syntax.
18:23 raiph hmm. the poster seems to imply verbosity ("so many") of adverbs/adjectives ("decorations") for "basic things". that surprised me.
18:24 raiph what do you think s/he's talking about?
18:24 snearch joined #masakism
18:25 raiph cognominal: "baroque" is a derogatory evaluation so i'm basically ignoring that
18:27 mjgardner left #masakism
18:43 raiph masak: while my main concern is to fairly understand the posters points, I'm also wanting some rebuttal options. As such I'm now looking for a p6 example each of DWIM --> simplicity; shorthand --> readability; longhand --> readability; and p6 elegance contrasted with inelegance in some other respected and popular lang due to baroque decoration for something basic
19:01 Farow joined #masakism
19:09 GlitchMr https://projecteuler.net/problem=5
19:09 GlitchMr say [lcm] 1..20
19:09 GlitchMr Well, ok, that's too mathematical to be helpful
19:10 GlitchMr Then again, Haskell doesn't have bad solution for that too
19:13 GlitchMr foldl1 lcm [1..20]
19:22 moritz except that the 1 in 'foldl1' looks like cruft :-)
19:29 GlitchMr moritz, it's Haskell, not Perl 6.
19:29 GlitchMr It likes cruft.
19:30 GlitchMr It's still better than many other programming languages, nevertheless.
19:30 ggoebel joined #masakism
19:30 GlitchMr Hi, ggoebel
19:31 * masak backlogs
19:33 masak raiph: I really, really want to give a good response to that poster. his intent seems genuine.
19:34 masak raiph: let me try here first.
19:34 raiph masak: yeah. it really has me thinking
19:34 raiph here's what i have so far for his #simplicity point:
19:35 raiph "DWIM is an embodiment of the idea that the [coder] ... should not be stopped and forced to correct himself or give additional information in situations where the correction or information is obvious."
19:35 raiph DWIM is a 50 year old paradigm that is specifically aimed at letting users viscerally experience simplicity, especially newbies. It works.
19:35 raiph DWIM can have negative consequences, including creation of increased complexity in other regards. As in all things, there are tradeoffs.
19:35 masak raiph: my general rebuttal is that Perl has its roots in DWIM, clever shorthand and "baroque decorations" (which I take to mean "unfortunate syntax") -- what I *see* in practice is a community that loves its language, and can take it places, warts and all.
19:35 GlitchMr I don't think that DWIM in Perl was bad.
19:35 GlitchMr But here are some examples of bad DWIM - http://catb.org/~esr/jargon/html/D/DWIM.html
19:35 masak raiph: specifically, for each point:
19:36 masak raiph: I don't see DWIM and simplicity standing in opposition. at all. a Pythonista would perhaps have you think so, but I wouldn't, and I bet a Perler in general wouldn't.
19:36 GlitchMr It could be annoying if you typed "delete *$", and system assumed you meant "delete *".
19:37 masak raiph: in some senses natural languages and Perl embrace DWIM because the *world* embraces DWIM. it's just a kind of realism.
19:37 GlitchMr But I think that Perl is easy to learn, because it reminds natural language.
19:37 raiph masak: right. if you read what i just posted above i claim dwim is PRO simplicity (of a particular sort)
19:37 GlitchMr DWIM is one of things that make it seem more like natural language.
19:37 masak raiph: I concede the second point. but I don't think the (Modern) Perl community embraces clever shorthand.
19:39 masak raiph: as for the third point -- Perl, 5 in particular, has a number of syntactic warts. they're annoying, especially to outsiders. but it also has a number of syntactic conveniences. achieving elegance becomes a matter of preferring the latter. harder than in a better-designed syntax? yes. doesn't stop Perl programmers, though.
19:39 masak I'm gonna let it simmer for a bit now and not reply immediately :)
19:40 raiph masak: a culture that encourages haikus arguably encourages readability of its prose
19:41 GlitchMr move $zig target => $here;
19:42 GlitchMr I actually like indirect object notation. But I sort of agree it has lots of quirks.
19:42 * masak chuckles at SNRI's comment
19:43 ggoebel joined #masakism
19:43 GlitchMr Or, even
19:43 GlitchMr move $zig $here;
19:43 GlitchMr It feels like natural language... almost
19:43 GlitchMr I'm not Yoda to write $zig->move($here)
19:44 masak raiph: I guess part of the truth is this: I don't always prefer Perl for its *syntax* (though that's still part of it).
19:45 masak raiph: I prefer Perl mostly for its *semantics* -- and so, simplicity/elegance don't always come down to perfect syntax.
19:45 masak readability, admittedly, hinges mostly on this.
19:45 masak but as I said, other things save Perl there.
19:45 GlitchMr I find Perl readable.
19:45 GlitchMr I think it's mostly problem for non-Perl programmers.
19:46 GlitchMr It isn't Java, but it never intended to be Java.
19:46 GlitchMr It's different.
19:47 masak it certainly wasn't intended to be Java back in 1987 :P
19:47 GlitchMr It also depends on programmer. You can make awful code without indentation, function names that don't make sense, generic variable names, and so on in any language.
19:48 GlitchMr In Python, you can have awful indentation by randomly mixing tabs and spaces.
19:50 raiph masak: do you think dwim in perl embodies the dwim definition i put in "quotes" above?
19:51 raiph masak: do you see any validity to my point above about haikus and prose?
19:53 masak raiph: I think your definition is *correct*, but it feels too abstract.
19:54 masak raiph: to me, it's more like "DWIM is about not having to be overly specific"
19:54 raiph masak: it's from wikipedia. it may not match what larry means.
19:54 masak which says the same thing, more or less, but in fewer words.
19:54 masak oh, ok.
19:54 GlitchMr In Perl, you don't use 'System.out.print(it);'
19:54 GlitchMr You just 'print;'
19:54 masak re haikus and prose, that sounds nice, but I don't know what you mean by it. sounds like a metaphor for something.
19:55 masak GlitchMr: you make a lot of rather obvious points.
19:55 masak ;)
19:56 masak GlitchMr: (and still I don't see where you're heading with it)
19:56 GlitchMr I'm not sure myself anymore.
19:56 GlitchMr Perl allows you to make code as short as you like, or as long as you like.
19:57 GlitchMr If you don't like "print;", you can type "print STDOUT $_;"
19:57 GlitchMr It isn't idiomatic, but well, you can do that.
19:58 GlitchMr It doesn't say you have to make short code (APL, Mathematica), but it also doesn't say you have to make long code (Java).
19:58 GlitchMr It gives you choice.
20:03 masak aye.
20:03 masak but it'd be some weird kind of hubris to claim that Perl is alone in doing this :>
20:03 raiph masak: haikus = clever shorthand; prose = regular code; the fact a culture encourages writing of haikus does not mean its prose will suffer; indeed, the practice of writing haikus may improve prose best practice
20:04 masak though I would claim that we emphasize it quite a bit. that's what TIMTOWTDI is about, after all.
20:04 masak raiph: I think "clever" carries along a value judgement that I don't agree with. it sounds like "you're going to regret it, because it was too clever".
20:05 masak raiph: but often enough, when I use shorthand, it's for very good reasons. like in a one-liner that isn't meant to be used more than once (or during a 10-minute period).
20:05 raiph i was quoting the reddit commenter
20:05 masak yes, I know.
20:05 masak I
20:05 masak I'm just defending shorthand. :)
20:05 raiph right. i'm defending clever shorthand.
20:06 raiph just not in production code
20:06 masak modulo the word "clever", I agree with your point. :)
20:08 raiph ok. so i take it you disagree with the thesis that cultural support for haikus leads to better prose
20:08 masak hm.
20:08 masak I never saw golfing (for example) as something more than a fun side thing.
20:08 masak there will always be people who cannot wield the instrument properly. I think that was most of GlitchMr's point.
20:09 raiph ok. fun leads to better (serious) prose
20:09 raiph :)
20:09 masak in Perl, those people are in some sense more of a hazard. there are more ways to screw up.
20:09 raiph just give them lisp
20:09 masak I'm sorry, this conversation is currently blocking me from writing a blog post. my productivity alarm just went off.
20:09 raiph ok. thanks.
20:09 masak it's a very interesting conversation, though.
20:10 masak I hope we can resume it.
20:10 raiph later
20:10 masak aye.
20:10 * masak blogs
20:12 GlitchMr I also like how Perl makes sense. In C++, you could see "a + b" and have no idea what it does.
20:15 ggoebel joined #masakism
20:36 ggoebel joined #masakism
20:40 ggoebel GlitchMr: hi :-)
20:41 ggoebel connectivity issues here...
20:49 masak raiph: ok, I'm back.
20:49 masak raiph: sorry for so brusquely pausing the conversation before. :)
20:49 masak raiph: I see the reply you've made in the thread.
20:49 raiph de nada
20:50 masak raiph: fwiw, the "clever shorthand" *is* a form of elegance.
20:50 masak IMO.
20:50 raiph mine too
20:50 raiph sometimes
20:51 raiph when it's elegant. :)
20:51 Neighbour like when you want an array of values given a hashref and an array of keys?
20:51 masak but despite the good intentions of the guy, I'm unsure whether we'll really manage to dig beyond the surface layer of "Perl + elegance. but... I don't feel like they belong together!" -- "well, we do!"
20:52 masak Neighbour: s/array/list/g, but yes.
20:52 masak like that.
20:53 masak that elegance is especially interesting, because it rests on a semantic bit of sloppiness (arrays and hashes always flattening to lists in transit) that could very easily be confused for semantic ugliness.
20:54 Neighbour @{$_[1]}{@{$_[0]}}; <-- is definitely short, but does not really look elegant (though once you understand it, it might be)
20:55 masak oh, you really meant arrays.
20:56 masak I must confess that in a case like that, I'd rewrite it until it looked less... brace-y.
20:56 masak well actually, it depends.
20:57 raiph Neighbour: I was thinking you meant @a = $h{@b} # does that, er, DWIM? :)
20:57 Neighbour yes, i'm still just using the basics of perl...apparently :)
20:57 masak (on the context the code is in. will others read it? will I re-use it in lots of places?)
20:57 masak raiph: @h{@b} # ;)
20:57 masak raiph: and yes, I was thinking of that use case, too.
20:57 Neighbour masak: I stuffed it in a library function which nobody will probably dare look at
20:58 raiph that's P5 right?
20:58 Neighbour yes
20:58 Neighbour works with 5.8.8 even (oldest i've had to work with)
20:59 raiph i can't imagine p6ers being ok with code that looks like that
21:00 masak raiph: I replied: http://www.reddit.com/r/coding/comments/1d1puj/on​_simplicity_readability_and_elegance_free/c9mmkzk
21:00 Neighbour some p5ers probably aren't either :)
21:00 raiph heh
21:00 masak raiph: I'm probably not going to participate more in that comment thread now :)
21:01 labster good morning, #masakism
21:02 masak good morning, labster!
21:02 labster I have no problem believing in elegance in Perl.  Although I've been using an awful lot of Perl 6 lately, and that certainly helps
21:03 labster I do have a regex in perl 5 that I commented "# next time I'll use TECO to improve code readablity"
21:03 masak :)
21:04 masak hey, don't know TECO. it has that homoiconic goodness to it. :P
21:04 masak knock*
21:29 woolfy left #masakism
22:15 mtths joined #masakism

| Channels | #masakism index | Today | | Search | Google Search | Plain-Text | summary