Skip to content

Commit 3ebb144

Browse files
committed
Minor edits
Couple of grammar edits, plus replacing space with nonbreaking space in "Perl 6".
1 parent c1140e7 commit 3ebb144

File tree

1 file changed

+37
-37
lines changed

1 file changed

+37
-37
lines changed

doc/Language/faq.pod

Lines changed: 37 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@
66
77
=head1 General
88
9-
=head2 What's the difference between Rakudo and Perl 6?
9+
=head2 What's the difference between Rakudo and Perl 6?
1010
11-
Rakudo is an implementation of Perl 6. It's currently the most developed, but
11+
Rakudo is an implementation of Perl 6. It's currently the most developed, but
1212
there have been other implementations in the past and should be others in the
1313
future. Perl 6 is the definition of the language. Many times the two names will
1414
be used loosely and interchangeably.
1515
16-
=head2 As a Perl 6 beginner what should I install?
16+
=head2 As a Perl 6 beginner what should I install?
1717
1818
If you are a Linux or Mac user you probably want to download Rakudo Star and
1919
install via compilation (a simple process) the MoarVM version available from
@@ -30,27 +30,27 @@ parties. Although vendor versions may be outdated.
3030
Install L<rakudobrew|https://github.com/tadzik/rakudobrew> which resembles
3131
Perl 5's perlbrew and the equivalent Python and Ruby tools.
3232
33-
=head2 Where can I find good documentation on Perl 6?
33+
=head2 Where can I find good documentation on Perl 6?
3434
3535
The most reliable information is to be found either under the perl6.org domains or directly linked from it.
3636
3737
L<http://www.perl6.org/documentation/|http://www.perl6.org/documentation/> with
3838
L<http://doc.perl6.org/|http://doc.perl6.org/> as the canonical technical reference.
3939
4040
There is much good recent material on Youtube but be careful to check any dates
41-
on webpages since much of the Perl 6 information on random websites found by
41+
on webpages since much of the Perl 6 information on random websites found by
4242
Google is often outdated.
4343
4444
You could also try searching the Freenode #perl6 IRC channel log via
4545
L<Google|https://www.google.co.uk/search?q=site:irclog.perlgeek.de+inurl:perl6>
4646
47-
=head2 What is the Perl 6 spec?
47+
=head2 What is the Perl 6 spec?
4848
49-
The "spec" refers to the official test suite for Perl 6. It's called
49+
The "spec" refers to the official test suite for Perl 6. It's called
5050
roast and L<hosted on github|https://github.com/perl6/roast>. It
51-
is the measure of how complete a Perl 6 implementation is.
51+
is the measure of how complete a Perl 6 implementation is.
5252
53-
=head2 Is there a glossary of Perl 6 related terms?
53+
=head2 Is there a glossary of Perl 6 related terms?
5454
5555
See L<S99|http://design.perl6.org/S99.html>
5656
@@ -60,22 +60,22 @@ See the pod with the 5to6- prefix under L<http://doc.perl6.org/language.html|htt
6060
6161
=head1 Modules
6262
63-
=head2 Is there a CPAN for Perl 6?
63+
=head2 Is there a CPAN for Perl 6?
6464
65-
There isn't yet a module repository for Perl 6 as sophisticated as CPAN. But
66-
L<modules.perl6.org|http://modules.perl6.org/> has a list of known Perl 6
65+
There isn't yet a module repository for Perl 6 as sophisticated as CPAN. But
66+
L<modules.perl6.org|http://modules.perl6.org/> has a list of known Perl 6
6767
modules called the "ecosystem" hosted on github, and
6868
L<panda|https://github.com/tadzik/panda/> can install those that work with
6969
L<rakudo|http://rakudo.org/>.
7070
71-
Support for installing Perl 6 modules from the Perl 5 CPAN is on its way.
71+
Support for installing Perl 6 modules from the Perl 5 CPAN is on its way.
7272
73-
=head2 Can I use Perl 5 modules from Perl 6?
73+
=head2 Can I use Perl 5 modules from Perl 6?
7474
7575
Yes, with L<Inline::Perl5|https://github.com/niner/Inline-Perl5/>, which works
7676
well with most Perl 5 modules. It can even run Perl 5 Catalyst and DBI.
7777
78-
=head2 Can I use C and C++ from Perl 6?
78+
=head2 Can I use C and C++ from Perl 6?
7979
8080
L<Nativecall|http://docs.perl6.org/language/nativecall> makes this particularly easy.
8181
@@ -98,7 +98,7 @@ and many more can be installed from the ecosystem.
9898
9999
=head1 Language Features
100100
101-
=head2 How can I dump Perl 6 data structures (like Perl 5 Data::Dumper and similar)?
101+
=head2 How can I dump Perl 6 data structures (like Perl 5 Data::Dumper and similar)?
102102
103103
Examples:
104104
@@ -110,7 +110,7 @@ Examples:
110110
There are also modules in the ecosystem to do this, like
111111
L<Data::Dump|https://github.com/tony-o/perl6-data-dump/>, which uses color.
112112
113-
=head2 How can I get command line history in the perl 6 prompt (REPL)?
113+
=head2 How can I get command line history in the Perl 6 prompt (REPL)?
114114
115115
Install L<Linenoise|https://github.com/hoelzro/p6-linenoise/> from the
116116
ecosystem.
@@ -143,7 +143,7 @@ Example:
143143
say $foo # (Any) note the parens indicate type object
144144
say $foo.^name # Any
145145
146-
(Any) shouldn't be used to check for definedness. In Perl 6, definedness is a
146+
(Any) shouldn't be used to check for definedness. In Perl 6, definedness is a
147147
property of an object. Usually instances are defined and type objects are
148148
undefined.
149149
@@ -227,15 +227,15 @@ If you want to do it anyway, you can abuse autothreading for that:
227227
228228
In Perl 6, many basic types are immutable, but the variables holding them are
229229
not. The C<s///> operator works on a variable, into which it puts a newly
230-
creates string object. Likewise C<$i++> works on the C<$i> variable, not
230+
created string object. Likewise C<$i++> works on the C<$i> variable, not
231231
just on the value in it.
232232
233233
See the documentation on L<containers|/language/containers> for more
234234
information.
235235
236236
=head2 What's up with array references and automatic dereferencing? Do I still need the C<@> sigil?
237237
238-
In Perl 6, nearly everything is a reference, so talking about taking
238+
In Perl 6, nearly everything is a reference, so talking about taking
239239
references doesn't make much sense. Unlike Perl 5, scalar variables
240240
can also contain arrays directly:
241241
@@ -280,9 +280,9 @@ There are several reasons:
280280
=item many natural languages use mandatory noun markers, so our brains are built to handle it
281281
282282
283-
=head2 Does Perl 6 have coroutines? What about C<yield>?
283+
=head2 Does Perl 6 have coroutines? What about C<yield>?
284284
285-
Perl 6 has no C<yield> statement like python does, but it does offer similar
285+
Perl 6 has no C<yield> statement like python does, but it does offer similar
286286
functionality through lazy lists. There are two popular ways to write
287287
routines that return lazy lists:
288288
@@ -299,7 +299,7 @@ routines that return lazy lists:
299299
300300
=head2 Why can't I initialize private attributes from the new method, and how can I fix this?
301301
302-
A code like
302+
Code like
303303
304304
class A {
305305
has $!x;
@@ -392,22 +392,22 @@ the exception with the C<exception> method.
392392
=head2 Why is C<wantarray> or C<want> gone? Can I return different things in different contexts?
393393
394394
Perl 5 has the C<wantarray> function that tells you whether it is called in
395-
void, scalar or list context. Perl 6 has no equivalent construct,
395+
void, scalar or list context. Perl 6 has no equivalent construct,
396396
because context does not flow inwards, i.e. a routine cannot know which
397397
context it is called in.
398398
399-
One reason is that Perl 6 has multi dispatch, and in a code example like
399+
One reason is that Perl 6 has multi dispatch, and in a code example like
400400
401401
multi w(Int $x) { say 'Int' }
402402
multi w(Str $x) { say 'Str' }
403403
w(f());
404404
405405
there is no way to determine if the caller of sub C<f> wants a string or
406406
an integer, because it is not yet known what the caller is. In general
407-
this requires solving the halting problem, which even Perl 6 compiler
407+
this requires solving the halting problem, which even Perl 6 compiler
408408
writers have trouble with.
409409
410-
The way to achieve context sensitivity in Perl 6 is to return an object
410+
The way to achieve context sensitivity in Perl 6 is to return an object
411411
that knows how to respond to method calls that are typical for a context.
412412
413413
For example regex matches return L<Match objects that know how to respond
@@ -416,21 +416,21 @@ string|/type/Match>.
416416
417417
=head1 Meta Questions and Advocacy
418418
419-
=head2 When will Perl 6 be ready? Is it ready now?
419+
=head2 When will Perl 6 be ready? Is it ready now?
420420
421421
Readiness of programming languages and their compilers is not a binary
422422
decision. As they (both the language and the implementations) evolve, they
423423
grow steadily more usable. Depending on your demands on a programming
424-
language, Perl 6 and its compilers might or might not be ready for you.
424+
language, Perl 6 and its compilers might or might not be ready for you.
425425
426426
Please see the L<feature comparison
427427
matrix|http://perl6.org/compilers/features> for an overview of implemented
428428
features.
429429
430430
431-
=head2 Why should I learn Perl 6? What's so great about it?
431+
=head2 Why should I learn Perl 6? What's so great about it?
432432
433-
Perl 6 unifies many great ideas that aren't usually found in other programming
433+
Perl 6 unifies many great ideas that aren't usually found in other programming
434434
languages. While several other languages offer some of these features, none of
435435
them offer all.
436436
@@ -491,31 +491,31 @@ Please see the L<feature comparison
491491
matrix|http://perl6.org/compilers/features> for an overview of implemented
492492
features.
493493
494-
=head2 Is Perl 6 fast enough for me?
494+
=head2 Is Perl 6 fast enough for me?
495495
496496
That depends on what you are doing. Rakudo has been developed with the
497497
philosophy of "make it work right then make it work fast". It's fast for some
498498
things already but needs work on others.
499499
500-
Perl 6 is mostly being worked on by volunteers but it's expected that Perl 6
500+
Perl 6 is mostly being worked on by volunteers but it's expected that Perl 6
501501
performance will improve in the near future since the MoarVM backend contains a
502502
modern Just In Time (JIT) compiler.
503503
504-
Perl 5 programmers should be aware that Perl 6 comes with more built in in
504+
Perl 5 programmers should be aware that Perl 6 comes with more built in in
505505
terms of object orientation and much else. Simple benchmarks will be misleading
506506
unless you include things like Moose, type checking modules etc. in your Perl 5
507507
script.
508508
509509
The following crude benchmarks, with all the usual caveats about such things,
510-
can show Perl 6 to be of roughly equivalent speed to Perl 5 for some similar
510+
can show Perl 6 to be of roughly equivalent speed to Perl 5 for some similar
511511
common tasks.
512512
513513
Try it on your system you may be pleasantly surprised!
514514
515515
Examples:
516516
517517
518-
# perl 6 version
518+
# Perl 6 version
519519
use v6;
520520
521521
class Foo { has $.i is rw};
@@ -526,7 +526,7 @@ Examples:
526526
say $obj.i;
527527
}
528528
529-
# perl 5 version
529+
# Perl 5 version
530530
package Foo;
531531
use 5.10.0;
532532
use Moose;

0 commit comments

Comments
 (0)