Can I sort blogs by the age of their starters?
globs and trees in Perl6
Hello Guest
  
  • Login
• Register…
• Start blog
  • Who, Where, When
• What can I do?
• What to Read?
  • Polls
• Avatars
• Interests
  • Cities and Countries
• Random blog
• Users search
  • Search
• Games
• Tests
• QAIX
  • Сообщества
• Talxy Chat
• Horoscope
• Online
 
Зарегистрируйся!

QAIX > Perl web-programming > globs and trees in Perl6 9 October 2008 16:51:04

  Recent blog posts: 
  They have birthday today: 
  Forums:   
  Discuss: 
  Recent forum topics: 
  Recent forum comments:
  Moderators:

globs and trees in Perl6

Timothy S. Nelson 9 October 2008 16:51:04
 Hi all. I've enjoyed(?) reading over the February/March thread
entitled "Musings on operator overloading". I've brought a few thoughts
along; if they're old news, please tell me where to do more reading on it :)­.

Over the last year or two, I've discovered XPath. I've always thought
XML a little annoying, but I'm very impressed with XPath (which I regard as
"the glob() of XML"), and I've been wondering how to get the power of XPath in
relation to *all* data, not just XML.

My eventual thought was that what would be useful is a role called
Plex (for those who aren't familiar with a Plex, just think "Tree" and you'll
have the right idea). The basic idea is that the Plex role could have a
variety of implementors depending on the data desired (much like the DBI/DBD
split, but for trees instead of tables). The backends could of course include
filesystems, but also XML, LDAP, OO databases, and DNS domains.

Tabular data could also be mapped into trees if desired. This could
be anything from SQL to text files.

As an additional idea, backend conversion could be performed. This
would be especially useful in the case of files. For example:

$root/etc/fstab <convert to text table> / "/boot"

...which would select the row from fstab that contains the "/boot"
partition; admittedly I've fudged the conversion here.

As you can see from my example, my idea is also that then there could
be Plex operators which would select out the data desired. In the example
above, it would be necessary for / to be a combination of a flow operator and
a variadic function that takes string and codeblock parameters; it returns a
list of values which are all Plex::Node.



Btw, it was quite a long time before I was able to find the operator
overloading documentation; "Subroutines" was not an intuitive place to look
:)­. Is there any chance we could add something to S03 that says something
like "see S06 and S13 for operator overloading"?

:)­

-------------------­--------------------­--------------------­----------
| Name: Tim Nelson | Because the Creator is, |
| E-mail: wayland@wayland.id.­au | I am |
-------------------­--------------------­--------------------­----------

----BEGIN GEEK CODE BLOCK----
Version 3.12
GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V-
PE(+) Y+>++ PGP->+++ R(+) !tv b++ DI++++ D G+ e++>++++ h! y-
-----END GEEK CODE BLOCK-----

Add comment
Timothy S. Nelson 2 October 2008 06:23:13 permanent link ]
 On Wed, 1 Oct 2008, Brandon S. Allbery KF8NH wrote:

On 2008 Oct 1, at 22:14, Timothy S. Nelson wrote:
Hi all. I've enjoyed(?) reading over the February/March thread
entitled "Musings on operator overloading". I've brought a few thoughts
along; if they're old news, please tell me
here to do more reading on it :)­.
The Perl6 way to do this is grammars; using an XML grammar to pull data out
of an XML document is one of Larry's favorite examples.

Ok, great. While I see how this does a great job of converting the
string of data into a plex, it doesn't solve the problem of selecting the data
from the plex in a glob-like (or XPath-like) fashion, which is what I'm
talking about here. Have I missed something that will do that?

:)­


-------------------­--------------------­--------------------­----------
| Name: Tim Nelson | Because the Creator is, |
| E-mail: wayland@wayland.id.­au | I am |
-------------------­--------------------­--------------------­----------

----BEGIN GEEK CODE BLOCK----
Version 3.12
GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V-
PE(+) Y+>++ PGP->+++ R(+) !tv b++ DI++++ D G+ e++>++++ h! y-
-----END GEEK CODE BLOCK-----

Add comment
Brandon S. Allbery KF8NH 2 October 2008 06:50:04 permanent link ]
 On 2008 Oct 1, at 22:14, Timothy S. Nelson wrote:
