pugscode.org | Beware of `make install` and Pugs, it will do bad things to your system Set by Aankhen`` on 22 May 2007. |
|||
meppl | good night | 00:01 | |
00:04
weinigLunch joined
00:05
weinigLunch is now known as weinigLap
00:17
jisom joined
00:18
Psyche^ joined
00:27
Psyche^ is now known as Patterner
00:39
nipotaway is now known as nipotan
01:23
ruz joined
01:33
dolmans joined
01:36
stevan_ joined
01:52
mako132 joined
02:30
Aankhen`` joined
03:08
stevan__ joined
03:26
daxim_ joined
03:27
obvio171 joined
03:29
nekokak_ joined
03:39
nekokak__ joined
03:48
jisom_ joined
03:50
tokuhirom_ joined
04:08
nekokak joined
04:52
ssd7 left
04:53
weinigLap joined
05:06
BooK joined
05:12
araujo joined
05:27
devogon joined
05:29
weinigLap joined
05:44
obvio171_ joined
06:09
Alias_ joined
|
|||
mj41 | good morning from Czech republic | 06:24 | |
dduncan | I respond | ||
06:25
Averell joined
|
|||
Alias_ | I express surprise | 06:26 | |
dduncan | I notice | 06:35 | |
06:37
audreyt joined
|
|||
Aankhen`` | I like chicken. | 06:41 | |
gaal | I, moose. | ||
Aankhen`` wallabies gaal. | 06:48 | ||
Tene | good night from far away from Czech republix | 06:49 | |
"republic" | |||
Aankhen`` | G'night Tene. | 06:50 | |
06:51
kane_ joined
07:08
buetow joined
07:09
franck__ joined,
obvio171_ is now known as obvio171
|
|||
meppl | good morning | 07:10 | |
moritz | good morning indeed ;) | ||
meppl | good morning moritz | 07:12 | |
07:16
iblechbot joined
07:29
BlackSabbath joined
|
|||
dduncan | good morning indeed | 07:30 | |
07:33
rho joined
07:49
obvio171 joined
|
|||
svnbot6 | r16553 | Darren_Duncan++ | ext/QDRDBMS/ : updated AST.pm : EntityName type no longer impl over other Node types, expanded TypeInvo type ; other small changes | 08:11 | |
08:12
buetow joined
08:20
rissy joined
08:22
polettix joined
08:30
dduncan left
08:41
iblechbot joined
08:45
drupek12 joined
09:14
lisppaste3 joined
09:17
the_dormant joined
09:26
buetow joined,
ofer joined
09:28
ml8128 joined,
chris2 joined
09:36
isaacd joined
|
|||
dolmans | i think Perl 6 will be my favorit tool! when Perl 6 is out, the Python's ONLY advantage is its simplicity! and we all know that saying a subset language is encouraged in Perl's culture, but can Perl 6's compiler itself provide some compile level, so that one can only write a subset syntax of Perl 6(which we call baby talk, but still is valid Perl 6, it just disable some avanced syntax)? i think a source filter is not very good in compiling. | 09:44 | |
moritz | dolmans: I think restricting the compiler to a subset of the language is against perl philosphy ;-) | 09:46 | |
dolmans | moritz: just a `use' feature, you can use it or not. | 09:47 | |
it's just my wish, perhaps not good. | |||
Aankhen`` | Why would you want to disable certain portions completely? | ||
Don't use them if you don't need or want them. | |||
Selectively disabling parts of the language would probably break any other modules you use anyway. | 09:48 | ||
Aankhen`` heads to bed. | 09:49 | ||
dolmans | in some team, the leader can define a subset, so he will not encounter syntax surpress. | ||
09:49
zamolxes joined
|
|||
dolmans | ah, module is a good example i did not consider. | 09:50 | |
any comments? | 09:52 | ||
i think Perl 6 is too powerfull, and have a lot of mysterious syntax feature, perhaps some company will not use it because of its complexity. i just worry about that. | 09:54 | ||
moritz | I can understand your worries... | 10:06 | |
but I think it's the same for perl 5 - if you used all features of the language, I couldn't read your code | |||
but in practice, a very high percentage of the code is readable without knowing the more advanced parts of the langauge | 10:07 | ||
buu | dolmans: Perl is like every other programming language. It's possible to write bad code. | 10:09 | |
dolmans | buu: i know one can write good code, but you cannot prevent somebody else to write bad code, if there isn't a mechnism to sign a treaty. | 10:11 | |
buu | dolmans: What's your point? | 10:12 | |
dolmans | buu: if there is mechanism to define a subset that when module use this progma, then he must say languages suitble in this subset. | 10:13 | |
buu | Yes, but that has nothing to do with good code. | ||
mj41 | dolmans: what about Perl::Critic ? search.cpan.org/~thaljef/Perl-Critic/ | 10:14 | |
lambdabot | Title: Jeffrey Ryan Thalhammer / Perl-Critic - search.cpan.org | ||
dolmans | at least the program will not look too strange. | ||
moritz | "strange things should look strange" ;-) | 10:15 | |
dolmans | for example, Perl 6 has >>-<<, ==>,etc.,but Perl 6 also has some english version for these functions, if one team want only to use english version, they need some mechism to do that, perhaps they need to write their own Critic modules. thanks to mj41 for the link | 10:17 | |
dmq | in perl 5 "advanced knowledge" generally comprises things shouldnt be doing unless you know what they are in the first place. | 10:18 | |
btw moritz thanks for your bug report and commentary on PM about the /.*\z/ thing (and confirmation it works somewhere other than here). | 10:19 | ||
dolmans | what i am talking is about convention, not one man, one man can do whatever he want. | 10:20 | |
dmq | the bug report especially was useful as it reminded me about fixing it. :-) | ||
moritz | dmq: you're welcome, the real attribution should go to betterworld++ who discovered it by proof reading bloonix++'s modules | 10:21 | |
he was just not couragous enough to label it as a perl bug ;-) | |||
dmq | yeah but he didnt file a bug report. anyway i thanked him too. | ||
moritz | ok ;) | ||
I don't know if you've seen it, I already posted on pm that it is fixed in blead | 10:22 | ||
dmq | im just hopeful i did completely fix it. the code involved has about a million codepaths and is opaque beyond belief so its hard to say its completely fixed. | ||
moritz | ah, so did you ;) | 10:23 | |
dmq | yes i saw. i replied to your node noting that that PM supports the APC:// linktype. | ||
so if you want to link to the apc you can do so easily on pm. | |||
moritz | ok, I'll remeber that ;) | 10:24 | |
dmq | we should probably set up some handlers for perl 6 related stuff too. | ||
for the APC linktype you can use change numbers or filenames. | 10:25 | ||
moritz | like S05:100 links? ;-) | ||
dmq | yeah whatever. | ||
post a PMD with a list of useful targets and ill get them set up. | 10:26 | ||
moritz | what's a PMD? | ||
perl monks discussion? | |||
moritz is pretty new to perlmonks | 10:27 | ||
dmq | yes | 10:28 | |
dmq is an admin there | |||
moritz | I thought so ;) | 10:29 | |
dmq | although these days im not very active | 10:30 | |
10:30
obvio171 joined
|
|||
moritz | is the code that runs perlmonks.org somewhere on CPAN? | 10:32 | |
dmq | no | 10:33 | |
theres a sister codebase that is public but the pm code is private. | 10:34 | ||
10:34
BlackSabbath joined
|
|||
dmq | or semi private. | 10:34 | |
moritz | ok ;) | ||
dmq | you can become a "pm-dev" by asking to be one, but we dont allow free access to the code | 10:35 | |
10:35
BlackSabbath joined
|
|||
dmq | since code is stored in the db just like posts are its difficult and potentially insecure to allow totally free access to it. | 10:35 | |
moritz | I don't have specific interest in the code, was just curious ;) | 10:36 | |
dmq | its a common question | 10:37 | |
:-) | |||
10:46
nipotan is now known as nipotaway
10:56
pjcj joined
11:04
franck__ joined
|
|||
avar | dmq: Insecure to allow access a copy of it not running on pm.org? | 11:05 | |
11:11
obvio171 joined
11:15
obvio171 joined
11:19
fglock joined
11:22
obvio171 joined
11:25
obvio171 joined
|
|||
moritz | sounds scary ;) | 11:27 | |
11:38
the_dormant joined
11:49
franck___ joined
11:50
franck__ joined,
andara joined
11:51
buu joined
11:56
Limbic_Region joined
12:10
rindolf joined
12:42
buetow joined
12:44
vel joined
13:00
franck___ joined
13:17
obvio171 joined
13:21
riffraff joined
|
|||
riffraff | hi | 13:21 | |
do we have a spec for the various sigil roles? | 13:22 | ||
i mean $ Object, @ Positional, % Associative and so on | 13:23 | ||
13:33
jerrylee joined
|
|||
avar | riffraff: The synopsis just got updated very recently in that area, check out perl6-language | 13:34 | |
riffraff | yep I saw that | ||
but it doesn't say a lot | |||
I was thinking of adding a dummy t/builtins/sigl that just checks that <sigil>name does what it is supposed to do | 13:35 | ||
13:38
tuna joined
13:45
perlmonkey2 joined
|
|||
masak | riffraff: sounds like a good idea to me -- go right ahead | 14:01 | |
14:23
isaacd_ joined
14:31
mj41 joined
14:47
silug joined
|
|||
riffraff | ?eval multi foo {...}; foo() | 15:00 | |
15:00
evalbot_r16539 is now known as evalbot_r16553
|
|||
evalbot_r16553 | *** ... - not yet implementedā¤ at <eval> line 1, column 12-15 | 15:00 | |
fglock | hmm - gcc now comes with GOMP and GC | ||
riffraff | masak, I will do that, and add some empty roles in Prelude.pm | ||
?eval role R{multi f{...}}; class C does R {}; C.new.f | 15:02 | ||
evalbot_r16553 | *** ... - not yet implementedā¤ at <eval> line 1, column 16-19 | ||
riffraff | I wonder why in my box ... becomes "undef" | ||
moritz | riffraff: i get nyi in both cases | 15:03 | |
riffraff: maybe your pugs build is outdated? | |||
riffraff | I think so | ||
but wait, I have a difference | |||
?eval role R{multi postcircumfix:<[ ]> {...} }; class C does R {}; C.new[1] | 15:04 | ||
evalbot_r16553 | \undef | ||
riffraff | ok, this is what I get and don't understand :) | 15:05 | |
probably C.new[1] is parsed somehow differently | |||
moritz | even if I use (C.new)[1] I get undef | 15:09 | |
moritz wonders if custom circumfix and postcircumfix operators work at all | |||
riffraff | ?eval class D {}; D.new[1] | 15:11 | |
evalbot_r16553 | \undef | ||
riffraff | ok, they don't I believ :) | ||
moritz | ?eval multi circumfix:<bla alb> (Str $x) { say $x} bla"foo"alb | ||
evalbot_r16553 | Error: ā¤Unexpected "\""ā¤expecting "::", dot, ":", "(", term postfix or operator | ||
moritz | I'm a bit lost... which parenthesis characters are left for (post)circumfix operators that don't interfere with builtin ops? | 15:12 | |
15:13
weinigLap joined
|
|||
riffraff | I guess you have to be creative, there are the banana, lenses and barbed wire brackets | 15:14 | |
as for similarly named paper | |||
moritz | ;-) | ||
riffraff | and maybe we could use those ceiling anf floor characters which I don't know how to type | 15:16 | |
actually thos wodule be fun to use with their real meaning I believe :) | 15:17 | ||
moritz | āpropably, yesā | ||
riffraff | lol | 15:18 | |
moritz | who needs windings anyway? we have unicode! | ||
fglock | anyone knows of a comparison between 'JIT' vs a 'direct C code generator'? | ||
riffraff | (I especially appreciate how you understood "wodule" for "would") | 15:19 | |
moritz | riffraff: the "module" interpretation didn't fit, so my parser did a bit of backtracking ;) | 15:20 | |
fglock: do you mean in terms of speed? | |||
fglock | yes, mostly | ||
riffraff | if I declare a class in PRelude is it automagically visible or should I export it ? | 15:23 | |
fglock | riffraff: you need to export, afaik | ||
Limbic_Region | ?seen TimToady | 15:24 | |
lambdabot | TimToady is in #perl6. I last heard TimToady speak 18h 4m 58s ago. | ||
fglock | moritz: I'm comparing Parrot JIT with a possible kp6-in-C implementation | 15:25 | |
moritz | fglock: maybe you should ask in #parrot - but afaik the optimization in parrot is not very mature | 15:26 | |
correct me if I'm wrong, though | |||
?seen [particle] | |||
lambdabot | I saw [particle] leaving #perl6 5d 21h 38m 20s ago, and . | ||
moritz | fglock: so would you rewrite kp6 in C, or just write a backend? | 15:27 | |
fglock | write a backend, and then bootstrap | ||
Aankhen`` bootstraps for massive damage. | 15:30 | ||
moritz | fglock: I think atm C should be faster (without really knowing, I admit), but PIR would be more interesting because it's made for dynamic languages | 15:31 | |
fglock | yes, parrot bytecode is kind of an Intermediate Language | 15:32 | |
lunch & | 15:33 | ||
japhb | fglock: Also, in your readings remember: standard C compiling and JIT both can only do static analysis. Profile-directed C compiling can optimize based on past aggregate behavior. Self-optimizing JIT can continue to optimize at runtime as conditions change. This turned out to make at least one processor emulator emulating its own architecture run faster than raw code -- because it kept reordering branches and such as runtime behavior b | 15:34 | |
ecame clear .... | |||
Looks like I just missed him. Oh well, hope he's the backlog type .... | 15:35 | ||
Limbic_Region | he typically does backlog yes | 15:36 | |
15:36
pbuetow joined
15:42
devogon joined
15:46
blaze-x_ is now known as blaze-x
15:48
ruz joined
|
|||
Limbic_Region | @tell TimToady I have sent you a personal email from my gmail account, please let me know if it did not arrive or was eaten by spam filters | 15:53 | |
lambdabot | Consider it noted. | ||
TimToady | yes, got it | 15:54 | |
lambdabot | TimToady: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
TimToady | @massages | ||
lambdabot | Limbic_Region said 57s ago: I have sent you a personal email from my gmail account, please let me know if it did not arrive or was eaten by spam filters | ||
Limbic_Region | thanks | 15:58 | |
16:03
buetow joined
16:13
bernhard joined
16:21
justatheory joined,
fglock joined
|
|||
fglock | japhb: ok | 16:24 | |
japhb: I've been looking at strongtalk and psycho | 16:32 | ||
16:33
pbuetow joined
|
|||
fglock | pypy actually looks a bit like 6-in-6, in that it has several alternate implementations | 16:33 | |
16:37
buetow__ joined
|
|||
avar | fglock: So you opted for going sideways I take it?:) | 16:37 | |
16:42
buetow__ joined
|
|||
fglock | hmm - sideways? | 16:42 | |
avar | multiple emitters for mp | ||
16:43
charsbar joined
16:45
elmex joined
|
|||
fglock | yes | 16:45 | |
avar | how big a subset is it covering now, able to run Test.pm? | 16:46 | |
fglock | avar: no, kp6 is mostly about architecture - it has vary little runtime | 16:48 | |
s/vary/very/ | |||
mp6 builds top-down from MiniPerl6; kp6 builds bottom-up from there | 16:49 | ||
perlmonkey2 | Anyone know why Moose no longer calls BUILDALL even though my package has "sub BUILD"? | 16:50 | |
avar | fglock: so what needs to happen to get it closer to something that "actually works"? | 16:51 | |
fglock | avar: agree on a "final" architecture; and then finish the implementation | 16:52 | |
I hope to be able to discuss the architecture in the YAPC::EU hackathon | |||
avar | neat, hopefully I'll be there | 17:02 | |
depends on whether my blathering^Wtalk gets accepted:) | |||
17:13
ruoso joined
|
|||
fglock | avar: the architecture is not "too" important, but it would be nice to have some community participation | 17:14 | |
rindolf | Hi all. | 17:15 | |
Hi fglock, avar , perlmonkey2 | |||
fglock | re what works - v6/v6-KindaPerl6/t/kp6/ is not that bad | 17:16 | |
17:16
amnesiac joined
|
|||
fglock | rindolf: hey | 17:16 | |
avar | fglock: get it to pass some tests:) | 17:18 | |
fglock | avar: perl kp6-perl5.pl < t/kp6/01-tap.t | perl -I lib | 17:20 | |
17:20
franck__ joined
|
|||
fglock | avar: is it failing? | 17:21 | |
avar | nope, works | 17:23 | |
One thing I might poke is to try to get all this stuff packaged, kp6 --backend=perl5|parrot|jvm | 17:24 | ||
would be nice to cpan -i kp6 and get a very limited p6:) | |||
seems to be a lot of duplication in all these mp6-whatever.pl's :) | 17:25 | ||
fglock | sure | 17:26 | |
17:27
kanru joined
|
|||
fglock | but it's also a bit distracting; I'm trying to pay attention to the core compiler | 17:28 | |
and v6.pm is a place holder in the meanwhile | |||
avar: I'm trying to make a project roadmap | 17:29 | ||
obra: ping | |||
avar | I'd be interested in helping out with some of this stuff | 17:30 | |
obra | fglock: pong! | ||
fglock | obra: I'd like some help from the Perl 6 project manager | ||
obra | Ok. What can I do for you? | ||
fglock | help making a roadmap for v6/mp6/kp6 | 17:31 | |
obra | Ok. You know more about the technology than me. How can I help with the roadmap | 17:32 | |
is there a current braindump of what needs doing? | |||
fglock | obra: there is some in svn.pugscode.org/pugs/v6/docs/ and svn.pugscode.org/pugs/v6/v6-KindaPe...cs/FAQ.pod | 17:34 | |
lambdabot | Title: Revision 16553: /v6/docs | ||
fglock | but I'm having trouble integrating into something readable | ||
17:37
sahadev joined
|
|||
obra | Ok. So. Is there a particular order things need to be developed in? | 17:37 | |
fglock | there are a few parallel tasks: | 17:38 | |
ingy | ?seen gaal | 17:39 | |
lambdabot | gaal is in #perl6. I last heard gaal speak 10h 58m 22s ago. | ||
rindolf | Can anyone point me to the list of examples of perl4 code that won't work on perl5 anymore. | 17:40 | |
Hi ingy | |||
ingy | hi rindolf | ||
gaal | moose | ||
rindolf | ingy: what's up? How do you feel? | ||
gaal: hi. What's up? | |||
fglock | runtime and MOP; regex engine runtime; grammar; the compiler itself; the code evaluator | ||
ingy | I feel good | ||
rindolf | gaal: how's work? | ||
ingy | I'm in love | ||
with libyaml ;) | |||
gaal | yay :) | ||
rindolf | gaal: I'm thinking of getting a new laptop for games and presentations and stuff. | 17:41 | |
gaal: but it will run Linux. | |||
ingy | I think I will soon join the Perl6 effort again by bringing in libyaml | ||
rindolf | gaal: though it should dual-boot into WinXP or win2003 or whatever. | ||
ingy | I can use it to teach me haskell | ||
rindolf | ingy: is libyaml written in C? | ||
ingy | for now I'm using it to teach me C :) | ||
yeah | |||
gaal | ingy: awesome | ||
rindolf | ingy: what's wrong with Syck? | ||
ingy | rindolf: YAML::LibYAML | 17:42 | |
gaal | rindolf: laptop for games doesn't sound effective | ||
rindolf | ingy: oh. | ||
gaal: in a way. | |||
obra | fglock: ok. let's step back. of all the kp6/mp6/v6, which ones are needed to get to your endgame? | ||
rindolf | gaal: I can hook a keyboard and a mouse to it. | ||
ingy | rindolf: syck is not perfect | ||
well not even close actually | |||
rindolf | gaal: but I need one for presentations. | ||
gaal | I'm off to dinner w/ kudra; bbl... | ||
rindolf | ingy: I see. | ||
ingy: is libyaml a rewrite? | |||
ingy | libyaml appears to be perfect | ||
17:42
Psyche^ joined
|
|||
rindolf | ingy: or is it a fork? | 17:42 | |
ingy | rindolf: it's a write :P | ||
rindolf prefers forks over rewrites. | 17:43 | ||
ingy: I see. | |||
ingy: does it have a test suite? | |||
ingy | rindolf: just google and read :) | ||
rindolf | ingy: asking you is faster. | ||
gaal prefers writes to wrongs | |||
fglock | obra: kp6 is the current version; v6 is the published version; mp6 is a bootstrapper | ||
ingy | it was a 2005 SoC project | ||
gaal | though reads are just andy | 17:44 | |
17:44
obvio171 joined
|
|||
gaal | dandy, too | 17:44 | |
moose & | |||
obra | fglock: from here to the future, which of the three will be involved? is v6 still relevant? | ||
fglock | obra: kp6 is the current version; v6 is the published version; mp6 is a bootstrapper | ||
17:45
fglock left
17:46
fglock joined
|
|||
fglock | sorry, lost connection | 17:46 | |
obra | it's ok | 17:47 | |
so. those three terms don't explain to me very well what the work plan looks like. | |||
fglock | v6 will be replaced by 6-in-6 | ||
obra | ok. so v6 is no longer part of the roadmap, it sounds like | ||
fglock | kp6 is a path to "full" 6-in-6 | 17:48 | |
mp6 is "stable" | |||
rindolf | ingy: why have you decided to call yourself "Ingy dƶt Net" instead of Brian Ingerson? | 17:49 | |
obra | ok. so right now, mp6 is a stable ~complete 6on5 implementation and work is ongoing to implement kp6 on top of mp6? | ||
rindolf | ingy: reminds me of chromatic. | ||
ingy | because it's my name :P | ||
rindolf | ingy: is it also your new legal name? | 17:50 | |
;-) | |||
17:50
Psyche^ is now known as Patterner
|
|||
ingy | yes | 17:50 | |
daxim_ | ĀØ | ||
rindolf | ingy: some people think Shlomi Fish is not my real name. | 17:51 | |
But I'm very happy with it. | |||
It has a nice ring. | |||
ingy: have you read my "Human Hacking Field Guide" story? | |||
fglock | kp6 is already built on top of mp6; work is ongoing to provide "full Perl 6" on top of kp6 | ||
ingy has a nice ring ;) | 17:52 | ||
rindolf: no | |||
rindolf | ingy: well, there's a girl there (in the 12th grade) called Eve Siegel who decides she wants to be called "Erisa". | ||
obra | ok. so kp6 and mp6 are pretty stable and there's a new third implementation on top of kp6? | ||
rindolf: a nice discordian name | 17:53 | ||
17:53
pbuetow joined
|
|||
rindolf | ingy: because she believes people should have a choice of getting their own names. | 17:53 | |
ingy | I was just trying to remember if I or audrey changed our names first | 17:54 | |
it was very close | |||
but now I remember it was me first... | |||
I think so anyway | |||
fglock | obra: I think kp6 --> 6-in-6 can be developed incrementally | 17:55 | |
obra | ok | 17:56 | |
so it sounds like most of the work is in "kp --> 6-in-6" | |||
Is that right? | |||
fglock | yes | ||
obra | ok :) | ||
So we're getting somewhere. | 17:57 | ||
of those parallel tracks you mentioned earlier, are they everything that needs to be done in the arrow? | |||
fglock | yes; things like optimization are included there | 17:58 | |
and "runtime" is pretty generic | 17:59 | ||
obra | ok. | ||
Next step: can you check in a document called " KindaPerl6 --> full 6-in-6 Roadmap" | 18:00 | ||
fglock | ok | ||
ingy | I just found out that libyaml is 2.75 times faster with -O3 | ||
:) | |||
obra | Of those areas, is there one that MUST be done first? | ||
are there any that can be ~fully done withot the other areas being done or started? | 18:01 | ||
ingy | is -O3 a problem with Perl XS modules? | ||
should I ask p5p? | |||
obra | sure. you'll get good answers | 18:02 | |
fglock | the general architecture must be specified first | 18:04 | |
svnbot6 | r16554 | fglock++ | [kp6] KindaPerl6 --> full 6-in-6 Roadmap - obra++ | ||
fglock | there are some diagrams of the current architecture, | ||
but it wasn't really discussed here | |||
obra | ok. I'd steer clear of the diagrams of the architecture | ||
fglock | re fully done, no | ||
obra | for this | ||
ok. | |||
which chunk needs to be ~mostly done first | 18:05 | ||
are there two chunks that will help the most? | |||
fglock | there are some chunks that are mostly done; it's the "kp6 Milestones" in the top of svn.pugscode.org/pugs/v6/v6-KindaPerl6/TODO | 18:07 | |
BEGIN blocks, lexical subs, the "environment" | |||
perlmonkey2 | hello rindolf | 18:08 | |
obra | ok. extract that section to the new document :) | 18:09 | |
obra updates his pugs checkout to play with the doc | |||
fglock | actually, these are mostly done; we need a plan for what to do after that | 18:10 | |
18:10
cmarcelo joined
|
|||
obra | sure | 18:11 | |
but a roadmap that starts with completed bits inspires people | |||
showing people where they're coming from makes it a little easier to see where you're going | 18:12 | ||
fglock | done | ||
obra | cool | ||
svnbot6 | r16555 | fglock++ | [kp6] updated roadmap | ||
obra | I am MANY revs behind, so I'm pulling | 18:13 | |
fglock | obra: svn.pugscode.org/pugs/v6/docs/kp6-P...oadmap.txt | 18:14 | |
obra | like what pugs did, we want to come up with 5-10 major "steps" to go from here to done | 18:15 | |
Whcih subsystem do you want to hack on next? | |||
which one really has to be last? | |||
rindolf | perlmonkey2: hi. | 18:17 | |
perlmonkey2: wattcha doing in #perl6? | |||
perlmonkey2 | watching | 18:18 | |
rindolf: | 18:19 | ||
fglock | obra: there are some possible paths; | ||
perlmonkey2 | rindolf: Hoping to see Stevan Little or Christian Hansen. | 18:20 | |
fglock | my initial goal was to make as much of the modules reusable by p6-pugs and p6-parrot | ||
18:20
tabris|away joined
|
|||
fglock | but this is making much harder to make a plan | 18:21 | |
rather than a subsystem, maybe it could be organized based on language features (syntax + semantics) | 18:22 | ||
obra | ok. that's reasonable | ||
I wouldn't worry about making it magically reusable if it's going to hurt your 6 on 5 plan too badly. | |||
planning for reusability when the other projects aren't ready for you is going to burn a lot of cycles | 18:23 | ||
when they're ready, they can ptich in and help refactor toward what you need | |||
but sure. let's start with language features. | 18:24 | ||
...I wonder if it makes sense to use the synopses | 18:25 | ||
fglock | I think a reasonable first goal would be to integrate the regex-parser into the Perl6-parser; this is more or less what Perl6-STD does | 18:26 | |
this simplifies the architecture a bit | |||
obra | Ok. put down Milestone 1: Integrate Regex Parser | 18:27 | |
once you've got that, what becomes easy? | |||
or easier ;) | 18:29 | ||
fglock | integrating the Lazy list code from the old pil-run would be nice | ||
not sure if it's easy enough | 18:30 | ||
I guess next step would be implementing multis - STD needs that | 18:31 | ||
obra | ok. so is it just multis or is it all of subroutine dispatch? | 18:32 | |
obra asks handwavey questions, he knows | |||
fglock | it's all in the "Code" and "Signature" objects | 18:33 | |
btw, "Array" and "Hash" need to be finished first, so that's Milestone 1 | 18:34 | ||
and "P6opaque" | 18:35 | ||
obra | does Array and Hash objects come before the regex stuff? | ||
fglock | this is parallelizable | 18:36 | |
obra | sure. | 18:37 | |
we might end up with people completing work on milestone 6 before milestone 1. | |||
TimToady | STD doesn't use Array or Hash, or do you mean that more generally? | 18:38 | |
obra | but trying to lump all the different systems into one milestone because they don't have dependencies will make it harder for people to understand | ||
fglock | TimToady: generally | ||
obra | and the goal of a milestones document is (presumably) for people to have a grasp on what's being done and what needs doing ;) | ||
18:40
renormalist joined
|
|||
fglock | brainstorming - another (parallel) milestone would be to make kp6 runnable over parrot and pugs | 18:42 | |
obra | is that critical to kp6 working? | 18:43 | |
if not, add it in a new section: "Bonus Milestones" as "Bonus Milestone 1" "make kp6 run over parrot and pugs" | |||
The goal here is to get the things that are critical to the system working listed out | 18:44 | ||
in rough dependency order | |||
fglock | it could be good for the whole Perl 6 project in general | ||
obra | sure | ||
I agree that it's a GOOD thing. | |||
But is it 100% mandatory to get 6in6 working? | |||
If not, it goes in "bonus milestones". it's an extra project you don't need to do | 18:45 | ||
it's always ok for somebody to do the bonus bits early | |||
but we don't want them to cloud the way for getting to "it runs" | |||
fglock | obra: sorry, I've got a meeting in a few minutes | ||
obra | fglock: no problem | 18:47 | |
I have to leave in about an hour | |||
will be back late tomorrow | |||
happy to pick this up by mail (jesse@perl.org) if you want | |||
fglock | obra: actually "it runs" right now; we need a better definition for "runs" :) | ||
obra | sure :) | ||
fglock | obra: thanks! | 18:48 | |
obra | we'll get there. thanks for all the hard work hacking :) | ||
18:48
drupek12 joined
|
|||
fglock | obra: I'll be organizing a hackathon in YAPC::EU, I hope to have the plan sorted out by then | 18:48 | |
18:51
fglock left
18:53
jisom joined
19:07
the_dormant joined
19:08
IllvilJa joined
19:13
theorbtwo joined
|
|||
gaal | rehi | 19:24 | |
19:35
dduncan joined
|
|||
dduncan | opinion question: what might be a good name for a set-like collection type which can have at most 1 element (that is, it can have either zero or one elements)? | 19:36 | |
I might go with Set1 or some such, but wondered if there was a better name | 19:37 | ||
TimToady | that would have to be either a Bet or a Soolean | ||
gaal | Oneohton? | 19:38 | |
dduncan | technically, this type is a set, specifically it is like: subtype of Set where { .elems <= 1 } | ||
er subset of Set | 19:39 | ||
TimToady | Element and rely on implicit maybeness of P6? | ||
gaal | in Haskell at least, a container X with one element is called a singleton X | 19:40 | |
dduncan | does the singleton refer to having exactly one element or at most one element? | ||
gaal | one exactly. | ||
although when you think of lists as a monad, failure = an empty list | 19:41 | ||
that's probably not helpful here thouhg :) | 19:42 | ||
dduncan | fyi, this question relates to my database language | 19:43 | |
gaal | but really, a collection limited to an element count of one is a set, sure, but it's also other things. do you _need_ to think of it as a set? | ||
dduncan | said language has no concept of an undefined variable, ... | ||
gaal | eg do you use this object in set calculations? | 19:44 | |
dduncan | so I thought one way to represent a variable that conceptually has no value is to make it hold a set value | ||
or other collection | |||
where if it is empty, that represents having no value | |||
and if it has one element, that is the value it otherwise would have if it had to always have one | |||
19:45
isaacd__ joined,
bpalmer joined
|
|||
dduncan | now I don't need a type for this ... | 19:45 | |
simply having a set-valued variable that holds an empty set is sufficient | |||
but what I was talking about now was meant to be a definers shorthand | |||
gaal | haskell has the parametric type Maybe a exactly for this purpose | ||
dduncan | for saying set where elem count <= 1 | ||
perhaps Maybe is my answer then | 19:46 | ||
I'll look into it ... thank you | |||
gaal | in hs syntax: data Maybe a = Nothing | Just a | ||
there's a host of standard functions that operate on Maybe values | 19:47 | ||
@hoogle Maybe a | |||
lambdabot | Prelude.Nothing :: Maybe a | ||
Prelude.Just :: a -> Maybe a | |||
Maybe.listToMaybe :: [a] -> Maybe a | |||
gaal | those are just some. | ||
listToMaybe, for example, yields Nothing when the input list was emtpy, and Just x if the list was not and x was at the head. | 19:48 | ||
dduncan | in my case, were I to use Maybe, then Maybe isa Set, and any ops specific to Maybe would be shorthand for some Set ops | ||
for that matter, Set is a unary Relation | |||
and so a Maybe would be a unary Relation with a nullary key | |||
a nullary key resulting in a Relation that can have at most one value | 19:49 | ||
er, one tuple | |||
19:50
daxim joined,
devbot6 joined
|
|||
gaal | I don't know enough about what you call Relation to see whether that makes sense. :) | 19:51 | |
TimToady | note that P6 defaults the other way; every Object is a Maybe, and you have to use "subset" to express a type that can't be undefined. | ||
gaal | hee, that PM post made it into Syn! | ||
TimToady | well, sure, why not? | 19:52 | |
gaal | it now lives in Syn | ||
dduncan | Relation, in logic and philosophy, a property or predicate ranging over more than one argument. | ||
19:52
fglock joined
|
|||
dduncan | in appearance in my language, it is like a set of Mapping | 19:52 | |
where every mapping has the same keys | |||
sort of like a SQL table | 19:53 | ||
a unary relation is like a table with one column | |||
which for all intents and purposes is a set | |||
that is, a plain set | |||
a nullary key is a key over zero attributes/columns | 19:54 | ||
that constrains a relation/set/table to at most one tuple/element/row | 19:55 | ||
my language doesn't have undefined values since it keeps logic simpler in the general case | |||
this thing about pretending to have undefined is basically a huffmanization | |||
Limbic_Region | OT - does anyone know of a utility that will pull data from a database into an LDAP directory and keep it syncronized lazily? | 19:56 | |
dduncan | since that would be used less frequently, it is more verbose than one that can't be empty | ||
20:02
rlb3_work joined
20:03
polettix joined
20:05
japhb joined
20:11
GeJ_ is now known as GeJ
|
|||
gaal | sorry, phone | 20:11 | |
hee, dons' cute code is. | 20:16 | ||
> > take 10 $ Control.Monad.Fix.fix ((1:) . scanl (+) 1) | |||
lambdabot | Parse error | ||
gaal | > let fix y = y (fix y) in take 10 $ fix ((1:) . scanl (+) 1) | 20:19 | |
lambdabot | [1,1,2,3,5,8,13,21,34,55] | ||
svnbot6 | r16556 | rhr++ | [unitsdat-grammar.pm] Associativity fixes. Misc fixes and cleanups. | 20:22 | |
20:23
elmex_ joined
20:27
thoughtpolice joined
|
|||
daxim | hey thoughtpolice | 20:28 | |
thoughtpolice | yo :) | 20:31 | |
daxim | I got some improvement suggestions for the blog entry | ||
thoughtpolice | shoot | ||
daxim | explain how the <> nee qw() operator works and why it's used, because that's not obvious from the code example | ||
say it splits the inner stuff on any amount of whitespace | |||
say it's used so a programmer can be lazy and does not need to quote strings with special characters like " or ' | |||
some paragraphs below you explain redo with an real world use case, but only with abstract words. back this up with a code snippet | |||
thoughtpolice | got it | 20:32 | |
Tene | there's a blog entry? | 20:34 | |
daxim | diveintoperl6.blogspot.com/ | ||
lambdabot | Title: Dive into Perl 6 | ||
Tene | So, who's going to write a Perl 6 compiler for lolcode.com/ ? | 20:35 | |
lambdabot | Title: home Ā· LOLCODE | ||
daxim | damn, that one's all over relay chat space | 20:36 | |
gaal | IM IN YR STRINGS / NTRPOLATING YR CLOSURZ | ||
qmole | heh | ||
thoughtpolice | sweet | ||
gaal | someone was asking how to spell currying there. INVISIBLE ARG, surely. | 20:38 | |
svnbot6 | r16557 | fglock++ | kp6-Perl6-roadmap.txt - divided in "phases"; added past work | ||
gaal | z& | 20:43 | |
20:48
riffraff joined
20:53
SubStack joined
|
|||
avar | SV* yaml = newSVpvn("", 0); <= newSVpvs("") is cheaper for creating an empty SvPV | 20:55 | |
whoa, /me reading old scrollback accidentally | 20:56 | ||
riffraff | anyone has ide of how to define a class or role in Prelude.pm and have it available at the repl (having it bulitin) ? I tried is export is primitive is builtin and the permutations but I failed miserably | ||
avar | ingy: that was for you | 20:57 | |
fglock | avar: svn.pugscode.org/pugs/v6/docs/kp6-P...oadmap.txt # work in progress | 21:03 | |
svnbot6 | r16558 | fglock++ | kp6-Perl6-roadmap.txt - added "related work" for reference | ||
fglock | home & | ||
japhb | thoughtpolice: weren't there previously more entries than currently appear on the diveintoperl6 blog? | 21:07 | |
21:08
weinigLap is now known as weinig|bbl
|
|||
thoughtpolice | japhb: ? no. the ones I published are the ones up there | 21:09 | |
i had to test some earlier versions of articles out by quickly publishing them to see how they'd look with the layout, though | |||
so if you for some unknown reason stumbled upon one, that might be the reason | 21:10 | ||
japhb | Weird, a few minutes ago "Perl 6: Round 1" wasn't there | ||
avar | fglock: awesome:) | ||
thoughtpolice | hm. | 21:13 | |
21:26
weinig|bbl is now known as weinigLap
|
|||
svnbot6 | r16559 | rhr++ | [unitsdat-grammar.pm] Fix linear interpolator. | 21:39 | |
21:41
Limbic_Region joined
21:50
drupek12 joined
|
|||
riffraff wonder why Prelude hates him | 21:51 | ||
21:55
buetow joined
21:56
nelhage left,
xinming_ joined
|
|||
meppl | good night | 22:06 | |
thoughtpolice | daxim: annotations complete. thanks :) | 22:10 | |
riffraff | someone knows why Set.pm is not preloaded into the Prelude? | 22:17 | |
TimToady | perhaps because the set operators are not part of standard perl 6? | 22:18 | |
at least, not the Unicode versions... | 22:19 | ||
22:20
Southen joined
|
|||
riffraff | but the Set class is, isn't it? | 22:20 | |
TimToady | yes, but unless the parser is taught about the various operators, they wouldn't be parsed in any particular lexical scope | 22:21 | |
it's possible they'll be in there eventually | |||
but we're trying to keep Unicode operators hushhush for now, just to avoid scaring people too much | |||
svnbot6 | r16560 | Darren_Duncan++ | ext/QDRDBMS/ : in Language.pod, added new Maybe data type | ||
TimToady | anyway, at most they'll be a "use" away | 22:22 | |
moritz | which is not far away if it's distributed as "core" | ||
22:22
TreyHarr1s is now known as TreyHarris
|
|||
TimToady | certainly they'll be in the core, since otherwise people would reinvent them poorly | 22:23 | |
riffraff | I see | ||
TreyHarris | anyone with a MBP 15" in front of them on right now? if so, please message me | ||
moritz | are they implemented non-poorly atm? | 22:24 | |
riffraff | and what about the other containers such as Bag? all in ext ? | ||
wolverian | thoughtpolice, s/frusteration/frustration/ in perl6: round 1 | ||
thoughtpolice | wolverian: :o | 22:25 | |
:x | |||
my bad | |||
dduncan | I would expect for Set, Bag to be in Prelude et al, but just with ascii/text names for their operators | ||
riffraff | +1 | ||
dduncan | and ext/ just declares unicode aliases for them | ||
japhb | moritz: even if they are implemented poorly now, we should be able to get them pretty nice by xmas | ||
moritz | japhb: I know ;) | 22:26 | |
dduncan: "use names utf8" ;-) | |||
TimToady | P6 distinguishes Set/Bag values which are immutable from containers for sets and bags that are defined in terms of the hash interface. | ||
see S02:759 and following | 22:27 | ||
moritz | oh no, that was "set names utf8" ;) | 22:28 | |
TimToady | so it would be illegal to say $set<foo>++ if $set were a Set, but not if it were a KeySet | ||
dduncan | moritz, in your case, you would want use/set names unicode | ||
moritz | I just wanted to paraphrase mysql syntax ;) | 22:29 | |
dduncan | since encoding issues are abstracted away | ||
wolverian | TimToady, is there a difference between hashes and KeySets? | ||
dduncan | and so unicode is just a character set | ||
TimToady | and the difference between a KeySet and KeyBag is then just the type of the value in the KeyHash | ||
dduncan | or should I say, a repertoire | ||
TimToady | yes, in list context a hash returns pairs, while a keyset returns just the keys | 22:30 | |
just as a Set in list context returns a list of the elements | 22:31 | ||
PerlJam | TimToady: Do you try to focus on particular aspects of the Synopses or do you just flit from topic to topic as they occur to you? (Just curious about how you push through the work; organized or random) | ||
TimToady | both/neither. my work pattern is of fractal dimensionality | 22:32 | |
drives all my bosses nuts :) | 22:33 | ||
PerlJam | Even Gloria? :) | ||
TimToady | from time to time | ||
but then, she's already nuts about me, so it's hard to tell the difference. :) | 22:34 | ||
japhb | awwww | ||
PerlJam | TimToady++ (lucky man) | 22:35 | |
My wife has put up with me for 12 years so far ... I'm hoping she goes the distance :-) | |||
well, 12 years of marriage anyway | |||
Caelum started compiling pugs 15 hours ago, and it still hasn't finished, also makes computer unbearably slow when compiling :( | 22:37 | ||
Tene | Caelum: what hardware? | ||
moritz | Caelum: how much memory does your maschine have? | ||
Limbic_Region | Caelum - less than a gig of ram? | ||
moritz | ;-) | ||
Caelum | it's a 64bit p4 with a gig of ram | ||
I have 4 gigs of swap, which is probably a bad idea... | 22:38 | ||
moritz | that's unusual | ||
Limbic_Region | Caelum - extremely odd, even if you were compiling GHC from source it shouldn't take that long | ||
Tene | Huh. I can compile it in about an hour on a P3 with 1 gig. | ||
moritz | Caelum: that shouldn't be used | ||
Caelum | weird | ||
japhb | Caelum, is the swap being actively used? | ||
moritz | pugs build takes about 600MB on my maschine (which has only 512M or ram :()) | 22:39 | |
Caelum | I probably have too much crap running (vmware and such) | 22:40 | |
japhb | Caelum: Oh heck yeah, vmware will definitely do it, | ||
thoughtpolice | vmware++ | ||
:) | |||
japhb | as it grabs a big chunk of ram and holds on to it | ||
Limbic_Region has found that 1GB is more than enough to compile pugs assuming it is available | |||
wolverian | Caelum, how much memory did you give to vmware? | ||
moritz | vmware-- # (eating RAM) | ||
thoughtpolice | i have 1gb running two virtual machines; pugs doesn't take too long to compile. | 22:41 | |
Caelum | wolverian: 256mb | ||
japhb | Caelum: would you mind pasting a few lines of 'vmstat 5', please? | ||
moritz | Caelum: and are you compiling inside the vm? *g* | 22:42 | |
22:42
prism joined
|
|||
Caelum | japhb: while pugs is compiling? | 22:42 | |
japhb | Caelum: yeah. | ||
Caelum | moritz: nah :) | ||
22:42
Alchemy joined,
prism joined
22:49
SubStack joined
22:52
prism joined
|
|||
Aankhen`` | moritz: Can't you set a memory limit for each virtual machine? | 22:57 | |
moritz | Aankhen``: the problem (with all vms) is that you have to allocate the memory at startup time of that vm... | 22:59 | |
Aankhen`` | Right. | ||
moritz | Aankhen``: which means that if you run linux inside the vm, it will use _all_ available memory | ||
Aankhen`` | Ah. | ||
Caelum | now it finished... for some reason it did "-Iinc runjs.pl --precompile-only --p6preludepc=blib/lib/Prelude.js --testpc=blib/lib/Test.js -e 1" and "-Iinc util/src_to_blib.pl" with a different perl than I ran Makefile.PL with | ||
the perl that was in my path | 23:00 | ||
oh I see it just calls perl, nm | 23:01 | ||
23:03
mr_ank joined
23:13
shachaf joined
23:17
demq joined
|