Perl 6 - the future is here, just unevenly distributed

IRC log for #6macros, 2015-12-19

| Channels | #6macros index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
02:25 FROGGS_ joined #6macros
02:48 ilbot3 joined #6macros
04:00 vendethiel joined #6macros
12:57 vendethiel joined #6macros
12:59 Ven joined #6macros
13:40 masak if we did get a `do` keyword (which allows a statement to occur inside of an expression) -- which statements should have a value apart from None ?
13:40 masak well, Q::Statement::Expr, of course, since that's the main idea.
13:42 masak I think cogent arguments could be made for these: Q::Statement::Sub, Q::Statement::Macro, Q::Statement::BEGIN
13:42 vendethiel foo(do return 3); <- wat do?
13:43 masak vendethiel: return and cede control to caller before a value can be formed.
13:43 vendethiel troo
13:43 masak vendethiel: so it's a kind of "tree in the woods and no-one hears" situation
13:44 masak vendethiel: in case someone ever found out a way to get a value from a Q::Statement::Return object, I'd say it should be None
13:48 vendethiel "seems fair" :)
13:50 masak I especially want to avoid semantics like "last statement of conditional/loop", which is fraught
13:51 vendethiel that's because you didn't embrace it for the last-statement of a sub already ;-)
13:51 masak much easier to train the user to go `result;` at the end
13:51 masak vendethiel: yeah, taking a leaf from Python there :)
13:52 masak I like (and use) implicit returns a lot in Perl 6 (and miss it in JavaScript), but it feels like too much magic in 007
14:03 vendethiel magic?
14:03 vendethiel it's magic in coffee-and-the-like where we "implicitly do", but otherwise...
14:46 masak I don't know how to express it clearly. but I like the idea that `return` is the only mechanism to return values from a routine.
14:47 masak we could postulate a `leave` mechanism from blocks (which would immediately abort the block and optionally hand back a value), but that would be a second mechanism, working just like return does for routines, but for blocks.
14:48 vendethiel well, i dislike "return" in general
14:49 vendethiel might be the lispish part of my brain speaking ;-)
14:58 masak heh :)
14:58 masak yeah
14:58 masak I need to design a language that is more Perlish than Lispish, though. otherwise the research part is pretty meaningless
15:03 vendethiel .oO( surely you already opened the door to the devil by adding python stuff )
15:04 masak :P
15:05 masak I'm not all that invested in language "wars", sorry... :)
15:05 masak I think at this point I could take on a consulting gig that was all Python, and like it
15:09 vendethiel :D
15:27 masak g'ah. broke the build.
15:27 masak (by committing only parts of a change)
15:33 vendethiel joined #6macros
17:48 FROGGS joined #6macros
18:03 masak today's question: what existing feature of 007 stands out as *unnecessary* for its stated goals? (so we can un-implement it before v1.0)
18:14 Ven joined #6macros
18:31 Ven joined #6macros
18:45 vendethiel joined #6macros
20:59 Ven joined #6macros
21:33 Ven cool refactoring.
21:40 masak fairly straightforward.
21:41 masak the test suite is great at capturing thinkos at this point -- it covers enough that I can just whip something up and re-run `prove` to see if I got it right
21:41 masak I'm also running the fuzzer in the background, which gives me some ideas of where we still have weak coverage
21:42 masak heh -- it looks more fancy in the diff than it felt to do in code ;)

| Channels | #6macros index | Today | | Search | Google Search | Plain-Text | summary