Hi all. I've enjoyed(?) reading over the February/March thread
entitled "Musings on operator overloading". I've brought a few
thoughts along; if they're old news, please tell me
here to do more reading on it :)­.

The Perl6 way to do this is grammars; using an XML grammar to pull
data out of an XML document is one of Larry's favorite examples.

--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery@kf8nh.com
system administrator [openafs,heimdal,too many hats] allbery@ece.cmu.edu­
electrical and computer engineering, carnegie mellon university KF8NH


Add comment
Brandon S. Allbery KF8NH 2 October 2008 07:24:04 permanent link ]
 On 2008 Oct 1, at 22:23, Timothy S. Nelson wrote:
On Wed, 1 Oct 2008, Brandon S. Allbery KF8NH wrote:
On 2008 Oct 1, at 22:14, Timothy S. Nelson wrote:
Hi all. I've enjoyed(?) reading over the February/March thread
entitled "Musings on operator overloading". I've brought a few
thoughts along; if they're old news, please tell me
here to do more reading on it :)­.
The Perl6 way to do this is grammars; using an XML grammar to pull
data out of an XML document is one of Larry's favorite examples.
Ok, great. While I see how this does a great job of converting the
string of data into a plex, it doesn't solve the problem of
selecting the data from the plex in a glob-like (or XPath-like)
fashion, which is what I'm talking about here. Have I missed
something that will do that?


I could have sworn there was a short and elegant example of using a
grammar to extract arbitrary information from an XML document, but I
don't see it in the documentation. I recall Trey Harris showing such
an example on IRC but not in a logged channel; maybe he'll see this
message and jump in, or if not I'll see if I can get him to write
another example.

--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery@kf8nh.com
system administrator [openafs,heimdal,too many hats] allbery@ece.cmu.edu­
electrical and computer engineering, carnegie mellon university KF8NH


Add comment
Tim Bunce 2 October 2008 12:54:27 permanent link ]
 On Wed, Oct 01, 2008 at 11:24:04PM -0400, Brandon S. Allbery KF8NH wrote:
On 2008 Oct 1, at 22:23, Timothy S. Nelson wrote:
On Wed, 1 Oct 2008, Brandon S. Allbery KF8NH wrote:
On 2008 Oct 1, at 22:14, Timothy S. Nelson wrote:
Hi all. I've enjoyed(?) reading over the February/March thread
entitled "Musings on operator overloading". I've brought a few thoughts
along; if they're old news, please tell me
here to do more reading on it :)­.
The Perl6 way to do this is grammars; using an XML grammar to pull data
out of an XML document is one of Larry's favorite examples.
Ok, great. While I see how this does a great job of converting the
string of data into a plex, it doesn't solve the problem of selecting the
data from the plex in a glob-like (or XPath-like) fashion, which is what
I'm talking about here. Have I missed something that will do that?
I could have sworn there was a short and elegant example of using a grammar
to extract arbitrary information from an XML document, but I don't see it
in the documentation. I recall Trey Harris showing such an example on IRC
but not in a logged channel; maybe he'll see this message and jump in, or
if not I'll see if I can get him to write another example.

The key point Brandon is making, that I'm not sure you're answering,
is that he wants to extract elements of a tree-like data structure
(think DOM), not simply from a string representation of a structure
(such as an XML document in a string).

Thinking in terms of grammars, I'd ask the question: could grammars be
used to match tree-like data structures? I think the current answer is no.
Grammars are too tightly bound to the concept of a position in a linear
string.

But I have a nagging suspicion that this is a very powerful idea.
Applying the expressive power of a grammar-like mechanism to
search, backtrack, and match within a tree-like data structure.

Is this new or has anyone discussed it before?

Tim.
Add comment
Timothy S. Nelson 2 October 2008 13:01:39 permanent link ]
 On Thu, 2 Oct 2008, Tim Bunce wrote:

