pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, elf: etc.) (or perl6: for all) | irclog: irc.pugscode.org/ Set by Tene on 29 July 2008. |
|||
00:08
bacek joined
|
|||
meppl | good night | 00:11 | |
00:14
meppl left
00:16
pbuetow joined
|
|||
pugs_svn | r21939 | stephenpollei++ | Auzon pointed out that previous commit did not delete old comment.t file | 00:28 | |
00:57
Chillance left
01:14
[particle] joined
01:25
alanhaggai left
01:28
[particle]1 left
01:44
kanru left
01:48
hcchien joined
01:55
ruoso joined
|
|||
ruoso | Hi | 01:56 | |
lambdabot | ruoso: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
ruoso | @tell pmurias... I'd use the same licensing as perl... | 01:57 | |
lambdabot | Consider it noted. | ||
s1n1 | is yapc::eu over yet? i've been trying to get ahold of pmichaud with no luck | 02:08 | |
02:08
s1n1 is now known as s1n,
hercynium joined
02:11
kanru joined
02:13
Schwern left
|
|||
ruoso | s1n, I think yapc::eu happened last weekend... | 02:19 | |
s1n | ruoso: okay, thanks | 02:20 | |
02:25
alanhaggai joined
|
|||
s1n | is it bad form to add a test to spectest_regression if it's basically being entirely skipped? | 02:26 | |
02:27
Southen joined
|
|||
ruoso | technically, that means it's not a regression... | 02:27 | |
02:27
Gruber joined,
r0bby left
|
|||
s1n | yeah but it brings visibility to the tests, someone might go around doing unfudging tests | 02:28 | |
02:28
simcop2387 left
|
|||
ruoso | but I think the point of having a "regression" category is to see what is a regression and what is a misimplementation... | 02:28 | |
02:28
simcop2387 joined
02:29
agentzh left
02:31
wknight8111 left,
Schwern joined
|
|||
s1n | true, but there's already a ton of skips though | 02:31 | |
ruoso | well... one could argue that the correct would be to move them out of "regression" then... but I think you should take a more relevant opinion... ;) | 02:33 | |
02:34
Limbic_Region left,
Southen_ left
|
|||
pmichaud | spectest_regression should contain those test files for which we have passing tests and no (fudged) failing tests | 02:34 | |
a file which is being entirely skipped probably doesn't belong in spectest_regression | 02:35 | ||
s1n | pmichaud: i can agree, but there are some with large portions being skipped already, hence my curiousity | ||
pmichaud | the difference is "large portions skipped" versus "entirely skipped" | 02:36 | |
s1n | pmichaud: what's the threshold then? say there are 10 tests, how many are the minimum passing tests unfudged | ||
pmichaud | 1. | 02:37 | |
s1n | so if a single passing test exists in a sea of fudged tests, then it's good to add? | ||
pmichaud | it's fine with me, yes. | ||
s1n | okay, that answers my question, thanks | 02:38 | |
pugs_svn | r21940 | s1n++ | [spec] added the missing fudges so perhaps for use with the autounfudge tool | 02:40 | |
02:42
Khisanth joined
03:01
pbuetow left
03:03
pbuetow joined
03:04
agentzh joined
03:21
pbuetow left
03:31
Jedai left
03:33
cmarcelo left
|
|||
pugs_svn | r21941 | s1n++ | [spec] added missing fudges, necessary for use with the autounfudge tool | 03:38 | |
03:49
c9s left
03:56
justatheory left
04:10
hercynium left
|
|||
pugs_svn | r21942 | pmichaud++ | Rakudo doesn't quite handle a plain 'proto' yet, so fudge it out here | 04:10 | |
r21942 | pmichaud++ | to get spectest_regression passing again. | |||
04:16
alester joined
04:29
BinGOs joined
04:41
BinGOs_ left
04:47
rlb3 joined
04:53
sri_work joined
05:00
justatheory joined
05:15
penk joined
05:18
rlb3 left
05:21
justatheory left
05:35
Psyche^ joined
|
|||
pugs_svn | r21943 | stephenpollei++ | added rakudo fudge , wrapped a few tests in oppsFIXME that need to be wrapped in eval to be isolated | 05:36 | |
05:42
xinming left,
xinming joined
05:48
xinming left
05:49
Myoma left
05:51
Patterner left,
Psyche^ is now known as Patterner
05:55
xinming joined
06:15
xinming_ joined
06:25
alester left
06:29
xinming left
06:35
alanhaggai left
06:39
xinming joined
06:50
xinming_ left
07:04
agentzh left,
Schwern left,
kanru left,
yves left,
p6eval left,
pugs_svn left,
ilbot2 left,
Guest16015 left,
gbacon left,
orafu left,
jiing left,
avar left
07:05
jiing joined
07:06
orafu joined,
p6eval joined,
Guest16015 joined
07:08
ilbot2 joined
07:09
pugs_svn joined
07:11
Schwern joined
07:18
kanru joined
07:19
agentzh joined
07:21
yves joined
07:27
masak joined
07:31
elmex joined
07:50
zamolxes left
08:01
pmurias joined,
pmurias left
08:03
pmurias joined
|
|||
pmurias | ruoso: hi | 08:06 | |
ruoso: i'm thinking of getting rid of the boilerplate in RI creation by having them in a seperate sublanguage which would get preproccesed to C | 08:12 | ||
pugs_svn | r21944 | pmurias++ | [smop] removed old and irrelevant stuff from misc added 2 example how the new DSL for RI's might look like | 08:23 | |
08:34
meppl joined
08:49
bacek left
08:59
krunen joined
09:14
jferrero joined
09:16
ez left
09:21
wknight8111 joined
09:25
ez joined
09:40
hcchien left
09:42
hcchien joined
10:03
sri_work left
|
|||
ruoso | pmurias, feels like XS ;) but that's ok | 10:04 | |
pmurias, how do I solve "FATALERROR cabal is not found" in Debian Lenny? | 10:05 | ||
pmurias | ruoso: you need to install cabal | 10:06 | |
it's in third-party/Cabal in the pugs repo of many places | 10:07 | ||
10:09
penk left
10:10
broquaint left
|
|||
pmurias | s/of many places/and in other places/ | 10:11 | |
10:12
pmurias left,
pmurias joined
10:13
tcliou joined
|
|||
pmurias | ruoso: are you using out of tree builds with cmake, that is mkdir build;cd build;cmake ..;make | 10:14 | |
10:18
ez left
|
|||
pmurias | btw. both auto of tree and in-tree builds work here | 10:25 | |
cycling& | 10:26 | ||
10:26
pmurias left
10:30
nicky01 left
10:32
ruoso left
10:33
iblechbot joined
10:42
wknight8111 left
11:37
wknight8111 joined
11:39
wknight8111 left
11:48
cognominal joined
11:51
cognominal left,
cognominal joined
11:54
tcliou left
12:43
clintongormley joined
12:48
cmarcelo joined
12:55
clintongormley left
13:01
apeiron_ left
13:10
Schwern left
13:18
pmurias joined
13:35
cognominal left
13:41
TJCRI joined
13:44
rdice joined
13:46
zamolxes joined,
kanru left
13:48
clintongormley joined
|
|||
clintongormley | heya all - am i correct in my thinking that Roles are for classes, while Mixins are for instances? | 13:49 | |
Juerd | Not really. | ||
clintongormley | hmm must have misheard | ||
i thought jonathan said that at YAPC | |||
Juerd | If I understand it correctly, mixins are for classes, whereas roles are for either classes or instances. | ||
clintongormley | oh really? :) | 13:50 | |
the confusion continues... | |||
Juerd | The big difference however is in how clashes are handled. With mixins, one mixin wins. With roles, the class gets to decide which role gets precedence - if it doesn't, that's an error. So you don't get those annoying surprises when two roles both implement a method with the same name. | ||
clintongormley | ok - thanks juerd | 13:51 | |
Juerd | And you can choose to use a different method name to resolve it. | ||
clintongormley | many thanks | ||
Juerd | In many cases, multiple inheritance, mixins, and roles can be used to achieve the same goals, but roles really hurt the least eventually. | 13:52 | |
And of course, being able to add a role to an instance really rocks. | |||
my HTTP::Download $foo .= new; | 13:53 | ||
$foo does HTTP::Download::Resume; | |||
In Perl 5 ::Resume would be a subclass probably, but that sucks if you also want to add ::DisplayProgress :) | 13:54 | ||
13:54
rindolf joined
13:55
alanhaggai joined
|
|||
pmurias | do we have Mixins in Perl 6? | 13:56 | |
Juerd | Nafaik. | 13:58 | |
pmurias | good | ||
Juerd | Would there be any use for mixins, if you already have roles? | ||
Roles do everythings mixins do, plus more :) | |||
pmurias | s/plus more/minus some/ | ||
Juerd | Oh? | ||
pmurias | roles do composition more restrictively | 13:59 | |
Juerd | I see that as a feature. | ||
pmurias | food& | ||
Juerd | Enjoy | ||
pmichaud | yes, perl 6 has mixins | 14:00 | |
see 'but' | |||
and 'does' | |||
er, infix:<does> | |||
14:01
ruoso joined
|
|||
pmichaud | there's not a Mixin type, correct | 14:01 | |
14:08
kanru joined
14:09
hcchien left,
hcchien joined
|
|||
pmurias | pmichaud: infix:<does> and infix:<but> is more mixing in than mixings | 14:16 | |
14:19
Myoma joined
14:22
Exodist joined
|
|||
pmurias | ruoso: any comments before I start implementing my XS like RI preprocessor? | 14:23 | |
ruoso | I think it's ok... | ||
this file will then be passed through sm0p.pl, right? | 14:24 | ||
so you can have q:p6, q:sm0p and q:m0ld... right? | |||
14:24
alanhaggai left
|
|||
pmurias | yes | 14:26 | |
it's q:p6-sm0p and q:p6-m0ld now | |||
ruoso | yeah... I saw it... | 14:27 | |
14:28
Lorn joined
|
|||
ruoso | pmurias, even after ./Setup install of the Cabal in the pugs repo it still complains about cabal not being found... | 14:31 | |
do I need to do anything special? | |||
14:31
cathya joined
|
|||
pmurias | ruoso: hmm | 14:31 | |
you have a cabal in your path? | 14:32 | ||
ruoso | no | ||
and ./Setup install doesn't seem to have installed any | |||
pmurias | sorry it's actuall cabal-install | ||
* actually | |||
ruoso | it doesn't recognize cabal-install | 14:33 | |
pmurias | i mean you have to install cabal-install too | 14:35 | |
ruoso | ah... | 14:36 | |
pugs_svn | r21945 | pmurias++ | [smop] improved the error messages when cabal is missing | ||
14:36
cathya left
|
|||
pmurias | ruoso: you have a recently build pugs? | 14:39 | |
ruoso | no | ||
pugs_svn | r21946 | pmurias++ | [smop] cmake searches for cabal in ~/.cabal/bin too | 14:40 | |
14:40
cathya joined
|
|||
pmurias | pugs is not required, yet ;) | 14:41 | |
ruoso | pmurias, cabal-install complains about a missing zlib... but I can't find any debian package to match that... | ||
ruoso has the standard C zlib headers and libs installed, of course... | 14:42 | ||
pmurias thinks of dropping the dependency on cabal-install | 14:43 | ||
14:44
hercynium joined
|
|||
pmurias | ruoso: if you run perl Makefile.PL for pugs it should just install all that stuff | 14:44 | |
it's the haskell zlib bindings | |||
ruoso | hmm... automatic installation of dependencies is something I try very hard to avoid | 14:45 | |
I try to keep my /usr/local clean | |||
pmurias | it install stuff to ~/.cabal | 14:46 | |
* installs | |||
ruoso | even then... | 14:47 | |
ruoso like debian packages for binary stuff | |||
not keeping track of versioned binary dependencies generates lots of random segfaults with time | 14:48 | ||
pmurias | i don't think you can get segfaults with haskell | 14:49 | |
ruoso | if it is linked to native asm... it can | ||
binary dependencies are more fragile than most people think... | 14:51 | ||
pmurias (ab)used gentoo so he has seen a lot of random segfaults | 14:53 | ||
ruoso | getting random segfaults is one thing gentoo is good at ;) | ||
pmurias, do you really need parsec 2.1.0.1? or 2.1.0.0 would suffice? | 14:54 | ||
because that's the version present in Debian lenny atm | |||
pmurias | i think even 1.0 would suffice | ||
ruoso | pmurias, could you please drop the versioned dependency then? | 14:55 | |
pmurias | ok | 14:56 | |
i just put the one i have to be on the safe side | |||
ruoso | I think you could use 2.0.0.0 | ||
14:57
cmarcelo left
|
|||
ruoso | since it's a major release number | 14:57 | |
(not that I understand haskell versioning schema) | |||
pmurias | the whole cabal stuff is very young | 14:58 | |
ruoso | pmurias, when you update the wiki to use cmake, you can point that on debian lenny you only need cabal-install, Cabal and zlib... the rest is available as debian packages | ||
14:59
rindolf left
|
|||
pmurias | i could just change the build system so that it will just use ghc --make instead of the fancy cabal-install stuff | 14:59 | |
ruoso | well... as I'm not really aware of what all of this actually is, feel free to decide ;) | 15:00 | |
but avoiding a dependency when it's not really required is a good idea... | 15:01 | ||
ruoso can't afford learning hakell now... he just need to get things done... | 15:02 | ||
pmurias, but if you could commit the version dropping on parsec dependency soon, it would be cool... | 15:03 | ||
pmurias | ok | ||
15:04
jferrero left
|
|||
pugs_svn | r21947 | pmurias++ | [m0ld] changed the parsec dependency to >= 2.0.0.0 | 15:04 | |
15:07
justatheory joined
|
|||
ruoso | pmurias, the only thing missing on the cmake setup now is "make test" | 15:07 | |
once that is ready, I think we can drop autotools at all... | 15:08 | ||
pmurias | we can have a wrapper Makefile, as doing cmake .;make is not a very good idea | ||
15:09
donaldh joined
|
|||
pmurias | what's the best way to have prove run binary tests? | 15:09 | |
ruoso | it's a single perl -e line... | ||
you can see it at Makefile.test | 15:10 | ||
pmurias | doesn't work | 15:11 | |
it treats binaries as shell scripts | |||
ruoso | who does it? | ||
cd build; perl -MTest::Harness -e '@tests=<test/*.t>;$Test::Harness::switches="-e \"system(shift)\"";runtests(@tests)' | 15:12 | ||
it works for me... | |||
but note that for Test::Harness >= 3.00 and <= 3.08 it doesn't work... | 15:13 | ||
pmurias | it workes for me to | ||
* toi | |||
* too | |||
ruoso | and then the next thing to do is to remove the line "SMOP is a simple C project" from the wiki... ;) | 15:14 | |
pmurias | do you think it's worth for me to spend time now removing dependencies? | 15:15 | |
ruoso | nah... better document them.. (if you think it's easier | ||
pmurias, www.perlfoundation.org/perl6/index....pendencies | 15:20 | ||
I've just created this page so we can add the dependencies and notes on how to satisfy them | |||
pugs_svn | r21948 | pmurias++ | [smop] a wrapper Makefile for the cmake based build system | 15:24 | |
15:25
clintongormley left
15:26
StephenPollei left
15:27
spx2 joined,
spx2 left,
alester joined
|
|||
pugs_svn | r21949 | ruoso++ | [smop] dropping autotools from smop | 15:27 | |
15:33
fridim_ joined
|
|||
ruoso lunch & | 15:34 | ||
15:34
ruoso left
|
|||
pugs_svn | r21950 | pmurias++ | [smop] removing autotools leftovers | 15:36 | |
15:47
alester left
15:56
IllvilJa joined
15:57
macroron joined
15:58
zamolxes left
16:05
jferrero joined
16:15
masak left
16:17
Lorn left
16:19
rindolf joined
16:21
donaldh left
16:25
cathya left,
Lorn joined
16:29
alanhaggai joined
16:41
macroron left,
r0bby joined
|
|||
moritz_ | re | 17:01 | |
17:34
alester joined
17:39
leto_ is now known as Guest70230
18:04
barney joined
18:10
Schwern joined
18:13
alester left
18:22
alester joined
18:31
alester left
18:36
jhorwitz joined
18:38
iblechbot left
|
|||
moritz_ | pugs: say "test" | 18:40 | |
p6eval | pugs: OUTPUT[testā¤] | ||
moritz_ | pugs: $?PUGS_VERSION | 18:45 | |
p6eval | pugs: RESULT[\"Perl6 User\'s Golfing System, version 6.2.13.11, July 31, 2008"] | ||
18:48
meppl left,
lambdabot left
18:55
TJCRI left
|
|||
speckbot | r14575 | larry++ | P5ism noted by moritz++ | 19:04 | |
pugs_svn | r21951 | lwall++ | [gimme5] treat whitespace before optional | as insignificant | 19:10 | |
r21951 | lwall++ | [STD] allow anonymous sigil on simple var declarations | |||
r21951 | lwall++ | [STD] allow post constraints on simple var declarations | |||
r21951 | lwall++ | [teststd] don't report on failures if no failures | |||
TimToady | Auzon++ on the var decls, btw | 19:11 | |
Auzon | Thanks TimToady++. I assume that the omissions in STD.pm were easy to fix? | 19:12 | |
19:13
meppl joined
19:14
lambdabot joined
19:17
lisppaste3 left
19:18
lisppaste3 joined
|
|||
TimToady | well, there's easy, and then there's easy...took a while to drill down through all the layers of declaration syntax... | 19:21 | |
and I also note that I've busted "has ::?CLASS $.attr is rw;" somehow... :/ | 19:22 | ||
Auzon | Well, hopefully I can find more stuff to break before too long. :) | 19:23 | |
19:26
rdice left
19:38
pmurias left
|
|||
TimToady | I'm sure a lot of stuff will break as soon as I install real symbol tables and catch calls to undefined subs | 19:39 | |
moritz_ | even more if you don't track try { ... } and dies_ok { ... } | 19:40 | |
19:41
ez joined
|
|||
gaal | hi there! what repo does speckbot track? | 19:41 | |
moritz_ looks it up | 19:42 | ||
Auzon | 64.233.167.104/search?q=cache:K4RFC...&gl=us | ||
lambdabot | Title: QDB: Quote #244321, tinyurl.com/5mplsh | ||
Auzon | wait no | ||
svn.perl.org/perl6/doc/trunk/design/syn | |||
Dang, wrong clipboard >_< | |||
lambdabot | Title: Revision 14575: /doc/trunk/design/syn | ||
moritz_ | Auzon++ yes, that one | ||
Auzon | (it could've been a worse paste, I suppose...) | ||
gaal | cheers | 19:43 | |
TimToady | moritz_: try and dies_ok still have to parse correctly | 19:49 | |
but it's true that STD won't catch runtime errors at the moment :) | |||
moritz_ | TimToady: but are missing subs compile time errors? | 19:50 | |
19:50
lambdabot left
|
|||
moritz_ | I mean there could always be an eval 'sub *foo { ... }' somewhere, can't it? | 19:50 | |
or does it have to be pre-declared somehow? | 19:51 | ||
19:51
lambdabot joined,
[particle]1 joined
|
|||
rhr | is sub *foo valid syntax? STD doesn't currently accept it | 19:59 | |
it also doesn't like [;] and Ā»*=Ā» | 20:00 | ||
moritz_ | rhr: I think it is, you place stuff in the global namespaces with sub *foo | 20:01 | |
from S13:50 multi sub *uc (TurkishStr $s) {...} | 20:02 | ||
pugs: sub *foo { say 1 }; foo() | |||
p6eval | pugs: OUTPUT[1ā¤] | ||
moritz_ | perl6: sub *foo { say 1 }; foo() | ||
p6eval | elf 21951: OUTPUT[Parse error in: /tmp/DcrlxlMFZhā¤panic at line 1 column 0 (pos 0): Can't understand next input--giving upā¤WHERE: sub *foo { say 1 }; foo()ā¤WHERE:/\<-- HEREā¤ STD_red/prelude.rb:99:in `panic'ā¤ STD_red/std.rb:76:in `scan_unitstopper'ā¤ STD_red/std.rb:224:in `comp_unit'ā¤ | ||
..STD_red/st... | |||
..rakudo 29834: OUTPUT[Statement not terminated properly at line 1, near "foo { say "ā¤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)ā¤] | |||
..pugs: OUTPUT[1ā¤] | |||
rhr | moritz_: thanks, I was looking in the wrong synopsis | ||
moritz_ | rhr: I think there should also be a reference to that in S06 | 20:03 | |
20:06
[particle] left
20:07
[particle]1 is now known as particle1,
particle1 is now known as [particle]
|
|||
pugs_svn | r21952 | lwall++ | [STD] allow use of ::?CLASS in declaration | 20:07 | |
r21952 | lwall++ | [STD] reverse use of ident/identifier to make ident the shorter one | |||
TimToady | I'm thinking of removing sub *foo, which is why STD doesn't support it | 20:08 | |
Auzon | What would it be instead? Or would the functionality in general be gone? | 20:09 | |
TimToady | in general modules shouldn't be poking subs into GLOBAL, but just making their subs available for import into the Prelude | ||
you can still presumably say sub GLOBAL::foo, so it's really just a de-huffmanization | |||
but it's not entirely clear that the multi dispatcher will even end up looking into GLOBAL for anything by default | 20:10 | ||
since all the builtins will just be imported by Prelude | |||
20:11
broquaint joined
|
|||
TimToady | moritz_: yes, missing subs are a compile-time error, even if "post-declared" | 20:11 | |
there must be a declaration by CHECK time | |||
moritz_ | that means that we have a few broken tests | 20:12 | |
TimToady | so a test that presumes eval can declare subs will fail | ||
eval can only re-declare them | |||
20:12
lambdabot left
|
|||
moritz_ | and it supports my feeling that most dies_ok tests should actually be eval_dies_ok | 20:12 | |
TimToady | (and/or define them, depending on how you use the terms) | ||
moritz_ | s/be/use/ | ||
TimToady | could be | 20:13 | |
rhr: the assignment ops are kinda second-class citizens at the moment because I was having trouble squeezing them into the LTM | 20:14 | ||
and the [;] will have to be a special case, I expect, if we continue to support it | 20:15 | ||
well, maybe not, since I added a level for feed ops, and ; could be considered the same precedence level... | |||
pugs_svn | r21953 | moritz++ | [t/spec] unfudge some passing tests for rakudo | ||
20:15
sri_work joined
20:17
[particle]1 joined
20:19
jferrero left
20:28
jferrero joined
20:31
[particle] left
20:37
wknight8111 joined
|
|||
pugs_svn | r21954 | gaal++ | * Restore pugs_revision to pugs config | 20:40 | |
r21954 | gaal++ | (Should pugs_config.h also be restored? Why were these commented out?) | |||
r21955 | lwall++ | [STD] add semicolon to feed ops as "sequencer" operators | |||
TimToady | rhr: [;] now parses | 20:41 | |
lunch & | 20:42 | ||
rhr | TimToady++ #markov.pl parses :) | 20:43 | |
20:47
StephenPollei joined
|
|||
moritz_ | pugs: print $?PUGS_VERSION | 20:54 | |
p6eval | pugs: OUTPUT[Perl6 User's Golfing System, version 6.2.13.11, July 31, 2008] | ||
20:57
fridim_ left
21:12
barney left
21:21
meppl left
21:24
Lorn left
|
|||
moritz_ | ugs: print $?PUGS_VERSION | 21:25 | |
pugs: print $?PUGS_VERSION | |||
p6eval | pugs: OUTPUT[Perl6 User's Golfing System, version 6.2.13.11, July 31, 2008 (r20996)] | ||
moritz_ | gaal++ | ||
TimToady | did the commented-out code require svn access? | 21:27 | |
gaal | it just includes a file created at configure time | 21:28 | |
which in turn tries svk and svn | |||
I imagine someone will add git probing | 21:29 | ||
See util/version_h.pl | |||
21:30
jhorwitz left
|
|||
pugs_svn | r21956 | rhr++ | more syntax fixes | 21:32 | |
21:39
donaldh joined
21:50
ez left
22:04
Lorn joined
22:05
rindolf left
22:16
Hahara joined
22:17
Hahara left
22:31
iblechbot joined
22:34
Limbic_Region joined
22:44
Exodist left
22:54
donaldh left
22:57
justatheory left
23:08
elmex left
23:11
xinming_ joined
23:14
jferrero left,
larsen_ joined,
larsen_ left
23:20
xinming__ joined
23:27
xinming left
23:32
xinming_ left
23:37
hercynium left,
xinming__ is now known as xinming
23:38
Lorn left
23:42
iblechbot left
23:47
Schwern left
23:59
[particle]1 left
|