Shlomi Fish avatar Shlomi Fish committed 66c2857

Add more.

Comments (0)

Files changed (1)

src/tutorials/bad-elements/perl-elements-to-avoid.xml-grammar-vered.xml

 $s =~ s/(H\w+)\s+(W\w+)/$1 [=] $2/;
 </code_blk>
 </item>
+<item xml:id="appending_using_arr_increment">
+<info>
+<title>Appending using $array[$i++] = $value_to_append;</title>
+</info>
+<p>
+Some people are tempted to append elements into an array using:
+</p>
+<bad_code syntax="perl">
+my $last_idx = 0;
+my @array;
+
+foreach ...
+{
+    $array[$last_idx++] = $new_elem;
+}
+</bad_code>
+<p>
+However, it is better to use the <pdoc_f f="push" /> built-in function,
+and so get rid of the explicit index, and make it less error prone:
+</p>
+<code_blk syntax="perl">
+my @array;
+
+foreach ...
+{
+    push @array, $new_elem;
+}
+</code_blk>
+</item>
 <item xml:id="premature_optimization">
 <info>
 <title>Premature Optimisation</title>
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.