On Wed, Oct 01, 2008 at 11:24:04PM -0400, Brandon S. Allbery KF8NH wrote:
On 2008 Oct 1, at 22:23, Timothy S. Nelson wrote:
On Wed, 1 Oct 2008, Brandon S. Allbery KF8NH wrote:
On 2008 Oct 1, at 22:14, Timothy S. Nelson wrote:
Hi all. I've enjoyed(?) reading over the February/March thread
entitled "Musings on operator overloading". I've brought a few thoughts
along; if they're old news, please tell me
here to do more reading on it :)­.
The Perl6 way to do this is grammars; using an XML grammar to pull data
out of an XML document is one of Larry's favorite examples.
Ok, great. While I see how this does a great job of converting the
string of data into a plex, it doesn't solve the problem of selecting the
data from the plex in a glob-like (or XPath-like) fashion, which is what
I'm talking about here. Have I missed something that will do that?
I could have sworn there was a short and elegant example of using a grammar
to extract arbitrary information from an XML document, but I don't see it
in the documentation. I recall Trey Harris showing such an example on IRC
but not in a logged channel; maybe he'll see this message and jump in, or
if not I'll see if I can get him to write another example.
The key point Brandon is making, that I'm not sure you're answering,

You probably mean "OtherTim" (ie. me) instead of "Brandon" here :)­.

is that he wants to extract elements of a tree-like data structure
(think DOM), not simply from a string representation of a structure
(such as an XML document in a string).
Thinking in terms of grammars, I'd ask the question: could grammars be
used to match tree-like data structures? I think the current answer is no.
Grammars are too tightly bound to the concept of a position in a linear
string.

I think Grammars would be great for turning a string into a tree. But
I agree with you in that I don't see how they apply to what I'm talking about
:)­.

But I have a nagging suspicion that this is a very powerful idea.
Applying the expressive power of a grammar-like mechanism to
search, backtrack, and match within a tree-like data structure.
Is this new or has anyone discussed it before?

Not sure what you mean by "backtrack" in this context; I was
envisioning that the thing return an array of tree nodes (although, now that
I think about it, it could be useful as an iterator too :)­ ). But that
doesn't seem to be quite what you're thinking, and so I'd be interested in
hearing more about that too.

:)­


-------------------­--------------------­--------------------­----------
| Name: Tim Nelson | Because the Creator is, |
| E-mail: wayland@wayland.id.­au | I am |
-------------------­--------------------­--------------------­----------

----BEGIN GEEK CODE BLOCK----
Version 3.12
GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V-
PE(+) Y+>++ PGP->+++ R(+) !tv b++ DI++++ D G+ e++>++++ h! y-
-----END GEEK CODE BLOCK-----

Add comment
Tim Bunce 2 October 2008 15:55:22 permanent link ]
 On Thu, Oct 02, 2008 at 07:01:39PM +1000, Timothy S. Nelson wrote:
On Thu, 2 Oct 2008, Tim Bunce wrote:
On Wed, Oct 01, 2008 at 11:24:04PM -0400, Brandon S. Allbery KF8NH wrote:
On 2008 Oct 1, at 22:23, Timothy S. Nelson wrote:
On Wed, 1 Oct 2008, Brandon S. Allbery KF8NH wrote:
On 2008 Oct 1, at 22:14, Timothy S. Nelson wrote:
Hi all. I've enjoyed(?) reading over the February/March thread
entitled "Musings on operator overloading". I've brought a few thoughts
along; if they're old news, please tell me
here to do more reading on it :)­.
The Perl6 way to do this is grammars; using an XML grammar to pull data
out of an XML document is one of Larry's favorite examples.
Ok, great. While I see how this does a great job of converting the
string of data into a plex, it doesn't solve the problem of selecting the
data from the plex in a glob-like (or XPath-like) fashion, which is what
I'm talking about here. Have I missed something that will do that?
I could have sworn there was a short and elegant example of using a grammar
to extract arbitrary information from an XML document, but I don't see it
in the documentation. I recall Trey Harris showing such an example on IRC
but not in a logged channel; maybe he'll see this message and jump in, or
if not I'll see if I can get him to write another example.
The key point Brandon is making, that I'm not sure you're answering,
You probably mean "OtherTim" (ie. me) instead of "Brandon" here :)­.

Yeap, sorry Tim.

is that he wants to extract elements of a tree-like data structure
(think DOM), not simply from a string representation of a structure
(such as an XML document in a string).
Thinking in terms of grammars, I'd ask the question: could grammars be
used to match tree-like data structures? I think the current answer is no.
Grammars are too tightly bound to the concept of a position in a linear
string.
I think Grammars would be great for turning a string into a tree. But I
agree with you in that I don't see how they apply to what I'm talking about
:)­.
But I have a nagging suspicion that this is a very powerful idea.
Applying the expressive power of a grammar-like mechanism to
search, backtrack, and match within a tree-like data structure.
Is this new or has anyone discussed it before?
Not sure what you mean by "backtrack" in this context;
I was envisioning that the thing return an array of tree nodes
(although, now that I think about it, it could be useful as an
iterator too :)­ ). But that doesn't seem to be quite what you're
thinking, and so I'd be interested in hearing more about that too.

