Rosetta Code:Add a Language: Difference between revisions

→‎Tasks Not Implemented: Changed instructions for creating the Unimplemented page and explicitly linking from the language page.
(→‎Tasks Not Implemented: Changed instructions for creating the Unimplemented page and explicitly linking from the language page.)
 
(23 intermediate revisions by 11 users not shown)
Line 15:
===Category Page===
 
Once you're sure the language doesn't already have a page on Rosetta Code, you'll need to create a category page for the language. Let's say you're adding a language called Ayrch ('''This is a hypothetical language name; please change it to your actual language name when you actually add your langaugelanguage.''') The first thing you need to do is create the category page. The easiest way is to click on the Search field on the left, type '''Category:Ayrch''', and click Go. It will tell you there is no current page with that name. Click "create this page", and it will give you an empty page to edit.
 
One simple way to start is to make this the entire body of the page:
 
<pre>{{stub}}{{language|Ayrch}}</pre>
 
That will automatically give you a basic language page, and even a nice little stub notification reminding people who visit to fill in more information.
 
===Redirect===
{{stub}}{{Run_Basic}}
 
The next step is to create a redirect page. This is important, because the ''actual'' page for your Ayrch language is at '''http://rosettacode.org/wiki/Category:Ayrch''', and we want people to be able to go to '''http://rosettacode.org/wiki/Ayrch''', and be able to use syntax like <nowiki>[[Ayrch]]</nowiki> within the wiki to refer to it.
 
As before, click on the Search field on the left, but this time type '''Ayrch''', and click Go. Again, click "create this page", and it will again give you an empty page to edit.
 
This time, make the entire body of the page:
 
<pre>#REDIRECT [[:Category:Ayrch]]</pre>
 
Now, when anyone goes to the Ayrch page, they will be immediately redirected to the category page for Ayrch.
 
===Examples===
Line 37 ⟶ 47:
If you're pressed for time, browse the [[:Category:Programming Tasks|list of tasks]] and find a couple simple ones you can implement. [[User Output]], [[Loop Structures]] and [[Conditional Structures]] are some common ones that most languages support. For the sake of this demonstration, let's suppose that Ayrch looks a lot like BASIC, and implement [[User Output]].
 
We would need to go to that page, find where the language name would fit (alphabetically), and add this code:
 
<pre>
==={{header|Ayrch}}===
<lang ayrch>PRINT "GOODBYE, WORLD!"</lang>
</pre>
 
That's a very simple example; You might try adding some descriptive information before the <nowiki><lang></nowiki>, such as what compiler it works with, or perhaps some interesting information of how Ayrch does things differently from other languages. Whatever helps to illustrate the language and identify what makes this example interesting.
 
===Tasks Not Implemented===
 
Finally, you're going to want to create an easy way for other people to discover and add tasks that have not yet been implemented in your language.
 
<!-- In the bottom right of your page, click the link that says, "If you know '''Ayrch''', please write code for some of the ''tasks not implemented in Ayrch''." In the new page that opens, enter the following for the page contents:
-->
 
Use Search Rosetta Code to find Tasks not implemented in Ayrch. The page won't exist but you can create it as suggested in the search results.
Give the page the following content:
<pre>
{{unimpl_Page|Ayrch}}
</pre>
(replace Ayrch with your language name in the search, page name and content).
<br>
Once created, you can add a link to the new page from your language page.
 
==More Advanced==
Line 50 ⟶ 76:
 
===User Boxes===
You created a user page before doing your edits, didn't you? You don't have to, but it generally helps in identifying who created and contributed what.
 
In your user page (not your user talk page), try adding a user box. That generally looks something like this:
 
<pre>{{mylangbegin}}
Line 69 ⟶ 95:
{{mylangend}}</pre>
 
Of course, you don't have to use words like "Active" or "Rusty"; You can use "Expert", "Novice" or "Author" (or any other way you want to describe your proficiency), if you like. If the only language you really know happens to be Ayrch, then your language box is pretty simple:
 
<pre>{{mylangbegin}}
3,022

edits