-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.pod6
More file actions
184 lines (113 loc) · 5.18 KB
/
index.pod6
File metadata and controls
184 lines (113 loc) · 5.18 KB
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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
=begin pod
= :favicon<./logo.png>
= :puburl<http://example.com>
= :globalStyles("./page.styles.css")
= :gtmId("GTM-K6GTN98T")
=useReact {HeaderCol,LastArticles,CookieConsent} from '@Components/service'
=useReact {Test,IndexAllDocs} from 'raku-knowledge/components'
=TITLE The Raku Knowledge Base
=begin nested :notify<warning>
This website is not affiliated with the official Raku project: L<https://raku.org/>.
It serves as a demonstration of L<Podlite's web publishing|https://github.com/podlite/podlite-web> capabilities,
which is part of the larger L<Podlite|https://podlite.org> project. For more information, read the announcement on the Podlite website: L<podlite.org/a5ZK1|https://podlite.org/a5ZK1>.
=end nested
=for head1 :id<page-title>
The Raku® Knowledge Base
This site is a collection of documentation, articles, links, examples about the Raku programming language.
All it being putted together in one information space to help you learn Raku faster and more efficiently.
=head2 L<Get started| file:./getting-started/getting-started.podlite>
=begin React :component<HeaderCol>
=begin nested :!nested
Raku is a modern, multi-paradigm language. Raku offers L<procedural|/doc/language/functions>,
L<object-oriented|/doc/language/objects> and L<functional programming|/doc/language/functions#Functions-are-first-class-objects> methodologies.
=head3 Raku’s mottos:
=item "Raku is designed to make the easy jobs easy, without making the hard jobs impossible."
=item "There Is More Than One Way To Do It - now with even more -Ofun (optimized for fun) added."
=end nested
=Image getting-started/camelia-logo.png
Hi, my name is Camelia. I'm the spokesbug for the Raku Programming Language.
=end React
=head3 Сode examples
=begin code :lang<raku> :caption<Grammars>
grammar Parser {
rule TOP { I <love> <lang> }
token love { '♥' | love }
token lang { < Raku Perl Rust Go Python Ruby > }
}
say Parser.parse: 'I ♥ Raku';
# OUTPUT: 「I ♥ Raku」 love => 「♥」 lang => 「Raku」
say Parser.parse: 'I love Perl';
# OUTPUT: 「I love Perl」 love => 「love」 lang => 「Perl」
=end code
=begin code :lang<raku> :caption<Async & Parallelism>
start { sleep 1.5; print "hi" }
await Supply.from-list(<A B C D E F>).throttle: 2, {
sleep 0.5;
.print
}
# OUTPUT: ABCDhiEF
=end code
L<Get started| file:./getting-started/getting-started.podlite>
=head2 L<Documentation|/doc>
=begin React :component<HeaderCol>
=begin nested :!nested
=head3 L<Getting started, Migration guides from other languages, & Tutorials | file:./doc/introduction.podlite>
=para Documents introducing the language for various audiences.
=head3 L<Language References|file:./doc/reference.podlite>
=para Documents explaining the various conceptual parts of the language.
=head3 L<Type Reference| file:./doc/types.podlite>
=para Index of built-in classes, roles and enums.
=head3 L<Miscellaneous| file:./doc/miscellaneous.podlite>
=para Documents explaining experimental topics and Raku programs rather than the language itself.
=end nested
=begin nested :!nested
=head3 L<FAQs (Frequently Asked Questions)|/doc/language/faq>
=para A collection of questions that have cropped up often, along with answers.
=head3 L<Community|/doc/language/community>
=para Information about the Raku development community, email lists, IRC and IRC bots, and blogs.
=head3 L<The list of all documents|file:./doc/index.podlite>
=para The list of all documents in the documentation section
=end nested
=end React
=head2 L<Modules|/mods>
=begin React :component<HeaderCol>
=begin nested :!nested
=head3 L< Most Wanted Modules |https://github.com/Raku/raku-most-wanted/blob/master/most-wanted/modules.md>
=para These are the most-wanted pure Raku modules
=head3 L< Most Wanted Native Bindings |https://github.com/Raku/raku-most-wanted/blob/master/most-wanted/bindings.md>
=para These are the native libraries that are most wanted as L<NativeCall|/doc/language/nativecall> bindings rather than
as Raku source ports.
=end nested
=begin nested :!nested
=head3 L< How-to | /doc/language/modules>
=para How to write your own module
=head3 L<App::Mi6 | /mods/zef/App::Mi6> L<App::Mi6 on gihub|https://github.com/skaji/mi6 >
=para Helper for writing modules.
=head3 L<Index all modules|/mods>
=para Index of all modules in the modules section for both zef and ecosystem
=end nested
=end React
=head2 L<Examples|/examples>
=begin React :component<HeaderCol>
=begin nested :!nested
=head3 L<Best of Rosettacode | /examples#Best-of-Rosettacode>
=para The best of the rosettacode.org examples
=head3 L<99 Problems|/examples#99-Problems>
=para Based on lisp 99 problems
=head3 L<Cookbook| /examples#Cookbook>
=para Cookbook examples
=end nested
=begin nested :!nested
=head3 L<Games| /examples#Games>
=para Games written in Raku
=head3 L<Interpreters|/examples#Interpreters>
=para Language or DSL interpreters
=head3 L<Parsers|/examples#Parsers>
=para Example grammars
=head3 L<... The complete list of examples|/examples>
=para The list of all examples in the examples section
=end nested
=end React
=head2 L<Index|/indexterms>
=head3 L<The index of all terms|/indexterms>
=end pod