I'm suggesting that the same kind of logic used to find those sequences
of characters in a string that match a pattern (including backtracking
http://perldoc.perl­.org/perlre.html#Bac­ktracking) could be applied to
finding those sub-trees in a tree-like data structure which match a
pattern.

Like applying XPath to an XML DOM, only more general and taken further.

By "more general and taken further" I'm thinking of the same kind of
evoltion from simple regular expressions in perl5 to grammars in perl6.

An XPath query is like a perl5 regular expression.

The grammar concept in perl6 has taken the perl5 regular expression
"mini language" and extended it up into the perl6 langauge as classes
with method calls and features like hypothetical variables.

But perl6 grammars are tied to the concept of searching through a
sequence of characters. At any point the grammar is trying to match
against the current character position with lookahead or lookbehind.

I'm imagining a way of expressing a search through a tree-like data
structure with the same kind of richness and features as grammars
(methods, backtracking, hypothetical variables etc). Instead of
matching against "current character position" you'd be matching the
current node.

Perhaps I'm just daydreaming, or perhaps I'm thinking of bringing an
extended form of the Parrot Tree Grammar Engine to perl6:

"TGE is a tool for transforming trees. Think of it as a good
old-fashioned substitution, but instead of taking and returning strings,
it takes and returns trees."
http://search.cpan.­org/~pmic/parrot-0.7­.1/compilers/tge/TGE­.pir

I've not looked at it closely enough to tell.

Tim.
Add comment
Timothy S. Nelson 2 October 2008 17:46:24 permanent link ]
 On Thu, 2 Oct 2008, Tim Bunce wrote:

The key point Brandon is making, that I'm not sure you're answering,
You probably mean "OtherTim" (ie. me) instead of "Brandon" here :)­.
Yeap, sorry Tim.

(I've seen comments like this totally confuse everyone, so I thought
I'd better mention it. But no worries -- I'm not fussed :)­ ).

But I have a nagging suspicion that this is a very powerful idea.
Applying the expressive power of a grammar-like mechanism to
search, backtrack, and match within a tree-like data structure.
Is this new or has anyone discussed it before?
Not sure what you mean by "backtrack" in this context;
I was envisioning that the thing return an array of tree nodes
(although, now that I think about it, it could be useful as an
iterator too :)­ ). But that doesn't seem to be quite what you're
thinking, and so I'd be interested in hearing more about that too.
I'm suggesting that the same kind of logic used to find those sequences
of characters in a string that match a pattern (including backtracking
finding those sub-trees in a tree-like data structure which match a
pattern.
Like applying XPath to an XML DOM, only more general and taken further.
By "more general and taken further" I'm thinking of the same kind of
evoltion from simple regular expressions in perl5 to grammars in perl6.
An XPath query is like a perl5 regular expression.
The grammar concept in perl6 has taken the perl5 regular expression
"mini language" and extended it up into the perl6 langauge as classes
with method calls and features like hypothetical variables.
But perl6 grammars are tied to the concept of searching through a
sequence of characters. At any point the grammar is trying to match
against the current character position with lookahead or lookbehind.
I'm imagining a way of expressing a search through a tree-like data
structure with the same kind of richness and features as grammars
(methods, backtracking, hypothetical variables etc). Instead of
matching against "current character position" you'd be matching the
current node.

That fit in pretty well with what I was thinking, although from
possibly a slightly different angle than I'd thought of it before.

Perhaps I'm just daydreaming, or perhaps I'm thinking of bringing an
extended form of the Parrot Tree Grammar Engine to perl6:
"TGE is a tool for transforming trees. Think of it as a good
old-fashioned substitution, but instead of taking and returning strings,
it takes and returns trees."
I've not looked at it closely enough to tell.

Hmm. Well, I was entirely unaware of it, so I guess that makes two of
us.

I think the following recent exchange on IRC may be relevant
(slightly edited :)­ ):

