--- Log opened Sun Jul 17 00:00:43 2016 |
00:19 | | gizmore [kvirc@Nightstar-g932cu.dip0.t-ipconnect.de] has quit [[NS] Quit: KVIrc 4.9.2 Aria http://www.kvirc.net/] |
00:23 | | Turaiel[Offline] is now known as Turaiel |
00:30 | | slavanap [slavanap@Nightstar-51r.be4.145.5.IP] has joined #code |
00:54 | | Kindamoody is now known as Kindamoody[zZz] |
01:51 | | Shady [ShadyGuru@Nightstar-8v9css.leh.ptd.net] has joined #code |
02:07 | | Shady [ShadyGuru@Nightstar-8v9css.leh.ptd.net] has quit [[NS] Quit: Yay, he's gone] |
02:26 | | catadroid` [catadroid@Nightstar-bqv83a.dab.02.net] has joined #code |
02:28 | | catadroid [catadroid@Nightstar-2m5l3r.dab.02.net] has quit [Ping timeout: 121 seconds] |
02:29 | | Vornotron [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection reset by peer] |
02:44 | | slavanap [slavanap@Nightstar-51r.be4.145.5.IP] has quit [[NS] Quit: Leaving] |
03:10 | | Shady [ShadyGuru@Nightstar-8v9css.leh.ptd.net] has joined #code |
03:28 | | crystalclaw|AFK is now known as crystalclaw |
03:41 | | Shady [ShadyGuru@Nightstar-8v9css.leh.ptd.net] has quit [[NS] Quit: Yay, he's gone] |
04:24 | | Shady [ShadyGuru@Nightstar-8v9css.leh.ptd.net] has joined #code |
05:32 | | Derakon is now known as Derakon[AFK] |
06:47 | | catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code |
06:49 | | Turaiel is now known as Turaiel[Offline] |
07:03 | | celticminstrel [celticminst@Nightstar-nhhr58.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
07:12 | < catalyst> | OKAY CLOJURE'S ASYNC TRANSDUCERS ARE AWESOME THAT WILL BE ALL |
07:12 | < catalyst> | ...I am a bit excited about this language |
07:19 | < catalyst> | I reinvented them whilst attempting to build a little GUI library wrapping JavaFX |
07:19 | | Shady [ShadyGuru@Nightstar-8v9css.leh.ptd.net] has quit [[NS] Quit: Yay, he's gone] |
07:32 | | * catalyst wonders if there's a known good place for webhosting nowadays |
07:32 | | crystalclaw is now known as crystalclaw|AFK |
08:14 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [Connection closed] |
08:39 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code |
08:39 | | mode/#code [+ao VirusJTG VirusJTG] by ChanServ |
08:56 | | catadroid [catadroid@Nightstar-6cqti9.dab.02.net] has joined #code |
08:59 | | catadroid` [catadroid@Nightstar-bqv83a.dab.02.net] has quit [Ping timeout: 121 seconds] |
09:15 | | * McMartin pokes a bit more at Rust, has his first case of genuine wrestling with the borrow checker |
09:15 | | * McMartin is victorious but is unsure who was at fault for the initial misunderstanding. |
09:16 | <&McMartin> | I'm very close to reaching the initial stopping point for "upload to GitHub, take the list of questions and issues I hit along the way to #rust-beginners to take on face-first" |
09:17 | <&McMartin> | I've finished drafting a complete expression parser! |
09:17 | <&McMartin> | Sadly, this language has not only expressions but statements, so that means I'm maybe two-thirds done |
09:29 | | Kindamoody[zZz] is now known as Kindamoody |
09:54 | | Kindamoody is now known as Kindamoody|afk |
10:16 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
10:16 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
10:26 | | catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has quit [[NS] Quit: Leaving] |
10:39 | | catadroid` [catadroid@Nightstar-6cqti9.dab.02.net] has joined #code |
10:39 | | catadroid [catadroid@Nightstar-6cqti9.dab.02.net] has quit [The TLS connection was non-properly terminated.] |
10:40 | | catadroid [catadroid@Nightstar-6cqti9.dab.02.net] has joined #code |
10:40 | | catadroid` [catadroid@Nightstar-6cqti9.dab.02.net] has quit [The TLS connection was non-properly terminated.] |
11:07 | | catadroid [catadroid@Nightstar-6cqti9.dab.02.net] has quit [Ping timeout: 121 seconds] |
11:34 | < ToxicFrog> | Death to the expression/statement dichotomy |
11:55 | | Vornotron [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
11:55 | | ErikMesoy [Erik@Nightstar-hq72t5.customer.cdi.no] has quit [Connection reset by peer] |
11:57 | | ErikMesoy [Erik@Nightstar-hq72t5.customer.cdi.no] has joined #code |
11:58 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
12:03 | | ion [Owner@Nightstar-6grqph.vs.shawcable.net] has quit [Ping timeout: 121 seconds] |
12:06 | | ion [Owner@Nightstar-6grqph.vs.shawcable.net] has joined #code |
12:06 | | mode/#code [+o ion] by ChanServ |
12:22 | | ion [Owner@Nightstar-6grqph.vs.shawcable.net] has quit [Ping timeout: 121 seconds] |
12:24 | | ion [Owner@Nightstar-6grqph.vs.shawcable.net] has joined #code |
12:25 | | mode/#code [+o ion] by ChanServ |
16:24 | | celticminstrel [celticminst@Nightstar-nhhr58.dsl.bell.ca] has joined #code |
16:24 | | mode/#code [+o celticminstrel] by ChanServ |
16:58 | | Shady [ShadyGuru@Nightstar-8v9css.leh.ptd.net] has joined #code |
18:08 | | catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code |
18:22 | | Kindamoody|afk is now known as Kindamoody |
19:46 | | * McMartin also takes a side tour to work through why he was struggling with the borrow checker before, thinks he has an answer |
19:46 | <&McMartin> | Also this means that the first time it was my fault, and the second time it was its fault |
20:00 | < Vornotron> | what happened? |
20:01 | <&McMartin> | So, I'm parsing a lexed stream of tokens, and I'm looking to see if I've got a unary arithmetic expression |
20:02 | <&McMartin> | So I had "let tok = line.peek(0); if tok == Some(&Token::Minus) { ... } if tok == Some(&Token::Plus) { ... } ... } |
20:02 | <&McMartin> | That's an error, because the ... stuff mutates line |
20:04 | <&McMartin> | Since peek returns Option<&Token>, that's a *reference* to a component of line's token vector, and so the check against Plus might be using a stale pointer invalidated by the Minus body |
20:04 | <&McMartin> | But if I put an "else" there, then tok dies either after any successful test, or after all tests fail, at which point it should return the implicit borrow in line. |
20:05 | <&McMartin> | But Rust's borrow checker uses scopes, not liveness analysis, so at that point it's on Rust and not me. |
20:06 | <&McMartin> | However! It might be reasonable to also say that this is all my fault for having "line" actually own the vector of tokens it iterates over. Perhaps I should instead be having it borrow the tokens from an external source, and add a type annotation that says that (a) peek returns a value with a lifetime of that source, and (b) no line-parser system may outlive the tokens of the line |
20:07 | <&McMartin> | But for the moment I've just solved it by calling peek twice and not having a "tok" binding at all. |
20:07 | <&McMartin> | (This does make the else mandatory for correctness) |
20:20 | | Pinkhair [user1@Nightstar-g7hdo5.dyn.optonline.net] has joined #code |
20:22 | | ASCII [user1@Nightstar-g7hdo5.dyn.optonline.net] has quit [Ping timeout: 121 seconds] |
20:58 | | * McMartin flails |
20:59 | <&McMartin> | This one is at least the target language's fault |
21:02 | | Kindamoody is now known as Kindamoody|afk |
21:07 | <&McMartin> | -2^3^4 is -(2^(3^4)) and 2^-3 is 2^(-3) but 2^-3^4 = 2^-(3^4) |
21:08 | <&McMartin> | This seems logical but it means that I can't actually write out a fixed set of operator predence levels. |
21:08 | <&McMartin> | Fortunately for me I'm writing my own parser here and can just have parse_exponent_term, parse_exponent_expr, and parse_unary_arith_expr all be mutually recursive |
21:10 | <&McMartin> | Hm, actually, a bison-style parser might have no trouble with that. |
21:10 | <&McMartin> | Adventures in predictive parsing, I guess |
21:36 | | JustLurk [justbob@ServerAdministrator.Nightstar.Net] has joined #code |
21:36 | | JustBob [justbob@Nightstar.Customer.Dissatisfaction.Administrator] has quit [NickServ (RECOVER command used by JustLurk)] |
21:36 | | JustLurk is now known as JustBob |
21:36 | | mode/#code [+o JustBob] by ChanServ |
21:43 | | Derakon[AFK] is now known as Derakon |
22:04 | | Kindamoody|afk is now known as Kindamoody |
22:32 | | * McMartin is now back in writing-tests mode for this project |
22:32 | <&McMartin> | Manually specifying parse trees is kind of a bummer, not going to lie |
22:50 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [Connection closed] |
23:03 | | catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has quit [[NS] Quit: Leaving] |
23:11 | | catadroid [catadroid@Nightstar-fc60e5.dab.02.net] has joined #code |
23:21 | | crystalclaw|AFK is now known as crystalclaw |
23:29 | | ion [Owner@Nightstar-6grqph.vs.shawcable.net] has quit [Ping timeout: 121 seconds] |
23:32 | | himi [sjjf@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds] |
23:32 | | ion [Owner@Nightstar-6grqph.vs.shawcable.net] has joined #code |
23:32 | | mode/#code [+o ion] by ChanServ |
23:37 | | ion_ [Owner@Nightstar-6grqph.vs.shawcable.net] has joined #code |
23:37 | | mode/#code [+o ion_] by ChanServ |
23:46 | | ion_ [Owner@Nightstar-6grqph.vs.shawcable.net] has quit [[NS] Quit: bye] |
23:52 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code |
23:52 | | mode/#code [+ao VirusJTG VirusJTG] by ChanServ |
23:59 | | Kindamoody is now known as Kindamoody[zZz] |
--- Log closed Mon Jul 18 00:00:58 2016 |