pugscode.org/ | nopaste: sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/
Set by diakopter on 11 July 2007.
pugs_svnbot r17110 | Darren_Duncan++ | ext/Muldis-DB/ : updated Literal.pm and PhysType.pm to rename collection-type classes from Sel|NQ|AQ suffixes 01:31
diff: dev.pugscode.org/changeset/17110
TimToady bloonix: currently works as follows: 03:10
?eval my %a = a => 1; my %b = b => 2; sub foo (*%hash) { say %hash.keys }; foo(|%a,|%b)
evalbot_r17041 OUTPUT[ab␤] Bool::True
TimToady thud & 03:12
pugs_svnbot r17111 | Darren_Duncan++ | ext/Muldis-DB/ : this is the Perl 6 equivalent of what will end up on CPAN as Muldis::DB version 0.2.0 for Perl 5 03:47
diff: dev.pugscode.org/changeset/17111
meppl good morning 08:19
masak meppl: morning 08:20
meppl good morning masak 08:24
masak meppl: are you in Germany? 08:28
(as opposed to Asia or the US, as some of this channel's residents) 08:29
meppl yes yes
masak that would be why our mornings occur at the same time :)
meppl ;)
xerox Is it here where a bot yells on svn commits? 08:52
How is it called/where can I get it/how do I configure it? :-D
integral points at pugs_svnbot 08:57
it's in the pugs source tree somewhere
xerox it runs on pugs?
integral I believe so
bloonix morning
masak bloonix: morning 09:00
bloonix a really nice day to sit on the balcony and do a bit p6 :) 09:02
xerox ok thanks integral
xerox integral: do you know if the bot must reside on the same server as the repo is? 09:07
integral I'm pretty sure not. 09:09
xerox cool
what's the pipeline of commands to get pugs nowadays? 09:10
_moritz_ wolverian: it's not yet automatically updated 09:13
xerox: do you want to build it, or just use it? 09:14
xerox I want to use it for the pubs_svnbot thing
(on FreeBSD) 09:15
xerox _moritz_: any idea? (: 09:17
xerox _moritz_: I think you were going on to suggest something... ? (: 09:23
_moritz_ xerox: sorry, was afk... 09:24
xerox no problem
_moritz_ I don't think there are binaries for freebsd, you have to get the repository and follow INSTALL 09:24
xerox okay 09:25
xerox thanks _moritz_ 09:31
masak this morning's discussion question: what, in your view, makes sigils worth their weight 09:34
python and ruby has dropped them 09:35
and php uses it without understanding why
perl uses it to distinguish scalars, arrays, hashes
and also to make interpolation of vars possible
(with no extra syntax) 09:36
xerox integral: find . -iname ".*bot.*" doesn't find anything, where is the svn_pugsbot' 09:49
?
pugs_svnbot either
_moritz_ in examples/network/ iirc 09:50
xerox yes! svnbot.pl okay
how do you turn on the debug messages? 09:54
_moritz_ I don't know... it's turned on for me by default 09:56
xerox maybe you know how to install Net/IRC.pm on freebsd? 09:57
_moritz_ if you type "make" on the top level directory, it is built into blib6/ somewhere 10:19
_moritz_ and then you can run it with pugs -I$path_to_lib 10:25
bloonix *** Must only use named arguments to new() constructor 10:40
dont understand it
submethod BUILD (*$var) {
...
Test.new('foo');
pasteling "bloonix" at 87.79.229.74 pasted "#!/usr/bin/pugs module Foo; su" (16 lines, 250B) at sial.org/pbot/26430 10:57
TimToady bloonix: positional args aren't composable. BUILD is required to be named, and the default new can only understand named, but you are free to write your own new in any order you like. 11:14
bloonix TimToady: I dont understand what "named" means :/ 11:15
TimToady well, first, you can't put a submethod into a module, because it needs a class instead, presumably with some attributes 11:16
it's the names of the attributes that you use
class Point { has $.x; has $.y; }; Point.new(x => 1, y => 2) 11:17
bloonix svn.pugscode.org/pugs/ext/File-Find...le/Find.pm 11:18
I look into this mod for example and though its possible 11:19
TimToady fixed 11:21
bloonix++
pugs_svnbot r17112 | lwall++ | s/module/class/ in File::Find
diff: dev.pugscode.org/changeset/17112
bloonix I have to read S12 again do understand the difference between modules | classes ! 11:23
or maybe another synopsis is better? 11:24
TimToady @tell masak two other reasons for sigils: to distinguish nouns from verbs (the absence of the sigil indicating either a verb or a type) and finally sigils open up an extensible namespace for twigils, in case you want to add more weirdly scoped variables 11:25
lambdabot Consider it noted.
TimToady bloonix: yes, the synopses tend to be long on what and short on why
biab 11:26
bloonix synopsis => what, apocalype => why ?
what and why 11:27
where can I look for a description "why" class and "why" module ?
pasteling "bloonix" at 87.79.229.74 pasted "#!/usr/bin/pugs module Test; h" (27 lines, 362B) at sial.org/pbot/26431 11:32
TimToady a module is really just a package with a different name so that we can 1) distinguish p5 from p6 and 2) have a different export mechanism
bloonix why is that possible?
it shouldn't, or? 11:33
TimToady shouldn't I think
sec, have to check if taxi is here for airport 11:34
bloonix :)
TimToady no, not yet 11:36
TimToady basically, p5 didn't distinguish packages from classes, and it turned out to be very confusing, along with not distinguishing subs from methods. 11:39
arguably, since a class can also be used as a module, modules are redundant 11:40
and since we fixed sub vs method, less confusing
but I think it's useful to be able to group non-OO subs in a place that explicitly indicates no constructors need be autogenerated 11:41
package is the same as module, but doesn't support "is export"
taxi here &
bloonix have a good fly 11:42
pmurias hi, 13:30
what is the syntax for changing the metaclass for a class? 13:31
i meant specifing 13:32
pmurias not nessesarly one which works in pugs, as i mean to implement it in kp6 13:45
pugs_svnbot r17113 | pmurias++ | kp6: 14:29
r17113 | pmurias++ | fixed test plans
r17113 | pmurias++ | one can now specify the metaclass with the nonstandard
r17113 | pmurias++ | class Foo meta Bar {...} syntax
diff: dev.pugscode.org/changeset/17113
bloonix Bool will be 1 or 0 ? or any char as well? 15:01
?eval my Bool $bool; say $bool.WHAT 15:03
evalbot_r17041 OUTPUT[Bool␤] Bool::True
bloonix ?eval my Bool $bool; $bool = 1; say $bool.WHAT
evalbot_r17041 OUTPUT[Int␤] Bool::True
bloonix when is $bool Bool? 15:05
pmurias bloonix: hi 15:12
Bool is a false or true value
bloonix that means that Bool is all about 0 and undef? 15:13
no
pmurias Bool can be either Bool::True or Bool::False
0 and undef get convered to Bool::False 15:14
1 and 'a' and [1,2,3] get converted to Bool::True 15:15
clear?
;)
bloonix yes
?eval my $bool = 1; $bool ~~ /[01]/; 15:16
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix whats wrong here?
wolverian [] doesn't do what you think it does 15:17
see S05 :)
bloonix wtf :) 15:18
bloonix ?eval my $bool = 1; $bool ~~ /<[01]>/; 15:20
evalbot_r17041 Match.new(␤ ok => Bool::True, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤) 15:21
pmurias RTFM ;), seriously the regex are totaly changed
wolverian isn't it reat :)
pmurias perlcabal.org/syn/S05.html
lambdabot Title: S05
wolverian +g
pmurias i was too slow :(
wolverian: reat means? 15:22
wolverian see the +g :)
bloonix pmurias: until now I though p5 regexes are compliant with p6 regexes. 15:23
?eval my $bool = 1; $bool ~~ /^<[01]>\z/;
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
pmurias ?eval my $bool = 1; $bool ~~ /^<[01]>\z/;
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix lol 15:24
pmurias ?eval my $bool = 1; $bool ~~ :p5/01/
bloonix ?eval my $bool = 1; $bool ~~ /^<[01]>/;
evalbot_r17041 Match.new(␤ ok => Bool::True, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix ?eval my $bool = 1; $bool ~~ /^<[01]>$/;
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix # no more \A or \z 15:25
pmurias ?eval my $bool = 1; $bool ~~ m:p5/01/
?eval my $bool = 1; $bool ~~ m:p5/[01]/
wolverian uh..
try without the space
pmurias ?eval my $bool = 1; $bool ~~ m:p5/[01]/
evalbot_r17041 *** Cannot parse regex: [01]␤*** Error: Error: Error in rule: unknown parameter 'p5' at /home/audreyt/pugs/perl5/Pugs-Compiler-Rule/lib/Pugs/Runtime/Match/HsBridge.pm line 37␤␤Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
wolverian I think it's :perl5
pmurias ?eval my $bool = 1; $bool ~~ m:perl5/[01]/
evalbot_r17041 Match.new(␤ ok => Bool::True, ␤ from => 0, ␤ to => 1, ␤ str => "1", ␤ sub_pos => (), ␤ sub_named => {}␤) 15:26
pmurias ?eval my $bool = 1; $bool ~~ m:Perl5/[01]/ 15:26
evalbot_r17041 Match.new(␤ ok => Bool::True, ␤ from => 0, ␤ to => 1, ␤ str => "1", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix ?eval my $bool = 1; $bool ~~ /^<[01]>?$/;
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
pmurias the synopsis mentions :Perl5/:P5
bloonix ?eval my $bool = 1; $bool ~~ /^1?$/;
evalbot_r17041 Match.new(␤ ok => Bool::True, ␤ from => 0, ␤ to => 1, ␤ str => "1", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix ?eval my $bool = 1; $bool ~~ /^1$/; 15:27
evalbot_r17041 Match.new(␤ ok => Bool::True, ␤ from => 0, ␤ to => 1, ␤ str => "1", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix ?eval my $bool = 1; $bool ~~ /^<[01]>?$/;
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix dont understand that
?eval my $bool = 1; $bool ~~ /^<[01]>$/; 15:28
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix ?eval my $bool = 1; $bool ~~ /^ <[01]> $/;
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix I hate try and error :)
?eval my $bool = 1; $bool ~~ /^ <[0-1]> $/;
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix ?eval my $bool = 1; $bool ~~ /^ \d $/; 15:34
evalbot_r17041 Match.new(␤ ok => Bool::False, ␤ from => 0, ␤ to => 0, ␤ str => "", ␤ sub_pos => (), ␤ sub_named => {}␤)
bloonix ?eval my $bool = 1; say "ok" if $bool ~~ /^<[01]>$/; 15:41
evalbot_r17041 undef
bloonix thats confusing. in my script it prints ok 15:42
rhr I've heard it said that character classes are broken in evalbot for some reason... 15:46
I like the "Error: Error: Error" message though :) 15:48
bloonix 'Cos Perl patterns induce complete brain overload 15:53
(Bob Dylan)++
:)
?eval my $s = 'bar'; say 'ok' if $s ~~ /^[foo|bar|baz]$/; 16:12
evalbot_r17041 OUTPUT[ok␤] Bool::True
pmurias @seen fglock 16:33
lambdabot Last time I saw fglock was when I left #perl6 22d 22h 4m 40s ago, and .
pmurias has a couple of things to discuss with fglock 16:37
pugs_svnbot r17114 | pmurias++ | kp6: $::Foo = Class->new(); in emitted code 17:51
diff: dev.pugscode.org/changeset/17114
pmurias _moritz_: ruby uses sigils a bit 19:23
although their meaning is different 19:24
masak pmurias: that's true. ruby uses the sigils for OO purposes 19:25
lambdabot masak: You have 1 new message. '/msg lambdabot @messages' to read it.
masak @messages
lambdabot TimToady said 8h 53s ago: two other reasons for sigils: to distinguish nouns from verbs (the absence of the sigil indicating either a verb or a type) and finally sigils open up an extensible
namespace for twigils, in case you want to add more weirdly scoped variables
masak good reasons. 19:26
pmurias i was blinded a bit by the lack of sigils when i looked the first few times at ruby code 19:29
masak :)
habit is an important part of language comprehension. that's why it's difficult for me nowadays to remember how little Esperanto people can understand before they've learned it 19:30
meppl good night 22:16
pugs_svnbot r17115 | Darren_Duncan++ | ext/Muldis-DB/ : fixed a few documentation bugs 23:21
diff: dev.pugscode.org/changeset/17115
fglock hi 23:39
lambdabot fglock: You have 1 new message. '/msg lambdabot @messages' to read it.
fglock @tell moritz re unsafe operations in kp6, not yet i think 23:41
lambdabot Consider it noted.