You can edit almost every page by Creating an account. Otherwise, see the FAQ.

Harven

Aus EverybodyWiki Bios & Wiki
Wechseln zu:Navigation, Suche

Harven
Paradigmen: multiparadigmatisch: strukturiert, imperativ, deklarativ, objektorientiert, ereignisorientiert, funktional, generisch, reflexiv, parallel
Erscheinungsjahr: 2019
Designer: Niklas Fehde, Microsoft
Entwickler: Niklas Fehde, Microsoft
Aktuelle Version: closed beta 1.0  (07.05.2019)
Typisierung: statisch, stark, explizit (optional: dynamisch, duck, implizit)
Beeinflusst von: C-Sharp
Betriebssystem: Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Lizenz: Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)

Harven ist eine typsichere, objektorientierte Allzweck-Programmiersprache, welche durch eine Translation in C# übersetzt und dann compiled wird. Voraussetzungen sind das .NET Framework 4.7.2, was bedeutet, dass die Verwendung an Windows gebunden ist.

Aktuell ist noch keine offizielle Version von Harven veröffentlicht worden. Es existiert nur eine Beta-Version.

Die Änderungen zu dem Zwillingsbruder C# sind in der Syntax auffindbar, Harven soll eine smartere und einfachere Syntax bieten, welche sich auf Flexibilität und Zeit-Effizienz spezialisiert.

Konzept[Bearbeiten]

Die Syntax von Harven ist ähnlich zu der von C#.

Harven bietet allerdings Features, die Microsoft nicht durchsetzt, da sie nicht "Community tauglich" sind, d.h. keine Anwendung für eine Masse, sondern nur für einzelne Personen finden. Beispiele sind der implement-Befehl bzw. die Implementierung von Code-Paketen.

Das besondere an der Sprache ist, dass ebenfalls auch einfach die normale C#-Syntax verwendet werden kann. Ebenso können die Syntax vermischt werden.

Syntax[Bearbeiten]

An der Syntax gibt es einige Änderungen. Diese Änderungen sind allerdings optional zu der C#-Syntax, so muss man z.B. import nicht zwingend verwenden, denn using würde ebenfalls noch funktionieren. Die größten Besonderheiten sind hier aufgelistet:

  • using wurde durch import ersetzt
  • namespace wurde durch module ersetzt
  • internal wurde durch hidden ersetzt
  • protected wurde durch secure ersetzt
  • foreach wurde durch for each ersetzt
  • Die in-Anweisung in foreach-Iterationen wurde durch @ ersetzt
  • Die []-Klammern von Arrays wurden durch das Kürzel Arr ersetzt, so wird string[] durch stringArr ersetzt. Dies gilt für die Typen string, double, int, float, long, char, byte und short
  • System.IO durch io ersetzt
  • System.Threading durch threading ersetzt
  • System.Diagnostics durch disgnostics ersetzt
  • System.Linq durch linq ersetzt
  • System.Windows.Forms durch winforms ersetzt
  • Der '.', welcher z.B. Klasse und Methode separiert, wurde durch '->' ersetzt
  • Die Standardmethode besitzt die Abkürzung "main"

Code-Beispiele[Bearbeiten]

Hier ist ein einfaches Hello-World Programm:

import sys;
import io;
import threading;
import diagnostics;
import linq;

module Module1
{
    public class Class
    {
        main(stringArr arguments)
        {
            Console->WriteLine("Hello, World!");
            Console->ReadKey();
        }
    }
}


Diese artikel "Harven" ist von Wikipedia The list of its authors can be seen in its historical and/or the page Edithistory:Harven.



Read or create/edit this page in another language[Bearbeiten]