e336c909b9
* Explain that you cannot pass immutable values like integers to subs even if you use $n is rw. * Add myself as a contributor * Remove contributor since I am not a major contributor * Add many more smartmatch examples. Make the ternary operatory clearer and add a code example for it. Make the section for && and || have a working code example and show the output it gives * Fix assigning $a $b and $c values in the && operator section * Rename a few things so they don't conflict with variables in other parts of the code * Remove extra dashes * Move description of smartmatch type checks toward the end of that section * Better names for scoping examples * Redo the example for dynamically scoped variables so the example is better and functions properly when ran (old example did not work properly when running it by itself) * Rename these classes so they aren't named the same as the ones above * Add information about the different twigils in Perl 6. This makes understanding what $. $! and $* are and how they relate. Also complete the renaming in the previous commit * Fix capitalization and indenting here * Using the word interpolate to mean accessing an element of an array is not the proper terminology. Using the word interpolate is usually associated with things such as this: say "@names = { @names.perl }" * Make the wording a little clearer for arrays * Remove incorrect information about hashes. Hashes are not arrays of pairs although Perl 6 makes it easy to use them as such * Make the subroutine text read better * Clean up the Object Model introduction section * Fix the section on interpolating all elements of an array * Use the word attribute instead of field since this is the wording that the perl 6 documentation uses for these objects * Fix column width in a few places * More clearly mark which twigils are used for "normal" variables and which ones are used on "objects". This makes the flow from the # Scoping => # Twigil => # Object Model section smoother * Semi-rewrite the example for object inheritance and use more natural names. Also rename class A to class Attrib-Class * Clean up the scoping introduction a little * Remove a leftover line from rewriting the inheritance example * More gradually introduce exceptions and fix a typo, as well as adding a few examples * Reorder introduction of packages to be more natural. Show how to "use" a package before we show how to create and declare our own modules * Avoid using the word 'use' because we're not refering to the perl keyword 'use' |
||
---|---|---|
bg-bg | ||
cs-cz | ||
de-de | ||
el-gr | ||
es-es | ||
fa-ir | ||
fi-fi | ||
fr-fr | ||
hd-hd | ||
hu-hu | ||
id-id | ||
it-it | ||
ja-jp | ||
ko-kr | ||
lt-lt | ||
ms-my | ||
nl-nl | ||
no-nb | ||
pl-pl | ||
pt-br | ||
pt-pt | ||
ro-ro | ||
ru-ru | ||
sk-sk | ||
sv-se | ||
ta_in | ||
tr-tr | ||
uk-ua | ||
vi-vn | ||
zh-cn | ||
zh-tw | ||
.gitignore | ||
amd.html.markdown | ||
asciidoc.html.markdown | ||
asymptotic-notation.html.markdown | ||
bash.html.markdown | ||
bf.html.markdown | ||
binary-search.html.markdown | ||
c.html.markdown | ||
c++.html.markdown | ||
chapel.html.markdown | ||
CHICKEN.html.markdown | ||
clojure-macros.html.markdown | ||
clojure.html.markdown | ||
cmake.html.markdown | ||
coffeescript.html.markdown | ||
coldfusion.html.markdown | ||
common-lisp.html.markdown | ||
compojure.html.markdown | ||
CONTRIBUTING.markdown | ||
csharp.html.markdown | ||
css.html.markdown | ||
d.html.markdown | ||
dart.html.markdown | ||
dynamic-programming.html.markdown | ||
edn.html.markdown | ||
elisp.html.markdown | ||
elixir.html.markdown | ||
elm.html.markdown | ||
erlang.html.markdown | ||
factor.html.markdown | ||
file.erb | ||
forth.html.markdown | ||
fortran95.html.markdown | ||
fsharp.html.markdown | ||
git.html.markdown | ||
go.html.markdown | ||
groovy.html.markdown | ||
hack.html.markdown | ||
haml.html.markdown | ||
haskell.html.markdown | ||
haxe.html.markdown | ||
html.html.markdown | ||
hy.html.markdown | ||
inform7.html.markdown | ||
java.html.markdown | ||
javascript.html.markdown | ||
jquery.html.markdown | ||
json.html.markdown | ||
julia.html.markdown | ||
kotlin.html.markdown | ||
latex.html.markdown | ||
less.html.markdown | ||
livescript.html.markdown | ||
logtalk.html.markdown | ||
lua.html.markdown | ||
make.html.markdown | ||
markdown.html.markdown | ||
matlab.html.markdown | ||
meteor.html.markdown | ||
neat.html.markdown | ||
nim.html.markdown | ||
nix.html.markdown | ||
objective-c.html.markdown | ||
ocaml.html.markdown | ||
paren.html.markdown | ||
pcre.html.markdown | ||
perl6.html.markdown | ||
perl.html.markdown | ||
pets.csv | ||
php-composer.html.markdown | ||
php.html.markdown | ||
pogo.html.markdown | ||
powershell.html.markdown | ||
PULL_REQUEST_TEMPLATE.md | ||
purescript.html.markdown | ||
pyqt.html.markdown | ||
python3.html.markdown | ||
python.html.markdown | ||
pythonstatcomp.html.markdown | ||
qt.html.markdown | ||
r.html.markdown | ||
racket.html.markdown | ||
README.markdown | ||
red.html.markdown | ||
rst.html.markdown | ||
ruby-ecosystem.html.markdown | ||
ruby.html.markdown | ||
rust-pt.html.markdown | ||
rust.html.markdown | ||
sass.html.markdown | ||
scala.html.markdown | ||
self.html.markdown | ||
smallbasic.html.markdown | ||
smalltalk.html.markdown | ||
solidity.html.markdown | ||
standard-ml.html.markdown | ||
swift.html.markdown | ||
tcl.html.markdown | ||
tmux.html.markdown | ||
toml.html.markdown | ||
typescript.html.markdown | ||
vim.html.markdown | ||
visualbasic.html.markdown | ||
whip.html.markdown | ||
wolfram.html.markdown | ||
xml.html.markdown | ||
yaml.html.markdown | ||
zfs.html.markdown |
Learn X in Y minutes
Whirlwind tours of (several, hopefully many someday) popular and ought-to-be-more-popular programming languages, presented as valid, commented code and explained as they go.
We need YOU!...
... to write more inline code tutorials. Just grab an existing file from this repo and copy the formatting (don't worry, it's all very simple). Make a new file, send a pull request, and if it passes muster I'll get it up pronto. Remember to fill in the "contributors" fields so you get credited properly!
Contributing
All contributions are welcome, from the tiniest typo to a brand new article. Translations in all languages are welcome (or, for that matter, original articles in any language). Send a pull request or open an issue any time of day or night.
Please prepend the tag [language/lang-code]
to your issues and pull
requests. For example, [python/en]
for English Python. This will help
everyone pick out things they care about.
We're happy for any contribution in any form, but if you're making more than one major change (i.e. translations for two different languages) it would be super cool of you to make a separate pull request for each one so that someone can review them more effectively and/or individually.
For a detailed style guide, please review the full CONTRIBUTING guidelines.
License
Contributors retain copyright to their work, and can request removal at any time. By uploading a doc here, you agree to publish your work under the default Creative Commons Attribution-ShareAlike 3.0 Unported licensing included on each doc page.
Anything not covered by the above -- basically, this README -- you can use as you wish, I guess.