»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo:, alpha:, pugs:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by lichtkind on 5 March 2010. |
|||
sorear | that's part of why we don't do it, I think | 00:00 | |
lue | I feel the urge to fix it myself :) . Let's see how difficult it is to _find_ the bug in the first place :) | ||
It's such a funny bug though. | |||
lue can't help but wonder if fixing the error message would be a good first step. | 00:05 | ||
jnthn | $dayjob meeting in 7 hours or so, guess I should get at least try and some sleep ahead of that. night o/ | 00:06 | |
lue | goodnight o/ | 00:07 | |
sorear | STD.pm6 is still fighting me | 00:09 | |
TimToady | I hope it's losing :) | 00:11 | |
sorear | it's more a case of modifying a compiler with a bootstrap system designed by an idiot is painful | 00:12 | |
TimToady | sort of a collective idiot, in this case :) | 00:13 | |
sorear | any cleanup I make to STD.pm6? 10 minutes later, I find out that 1. my obviously correct cleanup is actually causing miscompilations 2. I need to svn revert the compiler in order to try again | ||
lue images a STD.pm6 as a child who refuses to take the medicine, even though it would make him feel better. | 00:14 | ||
*imagines STD.pm6 | |||
pugssvn | r31169 | colomon++ | [t/spec] Additional tests for div, first tests for mod. | 00:15 | |
00:24
lest_away is now known as lestrrat
00:25
lestrrat is now known as lest_away
|
|||
arnsholt | rakudo: my @a; @a[0] = []; @a[0][0] = 1; | 00:26 | |
p6eval | rakudo b258f5: OUTPUT«Null PMC access in invoke() in main program body at line 1» | ||
arnsholt | Is that a known bug? | 00:27 | |
00:30
k23z__ joined,
lest_away is now known as lestrrat
|
|||
k23z__ | so I heard you guys want a GUI toolkit for Perl6 | 00:30 | |
00:30
masonkramer left
|
|||
k23z__ | I'm writing a GUI toolkit in C++ from scratch | 00:30 | |
lue | rakudo: say [].WHAT | ||
p6eval | rakudo b258f5: OUTPUT«Array()» | ||
k23z__ | mberends I think was offering to write bindings | 00:31 | |
lue | rakudo: my @a; say @a; say @a.perl | ||
p6eval | rakudo b258f5: OUTPUT«[]» | ||
k23z__ | what I can make is some minimalistic GUI toolkit written from scratch in C++ | ||
(well it will use SDL and/or OpenGL depending on how I decide to make it) | |||
(but that matters less) | |||
it is portable | 00:32 | ||
lue | rakudo: my @a=[]; @a[0] = []; @a[0][0] = 1; | ||
k23z__ | and at the current rate it will be finished in 2 years | ||
p6eval | rakudo b258f5: OUTPUT«Null PMC access in invoke() in main program body at line 1» | ||
lue | hrm. Don't know, arnsholt. | ||
k23z__ | lue, do you think 2 years is a long time ? | ||
00:33
kensanata left
|
|||
sorear | why another graphics toolkit | 00:34 | |
00:34
meppl joined
|
|||
k23z__ | sorear, because it will be minimalistic | 00:34 | |
lue | not necessarily. | ||
00:35
constant left
|
|||
k23z__ | most GUI toolkits out there have too much stuff in them, and are poorly documented(as most software is) | 00:35 | |
lue | k23z__: If you were to make a new GUI toolkit, I don't think you'd be able to use any part of SDL/OpenGL/etc. | ||
k23z__ | lue, how so ? | ||
lue, I'm already using it(SDL/OpenGL) | 00:36 | ||
lue | Maybe it's just me, but I get the idea that SDL and OpenGL *are* GUI toolkits [or can be used as such]. | ||
arnsholt | SDL and OpenGL are general purpose graphics toolkits | 00:37 | |
k23z__ | they offer primitives for graphics,keyboard,mouse | 00:38 | |
from that to a GUI there's a long way | |||
lue | Well then, I guess I need to look at some APIs sometime :) . In that case, use SDL/OpenGL for creating a GUI toolkit is great. | 00:39 | |
k23z__ | I believe it will be better than Tk,Gtk,Gtk+,FLTK,Qt,Wx,MFC when it's finished | 00:41 | |
in my oppinion every GUI toolkit out there is flawed | 00:42 | ||
lue | That's what the guy who made FontForge thought [or something like that] :) | ||
k23z__ | lue, I like how he thinks then :) | 00:44 | |
every piece of software I see, I think it's too complicated | |||
diakopter | Soon the Rebellion will be crushed and | 00:45 | |
lue | The Swiss Army Knife Law: "The more it does, the cooler it is." | ||
k23z__ | my GUI toolkit has now 2500 LOC , I will keep it below 5000 LOC and it will be able to do everything that every other toolkit does and much much better,and people will be able to look in the source and actually understand it | 00:46 | |
lue | .oO(I have a simple IRC client, it only does IRC and my ironing. I don't see what you mean) |
||
diakopter | k23z__: in which language is it written? | ||
k23z__ | diakopter, C + + | ||
Tene | k23z__: have you looked at EFL at all? Seems like they're doing some interesting things these days. | ||
diakopter | ah | ||
arnsholt | Are there issues with autovivification in current Rakudo? | 00:47 | |
00:47
acastlenut joined
|
|||
k23z__ | Tene, en.wikipedia.org/wiki/Enlightenment..._Libraries | 00:47 | |
Tene | Yes. | ||
sorear | arnsholt: Plenty. | ||
ash__ | arnsholt: there were some last i checked | 00:48 | |
00:48
ashleydev left,
skangas left
|
|||
arnsholt | Right. Then I just have to figure out how to work around them | 00:48 | |
ash__ | arnsholt: what issues are you fighting with currently? | ||
arnsholt | ash__: I'm writing a HMM decoder (Viterbi's algorithm) so I've got a matrix I'm populating | 00:49 | |
k23z__ | Tene, I just measure enlightment source code, they have 75k LOC | ||
Tene, I intend to keep it below 5k | |||
arnsholt | I figure I'm just going to write a loop that builds the matrix populated with 0 or something | 00:50 | |
k23z__ | I think having a lot of code is not necessarily a good thing | ||
"Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away." | |||
sorear | "EFL has lots of code, therefore no idea in it can possibly be worth reusing." | 00:51 | |
diakopter | "Most organizations/individuals don't have time for Perfection" | ||
00:52
lue left
|
|||
ash__ | arnsholt: seems reasonable, also, if you feel like dipping into parrot, i know whiteknight made some libraries for parrot for matrix stuff | 00:53 | |
(and linear algebra, which is normally pretty matrixy) | 00:54 | ||
whiteknight | yeah, we have parrot-level matrices. Going to have full BLAS bindings soon | ||
00:54
patspam left
|
|||
whiteknight | where "soon" is "whenever somebody gets around to adding it" | 00:54 | |
k23z__ | I can't afford to use over-complicated software like Gtk or Qt, if I write my own GUI toolkit, first of all I won't need to ever read any documentation(for GUI toolkits at least), also I won't take any more compromises and if something breaks or segfaults I know 100% whos fault it is and I can address him directly by facing a mirror | ||
ash__ | k23z__: what if you don't have opengl? | 00:55 | |
k23z__ | ash__, | ||
acastlenut | q | ||
k23z__ | ash__, is there any situation where that can happen ? | 00:56 | |
ash__ | i think a major part of most of the other gui toolkits you have mentioned is none of them require opengl | ||
sure, old hardware, crappy hardware, cheap hardware, embedded systems | |||
sorear | hi, I don't have hardware 3d | ||
gtk runs *fine* here | 00:57 | ||
k23z__ | ash__, I write a wrapper around the graphics functions over here, maybe some macros ... dunno yet | ||
I hate to find something that I don't like and not being able to fix it , because the codebase of that piece of software is really beyond any size that's readable | 00:58 | ||
Tene | Reasonable enough. Just depends on your goals. | 00:59 | |
Raster has been working on EFL for years, started from scratch because of significant dissatisfaction with other gui toolkits, just like you. | |||
k23z__ | who's Raster ? company/individual ? | 01:00 | |
Tene | Individual, primary author of EFL. | ||
diakopter | readability is very subjective | ||
k23z__ | EFL is written in C | 01:01 | |
C is hard for the eye | |||
Tene | That's extremely subjective. | ||
:) | |||
ash__ | C is easier to understand than C++, all things considered # thats a loaded statement, but i think its true, and i'll get off the language wars bus here | ||
sjohnson | :) | 01:02 | |
some would say perl is hard on the eyes too! | |||
Tene | The EFL folks avoid C++, as it's far too huge to reasonably use or understand, and they can build everything they need in C, and understand it and have confidence in it, similar to your recently-expressed issues with GUI libraries. :) | ||
sjohnson | i found that the worst perl code, is from programmers who program in perl like they program in any other language... ie, not using any of the good perl features | ||
and these people wonder why they "can't get into" perl | |||
01:03
bjarneh left
|
|||
sorear | k23z__: You must not have seen the innards of Parrot | 01:03 | |
Tene | I haven't minded Parrot internals. | 01:04 | |
01:04
acastlenut left,
yinyin joined
|
|||
pugssvn | r31170 | sorear++ | [STD,viv] Regex parse cleanup - ~ is now a pseudo quantifier, so it associates with the right atoms. No horrible reassociation pass needed. | 01:08 | |
sorear | FINALLY | 01:14 | |
sorear hopes that mole stays down | 01:15 | ||
now, for the rest | |||
01:17
whiteknight left,
Guest58430 left
|
|||
diakopter | :) | 01:26 | |
pugssvn | r31171 | sorear++ | [STD] ignore whitespace between an atom and a quantifier, instead of quantifying a space atom | 01:32 | |
01:42
masonkramer joined
01:45
jaldhar joined
|
|||
pugssvn | r31172 | sorear++ | [STD] $<foo> = <bar>? should parse the quantifier outermost for consistency with <foo=bar>? | 01:47 | |
01:48
dju_ joined
01:49
zorgnax joined
01:52
breinbaa1 joined,
ingyfoo joined
01:53
frodwith_ joined,
dual left,
ingy left,
breinbaas left,
slavik left,
dju left,
pnate left,
PZt left,
frodwith left,
athomason left
01:56
slavik joined
01:57
TiMBuS joined
02:01
[mark] joined
02:02
plobsing joined
02:09
zorgnax left,
zorgnax joined
02:10
justatheory left
02:13
meppl left
02:16
ruoso left
02:20
masonkramer left
02:28
skids joined
02:29
gbacon joined
02:31
jaldhar left,
jaldhar joined,
justatheory joined
02:36
s1n left
02:37
ashleydev joined
02:45
s1n joined,
s1n left
02:46
gbacon left,
am0c left
02:47
am0c joined
02:53
s1n joined
02:54
s1n left
02:55
s1n joined
02:56
s1n left
03:02
s1n joined
03:06
ashleydev left
03:07
alester joined
03:10
ashleydev joined,
ash__ left
|
|||
pugssvn | r31173 | colomon++ | [t/spec] Test that Cool properly handles conversion to Numeric for core Numeric and Real methods. | 03:14 | |
sorear | um, what | 03:15 | |
STD parses <?after x> and <?after x > differently | |||
in :!s context | |||
dalek | kudo: 0290298 | (Solomon Foster)++ | src/core/Cool-num.pm: Clean up the Cool versions of the standard Numeric and Real methods. |
03:18 | |
kudo: 34c1ba4 | (Solomon Foster)++ | t/spectest.data: Turn on new S32-num/cool-num.t test file. |
|||
03:24
ashleydev left
03:26
ashleydev joined
04:05
kfo_ joined
04:09
kfo left,
kfo_ is now known as kfo
|
|||
sorear | at this point, I think the only plausible explanation for why STD is broken is that I've somehow *accidentally* introduced a Trusting Trust virus into it | 04:16 | |
this is not comforting. | |||
TimToady | o_O | 04:17 | |
what are the symptoms? | |||
sorear | actually, it's Just Broken and can't be bootstrapped at all | 04:22 | |
my testing before commit didn't account for the possibility of writing a STD.pm6 that would doom us to failure three generations hence | 04:23 | ||
now I get to revert all the minor regex fixes I've spent the last three days struggling with! | |||
diakopter | :'( | ||
sorear | how do I revert commits in svn? | 04:24 | |
TimToady | just check out an earlier version? | ||
I dunno, actually. | |||
04:26
k23z__ left
04:27
agentzh joined
|
|||
Tene | svn revert, iirc | 04:34 | |
04:35
constant joined,
constant left,
constant joined
04:45
tedv left
04:57
ShaneC left
05:04
eternaleye left
05:10
kaare joined
|
|||
TiMBuS | TimToady, svn co -r REVISION | 05:10 | |
bit late i know | |||
05:11
kaare is now known as Guest57824
05:13
szabgabx left
05:36
orafu left,
orafu joined
05:38
eternaleye joined
05:40
PZt joined
|
|||
sorear | TiMBuS: it's me who's asking, and it's not too late | 05:40 | |
TiMBuS: but I want to destroy/supersede the revision, not just examine history | 05:41 | ||
a darcs rollback or a git revert | |||
05:45
dual joined
05:48
ashleydev left
05:49
gfx joined
|
|||
Tene | sorear: you checkout the file of the earlier revision, and then re-commit it as a new revision. | 05:50 | |
TiMBuS | sorear, dont think you can do it one go. why not svn up -r oldrevision then recommit? | ||
fff | |||
eternaleye | phenny: tell masak that 'forinsecal' is confusingly close to 'forensical', which means 'gathering data by examining the surroundings' | 05:51 | |
phenny | eternaleye: I'll pass that on when masak is around. | ||
TiMBuS | google says some people use svn merge -r currentversion:oldversion but im not sure how that works (isnt it the same as svn up -r oldversion?) | 05:53 | |
05:55
mberends joined
06:03
ashleydev joined
06:04
ashleydev left
|
|||
jnthn | morning, #perl6 | 06:07 | |
06:08
alester left
|
|||
sjohnson | jnthn: yo | 06:10 | |
06:11
uniejo joined
|
|||
diakopter | one way to do it is to "svn export -r revision that-dir" (a checkout without the .svn dirs) and cp the dirtree over the working checkout (preserving the .svn), then commit | 06:19 | |
note in particular the *export* instead of *checkout* | |||
jnthn -> meeting | 06:21 | ||
moritz_ | good morning | 06:22 | |
06:34
mberends left,
Su-Shee joined
|
|||
moritz_ | rakudo: 'ab' ~~ /<alpha> <xdigit>/; say $<alpha xdigit> | 06:39 | |
p6eval | rakudo 34c1ba: OUTPUT«ab» | ||
moritz_ | rakudo: 'ab' ~~ /<alpha> <xdigit>/; say $<alpha xdigit>.join(',') | ||
p6eval | rakudo 34c1ba: OUTPUT«a,b» | ||
06:43
Grrrr left
06:48
Grrrr joined
06:50
justatheory left
|
|||
ajs | I'm trying to find code to look at that's a good intro to how to take a match and transform it into executable code within the context of the current program. Do we have anything like that that's relatively easy to read? I'm almost to the point that my actions are building code from my rules, but not quite. | 07:00 | |
moritz_ | ajs: maybe www.perlmonks.org/?node_id=842792 is of help to you? | 07:01 | |
07:02
jjore left
|
|||
moritz_ | apart from that, eval() and closure currying are currently the only ways to buid code with Rakudo | 07:02 | |
07:03
jjore joined
|
|||
ajs | Ah, so I can't call PAST::Compiler.compile directly? | 07:03 | |
I was trying to build up a PAST::Block containing a return PAST::Val just as a test | 07:04 | ||
07:04
chitragupt left
|
|||
moritz_ | ah, maybe that works | 07:05 | |
ajs | Not exactly something that's copiously documented, though eh? ;-) | ||
moritz_ | I think PCT has documentation | 07:06 | |
somewhere inside the parrot repo | |||
ajs | OK, I'll look into that more tomorrow. I stopped paying attention to parrot after PGE and before NQP, so a lot has changed. | 07:07 | |
Just for fun and profit, I'm seeing if I can get a Perl 5 regular expression to transform into executable Perl 6 code in pure Perl 6.... it's ... interesting. | 07:08 | ||
07:09
Ross joined
|
|||
ajs | I have a parser for P5re, but it needs a lot of very dynamic actions to manage it (things like (a|$) are a pain to parse. | 07:09 | |
But I'm starting small... first something that can return a value, then rule the world. | |||
;) | |||
moritz_ | :-) | 07:11 | |
PGE had a perl 5 regex parser | |||
ajs | I'll take a look at that. My ultimate goal, of course, would be to transform arbitrary Perl 5 into Perl 6 (not as a bug-for-bug Ponie style thing, but just as a porting target) | 07:12 | |
07:12
hercynium left
|
|||
ajs | But getting from parsing a regex to handling the entire language is quite a long walk. Right now, I just want to get some working code | 07:15 | |
moritz_ | working code is important, right | 07:16 | |
ajs | heh | ||
moritz_ -> decommute | |||
07:31
wint joined
07:32
plobsing left
07:33
wint left
07:36
ascent_ left,
ascent_ joined
07:37
opx^away left
07:38
opx^away joined
07:40
rgrau joined
07:43
mberends joined
07:49
opx^away left
07:50
opx^away joined
08:02
nadim_ joined,
cls_bsd_ joined
08:03
kaare joined,
kaare is now known as Guest78028
08:04
frooh_ joined,
ingy joined,
gfldex_ joined
08:09
opx^away left,
Guest57824 left,
constant left,
am0c left,
ingyfoo left,
sorear left,
cls_bsd left,
frooh left,
dukeleto left,
felipe left,
nadim left,
Gothmog_ left,
gfldex left,
tomaw left
08:14
constant joined,
constant left,
constant joined
08:17
pnate joined,
am0c joined
08:20
sorear_ joined,
sorear_ is now known as sorear
08:21
lestrrat is now known as lest_away
08:25
tomaw joined,
opx^away joined
08:28
rhr left,
Gothmog_ joined
08:33
dakkar joined
08:35
rhr joined
08:36
Gothmog_ left,
opx^away left,
tomaw left
|
|||
pugssvn | r31174 | cosimo++ | [docs] Try to understand which is which | 08:46 | |
r31174 | | |||
r31174 | Mark css files so I can understand which of the | |||
r31174 | 3 perl.css files is used in the synopsis html docs. | |||
08:47
k23z__ joined
|
|||
moritz_ runs update-syn on feather | 08:47 | ||
cosimo | if anyone knows a bit more of the synopsis publishing process | ||
moritz_ raises hand | 08:48 | ||
cosimo | moritz_: cool | ||
08:48
masak joined
|
|||
masak | oh hai, #perl6! | 08:48 | |
phenny | masak: 05:51Z <eternaleye> tell masak that 'forinsecal' is confusingly close to 'forensical', which means 'gathering data by examining the surroundings' | ||
cosimo | moritz_: there's another small problem, the new icons I added are not there in the /syn folder | ||
masak | eternaleye: yes. for the time being, consider that a feature. | 08:49 | |
cosimo | i expected anything in docs/feather/* to show up in perlcabal.org/syn/ but apparently it doesn't work that way | ||
moritz_ | cosimo: svn.pugscode.org/pugs/docs/feather/...update-syn is what is run each hour | ||
cosimo | moritz_: so the new icons are showing up as broken | ||
08:49
Ross left
|
|||
cosimo | moritz_: i saw that, but it accesses ~agentzh which I don't know how to debug | 08:49 | |
moritz_ looks where the document root is | |||
cosimo | maybe someone can reset my password on perl6.feather.nl ? | 08:50 | |
moritz_ | just a sec | ||
agentzh | cosimo: sorry about that :P | ||
cosimo | agentzh: np, really. just trying to understand how the pieces fit together :) | 08:51 | |
moritz_ | cosimo: ~agentzh/syn/ is just an ordinary directory in which .html files are created | 08:52 | |
cosimo: you can change the update-syn script to copy stuff there | |||
cosimo | moritz_: ah, ok | 08:53 | |
moritz_ | cosimo: you can put stuff into docs/feather/ in the pugs repo... | ||
cosimo: where they will show up at the level of documentroot, hopefully | |||
cosimo | moritz_: what about the makefile in ~agentzh/syn/zh-cn ? is that relevant? | ||
moritz_ | cosimo: no idea | 08:54 | |
agentzh | cosimo: that is not relevant, i believe. | ||
it's just holding the chinese transcript of S01 | |||
iirc :) | |||
moritz_ | oh | 08:55 | |
it seems that /var/www is a symlink to something inside audreyt's home | |||
which has changed recently | |||
so maybe I need to set up a perlcabal user | 08:56 | ||
08:56
gfldex_ is now known as gfldex
|
|||
moritz_ | which just serves as a base for web-ish stuff | 08:56 | |
pugssvn | r31175 | cosimo++ | Copy also the new smartlinks highlight icons | 08:57 | |
cosimo | moritz_: please can you push the changes? | ||
update-syn? | 08:58 | ||
08:58
betterworld left,
betterworld joined
|
|||
moritz_ | cosimo: doing it now, takes a while to render all the synopsis | 08:59 | |
agentzh | moritz_++ :D | 09:00 | |
09:00
pmurias joined
|
|||
moritz_ | agentzh: I plan to migrate the update-syn and your crontab entry to a new user, so that people don't have to log in as you to run the update | 09:01 | |
agentzh | moritz_: it makes a lot of sense :) | ||
09:01
gfx left
|
|||
moritz_ | cosimo: it seems there's no 'cosimo' account on feather at all.. do you want one? | 09:02 | |
09:03
dalek left
09:06
dalek joined
|
|||
masak | ajs: ping | 09:10 | |
cosimo | moritz_: yes, that would be great | ||
masak | seems some actual "I want to believe"-type people are starting to pick up on the ufo project on Twitter. :) I have no idea what they make of it, but they do link to it. | 09:11 | |
mathw | hah | 09:20 | |
09:20
tomaw joined
|
|||
moritz_ | cognominal: could you please make your patches with `git format-patch HEAD~1' (need to commit first)? That way they are easier to apply | 09:21 | |
cosimo | moritz_: actually I had thought of changing update-syn so it can run "inplace", from the svn tree itself | 09:22 | |
cognominal | moritz_, ok | ||
09:23
Gothmog_ joined,
opx^away joined
09:24
astinus joined
|
|||
k23z__ | mberends, hey, so you want to write some bindings eh ? | 09:28 | |
mberends | k23z__: yes. sorry, busy right now, but what you've written about your GUI toolkit looks interesting (and somewhat hubristic) | 09:34 | |
masak hopes someone will provide and package bindings to some of the more common GUI toolkits | 09:36 | ||
mathw | Oh yes | 09:37 | |
Someone will | |||
It might even be me | |||
Just... not yet | |||
09:47
synth left
09:50
dakkar left
09:52
yinyin left
09:55
dakkar joined
|
|||
pugssvn | r31176 | cosimo++ | [docs] update-syn: also update the css file for the synopsis when syncing | 09:55 | |
r31177 | pmurias++ | [smop] fix test | 10:05 | ||
10:05
agentzh left
|
|||
pugssvn | r31178 | pmurias++ | [mildew] dumping lexicals scopes and idconsts | 10:05 | |
r31179 | pmurias++ | [mildew] options to Mildew::Backend::OptC are optional | |||
cosimo | now the smartlinks in the syn docs are a bit better I think | 10:08 | |
i still need to fix the highlight icons, will get there soon | 10:09 | ||
10:10
hirschnase joined,
ciphertext joined
10:11
ciphertext left
|
|||
moritz_ | cosimo++ | 10:12 | |
blogs.msdn.com/b/vcblog/archive/201...ckend.aspx | 10:16 | ||
pmurias | moritz_: the stress modes part is interesting | 10:28 | |
10:33
hirschnase left
10:40
skids left
10:44
clintongormley joined
11:00
whiteknight joined
11:03
proller left
11:05
proller joined
11:09
pmurias left
11:14
cognominal left
11:20
cognominal joined
11:25
whiteknight left
11:26
satyavvd joined,
satyavvd left,
satyavvd joined
|
|||
pugssvn | r31180 | cosimo++ | [docs] update-syn: Clean up and make easier to relocate | 11:35 | |
11:43
ruoso joined
|
|||
moritz_ | [Coke]: ping | 11:52 | |
11:55
hirschnase joined
|
|||
cosimo | there's quite a few co* nicks too :) | 11:57 | |
mberends | k23z__: ping | 12:02 | |
k23z__ | mberends, pong | ||
mberends | about writing bindings for Rakudo... | 12:03 | |
we are restricted to certain call signatures because of the current way Parrot does NCI | 12:04 | ||
k23z__ | mberends, I got windows(with close/minimize/maximize buttons) , drag & drop , buttons , images , and hoverin/hoverout events at the moment .. I intend to basically write everything that a normal GUI toolkit does in C++ and keep it below 5000LOC | ||
mberends | k23z__: cool! | ||
12:04
satyavvd left
|
|||
mberends | k23z__: the part that is likely to be hardest is getting callbacks to work for input events | 12:05 | |
k23z__ | mberends, well for creating an object on the screen I create a class and derive from the basic classes(Button,Window etc) and implement methods for that class | 12:06 | |
mberends, how would you do it ? | |||
mberends | k23z__: in Rakudo we would be limited to polling | ||
moritz_ | unless there's an external runloop | ||
k23z__ | how would polling limit this ? what is it polling for ? | ||
I have a World::Loop() which waits for events, it's wrapped inside the SDL event loops | 12:07 | ||
*loop | |||
jnthn back from meeting | |||
Whoa...I drank *way* too much coffee at those meetings. | 12:08 | ||
colomon | \o/ | ||
diakopter | moritz_: from your msdn link above: "We don’t require complicated harnesses since our app is short-running and we don’t have to deal with the UI automation problem that many other testers in the world do because there is no user interaction. Most of our tests are just batch or simple perl scripts with some .cpp and .h files." | ||
mberends | k23z__: I don't think Rakudo can provide anything callable from your Loop() | ||
k23z__ | mberends, why ? I can write some events or signals for Rakudo to catch and handle ... | 12:09 | |
mberends, will he have to do IPC ? or how exactly will the two communicate ? | |||
mberends, I could also include some serialize/deserialize(JSON/XML) and make a pipe through which you could tell the GUI what you want .. | 12:10 | ||
but uh.. that would be a bit slow | |||
mberends, how do you normally write bindings for Rakudo ? | |||
mberends | k23z__: preferably all in one process, so without IPC, because Rakudo does only blocking synchronous I/O | 12:11 | |
k23z__: the normal bindings are for the Rakudo process (which is actually the Parrot executable) to load a native code library and call the functions in there. | 12:12 | ||
k23z__ | so I should export .so or .dll ? | ||
and you could load and import the functions there and use them ? | |||
mberends | k23z__: yes. The .so for Unix or .dll for Windows. Both work fine. | 12:13 | |
cognominal | is there a way to enumerate all the classes known from Perl 6? | ||
moritz_ | don't think so | ||
anonymous classes might even be garbage collected once their instances fade away | 12:14 | ||
mberends | k23z__: are you familiar with github.com/jnthn/zavolaj ? | ||
k23z__ | not at all | ||
jnthn | anonymous classes had best be GC'd once their instances fade away. :-) | ||
moritz_ | jnthn: knowing the parrot GC... I can only hope :-) | 12:15 | |
jnthn | moritz_: Well, it's not so much that Parrot GC as if it keeps another reference around to it that I didn't intend it to. | ||
cognominal | what is this backslash around anonymous going across the net :) | ||
moritz_ | all anonymous classes oppose scientology... or so :-) | 12:16 | |
mberends | k23z__: Zavolaj is the tool I would like to use to create Rakudo bindings for your GUI library | ||
k23z__ | mberends, I've just read here how to use mingw to create dlls www.adp-gmbh.ch/win/misc/mingw/dll.html | 12:17 | |
mberends, so one part of the problem is solved, since I would just have to write a C api over my C++ already existing API | |||
mberends, then using Zavolaj you can use the C API to write the bindings no ? | |||
mberends | k23z__: that would work :-) | ||
afk & # $class | 12:31 | ||
12:34
plainhao joined
|
|||
colomon | perl6: say 11 mod 3 | 12:38 | |
p6eval | rakudo 34c1ba: OUTPUT«2» | 12:39 | |
..pugs: OUTPUT«***  Unexpected "mod" expecting operator, ":" or "," at /tmp/FFEghmBGNv line 1, column 8» | |||
..elf 31180: OUTPUT«Undefined subroutine &GLOBAL::infix_mod called at (eval 123) line 3. at ./elf_h line 5881» | |||
colomon | alpha: say 11 mod 3 | ||
p6eval | alpha 30e0ed: OUTPUT«infix:<mod> not yet implemented in Rakudo, sorryin sub » | ||
colomon | ooo, at least alpha had a nice message about it. :) | 12:40 | |
moritz_ | still, surprisingly good error message :-) | ||
12:46
synth joined
12:47
broquaint left
12:49
pmurias joined
|
|||
pmurias | ruoso: hi | 12:49 | |
12:51
xabbu42 left
|
|||
pmurias | ruoso: it turned out the segfault was a result of infinite recurssion in a incorrect test | 12:51 | |
12:51
pnu left
|
|||
masak | rakudo: say [mod] 100, 99, 88, 77, 66, 55, 44 | 12:59 | |
p6eval | rakudo 34c1ba: OUTPUT«===SORRY!===Could not find sub &infix:<mod>» | ||
masak | huh? | 13:00 | |
colomon | huh. | ||
masak | rakudo: say 100 mod 99 | ||
p6eval | rakudo 34c1ba: OUTPUT«1» | ||
masak submits rakudobug | |||
13:00
am0c left
|
|||
masak | probably a symptom of something larger. | 13:00 | |
colomon | rakudo: say [div] 100, 99, 88, 77, 66, 55, 4 | ||
p6eval | rakudo 34c1ba: OUTPUT«0» | 13:01 | |
colomon | something wrong with the ordering of .pm files in the build, maybe? | ||
13:01
[mark] left
|
|||
moritz_ | colomon: is it 'our' multi infix:<mod>? | 13:01 | |
ruoso | pmurias, hi | 13:02 | |
colomon | maybe it's the our, that's the only difference I see from div | ||
trying that. | |||
ruoso | pmurias, that's good news... | ||
arnsholt | Are there any established practices on how and where to document modules? | 13:04 | |
PerlJam | buenos dias #perl6 | 13:05 | |
colomon | o/ | ||
> say [mod] 100, 99, 88, 77, 66, 55, 44 | |||
1 | |||
moritz_ | arnsholt: most modules use some PODish markup | 13:06 | |
masak | arnsholt: anything which is an "entry point" in some sense SHOULD be documented. probably other things as well. | ||
arnsholt: mberends is our documentation hero, so you should ask him. | |||
13:06
Guest78028 left
|
|||
masak | hm, meant mberends++. :) | 13:06 | |
colomon | hmmm.... where to test [mod]? | 13:07 | |
moritz_ | colomon: either along with mod, or in S03-metaops/* somewhere | ||
colomon | mod is in arith.t, which seems pretty low level. | 13:08 | |
pmurias | ruoso: i'll now try to steal the build system from Text::BibTeX which is a dual perl module/C library | ||
13:10
pnu joined
|
|||
ruoso | pmurias, okay... there are other references if that looks complicated... | 13:12 | |
pmurias | ruoso: got any links to other things to steal parts from? | 13:13 | |
13:15
am0c joined
|
|||
ruoso | pmurias, i've recently made a binding for Sedna | 13:16 | |
it included calling a completely external build | |||
Module::Install (or is it Module::Build) also has a module for building c libraries I htink | 13:17 | ||
pmurias | ruoso: got a link for the Sedna binding? | 13:20 | |
found | |||
13:21
proller left
|
|||
pmurias | ruoso: the README for Sedna is outdated as it mentions it as a dependencie | 13:25 | |
* dependency | |||
while the POD mentions that it is bundled | |||
13:25
proller joined
13:31
xabbu42 joined
13:37
relyonthewind joined
|
|||
ruoso | pmurias, er... ok... I'll update it | 13:37 | |
ruoso should probably start using Module::Install::ReadmeFromPod | |||
13:39
relyonthewind left
13:41
JimmyZ joined
13:43
kaare joined
13:44
kaare is now known as Guest46866,
xabbu42 left
|
|||
arnsholt | I released! | 13:46 | |
Perl 6 can now decode HMMs: github.com/arnsholt/Algorithm-Viterbi | |||
masak | \o/ | 13:47 | |
and it uses ufo! :) | 13:48 | ||
pmichaud | good morning, #perl6 | ||
masak | morning, pmichaud | ||
cognominal | how to express the type of this structure ( "toto", [ "foo"] ,"foo" ); That is a tree of stings? | ||
13:49
gbacon joined
|
|||
arnsholt | masak: ufo has a very endearing feature. I don't have to do -anything- to get it to work =D | 13:49 | |
cognominal | \o/ pmichaud | ||
colomon | \o | ||
masak | cognominal: how do you mean, 'express'? you want a name for it? | 13:50 | |
I'd call it a nested array of strings. | |||
except that the outermost layer happens to be a listcaptureparcelwhatever. | |||
cognominal | I want to declare a variable of that type, so I need to expresse that type. | 13:51 | |
13:51
felipe joined
13:52
uniejo left
|
|||
masak | std: subset NAoStr of Array where { all(|$_) ~~ Str | NAoStr } | 13:52 | |
cognominal | So that is can be checked somehow. Statically or dynamically, par the Perl 6 compiler or a Perl 6 lint. Who knows. I don't care but I want to be able to say in a way that part of Perl6 concrete syntax. | ||
p6eval | std 31180: OUTPUT«ok 00:01 109m» | ||
pmichaud | cognominal: that structure starts out as a Parcel | ||
cognominal | s/par/by/ | 13:53 | |
masak | cognominal: would the above be enough? seems you can recurse in subtype declarations. | ||
std: subset NAoStr of Array where { all(|@^elements) ~~ Str | NAoStr } | |||
p6eval | std 31180: OUTPUT«ok 00:01 106m» | ||
masak cackles | 13:54 | ||
cognominal | masak, sounds nice enough. | ||
masak | hm, probably the | isn't even needed there. | ||
the prefix:<|>, I mean. | |||
the infix:<|> may or may not cause an infinite loop. :/ | |||
(since junctions evaluate all their components in parallel) | 13:55 | ||
but it should be OK, I think, since the structural recursion always bottoms out. | |||
unless there are := bindings in the middle of it. :/ | 13:56 | ||
masak thinks too much | |||
pmichaud | or perhaps captures | 13:57 | |
masak | arnsholt: Algorithm-Viterbi added to proto's projects.list | ||
cognominal | I tend to think always a step beyond what is implemented or more often perpendicular to what is sensible. | ||
pmichaud | cognominal: oh, so you're like masak++ then? ;-) | 14:00 | |
masak | 'perpendiculat to what is sensible'. yup. | 14:03 | |
s/t/r/ | |||
pmurias | ruoso: smop is under Artistic 2? | ||
[Coke] | moritz_: pong. | 14:06 | |
cognominal | I need to write as much code as masak++ so | ||
14:06
dju_ left
14:07
dju joined
|
|||
[Coke] finally gets around to writing a dumb builder that checks parrot and all the hlls he cares about. | 14:09 | ||
cognominal | rakudo: say 'abc' ~ m :g / . / | 14:11 | |
p6eval | rakudo 34c1ba: OUTPUT«===SORRY!===Confused at line 11, near "say 'abc"» | ||
cognominal | oops | ||
rakudo: say 'abc' ~~ m :g / . / | |||
p6eval | rakudo 34c1ba: OUTPUT«===SORRY!===Confused at line 11, near "say 'abc"» | ||
14:12
plobsing joined
|
|||
cognominal | what is the current idiom in rakudo to do that? | 14:12 | |
14:12
proller left
|
|||
cognominal | rakudo: say 'abc'.match( / . /, :g ) | 14:12 | |
p6eval | rakudo 34c1ba: OUTPUT«abc» | 14:13 | |
cognominal | hooray | ||
rakudo: say 'abc'.match( / . /, :g ).WHAT | |||
p6eval | rakudo 34c1ba: OUTPUT«Parcel()» | ||
cognominal | rakudo: print $_ for 'abc'.match( / . /, :g ) | ||
p6eval | rakudo 34c1ba: OUTPUT«abc» | 14:14 | |
cognominal | rakudo++ | ||
14:15
proller joined
14:16
pyrimidine joined
|
|||
ajs | rakudo: my $code = PAST::Compiler.compile(PAST::Block.new(PAST::Val.new( :value(1) ))); say $code(); | 14:19 | |
p6eval | rakudo 34c1ba: OUTPUT«1» | ||
ajs | rakudo: my $block = PAST::Block.new(PAST::Val.new( :value(1) )); my $code = PAST::Compiler.compile($block); say $code(); | 14:20 | |
p6eval | rakudo 34c1ba: OUTPUT«get_iter() not implemented in class 'Capture' in main program body at line 11:/tmp/Gcz_AAWNc_» | ||
k23z__ | /mingw/lib/crt2.o(.text+0x37):crt1.c: undefined reference to `__cpu_features_init <--what the hell is this ? | ||
ajs | Anyone know why those two aren't the same? | ||
jnthn | rakudo: rakudo: my $block = PAST::Block.new(PAST::Val.new( :value(1) )); say "alive" | 14:21 | |
p6eval | rakudo 34c1ba: OUTPUT«===SORRY!===Confused at line 11, near "rakudo: my"» | ||
jnthn | rakudo: my $block = PAST::Block.new(PAST::Val.new( :value(1) )); say "alive" | ||
pmichaud | [Coke]++ | ||
p6eval | rakudo 34c1ba: OUTPUT«alive» | ||
pmichaud | PAST compiler might not know what to do with rakudo objectrefs | 14:22 | |
jnthn | rakudo: my $block = PAST::Block.new(PAST::Val.new( :value(1) )); my $code = PAST::Compiler.compile($block); | ||
p6eval | rakudo 34c1ba: OUTPUT«get_iter() not implemented in class 'Capture' in main program body at line 11:/tmp/sXHbFObB83» | ||
14:22
hirschnase left
|
|||
jnthn | pmichaud: Oh, oddness. I'd have thought they'd be transparent to it. | 14:22 | |
14:22
hirschnase joined
|
|||
pmichaud | well, so would I, but normally we're doing binding instead of assignment in NQP | 14:22 | |
jnthn | True. | ||
ajs | Yeah, and sadly that's not an option in Rakudo | 14:23 | |
masak | submit a rakudobug? | ||
pmichaud | rakudo: my $block = PAST::Block.new(PAST::Val.new( :value(1) )); say PARROT($block) | ||
p6eval | rakudo 34c1ba: OUTPUT«Perl6Scalar->PAST;Block» | ||
ajs | Fair enough, just wanted to be sure I wasn't doing something stupid | ||
Hmmm pmichaud, you might be onto something there, let me try that out | 14:24 | ||
pmichaud | it may also be that PAST::Compiler isn't returning something that rakudo knows how to process | ||
jnthn | pmichaud: That worked in the pervious example though. | ||
14:24
hirschnase left
|
|||
ajs | It works fine in the first case | 14:24 | |
pmichaud | oh, good point. | ||
jnthn | uh, previous :-) | ||
14:24
hirschnase joined
|
|||
pmichaud | so I fall back to "there's something weird about $block" | 14:24 | |
yes, I would expect it to be transparent... but perhaps it isn't for some reason. | 14:25 | ||
ajs | rakudo: my $block = PAST::Block.new(PAST::Val.new( :value(1) )); my $code = PAST::Compiler.compile(PARROT($block)); say $code(); | ||
p6eval | rakudo 34c1ba: OUTPUT«Null PMC access in type() in main program body at line 11:/tmp/cgP_Wd5cmw» | ||
ajs | OK, will go the bug route. Thanks all. | ||
pmichaud | yes, I'd be curious as to what that could possibly be. | 14:26 | |
14:26
breinbaa1 left
|
|||
pmichaud | I'm also curious as to whether the get_iter is failing on a Parrot Capture or a Rakudo Capture | 14:26 | |
jnthn | The latter would be very odd. | 14:27 | |
14:27
breinbaas joined
|
|||
pmichaud | agreed... but it's all a little odd to begin with | 14:27 | |
jnthn | (Since we inherit from Parrot Capture...) | ||
Troo. :-) | |||
pmichaud | phenny: tell sorear after thinking about it this morning, I realized that double-indirection for variables/binding isn't the answer either | 14:28 | |
phenny | pmichaud: I'll pass that on when sorear is around. | ||
14:29
plobsing left
14:30
skids joined
|
|||
pugssvn | r31181 | pmurias++ | [mildew] ast from the m0ld backends doesn't go through the | 14:31 | |
r31181 | simplification pass, noops in m0ld, label duplication is caught | |||
r31182 | pmurias++ | [mildew] started porting Build.PL over from Text::BibTeX | 14:32 | ||
14:32
JimmyZ left
14:35
frodwith_ is now known as frodwith
14:41
pyrimidine left
14:46
pyrimidine joined,
rv2733 joined
14:47
am0c left
14:51
rgrau_ joined
14:54
proller left
14:55
estrabd_afk is now known as estrabd
14:56
xabbu42 joined
14:57
xabbu42 left
|
|||
masak | pmurias, ruoso, sorear: which one of you should I talk to if I'm interested in the art of turning a parse tree à la viv into an AST? | 14:58 | |
pmurias | any one of us which is avalible | 15:01 | |
15:02
proller joined
|
|||
masak | ok, great. | 15:02 | |
I don't really know where to begin. I know the goal is to condense information by removing unnecessary information only pertinent to parsing. | 15:03 | ||
I don't have very many examples of how to do that. PPI is one, I guess. | 15:04 | ||
I've been looking at that a little. | |||
jnthn | masak: There's also Rakudo's Actions.pm, which is doing that very thing. | ||
masak | ah, goodie. | ||
but Actions.pm creates PAST, right? | |||
jnthn | Yes | ||
*AST* :-) | 15:05 | ||
masak | the impression I have of PAST is that it's too low-level. | ||
but I might be wrong on that; I don't know enough about it. | |||
jnthn | I thought we'd have to extend it a lot when I first encountered it too, 2+ years back. | 15:06 | |
I was wrong. | |||
pmurias | masak: mildew/src/VAST/* contains code which turns VAST into mildew AST | ||
15:06
proller left
|
|||
masak | ok, here's what I'd like to have. I want an abstraction level where I can comfortably say things like "these two methods return values of different type", "this method contains a statement which will never be reached" and "this method never refers to 'self', directly or indirectly". will VAST or PAST do that for me? | 15:08 | |
pmichaud | PAST can do it, but it's not built-in. | ||
(it can be done with PAST, but PAST doesn't provide those capabilities by default) | 15:09 | ||
masak | ok, that's good to know. I didn't expect it to be built-in. | ||
I'm prepared to write search tooling myself. | |||
jnthn | It's still I expect we'd need to build some day. | ||
If you're intested in building it, that'd be awesome. | |||
masak | I am. that's sigmund. | 15:10 | |
just thinking of what AST tech to use. | |||
maybe PAST is it. | |||
pmichaud | for example, for the latter, we can just have every variable reference place a marker in the routine's symbol table saying "I used this" | ||
jnthn | pmichaud: Well, or walk the tree for PAST::Var nodes with a matching .name() | 15:11 | |
pmichaud | jnthn: sure, but "walk the tree" is a little expensive. | ||
masak | 'self' is a term, not a variable. :) | ||
jnthn | True. | ||
pmichaud | easier to do it while building :-) | ||
jnthn | masak: That's a parsing thing. At the AST level you care about "how do I get self" | ||
masak: And the answer is "it's stored in a lexical" | 15:12 | ||
masak | oh, ok. | ||
pmichaud | in rakudo, we implement self as a lex... what jnthn++ said. | ||
I suppose it's an open question as to whether 'self' should be visible in the lexpad. | |||
masak | I need to learn to distinguish parse-phase things from things in later phases. | ||
jnthn | pmichaud: Well, it's tricky-ish to get at it now. :-) | ||
pmichaud: Since it's stored sigil-less. | 15:13 | ||
pmichaud | jnthn: I was thinking in the sense of MY:: | ||
15:13
drbean left
|
|||
jnthn | eww | 15:13 | |
pmichaud | MY::<self> | ||
15:13
macdaddy joined,
drbean joined
|
|||
jnthn | YOUR::<self> :-) | 15:13 | |
15:13
macdaddy is now known as Guest4174
|
|||
jnthn | pmichaud: Well, we can find a way around that if we need to. | 15:14 | |
pmichaud | jnthn: right... I'm just idly curious at the moment. :) | ||
jnthn | pmichaud: We'll hae the same fun with MY::<__CANDIDATE_LIST__> too :-) | ||
masak | rakudo: class A { method closure { my $i = 0; return { say self, ++$i } } }; my $c = A.new.closure; $c() for ^5 | ||
p6eval | rakudo 34c1ba: OUTPUT«A()<0x1a1fd80>1A()<0x1a1fd80>2A()<0x1a1fd80>3A()<0x1a1fd80>4A()<0x1a1fd80>5» | ||
masak | \o/ | ||
a self-sacrificing method :P | 15:15 | ||
jnthn | Totally giving it's self up. | ||
pmichaud wants to attack the ticket queue, but knows that he really needs to solve lists. | 15:16 | ||
masak | to achieve closure, you first have to let go of the self... | ||
15:16
xabbu42 joined
|
|||
masak | pmichaud: lazy lists feels like the last big remaining feature for R*. | 15:17 | |
pmichaud | masak: well, working lists and iterators, yes. | ||
it's not just laziness, it's also the mis-reporting of things like GatherIterator and the fact that binding lazy structures consumes them | 15:18 | ||
and we still need working closures for R*, although that's pretty easy to solve at this point. | |||
but closures will have to be solved in the next 3-4 days to make it into the parrot release, I suspect. | 15:19 | ||
jnthn | Aye, those are probably our two nastiest things at the moment. | ||
15:20
pmurias left
|
|||
jnthn | pmichaud: Parrot release is a week today, I believe. | 15:23 | |
pmichaud | jnthn: yes, thus closures have to be solved in the next 3-4 :) | ||
jnthn | So yes, 3-4 days to get in before the freeze. | ||
masak | does the closures trouble originate on the Parrot level? | ||
pmichaud | not any more. | ||
but we need a new PAST node type to really handle it well. | |||
masak | oh! | 15:24 | |
pmichaud | (and that's in Parrot) | ||
wellllllll | |||
if we *had* to, the PAST node type could come from Rakudo for a while :) | |||
jnthn | ;-) | ||
pmichaud | and then get backported into Parrot | ||
masak | no rush, then. :) | ||
jnthn hands pmichaud a monkey with deft fingers | |||
15:29
envi^home joined
15:35
Ross joined
15:37
arnsholt joined
15:46
patspam joined
15:52
TiMBuS left
15:55
xabbu42 left
15:57
ashleydev joined
15:58
justatheory joined
|
|||
arnsholt | Is there a way to make a named parameter required? (Apart from die "OMG!" if not $named) | 15:58 | |
jnthn | ! | 15:59 | |
15:59
pyrimidine left
|
|||
jnthn | as in, :$batteries! | 15:59 | |
16:00
pyrimidine_ joined
|
|||
arnsholt | Yeah, that worked, thanks | 16:02 | |
(it took me a second to figure out the one-byte response, but the parallel to ? is pretty clear, when I think about it) | |||
16:02
pyrimidine_ left
16:03
pyrimidine_ joined
16:04
pyrimidine_ is now known as pyrimi[tab]
16:05
pyrimi[tab] is now known as p[tab]
16:06
p[tab] is now known as [tab]
16:07
[tab] is now known as [tab][hunter]
16:08
[tab][hunter] is now known as pyrimidine
|
|||
masak | hm, A06 didn't have the exclamation mark, nor (if I read it correctly) any corresponding way to mark a named as required. and nameds were marked like this: +$named. | 16:09 | |
I'm glad it changed. :) | |||
optional positionals were ?$opt | 16:10 | ||
jnthn | .oO( A is for Aulde ) |
||
masak: Heh, that longs...just wrong now. :-) | |||
*looks | |||
16:11
hirschnase left
16:12
xabbu42 joined,
xabbu42_ joined
|
|||
k23z__ | mberends, you got windoze ? I wanna send you some binaries for you to hafalook | 16:13 | |
16:13
ashleydev left
16:14
cdarroch joined,
cdarroch left,
cdarroch joined
16:15
ashleydev joined
|
|||
mberends | k23z__: sure, sounds like fun. I'll privmsg you an email address | 16:15 | |
k23z__ | mberends, please do so | ||
16:16
xabbu42 left,
xabbu42_ is now known as xabbu42
|
|||
TimToady | masak: in all(|$x) the | is required, because $x never interpolates into a list | 16:20 | |
but don't write it that way | |||
masak | ok. | 16:21 | |
TimToady | well, it was $_, so just .all works | ||
masak | ooh! | ||
rakudo: .all | |||
p6eval | rakudo 34c1ba: OUTPUT«Method 'all' not found for invocant of class '' in main program body at line 11:/tmp/E_IUQZn9ZC» | ||
masak submits rakudobug | |||
colomon | What type is .all supposed to be defined on? | 16:22 | |
TimToady | Any -> List | ||
jnthn | Ah, then it is a rakudobug. | ||
rakudo: 42.all | |||
p6eval | rakudo 34c1ba: OUTPUT«Method 'all' not found for invocant of class 'Int' in main program body at line 11:/tmp/P7ynz4FEml» | ||
jnthn | Ah, OK, actually not bug, just NYI. | ||
16:23
alester joined
|
|||
TimToady | in any case, it ought to work in your subset of Array | 16:24 | |
rakudo: my @a = 1,2,3; say @a.all | 16:25 | ||
p6eval | rakudo 34c1ba: OUTPUT«Method 'all' not found for invocant of class 'Array' in main program body at line 11:/tmp/1M77vVAN9f» | ||
arnsholt | masak: I've got an idea for ufo, BTW | ||
TimToady | pugs: my @a = 1,2,3; say @a.all | ||
p6eval | pugs: OUTPUT«all(VInt 1,VInt 2,VInt 3)» | ||
arnsholt | How about a target that reruns ufo for you? | ||
masak | arnsholt: I'm listening. so are "they". | ||
arnsholt: a target? how do you mean? | |||
TimToady | pugs: $_ = [1,2,3]; say .all | 16:26 | |
p6eval | pugs: OUTPUT«all(VRef <Array:0x2aefa8588d91>)» | ||
TimToady | pugs: $_ = (1,2,3); say .all | ||
p6eval | pugs: OUTPUT«all(VRef <Array:0x2b56f2f9ab91>)» | ||
TimToady | hmm | ||
well, pugs isn't always right :) | |||
oh, wait | |||
pugs: $_ := (1,2,3); say .all | 16:27 | ||
p6eval | pugs: OUTPUT«all(VInt 1)» | ||
TimToady | pugs: $_ := [1,2,3]; say .all | ||
p6eval | pugs: OUTPUT«all(VInt 1,VInt 2,VInt 3)» | ||
arnsholt | masak: A target in Makefile, that runs ufo | ||
TimToady | there we go :) | ||
arnsholt | Although I suppose it's a bit stupid | ||
But I found I wanted it nonetheless =) | |||
masak | arnsholt: so, like, 'make ufo' or something? | 16:28 | |
arnsholt: that simply runs 'ufo'? | |||
16:28
Jedai joined
|
|||
arnsholt | Yeah =) | 16:28 | |
Now that I think about it, maybe not a good idea after all >.> | |||
masak | let's just say I'm not yet convinced of its advantages. :P | 16:29 | |
arnsholt | I can understand that, actually =) | ||
Maybe if ufo ever grows parameters or somesuch | |||
Bah. My prove is too old for ufo | 16:30 | ||
masak | it has one, as of yesterday. | ||
arnsholt: then your prove needs updating. maybe I should put that in the README or something. | |||
arnsholt | Yeah, I've encountered the problem before | ||
My Ubuntu is olded | 16:31 | ||
pugssvn | r31183 | colomon++ | [t/spec] Add simple tests for [div] and [mod]. | ||
16:32
meppl joined
|
|||
dalek | kudo: 7821618 | (Solomon Foster)++ | src/core/Real.pm: [t/spec] Add "our" to infix:<mod> definition so [mod] works. |
16:32 | |
arnsholt | masak: But something you should do is mark the test and clean targets as phony targets | 16:33 | |
masak | arnsholt: excellent idea. I await your patch with gratitude. | ||
arnsholt | Sure =) | ||
masak | ++arnsholt | 16:34 | |
arnsholt | *sigh* This is the times when git taxes my patience | 16:38 | |
Coaxing git into making a patch takes longer than writing the patch | |||
masak | I'm not particular. I accept a gist of a diff. | 16:39 | |
16:42
ashleydev left
|
|||
arnsholt | masak: gist.github.com/430285 | 16:44 | |
moritz_ back | 16:45 | ||
[Coke]: I recall you have access to the planetsix config file... colomon's post are all shown with "colomon" as the title, not with the actual title | |||
masak | arnsholt: applied, pushed. thanks! | ||
moritz_ | [Coke]: could you please try to fix it? | ||
masak goes home to do laundry, cook nom | 16:46 | ||
16:46
masak left
|
|||
colomon | I'm not really that vain, honest! ;) | 16:46 | |
moritz_ | colomon: that's what they all say :-) | ||
[Coke] | moritz_: it's his feed. | 16:47 | |
view-source:justrakudoit.wordpress.com/feed/ | |||
says: " | |||
<media:title type="html">colomon</media:title> | |||
sorry. | |||
moritz_ | huh? | 16:48 | |
16:48
mberends left
|
|||
moritz_ | [Coke]: ah, that's the feed title | 16:48 | |
[Coke]: but what we want is <title> inside each item | 16:49 | ||
<item> <title>Mandelbrot</title> ... | |||
jnthn | moritz_: It is inside each item though - but it's the title for the gravator... | ||
*gravatar | |||
[Coke] | moritz_: ah... | ||
jnthn | Maybe the parser is not very namespace aware. ;-) | ||
[Coke] | in that case it's not a config issue, it's a bug in the planet code, I'm guessing. | ||
colomon is glad you guys understand what is going on, I was just trying to figure out how to fix it... | 16:50 | ||
[Coke] | if there is a different feed I could try, I can do that, otherwise, best to bump to the planet coders. | ||
moritz_ | [Coke]: not aware of one :( | 16:54 | |
[Coke] | moritz_: I'd ping robert and ask. | 16:56 | |
moritz_ | ok, I'll write a mail | ||
colomon | moritz_++ | 17:00 | |
moritz_ | done | ||
17:03
dakkar left
|
|||
[Coke] | moritz_++ | 17:03 | |
jnthn realizes he'd better make a start on his talks for $workshop today. | 17:04 | ||
moritz_ | speaking of today... #phasers in 1:54? | 17:06 | |
arnsholt | What is this #phasers thing? | 17:09 | |
moritz_ | what previously was #rakudosketch | ||
our weekly status meeting | |||
arnsholt | Ah, right | ||
[Coke] sighs. I'm going to have to do another bisect to figure out when partcl-nqp died. =| | 17:11 | ||
whoops. ww | |||
jnthn | Yes, #phasers is today | 17:12 | |
We'll see who makes it. :-) | |||
colomon | moritz_: thanks for the reminder, too. | ||
(#phasers, I mean.) | 17:13 | ||
17:15
szabgabx joined
17:21
estrabd left
17:23
estrabd joined
|
|||
cognominal | rakudo: : :g.perl | 17:23 | |
oops | |||
p6eval | rakudo 782161: OUTPUT«===SORRY!===Confused at line 11, near ": :g.perl"» | ||
cognominal | rakudo: :g.perl | ||
p6eval | rakudo 782161: ( no output ) | ||
cognominal | rakudo: say :g.perl | ||
p6eval | rakudo 782161: OUTPUT«"g" => Bool::True» | ||
cognominal | I thought that was :g(0) | 17:24 | |
17:24
estrabd left,
rgrau left
17:26
stephenlb joined,
estrabd joined
|
|||
cognominal | ho, apparently that has changed. | 17:26 | |
17:30
estrabd left
17:32
gbacon left
17:42
pyrimidine left,
pyrimidine joined,
pyrimidine left
17:45
Intensity left
|
|||
TimToady | cognominal: it was never :g(0), though rakudo had it :g(1) at one point | 17:47 | |
that is, :foo has always implied true, not false | 17:48 | ||
moritz_ | it's :!foo that's false | ||
TimToady | nodnod | ||
17:49
k23z__ left,
stephenlb left
17:51
stephenlb joined
17:52
estrabd joined
17:54
estrabd left
17:55
estrabd joined
|
|||
cognominal | anyway, it makes more sense even if it may be heavier on memory implemantation-wise. | 17:55 | |
dalek | kudo: acecb97 | moritz++ | src/core/Match.pm: remove some clutter from Match.perl output |
17:59 | |
18:00
xabbu42 left,
mberends joined,
Chillance joined
|
|||
arnsholt | I even blogged: blogs.perl.org/users/arne_skjaerhol...erl-6.html | 18:01 | |
(Most fitting would perhaps be if the post was generated by a HMM language model, but I think readability would suffer ^^) | |||
TimToady | cognominal: as many Lisp implementations have shown, there is nothing that says a unit cell must always be interpreted as a native int; certainly in Perl 6 the unit cell could encode commont Int values and common enum types | 18:02 | |
moritz_ | www.perlmonks.org/?node_id=843572 btw | 18:04 | |
18:08
christine left
18:10
broquaint joined
18:12
envi^home left
|
|||
cognominal | TimToady: A scalar being a degenerated list with one element. Should I have failure like that : Method 'sort' not found for invocant of class 'String' ? | 18:15 | |
That would avoid to special case a lot of code. | |||
afk& | 18:16 | ||
pmichaud | phenny: tell sorear disregard my previous message... we do need double-indirection, it just looks very different from what I was originally expecting. | 18:21 | |
phenny | pmichaud: I'll pass that on when sorear is around. | ||
moritz_ | pmichaud: is there anything I can do to help you get inversion lists and backslash escapes in char classes running? | 18:22 | |
18:22
xabbu42 joined
|
|||
pmichaud | moritz_: let me see if I can figure out how to write it up. | 18:22 | |
(the description) | |||
18:22
christine joined
18:24
xabbu42 left
|
|||
moritz_ | one more things... | 18:24 | |
for MAIN I want to add a contextual to the module loader that indicates if we're compiling a module or not | 18:25 | ||
and if not, add a call to a MAIN_HELPER or so to the end of the mailine code | |||
does that sound like an accecptable plan? | 18:26 | ||
pmichaud | no | ||
I think we decided a bit ago that using contextuals for this isn't really the way to go | |||
moritz_ | did we settle on an alternative? | ||
pmichaud | yes, but haven't implemented it yet. | 18:27 | |
essentially, YOU_ARE_HERE needs a refactor. | |||
The first (outermost) sub in any compiled module needs to see if it has an outer context. | |||
If it has an outer context, then it's not the mainline. | |||
If it doesn't have an outer context, it is the mainline. | |||
moritz_ | modules have an outer context? | 18:28 | |
I mean, other than the setting | |||
pmichaud | well, it's more in the sense of "am I an eval" versus "am I a module" | 18:31 | |
moritz_ | use Foo; # shouldn't execute Foo.pm's MAIN sub | ||
actually for now I'd even always include a call to MAIN_HELPER | 18:32 | ||
and do the "run only if" part later as a refinement | |||
18:33
SmokeMachine joined
18:37
xabbu42 joined
18:40
pyrimidine joined
18:41
xabbu42 left
18:42
christine left
|
|||
moritz_ | rakudo is awesome | 18:42 | |
with Q:PIR and the setting I can prototype my Rakudo code outside the compiler | 18:43 | ||
18:45
jaldhar left
|
|||
jnthn | #phasers in 13 mins or so | 18:47 | |
18:47
justatheory left
18:49
k23z__ joined
18:50
alester left,
alester joined
|
|||
moritz_ | nopaste.snit.ch/21083 | 18:50 | |
I don't understand why I get that Null PMC Access | |||
18:50
xabbu42 joined
|
|||
moritz_ | %r should be the Any type object, not Null | 18:50 | |
moritz_ feels rather dumb | 18:52 | ||
jnthn | %r = $P0['&MAIN'] | ||
moritz_: You're checking if the lexpad is null | |||
moritz_: But assuming that if the lexpad exists, there must be a &MAIN in it | |||
moritz_ | ah | 18:53 | |
jnthn | My guess is that the line I pasted is the source of your fail. | ||
moritz_ | you're right | ||
jnthn++ | |||
now that I know what my error was, it's easy to fix | |||
pmichaud | 18:42 <moritz_> rakudo is awesome | 18:54 | |
I like reading that. :) | |||
cognominal | Answering my own question @( ) is not so much a hassle | 18:55 | |
k23z__ | mberends, ? | ||
mberends, ping | |||
mberends | k23z__: pong | ||
k23z__ | mberends, cloud.github.com/downloads/wsdookad.../wfsdl.rar | 18:56 | |
18:58
samlh joined
|
|||
mberends | k23z__: I see the email, will be starting up windoze in a few minutes :) | 18:58 | |
k23z__ | gr8 | ||
moritz_ | rakudo: my $x = 5; $x does False; say $x.Bool | 18:59 | |
p6eval | rakudo acecb9: OUTPUT«0» | ||
mberends | k23z__: it looks like you've done a lot of work there :) | ||
moritz_ | rakudo: my $x = 5; say $x.Bool | ||
p6eval | rakudo acecb9: OUTPUT«1» | ||
k23z__ | mberends, haha | ||
moritz_ | nopaste.snit.ch/21084 rather close to initial MAIN handling | 19:02 | |
19:05
masak joined
|
|||
pmichaud | moritz_: I'm fine with whatever MAIN handling you want to put in place.. my concern is that we're starting to layer too many special-purpose dynamic vars into the loading process and not thinking about the bigger picture of how things fit together. | 19:06 | |
(which is why YOU_ARE_HERE needs a bit of a rework) | |||
and the $*IN_EVAL dynamic var is EVIL | 19:07 | ||
(it needs to go away) | |||
moritz_ | pmichaud: I'll introduce no dynamic vars, and live with always calling all MAIN subs | ||
pmichaud | wfm for now. | ||
I expect I'll be able to address it in about a week. | |||
(i.e., before the next rakudo release) | |||
back to list design | |||
19:08
_ilbot2 left
19:09
_ilbot2 joined
19:13
christine joined
|
|||
cognominal | that's creepy when, by mistake, I type 'say <something>' at the bash prompt instead of the rakudo and my mac reads it aloud. | 19:15 | |
PerlJam | it's a feature! | ||
samlh | lol | ||
cognominal | but that happens because I am thrown out of the rakudo shell with get_string() not implemented in class 'ArrayIterator' | 19:16 | |
arnsholt | The same thing happens to me from time to time =) | 19:17 | |
pmichaud | eta to #rs? | 19:18 | |
moritz_ | pmichaud: -18 | ||
pmichaud: in #phasers | |||
pmichaud | oops | ||
19:32
lucs joined
19:34
ShaneC joined
19:38
rokoteko joined
|
|||
rokoteko | will you be able define your own ops in perl6? | 19:38 | |
moritz_ | rakudo: multi sub postfix:<!>($x) { [*] 1..$x }; say 51 | 19:39 | |
p6eval | rakudo acecb9: OUTPUT«51» | ||
moritz_ | rakudo: multi sub postfix:<!>($x) { [*] 1..$x }; say 5! | ||
jnthn | fail ;-) | ||
p6eval | rakudo acecb9: OUTPUT«120» | ||
moritz_ | better :-) | ||
rokoteko | I mean like make an op called "*!*" that does what you want? ie. $result = 1 *!* 2; ? | 19:40 | |
moritz_ | sure | ||
what do you want *!* to do? | |||
jnthn | rokoteko: Like above but infix:<*!*> and take two args. | ||
rokoteko | jnthn: yes. infix sub that thakes two args, named in a weird way. :) | 19:41 | |
moritz_: I dunno. maybe $a**$b-1, if you need something. | |||
moritz_ | rakudo: sub infix:<*!*>($x, $y) { $x ** ($b - 1) }; say 2 *!* 9 | ||
p6eval | rakudo acecb9: OUTPUT«===SORRY!===Symbol '$b' not predeclared in infix:<*!*>» | ||
moritz_ | rakudo: sub infix:<*!*>($x, $y) { $x ** ($y - 1) }; say 2 *!* 9 | ||
p6eval | rakudo acecb9: OUTPUT«256» | 19:42 | |
rokoteko | ah, brilliant. | ||
something new. :) | |||
TimToady | I think ($a**$b)-1 is more useful... | ||
19:43
plainhao left
19:45
Jedai left,
Jedai joined
|
|||
takadonet | TimToady: ... | 19:52 | |
jnthn | std: $* | 19:57 | |
p6eval | std 31183: OUTPUT«===SORRY!===Unsupported use of $* variable; in Perl 6 please use ^^ and $$ at /tmp/Nw0NoTCfy1 line 1:------> $*⏏<EOL>Parse failedFAILED 00:01 107m» | ||
jnthn | std: my $* = 42; | ||
p6eval | std 31183: OUTPUT«===SORRY!===Unsupported use of $* variable; in Perl 6 please use ^^ and $$ at /tmp/msn7f4ez6E line 1:------> my $*⏏ = 42;Parse failedFAILED 00:01 104m» | ||
jnthn | Aww! | ||
masak | std: ^^ | ||
p6eval | std 31183: OUTPUT«Use of uninitialized value $bad in concatenation (.) or string at STD.pm line 67904.===SORRY!===Preceding context expects a term, but found infix instead at /tmp/GWZ6elm6cy line 1:------> ^^⏏<EOL>Parse failedFAILED 00:01 105m» | ||
masak | TimToady: ^^ | ||
20:02
rv2733 left
20:03
patrickas joined,
Psyche^ joined
|
|||
patrickas | hello | 20:03 | |
moritz_ | hi patrickas | 20:04 | |
I'm currently working on MAIN sub included in rakudo | |||
patrickas | hi moritz_ | ||
\o/ maskak++ | |||
i mean moritz_++ | |||
moritz_ | I got it far enough not to Null PMC Access | ||
patrickas | keyboard confusion :-) | ||
moritz_ | but it's not calling MAIN yet :( | ||
patrickas | Null PMC Access is good :-) | 20:05 | |
rokoteko | are, let's say Int and Num somehow connected in the type system, or are they as separate as Int and Str? | ||
patrickas | can i help somehow ? | ||
moritz_ | rakudo: say Int ~~ Numeric | 20:06 | |
jnthn | rokoteko: Well, they both do the Numeric role | ||
p6eval | rakudo acecb9: OUTPUT«1» | ||
moritz_ | rakudo: say Num ~~ Numeric | ||
p6eval | rakudo acecb9: OUTPUT«1» | ||
moritz_ | and both do the Real role too | ||
rokoteko | jnthn: nods. something like this I was waiting for as an answer. so roles can be user to extend the type-system? | ||
moritz_ | patrickas: I can push what I have to branch, maybe you have some ideas | 20:07 | |
patrickas: pushed to branch MAIN | 20:08 | ||
20:08
Patterner left,
Psyche^ is now known as Patterner
|
|||
jnthn | rokoteko: Well, so can classes in that sense. :-) | 20:08 | |
rokoteko: We just define a Numeric role and Int and Num both declare themselves as doing it. | 20:09 | ||
rokoteko: But any class doing Numeric-y things can also declare itself as "does Numeric" too. | |||
So it's a way to be extensible in that sense I guess, yes. | |||
moritz_ | I guess the change to src/Perl6/Actions.pm isn't doing what it should | 20:10 | |
rokoteko | jnthn: ok, thanks for explanation. | 20:12 | |
patrickas | moritz_ ok I'll take a look | ||
20:15
masak left
|
|||
moritz_ | ah, I guess the :name() thing is wrong | 20:15 | |
if only I spoke PAST fluently... | |||
20:18
cdarroch left
20:19
samlh left
|
|||
rokoteko | how would I find out all the roles that f.ex. Num does? | 20:19 | |
moritz_ | by reading the source code :-) | ||
jnthn | rakudo: say Num.^roles.perl | ||
p6eval | rakudo acecb9: OUTPUT«(Real[], )» | ||
jnthn | Though Real in turn does Numeric | 20:20 | |
...and that trailing comma is freaky. | |||
moritz_ | but not wrong | ||
20:20
smash__ joined
|
|||
smash__ | hello everyone | 20:20 | |
jnthn | moritz_: No, but it may indicate something else is. | ||
moritz_ | hm | ||
jnthn: how do I call a sub in PAST? PAST::Op.new(:pasttype('call'), '&subname') ? | 20:21 | ||
or :name('&subname')? | 20:23 | ||
jnthn | :name('&subname') | 20:25 | |
pmichaud | rakudo star repo now at github.com/rakudo/star | ||
20:26
cdarroch joined,
cdarroch left,
cdarroch joined,
patrickas_ joined,
patrickas left,
patrickas_ is now known as patrickas
|
|||
pmichaud | current committers are pmichaud, jnthn, moritz, masak, perlpilot | 20:26 | |
20:28
ethel joined
|
|||
cognominal | pmichaud, what's the purpose of a new repo? | 20:28 | |
patrickas | so I guess you guys are the santa clauses who'll bring christmas to us all ? :-) | 20:29 | |
pmichaud | cognominal: distributions are separate from compiler releases | ||
PerlJam | cognominal: we need a place to put the dist | ||
cognominal | ok | ||
pmichaud | there can be many different distributions based on the rakudo perl compiler | ||
cognominal | patrickas++ | ||
jnthn afk for a little bit | |||
smash__ | moritz_: ping | 20:32 | |
moritz_ | smash__: pong | ||
smash__ | moritz_: need a sugestion where to add a test for RT#69232 so i can close the ticket.. any ideas ? | 20:33 | |
moritz_ | smash__: looking... | ||
20:33
pyrimidine left
|
|||
pmichaud | if someone wants to add rakudo/star.git to hugme, that'd be great. | 20:33 | |
20:33
pyrimidine joined
|
|||
pmichaud | for the star repository, I vote for a liberal commitbit policy | 20:34 | |
20:34
pyrimidine left
|
|||
moritz_ | pmichaud: I'd need the rakudo account API token for that | 20:34 | |
20:34
pyrimidine joined
|
|||
pmichaud | moritz_: won't it be the same as rakudo? or do you not have that already? | 20:34 | |
hugme show rakudo | |||
hugme | pmichaud: sorry, I don't know anything about 'rakudo' | ||
pmichaud | oh. | ||
moritz_ | smash__: it would be ideal to get t/spec/S32-io/IO-Socket-INET.t running on Rakudo master | ||
smash__: and add the test there | |||
smash__ | moritz_: i can have a look at it.. no promisses tho | 20:35 | |
pmichaud | moritz_: /priv msg okay for api token? | ||
moritz_ | pmichaud: yes | ||
dalek | kudo: 4df5081 | pmichaud++ | docs/release_guide.pod: Tentative name for June release. |
20:36 | |
20:36
luben_k joined
|
|||
moritz_ | hugme: reload | 20:38 | |
20:38
hugme left
20:39
hugme joined
|
|||
moritz_ | hugme: show star | 20:39 | |
hugme | moritz_: the following people have power over 'star': TimToady, [particle], colomon, jnthn, masak, mberends, moritz_, pmichaud, sorear. URL: github.com/rakudo/star/ | ||
20:39
xenoterracide joined,
xenoterracide left
|
|||
patrickas | damnt it! Now I got it! | 20:39 | |
It's the "star" that announces christmas! | 20:40 | ||
sorry that was the last pun | |||
no more siliness from me | |||
PerlJam | patrickas: too bad. | ||
pmichaud | the "star" has lots of meanings | 20:43 | |
patrickas | well I was aware of the whatever | ||
and had guessed "the star of the show" meaning | |||
but it's the first time that I make the christmas connection | 20:44 | ||
cognominal | I know that BooK's wife is expecting a kid in August. Would he be our savvior? In a few years, will he argue succesffuly with the priests in the temple about the Perl 6 scriptures. | 20:46 | |
smash__ | moritz_: ahh, you tricked me ;) | 20:47 | |
PerlJam | Perl 6 has no temple. | 20:48 | |
20:48
luben_k left,
pyrimidine left
|
|||
patrickas | Perl 6 has no priests | 20:48 | |
20:48
clintongormley left
|
|||
moritz_ | oh sure it has | 20:49 | |
use.perl.org/~masak/journal/39445 | |||
smash__ | i always played as priest !! | ||
PerlJam | pmichaud: are you paying attention to #ps? | 20:51 | |
patrickas | Perl 6 has no priests .oO(just perlmonks) but I guess I was wrong :-) | 20:53 | |
cognominal | pmichaud, I must talk with mberends at the french workshop this Friday. about rakudo *, is there a page I can refer to? | ||
pmichaud | cognominal: no, it's one of my many todos | 20:55 | |
I might be able to write something up by then | |||
at least some talking points or bullet points would be good | |||
mberends sneezes | 20:56 | ||
cognominal | I don't care so much about the date but about the features. I am seeing the docs/ROADMAP file , I suppose I can say the really important items will be solved. | 20:57 | |
mberends | cognominal: do you mean talk about Rakudo * ? | ||
cognominal | By the way I am working on a presentation tool tentatively called Silver Bullets designed to present slides with annotated code. | 20:58 | |
20:58
hirschnase joined
|
|||
cognominal | mberends: at fpw, I will talk about rakudo * :) You will talk of that + everything else :) | 20:59 | |
20:59
skangas joined
21:04
Ross left
21:05
jjore left,
whiteknight joined
21:07
jjore joined,
Su-Shee left
21:08
hirschnase left
21:09
alester left
21:10
justatheory joined
21:11
xabbu42 left
21:12
ggoebel joined
21:17
alester joined
21:19
LionMadeOfLions joined
21:22
azert0x joined
21:24
cognomore joined
21:44
SmokeMachine left
21:46
Guest46866 left
|
|||
cognominal | In rakudo, I suppose that without the := operator. I can't replace ["est"] in [ "ceci", ["est"], "une pipe" ]; | 21:49 | |
I must walk the structure and build another... | |||
colomon | rakudo: my @a = [ "ceci", ["est"], "une pipe" ]; say @a[1] = "is"; say @a.perl | 21:51 | |
p6eval | rakudo 4df508: OUTPUT«Cannot assign to readonly value in '&infix:<=>' at line 1 in main program body at line 11:/tmp/HxoEjj0qDL» | ||
colomon | rakudo: my @a = ( "ceci", ["est"], "une pipe" ); say @a[1] = "is"; say @a.perl | 21:52 | |
p6eval | rakudo 4df508: OUTPUT«estCannot assign to readonly value in '&infix:<=>' at line 1 in main program body at line 11:/tmp/9FcbrVp0dR» | ||
colomon | rakudo: my @a = ( "ceci", ["est"], "une pipe" ); say @a[0] = "is"; say @a.perl | ||
p6eval | rakudo 4df508: OUTPUT«ceciCannot assign to readonly value in '&infix:<=>' at line 1 in main program body at line 11:/tmp/6uoFNOkGm5» | ||
colomon | rakudo: my @a = ( "ceci", ["est"], "une pipe" ); @a[0] = "is"; say @a.perl | ||
p6eval | rakudo 4df508: OUTPUT«["is", ["est"], "une pipe"]» | ||
colomon | ah, typo | ||
rakudo: my @a = ( "ceci", ["est"], "une pipe" ); @a[1] = "is"; say @a.perl | 21:53 | ||
p6eval | rakudo 4df508: OUTPUT«["ceci", "is", "une pipe"]» | ||
colomon probably doesn't understand the question, and is off to the pub anyway... | |||
cognominal | well I want to have variables that would bind to subbranches, so I want them to see the modification. | 21:55 | |
Anyway, I have a workarouand. | |||
21:56
eternaleye left
22:04
estrabd is now known as estrabd_afk
22:08
skids left
22:09
REPLeffect left,
mikehh joined
22:10
REPLeffect joined
22:20
eternaleye joined
22:37
d4l3k_ joined,
dalek left,
d4l3k_ is now known as dalek
22:39
smash__ left
22:50
Wolfman2000 joined
22:51
arnsholt left
22:54
dukeleto joined
22:55
snoopy joined
22:56
snoopy is now known as Guest9064
|
|||
dukeleto | howdy | 22:56 | |
i have figured out how to load perl6.pbc | 22:57 | ||
gist.github.com/430762 <-- src/metamodel/ClassHOW.pir needed a :load | 22:58 | ||
jnthn wonders why it was missing in the first place | 22:59 | ||
dukeleto | jnthn: can you apply that? | ||
jnthn | Yeah, I'm just trying to remember if doing so will break something else. | ||
dukeleto | jnthn: i am runnign "make test" with it now | 23:00 | |
jnthn | Needs make spectest really I guess | ||
dukeleto | jnthn: basic sanity tests pass, trying spectest now | ||
jnthn: that allows loading perl6.pbc without running it | 23:01 | ||
jnthn | *nod* | ||
dukeleto | jnthn: without :load, it is impossible to load perl6.pbc without running it | ||
jnthn: but yes, it could break something | |||
jnthn | dukeleto: Yeah. I'm hoping it's just a mistake rather than deliberately missing the :load. | ||
I can't think of anything it'd break, so I'll go with mistake. :-) | 23:02 | ||
dukeleto | jnthn: most likely it is just a mistake, no one has tried to load the PBC without running it, most probably | ||
23:02
Jedai left
|
|||
dukeleto | jnthn: but for PL/Perl6, i need to load perl6.pbc in the Parrot interp that will compile stored procedures written in Perl 6 | 23:03 | |
jnthn | dukeleto: If the spectest comes back clean (doing a run now) I'll apply it. | ||
dukeleto | jnthn: awesome! | ||
jnthn | rakudo: say [mod] 100, 99, 88, 77, 66, 55, 44 | ||
p6eval | rakudo 4df508: OUTPUT«1» | ||
dukeleto | jnthn: i am seeing a failure in S02-literals/listquote-whitespace.rakudo, is that expected ? | 23:04 | |
jnthn | No, but I wonder if it's a failed PARROT_REVISION bump. | ||
pmichaud++ fixed something in nqp-rx in that area recently. | 23:05 | ||
dukeleto | jnthn: i am not using --gen-parrot, that is why. livin' on the bleeding edge for convenience, but my spectest is probably not valid | ||
jnthn: since you are running one, I will kill mine | |||
jnthn | oh no, it was a Rakudo patch to fix that one | 23:06 | |
Hmm | |||
Anyway, I doubt it's anything related to this patch. | |||
dukeleto hopes for the best | 23:07 | ||
23:07
patrickas left
|
|||
eternaleye | S06-routine-modifiers/proxy.t seems somewhat bitrotted; it uses the syntax 'new Proxy' | 23:09 | |
jnthn | Eww. | 23:10 | |
Yes, decidedly bitrotten | |||
Or just wrong since it's inception but never run. :-) | |||
jnthn tests a cognominal++ patch too | 23:12 | ||
23:16
arnsholt joined
|
|||
eternaleye | I was looking at it because I was curious as to how one defined a scalar container oneself to be used with my $foo is MyContainer. (I had this idea of my Int $foo is ( Scalar but Logged[$filehandle] ); ) | 23:16 | |
23:22
eternaleye left
23:27
ciphertext joined
23:28
lest_away is now known as lestrrat
23:31
eternaleye joined
23:32
skids joined,
Util joined
23:34
cotto_work joined
|
|||
Util | Within a sub, how can you tell if a optional parameter was passed, if undefined values are valid arguments for that parameter? | 23:34 | |
23:35
cotto_work left
|
|||
jnthn | Util: Get the capture, and check the number of elements in it. | 23:35 | |
Well, the list part of it. | |||
sorear returns | |||
phenny | sorear: 14:28Z <pmichaud> tell sorear after thinking about it this morning, I realized that double-indirection for variables/binding isn't the answer either | ||
sorear: 18:21Z <pmichaud> tell sorear disregard my previous message... we do need double-indirection, it just looks very different from what I was originally expecting. | |||
jnthn | yayitssorear | ||
sub foo(|$c, $x, $y?) { if +@($c) == 2 { ... } } | 23:36 | ||
Or some such. | |||
Util | jnthn: And if there are multiple optional parameters? | ||
jnthn | Util: If they're positional, then later ones can't be passed positionally without passing earlier ones. | 23:37 | |
23:38
alester left
|
|||
Util | jnthn: true; I meant optional named params in the last question. | 23:39 | |
jnthn | Util: if %($c).exists('the_name') { ... } | 23:41 | |
Util | jnthn: Doh! Thank you! | ||
23:41
szabgabx left
|
|||
jnthn | Util: though another trick is to have a "clever" default value that sets a flag if it is triggered. | 23:42 | |
eternaleye | std: role Logged[$fh] { method FETCH { say $fh, "Accessed at { localtime }, value: { (callsame).perl }"; nextsame }; method STORE { say $fh, "New value stored at { localtime }, value: { $^val.perl }"; nextsame }; }; my Inf $foo is ( Scalar but Logged[$*IN] ); $foo = 3; say $foo; $foo = 5; $foo = "UhOh"; | ||
p6eval | std 31183: OUTPUT«===SORRY!===Placeholder variable $^val may not be used here because the surrounding block takes no signature at /tmp/pEwVec6mlm line 1:------> stored at { localtime }, value: { $^val⏏.perl }"; nextsame }; }; my Inf $foo is In my | ||
..declaration,… | |||
cxreg | why the separate repo for star? | ||
eternaleye | std: role Logged[$fh] { method FETCH { say $fh, "Accessed at { localtime }, value: { (callsame).perl }"; nextsame }; method STORE( $val ) { say $fh, "New value stored at { localtime }, value: { $val.perl }"; nextsame }; }; my Inf $foo is ( Scalar but Logged[$*IN] ); $foo = 3; say $foo; $foo = 5; $foo = "UhOh"; | 23:43 | |
p6eval | std 31183: OUTPUT«===SORRY!===In my declaration, typename 'Inf' must be predeclared (or marked as declarative with :: prefix) at /tmp/bwL3rbQiBL line 1:------> e: { $val.perl }"; nextsame }; }; my Inf⏏ $foo is ( Scalar but Logged[$*IN] ); $fMalformed my at | ||
../tm… | |||
Util | jnthn: would $y.exists work? | ||
jnthn | cxreg: It's a distribution release rather than just a compiler one, so we need to collect various things together. | ||
Util: No | |||
eternaleye | std: role Logged[$fh] { method FETCH { say $fh, "Accessed at { localtime }, value: { (callsame).perl }"; nextsame }; method STORE( $val ) { say $fh, "New value stored at { localtime }, value: { $val.perl }"; nextsame }; }; my Int $foo is ( Scalar but Logged[$*IN] ); $foo = 3; say $foo; $foo = 5; $foo = "UhOh"; | ||
p6eval | std 31183: OUTPUT«===SORRY!===Confused at /tmp/_XZNdUP5Ql line 1:------> .perl }"; nextsame }; }; my Int $foo is ⏏( Scalar but Logged[$*IN] ); $foo = 3; s expecting nameParse failedFAILED 00:01 108m» | ||
eternaleye | std: role Logged[$fh] { method FETCH { say $fh, "Accessed at { localtime }, value: { (callsame).perl }"; nextsame }; method STORE( $val ) { say $fh, "New value stored at { localtime }, value: { $val.perl }"; nextsame }; }; my Int $foo is Scalar but Logged[$*IN]; $foo = 3; say $foo; $foo = 5; $foo = "UhOh"; | 23:44 | |
p6eval | std 31183: OUTPUT«ok 00:01 108m» | ||
eternaleye | rakudo: role Logged[$fh] { method FETCH { say $fh, "Accessed at { localtime }, value: { (callsame).perl }"; nextsame }; method STORE( $val ) { say $fh, "New value stored at { localtime }, value: { $val.perl }"; nextsame }; }; my Int $foo is Scalar but Logged[$*IN]; $foo = 3; say $foo; $foo = 5; $foo = "UhOh"; | ||
p6eval | rakudo 4df508: OUTPUT«No applicable candidates found to dispatch to for 'trait_mod:<is>'. Available candidates are::(Mu $child, Role $r):(Code $block, Any $arg?, Any :export($export)!):(Mu $child, Mu $parent) in main program body at line 11:/tmp/CBdR5PS1Zb» | ||
jnthn | eternaleye: I'm not entirely convinced that'll work. (more) | ||
Traits should be applied once, and at compile time, if they're really done correctly. | |||
Not per "instance" of the variable. | 23:45 | ||
You could make it work perhaps with a filename rather than a file handle. | |||
Rakudo doesn't know how to handle it yet still, though. | |||
eternaleye | Yeah, I was thinking more of using it as a quick debugging tool | ||
23:45
tedv joined
|
|||
eternaleye | Rather than something to use in production | 23:45 | |
jnthn | Also, calling callsame and nextsame will call the next candidate twice. | 23:46 | |
Not just once and keep the return value.; | |||
But again, easily enough default with. | |||
eternaleye | Ooh, forgot the my $foo = callsame idiom. | ||
jnthn | *nod* | 23:47 | |
23:50
cdarroch left,
ethel left
23:53
szabgabx joined
23:57
Intensity joined
|
|||
[Coke] | p3 | 23:57 | |
dukeleto | jnthn: how is that spectest looking? | ||
[Coke] | *argh* | ||
jnthn | dukeleto: dobre :-) | ||
dukeleto: It just finished, I just pushed. | |||
dukeleto | jnthn: awesome! | 23:58 | |
cxreg | i'm not crazy; laziness is incomplete or entirely unsupported, right? | 23:59 |