| 03:36 | <heycam> | jgraham, having SVG scripts firing all the same events as HTML, and having the same attributes -- that's what I'd like to aim for, with SVG2 |
| 03:37 | <heycam> | jgraham, what browsers do right now I have no idea :) |
| 08:11 | <Ms2ger> | "They're not intended to contradict" |
| 08:12 | <Ms2ger> | I'm glad to hear that |
| 10:12 | <Von_Davidicus> | Evening. |
| 10:21 | <Von_Davidicus> | XSLT can get information from multiple XML files, right? |
| 10:33 | <[tm]> | Von_Davidicus: yeah |
| 10:41 | <Von_Davidicus> | Sweet! It works! *Dancedancedance* |
| 10:42 | <Von_Davidicus> | My XSLT file is becoming more and more of a conceptual disaster by the minute! Oh, if only I had a moustache to twirl! |
| 10:42 | <gsnedders> | XSLT seems to often end up like that. |
| 10:43 | Von_Davidicus | cackles evilly. |
| 10:44 | <Von_Davidicus> | Actually, what I want is a camera--that I might photograph my teacher's face when I show him how I can make the simplest things complicated. |
| 10:45 | <gsnedders> | I'm sure you can find some over-complicated camera. |
| 10:45 | <jgraham> | odinho: Didn't we release our XHR testsuite already? |
| 10:45 | <Von_Davidicus> | Well... no, what I meant is the website I'm making for an assignment. |
| 10:45 | <gsnedders> | jgraham: The XHR/CORS one? |
| 10:46 | <jgraham> | Pretty sure annevk got it released during some spec transition |
| 10:46 | <jgraham> | gsnedders: Yes |
| 10:46 | gsnedders | has no knowledge of that |
| 10:47 | <jgraham> | http://w3c-test.org/webapps/XMLHttpRequest/tests/submissions/Opera/ |
| 10:48 | <jgraham> | Oh it looks like there are more tests that aren't released yet |
| 10:48 | <jgraham> | That sucks |
| 10:48 | <gsnedders> | Is there anyone it doesn't suck to be? |
| 10:48 | <Von_Davidicus> | I'm in a rather silly situation: I must take a basic HTML course, even though I have done website coding professionally (college rules). My most recent assigment was to create a series of webpages on whatever topic--I chose Rune Words from Diablo II: Lord of Destruction. And, well... I am making things complicated. |
| 10:48 | <jgraham> | gsnedders: I'm not sure I understand the question |
| 10:50 | <gsnedders> | jgraham: http://open.spotify.com/track/1Ns3qh9eOmLZZ8mNbfSPT9 |
| 10:50 | <Von_Davidicus> | Why settle for HTML, when you can use XML + XSLT + WTH? |
| 10:51 | <gsnedders> | Von_Davidicus: Because you'll get marked down for needless complexity the teacher doesn't understand? |
| 10:53 | <Von_Davidicus> | Even if I am, I think I'll have made my point--that I've done this sort of thing before. |
| 11:01 | <gsnedders> | FAILED (errors=2710, failures=1345) |
| 11:01 | <Von_Davidicus> | ??? |
| 11:01 | <gsnedders> | Progress on html5lib on Python 3! |
| 11:05 | <Von_Davidicus> | Ah./ |
| 11:23 | <gsnedders> | UnicodeEncodeError: 'utf-8' codec can't encode character '\ud800' in position 0: surrogates not allowed |
| 11:23 | <gsnedders> | Yay! |
| 11:31 | <jgraham> | nice |
| 11:35 | <gsnedders> | Disallowing invalid Unicode strings does seem like a decent change. |
| 12:06 | <gsnedders> | jgraham: Amazingly, simpletree is the most annoying thing to get working with Py3 |
| 12:08 | <gsnedders> | (the real fun is can I get 2to3 and then 3to2 to produce something working, which should then have all strings as Unicode!) |
| 12:58 | <Von_Davidicus> | Almost done updating my XSLT file. Just one last trick I have to pull off before I can claim it's complete. :) |
| 12:58 | <Von_Davidicus> | Actually two more tricks, but the second one is getting a bit over-the-top. |
| 13:01 | <Von_Davidicus> | Question: Would you agree with the statement "XSLT is easier to understand when you think of it as a programming language, rather than a markup language"? |
| 13:02 | <AryehGregor> | I would also agree with the statement "XSLT is easier to understand when you think of it as a programming language, rather than a disposable paper cup". |
| 13:02 | <AryehGregor> | Generally it tends to be easier to understand things when one thinks about them as they are. |
| 13:04 | <Von_Davidicus> | Well... one guy I know decided that a short essay I wrote about XSLT was full of... erm, leavings... and said that he quit reading after I said that XSLT was a programming language, not really a markup language. |
| 13:06 | <Von_Davidicus> | My response was that it had "if" statements, it had "loops", it had input (an XML file), it had output (an XML DOM), and it was a pain in the butt to figure out, so it felt like a programming language to me. |
| 13:11 | <AryehGregor> | It's definitely a programming language. |
| 13:12 | <AryehGregor> | What's it marking up? |
| 13:17 | <Von_Davidicus> | Well, I'm not sure. I know it's an XML-based language, and the last two letters stand for "Markup Language" |
| 13:17 | <Philip`> | It's much more useful to look at what something is, than at what its name says it is |
| 13:18 | <Von_Davidicus> | Point taken. |
| 13:20 | <jgraham> | Well yeahFor sanity I find it is best not to look at XSLT at all |
| 13:20 | <jgraham> | s/Well yeah// |
| 13:21 | <Von_Davidicus> | How about Schema? do you ever look at XML Schema? :) |
| 13:21 | <Philip`> | Of course not |
| 13:21 | <Ms2ger> | What he said |
| 13:21 | <jgraham> | XML Schema are very important |
| 13:22 | <Ms2ger> | Actually, Philip` might look at XML Schema more often than at his canvas tests |
| 13:22 | <jgraham> | They are the perfect example of why, just because something is in a W3C spec, it doesn't mean it's a good idea |
| 13:22 | <Von_Davidicus> | ... but... but... *Has used schemas several times.* |
| 13:23 | <Ms2ger> | Don't worry |
| 13:23 | <Ms2ger> | You're already lost |
| 13:23 | <Von_Davidicus> | ??? |
| 13:23 | Philip` | sometimes gets the feeling that people write XML Schema schemas out of a sense of obligation ("we're designing an XML-based language and XML-based languages are meant to have Schemas, right?") rather than because they have any use for it |
| 13:24 | <Von_Davidicus> | Personally, I've found Doctypes more useful. I can specify Entities in them. |
| 13:24 | <jgraham> | Happily EmotionML provides those people with a convenient way to express the frustration this presumably causes |
| 13:24 | <Ms2ger> | The way that people write dtds because they want to use <blink> to make a point and they're employed by the W3C? |
| 13:27 | <jgraham> | Oh actually it turns out that EmotionML doesn't allow yu to express any emotions at all |
| 13:27 | Philip` | wrote a (internal) DTD because he wanted to use <canvas> in an XHTML 1.0 document without the validator noticing |
| 13:27 | <jgraham> | Because it needs an add on emotion vocabulary |
| 13:27 | Philip` | subsequently learned the error of his ways |
| 13:27 | <jgraham> | And the WG couldn't agree on a set of emotions to include by default |
| 13:28 | <jgraham> | So instead they published a Note suggesting possible emotions that you might want to express |
| 13:28 | <jgraham> | (using URIs to provide emotion namespacing of course) |
| 13:28 | <Von_Davidicus> | So what do you meant, I'm already lost? |
| 13:32 | <Philip`> | Von_Davidicus: You have strayed from the path of righteousness (i.e. of general scepticism and cynicism about XML and all related technologies) and there is no hope of recovery |
| 13:34 | <Von_Davidicus> | Yes. Yes, there is. And I have followed that path as well. On that path, there is a signpost, and it reads "<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">" |
| 13:34 | <Von_Davidicus> | :D |
| 13:34 | <Philip`> | (I'm not sure that's true, though - some people have got better) |
| 13:36 | <Philip`> | The IETF is stuck in a layby just off the path to righteousness, so you don't want to go that way either :-) |
| 13:37 | <Von_Davidicus> | Yes, I've done pages in HTML 2.0--as a lark. |
| 13:37 | <Von_Davidicus> | To be honest, the *only* times I've done a webpage that *required* XML technologies was when I did a webpage that was XHTML + SVG (and maybe + MathML). The rest, well--HTML does fine. |
| 13:42 | <webben> | jgraham: EmotionalML is one of the funnier projects to come out of web standards works. :) |
| 13:43 | <Von_Davidicus> | So why are you all so cynical about XML? |
| 13:44 | <webben> | Von_Davidicus: http://wiki.whatwg.org/wiki/Namespace_confusion would be the start of an answer. |
| 13:45 | <webben> | Von_Davidicus: See also http://wiki.whatwg.org/wiki/Why_no_namespaces |
| 13:45 | <webben> | I think someone produced a similar document for why draconian error parsing is not such a great idea |
| 13:45 | <AryehGregor> | Von_Davidicus, you know HTML5 supports inline SVG/MathML, right? |
| 13:45 | <AryehGregor> | So that doesn't require XML. |
| 13:45 | <AryehGregor> | (anymore) |
| 13:46 | <Von_Davidicus> | I do know that. |
| 13:46 | <webben> | Von_Davidicus: http://annevankesteren.nl/2005/11/draconian ... there have been other examples |
| 13:48 | <webben> | Von_Davidicus: There's little more persuasive than XML experts' content becoming inaccessible thanks to serving XML not text/html. |
| 13:49 | <webben> | Of course, browsers increasingly give up and apply a HTML parser to broken XML, but then you might as well author HTML in the first place… |
| 13:49 | <Von_Davidicus> | What I hope to pull off sometime is XHTML + SVG + SMIL + MusicML + MathML (if I need the last)--but that project can wait for now. |
| 13:49 | <Von_Davidicus> | annevk, why does your website say "SVG Sucks"? |
| 13:49 | <webben> | Von_Davidicus: Trying to produce content that can be accessed in zero browsers? ;) |
| 13:51 | <webben> | Von_Davidicus: It's a joke. (The image is SVG: http://annevankesteren.nl/img/daddy ) |
| 13:53 | <Von_Davidicus> | Ah, okay. |
| 13:54 | <Von_Davidicus> | Webben: Oh, I can do that: Just build a webpage whose content *cannot* be stolen, and I'm good. No, I've wanted to see if I could create a game using nothing but markup languages. |
| 13:54 | <Von_Davidicus> | And CSS and JavaScript. |
| 15:35 | <Tyson_> | Any account creators here? |
| 15:36 | <Tyson_> | I need an account on the wiki |
| 15:36 | <Tyson_> | Please ? |
| 15:47 | <Ms2ger> | annevk, maybe? |
| 17:10 | <jgraham> | I'm not sure who the wiki admins are. Perhaps annevk, Hixie, Lachy, AryehGregor? |
| 17:10 | <jgraham> | gsnedders: So, any progress? |
| 17:13 | <gsnedders> | jgraham: 14 errors, 25 failures (8, 13 in Py2), excluding simpletree. |
| 17:13 | <gsnedders> | Video games happened, and not watching Magnolia. |
| 17:13 | <jgraham> | Also, mercurial is making me a bit sad. I obviously use git too much |
| 17:14 | <jgraham> | It seems like not watching magnolia should have given you more time :) |
| 17:15 | <gsnedders> | *now |
| 17:15 | <gsnedders> | (Also, oh Tom Cruise's role in it…) |
| 17:16 | <jgraham> | Is that who you want to be when you grow up? |
| 17:17 | <gsnedders> | No. Hell no. Just, "really, just really?". |
| 17:24 | <jgraham> | To be fair "really, just really?" is what I think of Tom Cruise in real life too |
| 18:11 | <ShaneHudson> | Has there been any discussion of a html element for modal boxes? Currently it has to be done through javascript (or css I suppose) in quite a non semantic way |
| 18:14 | <webben> | ShaneHudson: http://dev.w3.org/html5/spec/commands.html#the-dialog-element and http://www.w3.org/WAI/PF/aria-practices/#modal_dialog |
| 19:09 | <Ms2ger> | jgraham, would you have time to land https://gist.github.com/2636212 at some point? |
| 19:26 | <gsnedders> | jgraham: We have some utterly weird bugs under Python 2. |
| 19:27 | <Ms2ger> | s/under Python 2//, surely |
| 19:28 | <gsnedders> | They're not weird under Python 3, they're obvious hard errors. |
| 19:33 | <gsnedders> | If you'd have told me Simpletree would be the hardest part of html5lib to get working under Python 3, I'd laugh. |
| 20:08 | <annevk> | I created an account for Tyson |
| 20:17 | <jgraham> | gsnedders: Such as? |
| 20:17 | <jgraham> | Also, what's the problem with simpletree, specifically? |
| 20:19 | <annevk> | http://images.4chan.org/v/src/1337537248434.png :) |
| 21:05 | <gsnedders> | jgraham: I eventually realized it was down to __unicode__ |
| 21:05 | <zewt> | heh |
| 21:05 | <zewt> | python 3 is one of the biggest botched transitions ever |
| 21:06 | <zewt> | it's like they were thinking: "everyone else needs a sane transition plan, but we're special and different and we don't need that nonsense" and years later everyone is still on 2.x as a result |
| 21:06 | <zewt> | perhaps only notable because python gets most stuff right, making that one really huge screwup stand out more |
| 21:07 | <gsnedders> | They had a transition plan, which has mostly worked without too much issue. It's just Python 2.x is "good enough" so people don't bother with it so much. |
| 21:07 | <gsnedders> | 2to3 does genuinely work for most stuff. |
| 21:08 | <zewt> | it's pretty much an insane transition plan, heh |
| 21:08 | <zewt> | until every library is working out of the box with 3, i won't touch it (and since everyone else thinks the same thing, people don't rush to support 3.x) |
| 21:10 | <gsnedders> | And because nobody uses Python 3, libraries won't bother because Python 3 doesn't provide much more. |
| 21:11 | <zewt> | if they were patient and released intermediary versions which always allowed code to be compatible with n-1 and n+1 versions, it would have gone much more smoothly |
| 21:12 | <gsnedders> | Eh, not sure they could have. |
| 21:12 | <gsnedders> | The Unicode change was always going to have to be a hard break. |
| 21:12 | <gsnedders> | And 2.6/2.7 include pretty much everything else. |
| 21:13 | <zewt> | not sure about that; might have taken some imagination |
| 21:13 | <gsnedders> | (Of course, post 3.0 releases have contained stuff not in 2.7) |
| 21:15 | <zewt> | well i should say rather than guaranteeing n-1 and n+1 compatibility, just allowing it--each new version might break code in the old one, but always allowing the code to be updated to work in both, so you never have code that requires the bleeding edge version |
| 21:15 | <gsnedders> | Eh, well, that's doable even with 2.x/3.x, just hard. |
| 21:16 | <gsnedders> | Because of Unicode being the default string type. |
| 21:16 | <zewt> | impractically hard and not designed to be done |
| 21:17 | <gsnedders> | It is somewhat designed to be done. |
| 21:18 | <gsnedders> | Support for u"" in Py3 is exactly for that reason. |
| 21:18 | <gsnedders> | Likewise b"" in Py2. |
| 21:21 | <zewt> | for example, a smoother transition would have been to make unicode the default without removing the str type; then leave it that way for a while before the str/unicode/bytes switch |
| 21:22 | <zewt> | that would have reduced the amount of incompatible changes done at once, so would probably have had less resistance |
| 21:23 | <gsnedders> | The *painful* part of the change would be dropping the implicit unicode/str conversion. |
| 21:24 | <zewt> | that never worked worth a damn anyway, heh |
| 21:25 | <Philip`> | It seems like the fundamental problem is that the 2->3 changes introduce more pain than benefit, and if you try to spread the pain over multiple 2.x versions so that people don't notice it, you're not actually making the situation any better - you're just tricking more people into accepting the pain |
| 21:25 | <zewt> | (since it always wants to default to ascii, for some unfathomable reason) |
| 21:26 | <zewt> | Philip`: when you take pain and spread it across a longer time period, there really is less pain :) |
| 21:26 | <zewt> | Philip`: but more importantly is that in practice, you can't have code that works in 2 and 3 (without 2to3, which is evil); a more gradual transition makes that more doable |
| 21:28 | <zewt> | also the fact that as a library developer, I don't want to spend time testing and supporting both 2 and 3, because there's no sign that 2 will go away any time soon; supporting 3.0 and 3.1 is less painful, since it's much more likely that the old version will fade away reasonably soon |
| 21:28 | <zewt> | it feels less like a permanent fragmentation |
| 21:28 | <Philip`> | Perl seems to have had a better approach - tell everyone that Perl 6 is the future and can be massively incompatible, so the language designers experiment with all sorts of crazy ideas in it, but never get around to implementing it properly, so no real user of the language has any difficulty in immediately seeing they should stick with the old stable Perl 5 |
| 21:29 | <zewt> | (theoretical 3.0 and 3.1, that is, with 3.1 introducing some incompatible changes but it being entirely reasonable to update my code to work in both) |
| 21:29 | <Philip`> | and then figure out which of the crazy ideas worked and gradually introduce them in the 5.x series |
| 21:29 | <zewt> | heh |
| 21:29 | <zewt> | i never use perl for anything except shell one-liners anymore |
| 21:29 | <Philip`> | until eventually Perl 5 ends up in a nicer state and Perl 6 can remain dead |
| 21:29 | <zewt> | because almost without exception, any time i write anything in perl I end up regretting it a few months later and rewriting it in python |
| 21:29 | <Philip`> | and everyone is happy |
| 21:31 | gsnedders | still likes Perl for stuff that is purely string manipulation |
| 21:31 | Philip` | finds that a surprising amount of stuff is string manipulation |
| 21:36 | <jgraham> | zewt: I am told that 3to2 is a better plan than 2to3 |
| 21:36 | jgraham | doesn't like perl, particularly for string manipulation |
| 21:36 | <jgraham> | If I wanted to use regexps for basic operations, I would kill myself |
| 21:37 | <zewt> | i'm told that sticking with 2 is a better plan than jumping hoops for a lazy transition plan :) |
| 21:38 | <zewt> | regexes are generally great for writing something quickly that you'll never be able to understand again, ever |
| 21:38 | <jgraham> | Also, 3.3 seems like it will be the release that finally has critical mass |
| 21:38 | <gsnedders> | FWIW, my plan for html5lib is to get everything running on Py3, and then use 3to2 in future for Py2. |
| 21:39 | <gsnedders> | Because then we actually have Unicode strings everywhere we should (unlike currently), and we get hard errors when we screw the Unicode/str difference up. |
| 21:42 | <jgraham> | http://www.perlmonks.org/?node_id=610450 <- this is pretty much what's wrong with Perl |
| 21:42 | <jgraham> | Well I say that |
| 21:43 | <jgraham> | That is pretty much one of a large number of things that is wrong with perl |
| 21:43 | Philip` | doesn't see what's wrong with that |
| 21:44 | <gsnedders> | Nor I. |
| 21:44 | Philip` | can write (and read) a regexp like that in far less time than it takes to look up whether the standard library function is called trim() or strip() and whether it trims all whitespace or just space characters etc |
| 21:46 | <zewt> | you have to squint much harder at a regex to make sure of exactly what it's doing; it takes a lot more mental bandwidth to interpret |
| 21:46 | <Philip`> | (Oh, looks like it's actually called foo.strip()) |
| 21:47 | <Philip`> | ((in Python, I mean)) |
| 21:48 | <jgraham> | The fact that about 50% of all sites on the internet are dedicated to the question of how to trim whitespace in perl suggests that it isn't a very satisfactory solution |
| 21:49 | <jgraham> | (OK not 50%, but apparently it was asked so often it made the FAQ) |
| 21:53 | <zewt> | incidentally, it's not like regexes are any harder to use in python for lack of a special-case native syntax |
| 21:53 | <Philip`> | jgraham: That's good since it means new Perl programmers start by asking a nice simple question, which can be easily answered by the FAQ or by other Perl programmers, and the power and flexibility and applicability of regexps is thereby demonstrated to the new programmer, giving them the tools they can use for all subsequent questions they might otherwise ask |
| 21:54 | <zewt> | new programmers should never ever touch regexes |
| 21:54 | <zewt> | not until they have enough experience with saner approaches to know when they're appropriate |
| 21:54 | <Philip`> | whereas in Python the answer is "use str.strip()" which is a special case that is useless for most other manipulations |
| 21:54 | <zewt> | what's it useless for? |
| 21:55 | <zewt> | it's a very common operation, and implemented sanely: strip, lstrip, rstrip with an optional parameter to say exactly what to strip |
| 21:56 | <Philip`> | It's useless for e.g. removing multi-character prefixes/suffixes |
| 21:56 | <Philip`> | which is only a minor variant of the problem |
| 21:57 | <zewt> | a rare one |
| 21:57 | <zewt> | rare problems don't belong in the stdlib :) |
| 21:58 | <zewt> | and you're not actually arguing for perl, since python has regexes too, heh (and makes them clean to use) |
| 21:58 | <Philip`> | Rare problems are (in aggregate) pretty common, so it's good to have a common way of solving them :-) |
| 21:59 | <zewt> | (nothing is quite as nasty as regexes in C, with double-escaping) |
| 22:01 | <tantek> | zewt - my favorite quote about regexes is the one from jwz |
| 22:01 | <jgraham> | Alternatively newcomers will try to do something simple, notice that it requires them to enter something that is barely distinguishable from line noise, and delete the perl binary from their harddrive |
| 22:02 | <jgraham> | Thereby causing a number of critical system scripts to fail |
| 22:02 | <jgraham> | and bricking their machine |
| 22:02 | <Philip`> | When you have to write "baz = re.sub(r'foo', r'bar', baz, flags=re.IGNORECASE)" vs "$baz =~ s/foo/bar/i", the weight of the syntax seems like a not insignificant drawback |
| 22:02 | <jgraham> | (I assume they are not unfortunate enough to be using windows. If they are, the added misfortune of encountering OPerl might require spending time in A&E) |
| 22:03 | <zewt> | i find i need to use regexes so rarely that having a native syntax just feels like core bloat |
| 22:04 | <zewt> | really the only benefit is that (in principle, at least) you can precompile the regex, which python can't do |
| 22:04 | Philip` | uses them rarely in Python because the syntax is painful and he can never remember it |
| 22:04 | <zewt> | eg. if you have a regex in an inner loop, and you want to avoid compiling the regex every time, you have to do it yourself |
| 22:05 | <zewt> | (it probably caches anyway; not sure, since it rarely matters to me) |
| 22:06 | <Philip`> | (Perl precompiles them in practice, not just in theory) |
| 22:06 | <Philip`> | (so you never have to worry about it) |
| 22:07 | <Philip`> | (unless you happen to use a variable inside the pattern, in which case you can just add the /o flag to say you're not going to change the variable so it can be cached) |
| 22:07 | <zewt> | you mean it caches; perl doesn't even support precompiling |
| 22:08 | <zewt> | (maybe it does now; I havn't touched it in quite a while :) |
| 22:09 | <zewt> | i find reading any $basic-esque language painful now, too |
| 22:09 | <zewt> | perl and php make me feel like someone's spitting punctuation all over the code |
| 22:10 | <tantek> | zewt - how would you compare coffeescript? |
| 22:11 | <zewt> | dunno; don't know what it is |
| 22:15 | <Philip`> | zewt: I'm fairly sure it does precompile them - try e.g. perl -MO=Concise -e's/foo/bar/' vs perl -MO=Concise -e'$x="foo"; s/$x/bar/' |
| 22:15 | <zewt> | .pyc = precompiling |
| 22:15 | <Philip`> | where the latter's syntax tree includes regcomp() stuff to handle the regexp at runtime, while the former doesn't since presumably it's doing it all beforehand |
| 22:16 | <zewt> | (minor, yes :) |
| 22:16 | <Philip`> | .pyc = cached bytecode |
| 22:16 | <tantek> | coffeescript is: http://coffeescript.org/ |
| 22:16 | <Philip`> | Caching != precompiling |
| 22:16 | <zewt> | pyc = compiled bytecode |
| 22:17 | <zewt> | tantek: not sure what the goal is, but first impression is unintuitive, overly novel, out of order expressions |
| 22:17 | <tantek> | goal is code that is more easily and quickly readable/writable than JS |
| 22:17 | <tantek> | but just as fast |
| 22:17 | <tantek> | better maintenance |
| 22:17 | <tantek> | less puncuation |
| 22:17 | <zewt> | call me a conservative when it comes to language design, but a language needs to have *serious* advantages to justify deviating from the style that pretty much all major languages today share |
| 22:17 | <tantek> | *punctuation even |
| 22:17 | <Philip`> | Perl and Python both compile into bytecode in RAM; the only difference is that Python caches it on disk afterwards |
| 22:18 | <tantek> | zewt - developer productivity is perhaps the biggest advantage possible |
| 22:18 | <zewt> | tantek: and needlessly deviating in language style reduces that sharply |
| 22:18 | <tantek> | and that's what coffeescript is apparently targetting. I haven't used it - but I've seen others be very productive with it |
| 22:19 | <tantek> | zewt - apparently the language style deviation is of minimal impact - devs pick up coffeescript very quickly |
| 22:19 | <tantek> | but in general I personally agree with the principle you mention of not unnecessarily deviating in language |
| 22:19 | <tantek> | avoiding NIH and all that |
| 22:19 | <zewt> | the style of this is a pretty massive turnoff to me |
| 22:19 | <tantek> | maximizing re-use |
| 22:20 | <zewt> | at least on first impression |
| 22:20 | <tantek> | ok - fair enough - that's a reasonable opinion |
| 22:20 | <zewt> | eg. out-of-order expressions; i really hate "y if x" |
| 22:20 | <zewt> | (Python makes that mistake with "y if x else z", which I strongly dislike) |
| 22:20 | <zewt> | C gets it right with x? y:z |
| 22:22 | <zewt> | (i'd call that one of the uglier bits of syntax in python; fortunately it's uncommon and isolated enough to not hurt often) |
| 22:22 | <tantek> | zewt - the ternary operator is quite portable: http://tantek.com/2012/090/t1/javascript-php-c-ruby-cassisproject-cassisjs |
| 22:23 | <zewt> | yep, lots of languages copy c's syntax (and I don't go far back enough to know if C copied it from something else) |
| 22:23 | <zewt> | which is another reason I don't like Python's, but the bigger one is it's just in a bizarre order--it's not just flipped (like y if x), it's twisted inside out |
| 22:25 | <tantek> | the non-standard order confuses me too - but I wonder if that's just because we're used to a standard order for such operations in programming languages |
| 22:26 | <zewt> | that's a pretty good reason to be confused by something :) |
| 22:26 | <zewt> | i can read it, i just have to untwist it mentally |
| 22:29 | <tantek> | right, but I wonder if that's just a short-term discomfort |
| 22:29 | <tantek> | like would we become proficient with a just a week or two of use |
| 22:30 | <zewt> | i'm "proficient" with it (python is my primary language these days); i just dislike it |
| 22:30 | <tantek> | oh I thought you meant coffeescript ok |
| 22:30 | <tantek> | I decided to go the other route and just use a more common subset across languages |
| 22:30 | <tantek> | hence CASSIS |
| 22:34 | <zewt> | tantek: i think the fundamental error in that language is the idea that typing is the bottleneck in programming |
| 22:34 | <zewt> | which at least for me couldn't be more wrong |
| 22:35 | <tantek> | it's *a* bottleneck for sure |
| 22:35 | <zewt> | not for me |
| 22:35 | <tantek> | I've been much more productive in weakly typed langs vs strongly typed langs |
| 22:35 | <tantek> | ymmv etc. |
| 22:35 | <zewt> | that's not typing speed, heh |
| 22:35 | <zewt> | afk |
| 22:46 | <wycats> | anyone around who works on Selectors API 2? |