-------------------­--------------------­--------------------­-

* ruoso sees the issue of "tree grammar" appearing on the list again, and that
makes him remeber YAPC::EU::2007...
<masak> ruoso: why? (I wasn't there)
<ruoso> we had discussed this issue and we pretty much found out that XPath
and XQuery are good enough... and that we could have a XPath grammar
<ruoso> because XPath might look like being specific to XML, but it actually
isn't
<masak> no
<wayland76> Hmm
<wayland76> That's interesting :)­
<wayland76> So does that mean that you're recommending that we implement
something XPath-like as a sublanguage?
<masak> it will happen
<ruoso> maybe not even XPath-like, but actually XPath

-------------------­--------------------­--------------------­-

I don't necessarily agree about implementing actual XPath for all tree
structures; I think XPath is pretty good for XML, but a) could be improved for
other types of trees, and b) is just a little to inflexible to be "Perl".

:)­


-------------------­--------------------­--------------------­----------
| Name: Tim Nelson | Because the Creator is, |
| E-mail: wayland@wayland.id.­au | I am |
-------------------­--------------------­--------------------­----------

----BEGIN GEEK CODE BLOCK----
Version 3.12
GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V-
PE(+) Y+>++ PGP->+++ R(+) !tv b++ DI++++ D G+ e++>++++ h! y-
-----END GEEK CODE BLOCK-----

Add comment
TSa 2 October 2008 18:35:55 permanent link ]
 HaloO,

Tim Bunce wrote:
But I have a nagging suspicion that this is a very powerful idea.
Applying the expressive power of a grammar-like mechanism to
search, backtrack, and match within a tree-like data structure.
Is this new or has anyone discussed it before?

I've mentioned the idea of using the type system to represent
trees and dispatch for transformations like CDuce does it.
See <http://www.cduce.o­rg>.


Regards, TSa.
--

"The unavoidable price of reliability is simplicity" -- C.A.R. Hoare
"Simplicity does not precede complexity, but follows it." -- A.J. Perlis
1 + 2 + 3 + 4 + ... = -1/12 -- Srinivasa Ramanujan
Add comment
Moritz Lenz 2 October 2008 19:06:06 permanent link ]
 Timothy S. Nelson wrote:
Hi all. I've enjoyed(?) reading over the February/March thread
entitled "Musings on operator overloading". I've brought a few thoughts
along; if they're old news, please tell me where to do more reading on it :)­.
Over the last year or two, I've discovered XPath. I've always thought
XML a little annoying, but I'm very impressed with XPath (which I regard as
"the glob() of XML"), and I've been wondering how to get the power of XPath in
relation to *all* data, not just XML.

Sometimes I wish for something similar. Perl 5's Data::Diver goes a bit
in that direction, but it's not nearly as flexible as XPath.

My eventual thought was that what would be useful is a role called
Plex (for those who aren't familiar with a Plex, just think "Tree" and you'll
have the right idea). The basic idea is that the Plex role could have a
variety of implementors depending on the data desired (much like the DBI/DBD
split, but for trees instead of tables). The backends could of course include
filesystems, but also XML, LDAP, OO databases, and DNS domains.
Tabular data could also be mapped into trees if desired. This could
be anything from SQL to text files.
As an additional idea, backend conversion could be performed. This
would be especially useful in the case of files. For example:
$root/etc/fstab <convert to text table> / "/boot"
...which would select the row from fstab that contains the "/boot"
partition; admittedly I've fudged the conversion here.

It sounds like a perfect idea for a very general library or rather
library framework. Perl 6 has all the hooks to install stuff like this.

Btw, it was quite a long time before I was able to find the operator
overloading documentation; "Subroutines" was not an intuitive place to look

When you know that operators are mostly[1] just weirdly named subs, it
is ;-)­


:)­. Is there any chance we could add something to S03 that says something
like "see S06 and S13 for operator overloading"?

That would be mainly Larry's decision.
Other ways to search in the Synopsis are
* check out a copy of the svn repo, and grep/ack in them
* ask in #perl6 where some particular item is documented

Sadly we have next to no user-level documentation at them moment. The
closest might be the open sourced version of "Perl 6 and Parrot
Essentials", but it's rather incomplete and some parts are quite out of
date.


[1] some operators like ~~ actually have more macroish semantics

