weekly Perl 6 status meetings with phase transitions: Tue 19:00 UTC | IR clogs at irclog.perlgeek.de/phasers/today
Set by moderator on 14 June 2011.
14:14 colomon left 18:12 masak joined
masak :) 18:12
pmichaud my report for 2011-06-21: 18:15
What I did:
nom stuff:
* generic nqp::op namespace
* lazy lists, including infinite lists and iterators
→ created opcodes for fast creation of lists and iterators
→ binder uses same functions for creating slurpies
* PAST::Want nodes so that int/num constants to pir:: and nqp:: opcodes aren't boxed when they don't need to be
* pir::const:: for access to pasm symbolic constants
* Reorganized the locations of operators in source tree
* new Range type, super-fast for generating numeric ranges
* gather/take
* Enum/Pair
* List.map, for() loops
* hash methods (.pairs, .kv, .keys, .values, { }, etc.)
* Refactored to use the new &say and .gist spec as given in perl6/specs rev 669e0dd
* preliminary list slices (still need Positional role)
* return, return-rw, take, take-rw, next, last, redo, die, fail (cheat)
* Cleaned up Stringy/Str
* term:<time>
* Nil
* Added DUMP() which lets us see a more detailed dump of a datastructure
nqp stuff:
* added nqp::opcodes 18:16
* added PAST::Want node type for selecting PAST based on context
* updated some error messages
master stuff:
* enabled register sharing via PAST::Stmt
* draft release announcement
What I plan to do:
* convert CORE.setting to use nqp:: instead of pir:: (where possible)
* performance improvements to list handling
* more CORE.setting methods and functions
* implement LoL
* Work on S07 redraft
EOR
18:23 kboga joined
masak pmichaud++ 18:26
moritz pmichaud++ indeed 18:29
My report: implemented more stuff in nom 18:30
the usual back-and-forth spec discussions
rest: same as last week
EOR
18:40 colomon joined
Util pmichaud++ 18:48
Pre-report:
# New RC Perl 6 solutions:
* rosettacode.org/wiki/Levenshtein_distance
* rosettacode.org/wiki/Partial_functi...pplication
* rosettacode.org/wiki/Character_matching
* rosettacode.org/wiki/Sort_disjoint_sublist (Added 1-line solution)
# Plan to do:
* Finish YAPC::NA::2011 talk
* $WORK
EOR
sorear pre-report: 18:51
* finished removing Niecza's grammar's own symbol table, so now the compiler only has *one* 18:52
* made many small improvements to "declared but not used" checking, in particular it works with top-level definitions and operators now
* added is tighter/looser/equiv 18:53
* changed 'subset', 'enum', and 'constant' to default to 'our'
18:54 colomon left
sorear * fixed class A::B { ... }; class A::B { }. about 3 times, infact :( 18:54
18:54 mberends joined
sorear * added checks for duplicate definitions of attributes, methods, and our symbols, with source locations 18:54
18:55 colomon joined
sorear * started trying to add MY:: et al, which has turned into a major refactor of package handling (but it's a huge simplification) 18:55
EOR 18:57
18:57 colomon left
mberends sorear++ 18:58
masak pre-report: arranged an NPW with jnthn++. gave two (reprised) talks during it. patched the nom branch for the first time. edublogged, but missed yesterday. will make up for it today. EOR 18:59
moritz sorear++ masak++ 19:02
masak o/
moritz it's #phasers time - any other reports?
Util o/
mberends o/ but nothing to report
sorear o/
TimToady is mostly working(ish) on a 5.14 Camel...
sorear is still backlogging #perl6 and #phasers
sorear is now done 19:03
mberends TimToady: as you're the original p6'er, is 5.14 weirdly nostalgic for you? 19:04
masak I'd like to know what the probability is of nom merging before release. :)
pmichaud How many times do you look at something in 5.14 and say "oops"?
moritz masak: 0% 19:05
pmichaud masak: I guarantee that nom will merge before a release. We just don't know which one yet. :)
PerlJam I just want to know if the 5.14 book is full of references to Perl 6 ;)
mberends TimToady: (well, you were the original p5'er too, etc etc :)
TimToady mberends: it's kind of a drag, really
pmichaud nom won't make it into the June release, for certain. I'm not sure where we'll be for July.
TimToady PerlJam: we're trying to limit P6 refs to things that are actually going to be considered informative to a P5 programmer :) 19:06
pmichaud We still have a ways go go, since we don't have Test.pm running yet (which jnthn++ and/or I expect to have working by this weekend)
PerlJam So no "smart matching works like this in 5.14, but in Perl 6 it's much better..." ? :)
TimToady PerlJam: that can fall in the category of "this works differently because..."
anyway, not trying to hijack the meeting 19:07
masak pmichaud: thanks for being epsilon informative :P
pmichaud masak: glad to help! :)
TimToady pmichaud: it's usually worse than "oops" :) 19:08
sorear niecza-v7 release on Monday. I'm starting to get kinda annoyed by all the missing features in the v6 which I'm currently using for the build :)
I've also been thinking about how to write a Perl 6 interpreter without requiring a bootstrap at some level 19:10
tadzik not late!
sorear tadzik: ? 19:11
moritz tadzik: you're within c.t. :-)
sorear the main interesting issue is "augment slang" (equivalently, is parsed macros) in user code, which requires the user Perl 6 code to be parsed using the user grammar engine 19:12
tadzik I had some report, but I eated it :)
sorear but it seems that a pure C Perl6 could use its own grammar engine to parse, without a setting
also figuring into this thought is TimToady's comment that the setting doesn't need to be a Perl 6 module 19:13
TimToady it just has to look like an outer scope by the time you get there 19:14
moritz sorear: it just has to try hard enough to look like one :-)
pmichaud Rakudo long had a non-p6 setting, fwiw. :)
sorear anyway this set of ideas is making me think I can build a Perl6 that will compete with "time perl -E 'say 2 + 2'" 19:15
moritz which worked fine, as long as nobody tried to introspect it
sorear and I want to try, although it seems kinda silly to start a new implementation before niecza is done :D 19:16
mberends we tend to think that done === dead, so long live niecza! 19:17
PerlJam another implementation of Perl 6 can only improve the chances that Perl 6 will get used ;) 19:18
masak sorear: it's a simple cost/benefit calculation. will starting the new implementation bring more boons than focusing on niecza? 19:19
TimToady and can you trick someone else into taking it over? :) 19:20
sorear The v6 announcement made it to reddit, where the overwhelming response was "the name sucks". I'm sort of tempted to agree...
PerlJam sorear: rebranding is always an option
moritz proposes "the compiler formerly known as niecza" as new name :-) 19:21
sorear masak: not now
tadzik akaniecza? :)
masak sorear: if the schedule is "not now", I'm interested in contributing. :) 19:22
sorear the New Design wants a low-level language with good coroutine support, extremely fast loading, dynamic code generation, and an efficient 6model-integrated garbage collector
masak (I have tuits, but not now.)
sorear "in other words, it wants M0"
PerlJam sorear: Just call it "hakuna matata" 19:23
mberends TimToady: niecza without sorear++ is unthinkable today, like pugs without au++. I hope we'll all do whatever we can to increase its bus number to avoid a similar fate. 19:24
jnthn oh hai 19:25
Sorry I'm late 19:26
mberends o/ jnthn
masak jnthn! \\o/
jnthn is in Gothenburg :)
sorear o/ jnthn
Is there any difference whatsoever between $a and $::a?
moritz any more #phasers topics for tonight? 19:29
sorear hmm
don't think so
moritz tadzik: do you have a short gsoc report for us? 19:30
jnthn To report, breifly: did stuff in nom. Will now focus on native types, roles, etc.
tadzik moritz: not really. Me report is: had two exams, these are not the results I'm looking for 19:31
sorear I want to understand leading ::, roles, native types better 19:33
but I think those are not #phasers topics
jnthn sorear: Not sure what the leading :: is about there 19:34
Just 'cus std parses it doesn't mean it means anything ;)
masak isn't leading :: for being able to interpolate strings into variable names?
sorear jnthn: S02 talks about leading :: in vagueish terms 19:35
jnthn ah
jnthn will look a little later
sorear AIUI, leading :: means nothing in sigilled names, and in unsigilled names it means "treat this syntactically as a type name, even if no such type was declared"
jnthn In a signature it's a type capture 19:37
I know about that case
masak :)
jnthn it's the sigil'd one that looked weird to me :)
maybe "ignore it" is fine though :)
20:16 masak left 21:02 colomon joined 22:00 tylercurtis left, tylercurtis joined 22:20 [particle]1 joined 22:22 [particle] left
colomon sorear: where does big_plus (for example) get used? My greps aren't turning it up anywhere.... (I've written a preliminary bif_pow, still needs work.) 23:05
afk # don't know why I'm being called... 23:06
sorear colomon: NieczaPassSimplifier 23:07
though that was probably a mistake in retrospect
colomon .man or .pm6? 23:08
*.nam
.pm6, I see. trying now. (But apt to be called away in a moment.) 23:12
sorear sorry I'm so unavailable 23:22
it goes like this
1. CORE.setting contains a definition of &infix:<+>.
2. Direct calls (not via higher-order-functions) to that are rewritten by the Simplifier into a Op::Builtin(name => 'plus') node. 23:23
23:23 kboga left, kboga joined
sorear 3. Op::Builtin generates a low-level code node of type bif_plus. 23:23
4. Low-level nodes of unknown type default to calling methods on Builtins.
23:48 mberends left
colomon ah. I've definitely done something wrong with that, then. alas, I need to do some $work atm instead of straightening it out. 23:58