-Ofun: xrl.us/hxhk | pugscode.org | pugs.kwiki.org | paste: paste.lisp.org/new/perl6 or sial.org/pbot/perl6 Set by apple-gunkies on 11 November 2005. |
|||
dduncan | ok | 00:04 | |
audreyt | theorbtwo: in addition to that, if we are to reset environmental bindings based on the temporal constraint, we wouldn't be able to talk about ancient history (or even astronomy) with terms (re)defined in modern times... | 00:08 | |
theorbtwo | Hm, I see your point. | ||
Well, points. | 00:10 | ||
audreyt | :) | ||
dduncan | fyi, I'm now come to the time that I need 'trusts' to work, especially now that private attrs are actually private | 00:59 | |
since there doesn't seem to be a test for trusts, I'll make one now | |||
audreyt | good! | ||
stevan_: we need to figure out how to make "trusts" work in minilang | 01:00 | ||
dduncan | would it be possible to implement trusts today? | ||
if not, then my perl 6 stuff won't run by christmas like I want, without hackery | |||
audreyt | dduncan: I'll see your test first before deciding :) | ||
dduncan | its very simple | 01:01 | |
two classes | |||
class A declares $!foo, and no accessor method | |||
class B needs to see and/or modify $!foo on any A objects it has | |||
class A declares that it trusts class B | 01:02 | ||
so that should work | |||
audreyt | ok | ||
dduncan | and it needs to work for any other kind of private attr, like a @!bar or %!baz | 01:03 | |
audreyt | so the syntax would be | ||
$!a!foo = 5 | 01:04 | ||
or something like that? | |||
or just $!a!foo | |||
dduncan | the syntax would be like a class A object modifying another class A object | ||
audreyt | I need to see the test :) | ||
nopaste it? | |||
dduncan | eg, $other_obj!foo | ||
will do if server down | 01:05 | ||
should be written within a half hour | |||
audreyt | my Class $obj .= new; | 01:11 | |
hmm | |||
my Class $obj != new; | |||
# doesn't make sense | |||
wolverian | ow, isn't that ambiguous? | ||
audreyt | probably not... we can just rule out the != form and declare it to be always infix | 01:14 | |
infix unequals, that is | |||
pugs currently handles it that way anyway | |||
dduncan: I've kluged so it works. | 01:15 | ||
a proper fix awaits minilang integration | 01:16 | ||
dduncan: care to apply this patch locally? | |||
perlcabal.org/~autrijus/tmp/bangKlugeTrusts.diff | 01:17 | ||
dduncan | give me a few minutes | 01:19 | |
but before I apply the patch, I'll give you my test so that you can see that it works for you | |||
its almost done | |||
stevan_ | audreyt: ping | 01:32 | |
pasteling | "dduncan" at 24.108.164.7 pasted "first draft of t/oo/trusts.t" (46 lines, 878B) at sial.org/pbot/15091 | 01:33 | |
audreyt | stevan_: pong | 01:34 | |
stevan_ | audreyt: there is no concept of private in the metamodel currently | ||
audreyt | dduncan: all tests pass here | ||
dduncan | and they fail here without the patch ... will try with it | 01:35 | |
stevan_ | I have been punting on this because it has been in a state of flux with @Larry | ||
audreyt | stevan_: I think it's now reasonably clear | ||
as per latest s12 | |||
stevan_ goes to take a look | |||
I have been out of the loop with p6l because of $work | 01:36 | ||
audreyt | nodnod | ||
stevan_ | where is the latest? | ||
dduncan | fyi, I will expand trusts.t to use a third class C, which tries to do the same things B did, and should fail due to not being trusted ... to check that your patch doesn't open to everyone | ||
stevan_ | I found ti | ||
audreyt | stevan_: the cpan bible is also updated | 01:37 | |
stevan_ | svn.perl.org/perl6/doc/trunk/design/syn/S12.pod I would assume is the most up to date | ||
is openfoundry still down? | 01:41 | ||
audreyt | yeah, but about to be up | 01:42 | |
stevan_ | ok | ||
01:42
stevan_ is now known as stevan
|
|||
audreyt | (reasonable guess, as it's 9:42am here) | 01:42 | |
pause.cpan.org/incoming/Perl6-Bible-0.23.tar.gz | |||
just uploaded this | |||
brb | 01:44 | ||
stevan | I think $Larry[0] is on crack | ||
clkao | XD | ||
stevan | you can't easily mix two object models | ||
audreyt | I think it's blue sugar cubes | ||
stevan | prototype and class based | ||
:) | |||
*sigh* | 01:45 | ||
audreyt | I thought minilang is fairly proto based | ||
since we clone class's attrs | |||
stevan | no, it is a classic class based approach ala CLOS/Smalltalk | ||
prototype based means no classes,.. | 01:46 | ||
at all | |||
see the MiniPrototype model in Perl6-MetaModel | |||
audreyt | right | ||
but from what I gather on p6l, what's important is not the underlying calculus | |||
stevan | its how the user can use it? | ||
audreyt | yes | ||
"prototype" to $Larry is probably "eigenclass that does not inherit from class" | 01:47 | ||
stevan | yeah | ||
audreyt | which is fine in minilang | ||
stevan | I still think he is eating too many blue sugar cubes :) | 01:48 | |
my biggest concern with the prototype thing | |||
is that it is very difficult with prototype based models to do MI effectively | |||
they are typically (at least in my experience) SI models | |||
MI in prototypes tends to look too much like mix-in hell | 01:49 | ||
stevan wrote a mix-in function in JS once,.. it was ... >>shudder<< horrible | |||
audreyt | I think it's reasonable to think that if you want MI and @superclasses | ||
then you are using the class-based architecture starting with ::Class. | |||
I can't see much alternatives. | |||
stevan | yes | ||
I think you are right re: eigenclasses | |||
you can mimic most of the useful parts of prototype models with that | 01:50 | ||
audreyt | yup | ||
stevan started with JS, so he has been bitten many times by prototype models | |||
I am not as wide eyed as all the JSAN crew | |||
audreyt | mm, right, one of which orks cow with you :) | 01:51 | |
stevan | :) | ||
yup | |||
however, I do think we can easily create a prototype based model in the mini-lang following the MiniPrototype model | |||
I stole it from Oleg anyway,.. the scheme version was pure :) | 01:52 | ||
in fact, it would probably be best built on top of the current metamodel | |||
we can emulate a p5 model that way too | 01:53 | ||
audreyt | yup | ||
stevan has decided to look upon the mini-lang metamodel like the Parrot metamodel | |||
one metamodel to implement them all! | |||
audreyt praises Oleg for crazy^Winspired brilliance | |||
stevan | oleg++ :) | 01:54 | |
so lexical methods are how we are doing private methods now? | 01:55 | ||
audreyt | yes | 01:56 | |
and they live in a space unchartered by %methods | |||
stevan | yup | ||
audreyt | they are essentially another subspace | ||
stevan | %private_methods | ||
audreyt | yup | 01:57 | |
stevan | a slight change in the dispatcher should be able to handle them | ||
I think we should add *_private_method methods | |||
it seems like code duplication, but I think it will make it easier to construct classes | 01:58 | ||
audreyt | I concur | ||
but roles first | |||
:) | |||
stevan | dammit,.. stop agreeing with me :P | ||
audreyt | no, I won't! | ||
stevan | we should stage a mock fight,.. just to stir things up | 01:59 | |
audreyt | Test::MockFight | ||
stevan | :D | ||
so with roles | |||
I am currently blocked on the best way to do collect_all_roles | |||
it needs to recursively gather a list of unique roles | |||
audreyt | and why could you not use a lexical state aka $counter? | 02:00 | |
or do you need .clone natively? | |||
stevan was trying to be good,... pure ,..... functional :P | |||
audreyt | "generating unique" is not a functional thing to do :) | ||
unless we distribute the pad with an infinite support of uniques | 02:01 | ||
which wouldn't work anyway across compilations | |||
so just use a lexical state :) | |||
at least it's not global state ;) | |||
stevan | ok | ||
audreyt | and in fact nothing in minilang is global | 02:02 | |
I need to run to $job in a bit | |||
see you in ~8hrs | |||
stevan | ok, I only have a little more time until @parents arrive anyway,... | ||
audreyt allocs two days per week for $job and three for $pugs | 02:03 | ||
stevan | I will finish S12 and do Roles late-tonight/tommorow | ||
audreyt | cool! | ||
stevan++ | |||
stevan allocs as much as possible for $pugs and delegates $job to <other employee> | |||
audreyt | lol | ||
stevan | :) | ||
audreyt | $job is fun though, I get to play with Jifty, which rocks more by day | ||
stevan | yeah I have been keeping an eye on that | 02:04 | |
audreyt thinks Jifty should be ported to p6 some day | |||
pasteling | "dduncan" at 24.108.164.7 pasted "second draft of t/oo/trusts.t - catches errors, tests expected failures" (113 lines, 2.8K) at sial.org/pbot/15092 | ||
dduncan | audreyt, this should be a more rigorous test | ||
audreyt | dduncan: good | ||
please commit it once the repo is back | 02:05 | ||
dduncan | and it also traps errors to say ok/not regardless of failures | ||
audreyt | I'll bbl | ||
nodnod | |||
dduncan | will do | ||
stevan | enjoy $work | ||
dduncan | I will now apply your patch and see what affect it has | ||
stevan is starting to like S12 the more he reads it | 02:06 | ||
audreyt | stevan: good, I think it's sane and we should sync to that page :) | ||
stevan | the '.' means autogenerate accessors is a nice approach | ||
audreyt | and it's the first time I think will form a solidish semantic basis | 02:07 | |
prior to that is' almost all handwaving on semantics layer | |||
stevan | audreyt: I am mentally desugaring a lot of this stuff | ||
yes I agree (on both points) | |||
dduncan | hmm, it appears is_deeply may be backwards regarding its args | 02:08 | |
stevan | but so far I think everything can be constructed with the current model,.. | ||
and if I find something that can't I will figure it ou | |||
t | |||
dduncan | seems that is() has the arg order [got, wanted], while is_deeply is [wanted, got] | 02:10 | |
is that reversal intentional? | |||
talking about Test.pm | |||
audreyt | probably not, fixes welcome | 02:11 | |
I gotta run... & | |||
dduncan | will do ... will reverse is_deeply | ||
stevan | S12/Attributes++ # finally some real clarity on the subject :) | 02:12 | |
dduncan | since $var == $literal is the more common order | ||
stevan | dduncan: I am sure it is not intentional | ||
feel free to change it | |||
dduncan | will do | ||
stevan | consistency is always a good thing | ||
dduncan | of course, what takes the cake is that the Test.pm docs disagree with its code on this matter | 02:15 | |
the code is incorrect, docs correct | |||
will fix code | |||
clkao | are synopsis in svn? | 02:16 | |
stevan | clkao: yes, svn.perl.org/perl6/ | 02:17 | |
dduncan | hey, the server's back up ... and just in time! | 02:39 | |
svnbot6 | r8372 | stevan++ | - Moved all of t/pil/* tests related to the metamodel to t/pil/metamodel/ | ||
r8372 | stevan++ | - removed t/pil/wanted_features.t, as I no longer want those features :) | |||
r8372 | stevan++ | PIL/Native/Bootstrap.pil | |||
r8372 | stevan++ | - simplified some Role bootstrap code (please ignore the commented out hacks) | |||
r8372 | stevan++ | - added new S12 NOTE annotations to indicate things to think about in light | |||
r8372 | stevan++ | of the new version of S12 | |||
dduncan | I can commit directly and no merging | ||
now just pushed the Test.pm fix | 02:45 | ||
svnbot6 | r8373 | Darren_Duncan++ | r1502@Darren-Duncans-Computer: darrenduncan | 2005-12-21 18:42:52 -0800 | ||
r8373 | Darren_Duncan++ | /ext/Text : updated Test.pm to fix the arg order of is_deeply() so it matches its own docs, is consistent with other funcs; also removed all trailing whitespace in file | |||
dduncan | er, s/x/s/ | ||
pushed trusts.t | 02:53 | ||
svnbot6 | r8374 | Darren_Duncan++ | r1504@Darren-Duncans-Computer: darrenduncan | 2005-12-21 18:51:47 -0800 | ||
r8374 | Darren_Duncan++ | added new test t/oo/trusts.t so a class trusted by another to see its privates is in fact able to, but no one else can | |||
theorbtwo wonders if there's also a "friends with benifits" trust level. | 03:00 | ||
clkao | audreyt: do i still need the bandaid? | 03:13 | |
dduncan | audreyt, your patch did have an effect, but it isn't sufficient | 03:19 | |
but now you have the committed test to work with | 03:20 | ||
you can also tell me if my test is faulty | 03:22 | ||
most of it relies on pugs dying when it can't see/set an attr, and not dying when it can | 03:23 | ||
audreyt | dduncan: my patch is not sufficient; it relaxes things too much | 03:26 | |
I'll revisit | |||
but for now it should make your code work | |||
clkao: you do, will revisit, but not today | |||
& | 03:27 | ||
svnbot6 | r8375 | autrijus++ | * Kluge $obj!method so it can serve as an lvalue in a | ||
r8375 | autrijus++ | trusted class -- it's currently to lax, will revisit. | |||
dduncan | I'll let you know if anything in my actual code doesn't work, within a few hours | 03:42 | |
but if the test is to be taken at face value, the lvalues work, but not rvalues | 03:44 | ||
will know soon if that actually affects me | 03:45 | ||
Alias_ | audreyt: ping? | 05:12 | |
05:17
kakos` is now known as kakos
|
|||
audreyt | Alias_: pong? (@ work) | 05:17 | |
dduncan | but I can check back tomorrow | 10:14 | |
it would probably help if there was something in /examples that demonstrated both creating and parsing yaml | 10:15 | ||
luqui | hey, how do I get the JS backend to see the modules in lib/ | 10:20 | |
i.e. I'm testing Parse::Rule and it's just saying "Can't locate Parse in @*INC..." | 10:21 | ||
audreyt | dduncan: we'll hack emitting support this weekend | ||
dduncan | allo | 10:22 | |
thank you | |||
that should allow me to actually follow the suggestion of using YAML as Rosetta::Engine::Native's file format | 10:23 | ||
audreyt | luqui: at this moment you need to put "use Parse::Rule" in the test file | ||
and set $ENV{PERL6LIB} | |||
dduncan: cool | |||
luqui | okay, the latter was what I needed | ||
dduncan | and now I will to bed, as it is 2:24am | 10:24 | |
audreyt | good night | ||
off $job & | |||
dduncan | fyi, in the near future I'll probably update Locale::KeyedText so it can use YAML as a template file format option as well | 10:27 | |
but it is not urgent | |||
svnbot6 | r8382 | luqui++ | Hopefully wrote the quantify combinator. Pugs is being a bitch and keeping me from testing it. | 10:48 | |
amv | umh.. so what is all the talk about javascript? is there a location where i could read more about what you are doing? | 11:11 | |
theorbtwo is also rather wondering this. | 11:17 | ||
GeJ | TaPL arrived, I will finally be able to understand what you guys are talking about :) | 11:27 | |
11:30
DesreveR is now known as r0nny
|
|||
gaal | audreyt: re: lexical alias for each "our" var: how would that work in the case of a "real" lexical with the same basename already existing? | 11:31 | |
(what's a good name for "our" vars nowadays, anyway? not globals, not package vars...?) | 11:32 | ||
theorbtwo | "our" vars? | ||
Lexically visible globals is the 3-dollar phrase. | |||
gaal | theorbtwo: our $var | ||
theorbtwo | Yeah, I know. I'd call them '"our" vars'. | ||
gaal | they aren't quite global though. | 11:33 | |
what does the phrase "3-dollar phrase" mean? :) | |||
like, poor man's million-dollar phrase? :) | 11:34 | ||
theorbtwo | They're as global as any other sort of global in perl. | ||
package x; {our $foo=3;} print $x::foo; | |||
gaal | less global than stuff in *. | 11:36 | |
theorbtwo | Are we talking p5 now, or p6? | ||
gaal | 6 | ||
theorbtwo | Oh. | ||
Nevermind, though. | 11:37 | ||
Hm, no, continuemind. | |||
What is $x::foo called then? | |||
gaal | fully qualified _ _. | ||
our vars (1) don't close and (2) can be accessed w/o symbol table lookup even outside the namespace where they were defined. | 11:39 | ||
because of sense 2 they can be considered globa.. | |||
but 1 is an important distinctive feature, so i'm looking for the phrase to make that distinction. | 11:40 | ||
theorbtwo | I think 1 is best thought of a side-effect of 2. | 11:44 | |
In order for closure to happen, there has to be more then one variable with the same name. | 11:45 | ||
Coderefs get the one that's in scope at the time. | |||
svnbot6 | r8383 | kane++ | * make the installation dir a constant for tests | ||
r8383 | kane++ | * and remove it from Config.pm | |||
r8383 | kane++ | * make JIB::Installation set up the proper files if needed | |||
r8383 | kane++ | * so conf.pl doesn't have to anymore | |||
r8383 | kane++ | * tentatively add JIB::Repository::Set | |||
r8383 | kane++ | * add more constants | |||
r8383 | kane++ | * first addition of list_dependencies | |||
r8383 | kane++ | * add some more constants | 11:46 | ||
r8383 | kane++ | * add a bit of pod | |||
r8383 | kane++ | * add more tests for 020.t | |||
theorbtwo | With globals, there is only one variable by that name. | ||
gaal | ~2 certainly doesn't cause ~1, though hopefully 2 implies 1 :-) | ||
svnbot6 | r8384 | kane++ | * add a testcover target to Makefile.PL | 12:27 | |
rafl | Good morning kane_ | 13:13 | |
What does JIB::Repo::Set do? (I don't have my hacking box handy) | 13:14 | ||
kane_ | rafl: nothign yet | 13:16 | |
svnbot6 | r8385 | kane++ | * change name of included tarballs from .tar.gz to .tgz | ||
kane_ | rafl: hi btw | ||
i had an idea, then that idea didn't work | |||
rafl: but we need a way to define sets (as people can have more than one installation, use more than one repo, etc) | 13:17 | ||
theorbtwo | For that matter, what is JIB? | ||
kane_ | JIB Is Brilliant | 13:18 | |
rafl | kane_: I would not put that into JIB::Repo. | ||
kane_ | rafl: yeah, if we keep Repository for the physical location things get stored, that makes sense.. but we need something that is our equivalent of apt/sources.list and manages that | 13:19 | |
rafl | kane_: How about JIB::Package::Installable or something like that, that abstracts a package inside a repository and reads the repo uris from a config file? | ||
kane_ | rafl: my thought too :) but we still need a governing class and a set | ||
might be JIB::Installable, and JIB::Installable::Set | |||
theorbtwo | You should probably make that a sources.list.d | 13:20 | |
kane_ | theorbtwo: mm? | ||
rafl | theorbtwo: Even multiple ones. A system wide, a user wide, etc. | ||
kane_ | theorbtwo: ah.. this wans't an implemenentation suggestion, but a common terminology :) | ||
rafl | kane_: I don't understand what the Set is needed for? | 13:22 | |
kane_ | to describe a group | 13:23 | |
right now, our installation is 1 dir | |||
but if youc ompare that to @INC, that's not accurate | |||
we'd have a group of dirs | |||
hrmpf | |||
so, what do you do when you accidentally delete your .svn dir? | |||
rafl | I would not care because I use svk :-) | 13:24 | |
kane_ | right, now assume i'm stuck with svn on this box because svk isn't playing nicely | ||
/then/ what to do? | |||
rafl | Maybe check out a new copy and merge your changes between this and your modified copy. | ||
kane_ grumbles | 13:25 | ||
audreyt | "svn up" will fix it | 13:26 | |
with luck | |||
in the parent dir | |||
kane_ | [kane@myriad ~...JIB/t]$ svn up | ||
svn: Working copy 'src' not locked | |||
rafl | kane_: I still understand what the Set has to do. A Set for multiple versions/authorities/.. of one module? | ||
kane_ | rafl: @INC would be a 'set' | 13:27 | |
because it's a set of directories | |||
just like mutliple repositories would be a 'set' | |||
theorbtwo | But, um, @INC is ordered. | ||
audreyt | kane_: rm -rf src and then svn up | ||
kane_ | k | ||
theorbtwo: yes, so? | |||
audreyt | @INC would be an ordered set | ||
theorbtwo | Aren't sets unordered? | ||
kane_ | audreyt, thanks that worked | 13:28 | |
audreyt | sets may be totally, or partially, ordered | ||
kane_ | theorbtwo: mathmatical sets might not be | ||
but this one would be | |||
audreyt | if my math hadn't failed me | ||
rafl | kane_: Why not an ordered list? | ||
kane_ | i just said 'ordered list'.... | ||
theorbtwo | OK, sorry for bringing it up. | ||
kane_ | i think we just got a few things confused here | 13:29 | |
rafl agrees | 13:30 | ||
kane_ | 'set' 'group', 'list', 'congregation', 'heap', 'bunch', 'stack' -- all fine names in this context | 13:32 | |
svnbot6 | r8386 | audreyt++ | * PIL.Native: Autoboxing support for every native type, | 13:43 | |
r8386 | audreyt++ | with builtin autoboxed classes that has ".unbox" as | |||
r8386 | audreyt++ | their only method: | |||
r8386 | audreyt++ | "::Bit ::Int ::Num ::Str ::Seq ::Map ::Sub" | |||
audreyt | what about "Laminated Lattice" or "Cobordant Manifold"? | 13:45 | |
kane_ | i hate svn | 14:22 | |
in fact, i hate all vcs | |||
so i did an svn delete and an svn add again of the same file | |||
gaal | Laminated Lettuce and Cabbage Manifold? | 14:23 | |
kane_ | now it insists teh file doesn't exist.. although when looking at it, it does, and svn claims it's under vcs | ||
except, it won't let me commit | |||
theorbtwo | "Won't let me" as in? | ||
kane_ | File not found: transaction '8386-1', path '/misc/sixpan/JIB/t/src/p5-complicated-deps/_jib' | ||
it's doing that for all flies i've deleted, and re-added with different content | 14:24 | ||
theorbtwo | That's, um, interesting. | ||
kane_ suggests the words 'fucked up' | |||
theorbtwo | That works too. | ||
Have you done an "svn up"? | |||
kane_ | yeah.. i'm juggling files now | 14:25 | |
moving them away, updating, moving them back, etc | |||
i positively hate applications that litter files in my working directories | 14:26 | ||
avar | not really a perl6 q, but do you have an idea of how to make HTML::Parser report the content of a tag I extract, using avar.pastebin.com/475069 currently | ||
I can use text_h, but I want to know the element and its attributes too | |||
svnbot6 | r8387 | kane++ | * add a repo.pl and pkg.pl include script for tests | 14:29 | |
r8387 | kane++ | * remove some hardcoded paths in favor of what these scripts return | |||
r8387 | kane++ | * add all test packages from prototype | |||
r8387 | kane++ | * fix typo in repository.pm | |||
r8387 | kane++ | * exclude .svn dirs hardcoded in jib::source # XXX fixme | |||
r8387 | kane++ | * add some docs | |||
avar | mm, I'll just ask some more in #perl | ||
audreyt | kane_: svk fixed all these problems and then some... are you on OSX? | 14:33 | |
kane_ | audreyt: yeah, but on 10.3.9 -- svk.dmg doesn't work there | ||
and grabbing it from cpan made my computer unhappy | |||
audreyt | and you don't like fink | ||
kane_ | i like fink well enough, but that blew up heavily too | ||
it's been a few weeks now, it might be fixed by now | 14:34 | ||
audreyt | hmm wait... how far ago is 10.3.9? | ||
kane_ | i upgraded to 10.4 at the office, but that messed up a lot of things too | ||
last 10.3 release | |||
luqui | svk trades genuine problems for annoyances | ||
audreyt | rt.openfoundry.org/Foundry/Project/...1.00-2.dmg # this may work | ||
luqui | I'd like some nice balance between svk, svn, and darcs | ||
audreyt | luqui: wouldn't we all... :) | ||
kane_ | audreyt: wouldn't i want the bugfixes from later svk's? | ||
audreyt | kane_: you can manually override lib/SVK/* | 14:35 | |
which will bring you the bugfixes without the XS pain | |||
kane_ | if that's Safe, i'm happy to give that a go | ||
audreyt | all it wants is a bincompat libapr etc | ||
kane_ | just unfucking the last svn bit here first | ||
audreyt | k | ||
kane_ | oh how i hate software | 14:40 | |
svnbot6 | r8388 | kane++ | * add a jib-create script | ||
r8388 | kane++ | * add some source files svn was reluctant to add before | |||
luqui wonders what kane_ doesn't hate | 14:42 | ||
kane_ | strawberries | ||
they've never offended me | |||
luqui | they have me | ||
they're all like "I'm ripe I'm ripe" and then they're totally not | |||
kane_ | you're right... they're bastards | 14:43 | |
qmole | lol | ||
kane_ | well, then i give up.. i hate it all | ||
luqui | so what's that jib stuff? | 14:44 | |
audreyt | luqui: search.cpan.org/dist/Perl6-Bible/li...le/S22.pod | ||
theorbtwo | JIB is a meaningless recursive acronym. | ||
luqui | ooh, a synopsis I haven't seen | ||
audreyt | JIB: "JIB Inverts BIJ" | 14:45 | |
theorbtwo | Interesting, when I asked I got JIB Is Brilliant | 14:47 | |
luqui | :-p | ||
theorbtwo thinks we should call it YAPMS. Then we can call packages bleaders. | |||
Then we can all die a horrible death at the hands of women everywhere. | |||
kane_ | i had 'pms' before.. too many negative connotations | ||
theorbtwo | OK, probably not a good plan. | ||
luqui | you can't pronounce YAPMS | ||
theorbtwo | Yapp-ems. | 14:48 | |
You can't decide on a semantic for JIB. | |||
luqui | I guess it's as pronouncable as TMTOWTDI | ||
kane_ | www.ace.net.nz/tech/TechFileFormat.html#j | 14:49 | |
theorbtwo | MDIM? Module download, install, manage? | ||
kane_ | # it's FREE, which is most important | ||
theorbtwo | If we don't care about being three-letter, there's lots of free extensions. | ||
PMS and MDIM are both free on that list. | 14:50 | ||
audreyt | I bet ... is also a free extension | ||
it feels more p6ish anyway | |||
luqui | .perl6packagemanagementarchive | ||
kane_ likes jib | |||
luqui | that might make some operating systems angry | ||
audreyt | DBI-0.14.... | ||
...install *.... | 14:51 | ||
kane_ | there's actually nothing really p6 specific about this code | ||
theorbtwo | We can call them therefour modules. | ||
audreyt | okay, probably not a very good idea | ||
luqui | looks like perl 6 alright | ||
theorbtwo | We could call them code packages (.cp), and the system cpms. | 14:52 | |
audreyt | (I think .jib is fine :)) | 14:53 | |
oh wait, that would be .jif | |||
stevan starts sips his morning coffee and begins reading the Role section of S12 | |||
audreyt | I think .jib is beautiful | ||
svnbot6 | r8389 | kane++ | * add a pkg.pl script to generate .jibs from src dirs | ||
r8389 | kane++ | * add a repo.pl script to genereate a repository from .jibs | |||
r8389 | kane++ | * and all the other stuff that was in the /last/ commits | |||
r8389 | kane++ | and svn happily messed up -- GRRR | |||
audreyt | there. better | ||
stevan | I love the smell of autoboxed types in the morning .... | ||
kane_ bows at audreyt | |||
theorbtwo | Mmmpf, too many names that don't mean anything. | ||
audreyt curtsies back | 14:54 | ||
stevan ponders the meaning of "theorbtwo" ;P | |||
theorbtwo | At least it isn't /^PI.$/ | ||
luqui | PIP!! | ||
luqui shuts up | |||
kane_ | ok, what's taken the .pie suffix? | 14:55 | |
OMG it's free | |||
theorbtwo would guess it's something to do with ponnie. | |||
luqui | "Perl Imaginitave Extension" | ||
kane_ | s/itave/ary/ ? | ||
luqui | that's better | 14:56 | |
audreyt | I must say .pie looks better (and smells better) than .jib | ||
kane_ | maybe we cna go for .ENC (as in Emperors New Clothers) | ||
luqui | heh. How many programs use that extension already? | 14:57 | |
I think at least three. | |||
theorbtwo | You know that'd make a package for osx and apple pie... | ||
s/and/an/ | |||
kane_ cires | |||
cries even | |||
luqui | punderlicious | ||
konobi | .dta death-to-all! | ||
kane_ | .jfdi -- Jos' Fine & Dandy Installer | 14:58 | |
luqui | Who's Jo, and why is there more than one of her? | ||
kane_ hits luqui over the head | |||
luqui is a punctuation nazi | |||
kane_ | isn't that punctuation correct? | 14:59 | |
audreyt hands kane a punctuation uzi | |||
luqui runs | |||
kane_ | heh | ||
audreyt: i'm more oldschool... rusty nails & a hammer | |||
luqui | I.::.m... tr:.y.:in.:.g...to:..do:dge...t:he::uzi | 15:00 | |
hmm... looks like perl 6 | |||
kane_ | my cat walking on the keyboards looks like perl6... your point? :) | ||
luqui | I guess when every string of characters is a valid program... | 15:01 | |
I heard "Bach was original. But then again, it's easy to be original when you write down every possible sequence of notes" | |||
And thus ends the longest OT conversation ever seen on #perl6 | 15:05 | ||
12 lines | |||
audreyt | petdance: greetings. sorry that I had not got around on journaling. | 15:15 | |
stevan: anything to sync before I fall asleep? | 15:24 | ||
stevan | audreyt: nope, I am working on roles mostly | ||
audreyt | cool | ||
I think I'm blocking on roles to do more desugaring and containers | 15:25 | ||
as I don't feel comfortable hardcoding any more methods on prim classes | |||
stevan | yeah, that would make sense | ||
audreyt | they should all be role mixins | ||
stevan | agreed | ||
audreyt | okay | ||
good night, very agreeable stevan :) | |||
stevan | good night audreyt :) | 15:26 | |
audreyt | & | ||
stevan | I will try to come up with something for us to disagree upon :) | ||
15:31
stevan is now known as stevan_
15:39
stevan_ is now known as stevan
|
|||
avar | does p6 have any easy way to define hashes like <> for arrays? | 16:40 | |
integral | you can't still assign to a hash from a list? | 16:41 | |
avar | mm | ||
integral | eval: %h = <a 1 b 2 c 3>; say %h<a>; | ||
?eval my %h = <a 1 b 2 c 3>; say %h<a>; | |||
16:41
evalbot_8381 is now known as evalbot_8389
|
|||
evalbot_8389 | OUTPUT[1 ] bool::true | 16:41 | |
avar | heh, no, I don't think so.. | ||
integral | ?eval my %h = <a 1 b 2 c 3>; say %h<a b c>; | 16:42 | |
evalbot_8389 | OUTPUT[123 ] bool::true | ||
integral | seems to work for me. | ||
avar | oh, well actually | ||
I thought %h = (1,2,3,4) had been deprecated in favour of => | |||
apperently not.. | |||
integral | well => constructs pairs. And there's some heuristic about lists of pairs, vs. two-at-a-time lists :-/ | 16:43 | |
avar | b.t.w. | 16:46 | |
?eval my %h = 1..4; say %h.perl | |||
evalbot_8389 | OUTPUT[{("1" => 2), ("3" => 4)} ] bool::true | ||
avar | you can get pretty output like that;) | ||
theorbtwo | ?eval my %h = (1..4;); %h | ||
evalbot_8389 | Error: unexpected ";" expecting digit, "_", fraction, exponent, term postfix, operator, "does", "but", "is", "^till", "till^", "^..^", "till", "cmp", "<=>", "^..", "..^", ".." or ")" | ||
theorbtwo | ?eval my %h = (1..4); %h | 16:47 | |
evalbot_8389 | {("1" => 2), ("3" => 4)} | ||
theorbtwo | You can also return things instead of printing them. | ||
avar | that way too;) | ||
theorbtwo | ?eval my %h = 1..4.map {$_=>$_}; %h | ||
evalbot_8389 | Error: unexpected "{" expecting operator, "does", "but", "is", "^till", "till^", "^..^", "till", "cmp", "<=>", "^..", "..^", "..", ";" or end of input | ||
theorbtwo | ?eval my %h = 1..4.map({$_=>$_}); %h | ||
evalbot_8389 | Error: cannot cast from VList [VList [VRef <Pair>]] to Pugs.AST.Internals.VCode (VCode) | ||
theorbtwo | Ugh! | ||
avar | ?eval $! = 1..300; die $! | ||
evalbot_8389 | (no output) | 16:48 | |
16:48
sili_ is now known as sili
|
|||
avar | that's strange.. | 16:48 | |
?eval say ~1..300 | 16:50 | ||
evalbot_8389 | OUTPUT[123 ] bool::true | ||
theorbtwo | 123? | ||
?eval 1..300 | 16:51 | ||
evalbot_8389 | (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, | ||
theorbtwo | ?eval "This is a longer string\n" | ||
avar | works on my box | ||
evalbot_8389 | "This is a longer string\n" | ||
theorbtwo | ?eval say "This is a longer string\n" | ||
evalbot_8389 | OUTPUT[This is a longer string ] bool::true | ||
avar | ?eval "123 " x 500 | ||
evalbot_8389 | "123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 | ||
rafl | Who's the guy who's responsible for the smoke stuff? | 16:53 | |
avar | ?eval Ā«0 nĆŗllĀ» | 16:54 | |
evalbot_8389 | Error: unexpected "\NUL" expecting program | ||
avar | ?eval Ā«0 nĆŗllĀ».perl | ||
evalbot_8389 | Error: unexpected "\NUL" expecting program | ||
avar | ?eval <0 Ćŗ> | ||
evalbot_8389 | ("0", "\\") | ||
theorbtwo | I'd expect that's an evalbot problem. | ||
avar | what's up with that... | ||
?eval <0 ĆŗƦưƔĆ> | |||
evalbot_8389 | ("0", "\\\\") | ||
avar | sub prefix:<Ćslenska> (Num $n) returns Str { "foo" } | 17:16 | |
sub fƦreyska (Num $n) returns Str { "bar" } | |||
say Ćslenska 500; | |||
say fƦreyska 500; | |||
what's the practical difference between these two? | |||
PerlJam | avar: none? | ||
avar | maybe;) | ||
Alias_ | seen cwest? | 17:57 | |
damned explicit-mode bots | 17:58 | ||
avar | Alias_: use seenserv | 17:59 | |
Alias_ | "Wildcard SEEN is restricted to admins" | ||
oh, question mark | |||
xgl | svn is down? | 19:48 | |
Juerd | I have no idea. | 19:51 | |
xinming | xgl: I think so, As I also can't check out the repository | 19:55 | |
xgl | ls | 20:26 | |
dduncan | g'day | 21:02 | |
nothingmuch | lumimies: | 21:04 | |
err | |||
luqui: ping | |||
seen luqui | |||
obra: err, you also pijng | |||
ping | |||
use.perl.org/~luqui/journal/28089?from=rss | |||
wrt that, and your question to luqui - this relates the circular prelude idea | |||
basically i proposed that Perl 6's core definition will be written in perl 6 | 21:05 | ||
except for things like IO | |||
even basic math | |||
and then when the code is compiled, high level functions/methods from the prelude will have replacements proposed by the backend | |||
so Perl6::Rule::compile could be provided by PGE on the parrot backend | |||
but stay pure perl in the javascript backend | 21:06 | ||
furthermore, circularity is promoted | |||
defining functions in terms of each other | |||
that way the backend can replace the part it's most comfortable replacing | |||
instead of a predefined set of "core ops" | |||
see also misc/blondie in the pugs tree | |||
dduncan | easy come, easy go ... openfoundry down again | 21:40 |