====== Stein von Rosetta für Programmiersprachen ======
Der "[[wpde>Stein_von_Rosetta]] für oft benutzte Programmiersprachen" soll einen kurzen Vergleich bieten, damit man beim umsteigen immer mal schnell nachgucken kann.
http://openwiki.com/ow.asp?VisualBasicCeePlusPlusRosettaStone#h5
FIXME (Objekte)
[in eckigen Klammern sind optionale Zusätze]
^ Struktur ^ Bash ^ C/C++ ^ PHP ^ VB(A) ^
^ Variablenverwendung (a ist der Variablenname) | $a | a | $a | a |
| Deklarieren | nicht nötig (aber möglich mit "''declare a''"), Datentyp wird bei der ersten Benutzung deklariert.  |int a; | nicht nötig, Datentyp wird bei der ersten Benutzung deklariert | Dim a as integer  |  
| Initialisieren | a = 10 | init a = 10; | $a = 10; | a = 10 |
| globale |  |  |  |  | 
| statische |  |   |  |  | 
^ Arrays | $var[0]="erster Wert"  |   | $var[0]="erster Wert";  |  | 
^ Entscheidung (Alternative)  | if Bedingung
then
  Code
else
  Code2
fi ((beliebige Verschachtelung mit if-then-elif-then-else-fi möglich.))| FIXME (C) | if (Bedingung)
{
  Code
}
elseif (Bed.2)
{
  Code2
else
{
  Code3
} | if [Not] Bedingung [And Bedingung] Then
  Anweisung
Else
  Anweisung
Endif
 |
^ Fallauswahl (Selektion) | case $var in
  ausdruck1)
     Codeblock wenn var = ausdruck1
  ;;
  
  *)
    Codeblock allgemeiner Fall
  ;;
esac |  |  | Select Case Variable
Case 1
  Anweisung
Case 2
  Anweisung
Case Else
  Anweisung  |
^ Wiederholung (Repetition, Schleife)  |||||
| zählergesteuert  |  |  |  | For i = 1 To 1000 [step +1]
  Anweisung
[Exit For]
  FIXME
Next i |
^ für alle Elemente einer Liste (Array) | for i in a b c
do
  echo i
done | nicht in Sprache enthalten, C braucht Makros((http://stackoverflow.com/questions/400951/c-foreach-or-similar)) mit C++ gehts nit std::vector ((http://www.freak-und-informatiker.de/2007/12/15/foreach-und-c/)) | foreach ($array as $value) {
    echo "Der aktuelle Wert ist: " . $value . "
";
} | |
^ Bedingungsprüfung |||||
| voran- (Kopf)  | until Befehl((solange Exitstatus des Befehls **ungleich** 0)) 
do
  Befehlsblock
done **Alternativ**: while Befehl((solange Exitstatus des Befehls **gleich** 0 ist.))do
  Befehlsblock
done |  |  |  |
| nachfolgend (Fußgesteuert)  |  |  |  |  |
^ Kommentare  |||||
| einzeilige  | # Kommentar | // | // | ' |
| mehrzeilige  | (gibts nicht) | /* Kommentar */ | /* Kommentar */ | (gibts nicht) |
Wohin?
for each Element in A
Next
^ Abkürzungen ^ Bedeutung ^
| Bed. | Bedingung(en) |
| Anw. | Anweisung(en) |
^ Datentypen / Wertebereich ^  C/C++ ^ PHP ^ VB(A) ^
| int | | | |
| long int | | | |
| float | | | |
| double | | | |
| string |  | | |
| boolean |  | | |
FIXME
^ Funktionsname zur Überprüfung des Datentyps ^  C/C++ ^ PHP ^ VB(A) ^
FIXME