--
Moritz Lenz
http://perlgeek.de/­ | http://perl-6.de/ | http://sudokugarden­.de/
Add comment
Timothy S. Nelson 3 October 2008 04:23:20 permanent link ]
 On Thu, 2 Oct 2008, Moritz Lenz wrote:

[snip]
It sounds like a perfect idea for a very general library or rather
library framework. Perl 6 has all the hooks to install stuff like this.

Agree 100%. But I thought it might be useful toget some feedback from
others on this; I'd like to see the idea widely adopted :)­.

Btw, it was quite a long time before I was able to find the operator
overloading documentation; "Subroutines" was not an intuitive place to look
When you know that operators are mostly[1] just weirdly named subs, it
is ;-)­

Well, maybe :)­. But when you go to the Operators synopsis and search
for "Overloading"... :)­.

:)­. Is there any chance we could add something to S03 that says something
like "see S06 and S13 for operator overloading"?
That would be mainly Larry's decision.

Ok. Since I assume he reads this list, I'll leave it up to him.

Other ways to search in the Synopsis are
* check out a copy of the svn repo, and grep/ack in them
* ask in #perl6 where some particular item is documented

Part of my problem was that there was a reasonable amount of
information in the "Operators" and "Overloading" synopses, and so I figured we
were just supposed to mentally integrate all that :)­.

Sadly we have next to no user-level documentation at them moment. The
closest might be the open sourced version of "Perl 6 and Parrot
Essentials", but it's rather incomplete and some parts are quite out of
date.

Well, I learned Perl5 (back in 96) by reading what's now the Reference
section in order (well, at least perlsyn, perldata, perlop, perlsub, perlfunc,
anyway, and then selected a few others that I liked).

:)­


-------------------­--------------------­--------------------­----------
| Name: Tim Nelson | Because the Creator is, |
| E-mail: wayland@wayland.id.­au | I am |
-------------------­--------------------­--------------------­----------

----BEGIN GEEK CODE BLOCK----
Version 3.12
GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V-
PE(+) Y+>++ PGP->+++ R(+) !tv b++ DI++++ D G+ e++>++++ h! y-
-----END GEEK CODE BLOCK-----

Add comment
Brad Bowman 9 October 2008 16:51:04 permanent link ]
 Tim Bunce wrote:
Thinking in terms of grammars, I'd ask the question: could grammars be
used to match tree-like data structures? I think the current answer is no.
Grammars are too tightly bound to the concept of a position in a linear
string.
But I have a nagging suspicion that this is a very powerful idea.
Applying the expressive power of a grammar-like mechanism to
search, backtrack, and match within a tree-like data structure.
Is this new or has anyone discussed it before?

A little in "Iterating over complex structures":

http://www.nntp.per­l.org/group/perl.per­l6.language/2005/12/­msg24362.html

The papers I linked to in that thread have gone, but are archived:

http://web.archive.­org/web/200606220014­38/http://cnds.ucd.i­e/~cetus/home/public­ations.html
http://web.archive.­org/web/200608312213­46/cnds.ucd.ie/~cetu­s/PhD/NS-thesis-fina­l.pdf

I share that intuition that something cool is lurking here...

Brad

--
When one is not capable of true intelligence, it is good to consult with
someone of good sense. -- Hagakure http://bereft.net/h­agakure/
Add comment
 

Add new comment

As:
Login:  Password:  
 
 
  
 
Пожалуйста, относитесь к собеседникам уважительно, не используйте нецензурные слова, не злоупотребляйте заглавными буквами, не публикуйте рекламу и объявления о купле/продаже, а также материалы нарушающие сетевой этикет или УК РФ.


QAIX > Perl web-programming > globs and trees in Perl6 9 October 2008 16:51:04

see also:
17/1/2003 3:23:25
failed tests after 5.8.6 build
XHTML 2.0 - <line> or <l>?
пройди тесты:
see also:
The Apache HTTP Server can be…
problem with TNSLSNR
how do i start this program

  Copyright © 2001—2008 QAIX
Idea: Miсhael Monashev
Помощь и задать вопросы можно в сообществе support.qaix.com.
Сообщения об ошибках оставляем в сообществе bugs.qaix.com.
Предложения и комментарии пишем в сообществе suggest.qaix.com.
Информация для родителей.
Write us at:
If you would like to report an abuse of our service, such as a spam message, please .