Programmiersprachen aktuell

Nathan5111

Registriertes Mitglied
meine probleme gehen dich nichts an

Ich wünschte mir nichts sehnlicher!

Leider trägst Du Deine Probleme ständig und für alle sichtbar vor Dir her!

Lies Dir einmal in einem lichten Moment, sofern es diesen momentan überhaupt gibt, alle Deine Beiträge durch. Du wirst Dich wundern! (Ich weiß. wovon ich rede; vor ca. 8 Jahren habe ich auch mal 15 Monate auf einem 2-Promille-Level gelebt.)
 

pmvstrm

Registriertes Mitglied
Hi Frank
Mein Fehler! Ich bitte um Entschuldigung.
Mag sein das Du ABAP nicht sofort als eine Programmiersprache identifizierenkonntest (außerhalb des SAP Mikrokosmos hat sie auch keine Bedeutung)
aber selbst ich weigere mich so etwas wie ABAP Programmiersprache zu nennen!;)

ABAP Hello World
Code:
  PARAMETERS INPUT(12) DEFAULT 'Hello World!'.
  CALL SCREEN 100.
  SKIP TO LINE 10.
  POSITION 40.
  WRITE 'Hello World!'.

Das kann man aber noch toppen, siehe RPG:)

RPG Hello World
Code:
H* Hello World in RPG IV

D msg             S             32    inz(*blank)
D cmd             S             64

C                   eval      msg = 'Hello World'

C     msg           dsply

C                   eval      cmd = 'DLYJOB DLY(30)'
C                   call      'QCMDEXC'
C                   parm                    cmd
C                   parm      64            len              15 5

C                   eval      *inlr = *on

Aber mein absoluter Favorit ist.....

The BrainFuck Hello World Programm;)

Code:
++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++
..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.

Ok, das ist jetzt zwar etwas schockierend, aber um zu verstehen, warum es solche Sprachen überhaupt gibt,
muss man den Kontext kennen. RPG z.B ist der direkte Nachfolger der Lochkartenprogrammierung gewesen und
hat daher histrorische Lasten zu tragen gehabt. ABAP wurde von Leuten entwickelt, die vor allem kaufmänisch
dachten und von COBOL und RPG geprägt waren und es etwas besser machen wollteb. BrainFuck ist eine Esoterisch,
nicht für den Alltagsgebrauch konzipierte, minimale, Turingkonforme Sprache mit der Zielsetzung eins möglichst
kleinen und kompakten Compilers. Hier geht es also quasi um die Grundlagenforschung für Programmiersprachen.

Ein ähnliches Konzept einer esoterischen Programmiersprache ist die Sprache Chef.
Der Erfinder wollte eine Programmiersprachen realisieren die Kochrezepte als Programmieranweisungen versteht:)


Hello World Programm in der Programmiersprache Chef
Code:
 Hallo-Welt-Soufflee 

 Ingredients.
 72 g haricot beans
 101 eggs
 108 g lard
 111 cups oil
 32 zucchinis
 119 ml water
 114 g red salmon
 100 g dijon mustard
 33 potatoes
 
 Method.
 Put potatoes into the mixing bowl.
 Put dijon mustard into the mixing bowl.
 Put lard into the mixing bowl.
 Put red salmon into the mixing bowl.
 Put oil into the mixing bowl.
 Put water into the mixing bowl.
 Put zucchinis into the mixing bowl.
 Put oil into the mixing bowl.
 Put lard into the mixing bowl.
 Put lard into the mixing bowl.
 Put eggs into the mixing bowl.
 Put haricot beans into the mixing bowl.
 Liquefy contents of the mixing bowl.
 Pour contents of the mixing bowl into the baking dish.
  Serves 1.

Es gibt auch Sprachen, die zum Ziel haben das Programmieren so schwer und masochistisch wie möglich zu machen,
am Anfang war die Programmiersprache C sogar dafür entworfen (laut deren Erfindern)

Hier ein paar Infos von den C Erfindern über C
Brian und ich hatten gerade begonnen, mit einer frühen Form von Pascal zu arbeiten, das von Professor Nichlaus Wirths Lehrgebiet an der ETHZ in der Schweiz entworfen wurde. Wir waren von der eleganten Einfachheit und Mächtigkeit der Sprache sehr beeindruckt. Dennis hatte gerade das Buch "Der Herr der Augenringe" zu Ende gelesen, eine urkomische Parodie auf Tolkiens großartige Trilogie "Der Herr der Ringe". Zum Spaß begannen wir, eine Parodie auf die Multics-Umgebung und Pascal zu erstellen. Dennis und ich waren für die Umgebung verantwortlich.

Wir schauten auf Multics, und entwarfen das neue System so komplex und kryptisch wie möglich, um die Frustration gewöhnlicher Benutzer so hoch wie möglich zu machen, und nannten es UNIX als Parodie auf Multics, ebenso wie einige andere Anspielungen innerhalb des Systems. Dann begannen Dennis und Brian an einer wirklich verzerrten Version von Pascal zu arbeiten, genannt 'A'. Als wir merkten, daß andere tatsächlich vorhatten, Programme mit 'A' zu entwerfen, fügten wir rasch zusätzliche kryptische Eigenschaften hinzu, und entwickelten daraufhin B, BCPL und schließlich C.

Gruß, Peter
 
Zuletzt bearbeitet:

Runzelrübe

Registriertes Mitglied
Es ist nicht zu fassen, aber es gibt heute noch jede Menge Systeme auf denen Millionen
Zeilen RPG und COBOL Code läuft und die aktiv gewartet und weiter entwickelt werden.

Oh ja, wenn es beispielsweise um Millisekunden geht, wie bei Resonanz in Windkraftanlagen, da lernt man so ein System zu schätzen.
 

eeralfcosmo

Gesperrt
Wirth hat vermutlich auch mit oberon angefangen , das erste betriebsystem auf basis objectorientiert

seis drum, pacal ist echt gut, ok c wird vom compiler besser umgestezt, aber die vorteile von pascal liegen in der eigen dokumetation und besseren syntax

versuch mal einen fremden source von einem C programmierer zu lesen, oder pascal programmierer, die wartbarkeit bei pascal ist besser, und wenn ich geschwindigkeit haben moechte dan benutze ich assembler

Ralf

edit

habe mich auf eine vorheriges posting bezogen, sry
 
Zuletzt bearbeitet:

Alex74

Registriertes Mitglied
So, mal einen aktuellen Stand:

Ich habe nochmal mehrere Informatiker hier gesprochen, die mir fast geschlossen zu Java raten. Nach noch weiteren eigenem Begutachten der Situation wirds das dann auch werden; irgendwann im Neuen Jahr dann, vermutlich aber erst wenn ich mir dann einen (ohnehin fälligen) neuen Rechner einrichte (8 GB, Win 7, AMD Phenom II, im Augenblick 2 GB, XP-32 und Core2Duo...was für Studioarbeiten hart an der Grenze ist).

Gruß Alex
 

pmvstrm

Registriertes Mitglied
Sers Alex

Schön das Du da voran gekommen bist. Ich persönlich hätte Dir aber nicht zu Java geraten, aber mehr aus ethischen und politischen Gründen, denn der Leistungsfähigkeit wegen.Der Grund ist einfach: Oracle, die Firma die Sun Microsystems 2010 geschluckt hat, fährt nun einen völlig anderen Kurs als SUN es selbst getan hat. Java lebte bis bis zu diesem Zeitpunkt vor allem von der Unterstützung der OpenSource gemeinde und der offenen
Community Kultur, die jedoch hat Oracle komplett, durch sein widerliches gebaren kaputt gemacht. 80% aller wichtigen Aktivitäten wurden von der Apache Foundation geleitet, aber die ist nun aus dem Java JCP (Community Process) ausgestiegen und distanziert sich von Oracle und Java.Auch
Google und IBM haben große Beiträge zu Java geleistet und der Community geschenkt (ebenso Apple) aber damit ist es jetzt auch vorbei, vor alle
weil Oracle derzeit versucht Google durch blanke Geldgier und Patenttrollerei massivst juristisch zuzusetzen und nach dem dann auch der Java
Vater und Programmierlegende Jams Gosling bei Oracle, nur kurze Zeit nach der SUN übernahme bei Oracle gekündigt hat, bin dann auch ich langsam aber sicher aus der Java Welt abgewandert.Es gab für mich zwei Alternativen. Entweder Python oder C/C++, es wurde dann wieder C/C++ und ich bin nicht unglücklich darüber. Ich kann damit alles machen, kann mehrere Compiler nutzen und der größte Teil der Software auf der Welt ist in C/C++ geschrieben.Aber wie auch immer: Java ist keine schlechte Programmiersprache. Man kann einiges damit machen, nur für 3D-Engines und Spiele reicht es auch nach Jahren noch immer nicht an C/C++ ran und das wird sich vermutlich auch nicht mehr ändern.Die meisten Java Programme in der heutigen Zeit laufen auf fetten Servern in Banken und generell im Wirtschaftsbereich.

Zur Performance: Dein Rechner den Du jetzt hast reicht dicke für Java, allenfalls dein Betriebssystem braucht vielleicht ein Update:) (z.B Win7)

Studio und Co.Also ich arbeite ebenfalls mit einem Core2Duo und 8 GByte Ram auf Windows Vista 64-Bit und mit Steinberg Cubase 5.1 und
die Leistung ist völlig ausreichend (und das obwohl ich mit vielen MIDI und Audiospuren arbeite.

Du kannst ja mal reinhören, ich mache ja auch schon etwas länger Musik (allerdings mehr im Elektro / Trance Bereich)

Siehe hier:
http://www.astronews.com/forum/show...Musikprojekt-(E-Bereich-Trance-House-Elektro)

Gruß, Peter
 

Alex74

Registriertes Mitglied
Klar ist der Core2Duo gut, fürs Studio kann man aber nicht genug haben...daher ;-)
Ich habe mir jetzt Studio One V2 zugelegt, bin mal gespannt ob ich da als langjähriger CuBase-User gut reinkomme.
Ich habe momentan fast alles outboard, was sich aber änden soll, daher strebe ich eine möglichst hohe Performance an, der AMD X6 sieht da auch preislich sehr gut aus.

Hm, das mit Java stimmt bedenklich. Allerdings ist mir jeder sympathisch der Google verklagt. :rolleyes:

C++ war auch die Alternative die genannt wurde. Ein wenig Zeit ist ja noch. Ich halte Euch auf dem Laufenden :-D

Gruß Alex
 

Chrischan

Registriertes Mitglied
Hi Alex,

auch wenn ich mich erst recht spät melde, aber da Du schreibst
Ein wenig Zeit ist ja noch.
gebe ich doch noch kurz meinen Senf dazu.

Entscheide dich für eine Sprache die dir liegt! Es bringt nichts, wenn Du dich für eine leistungsfähige und moderne Sprache entscheidest, für die Du aber immer ein Buch benötigst beim Programmieren... Du willst das Ganze ja eher Hobby-mässig für kleinere Projekte betreiben und nicht professionell.

Ich persönlich konnte mich nie mit C++ anfreunden. Liegt mir einfach nicht. Wenn es mal C++ sein musste, dann wurde das bei mir eher ein altmodisches C-Programm...
Wenn es mal auf die Schnelle ein kleines Proggi sein sollte, dann arbeite ich meistens mit Visual Basic. Da braucht man sich beim programmieren keine großen Gedanken machen über die Befehle und Programmstruktur. Für etwas performantere n-Körper Simulationen habe ich mich aber auch mal in CUDA und Direkt-X eingearbeitet, was nur mit C++ ging...
Delphi nutze ich manchmal bei Client/Server-Anwendungen.
Kleine Apps für's (Android-)Smartphone schreibe ich (zwangsweise) in Java und die Microcontroller werden noch in Assembler oder auch in C programmiert.
Die Eierlegende-Wollmilchsau unter den Programmiersprachen habe ich noch nicht gefunden...

Aber wie bereits oben geschrieben, für was auch immer Du dich entscheidest: Es muss dir liegen.
Sonst vergeht dir schnell die Lust wenn Du nach einem halben Jahr Abstinenz mal kurz was testen willst und Du nur Fehlermeldungen von der IDE bekommst ("Wie war das noch mal?". Suche in alten Sourcen oder Büchern, etc. nervt).

Gruß,
Christian
 

pmvstrm

Registriertes Mitglied
Hi Alex,
Das kannst Du ja in Ruhe entscheiden. Wenn Du aber mit C/C++ anfangen solltest, dann kann ich Dir auf jeden Fall den GNU C/C++ Compiler empfehlen anstatt den Visual C/C++ Compiler von Microsoft.Die Compiler Collection (GCC) ist so ziemlich das universellste, Schweizer Taschenmesser und Du bekommst auf jedem System sogar auf dem Amiga oder Atari den Fuß in die Tür (sogar auf Googlse Android mit dem native SDK). Auch kannst Du damit deine neue DAW Software StudioOne erweitern/beglücken siehe Dev Seite von Presonus: http://www.presonussoftware.com/en_US/index.php?id=developer (z.B wenn Du willst
das Dir das Ding bei jedem Start guten Tag sagt oder für den nächsten, fetten Killer VST Synth oder VST Effect PlugIn.Zurück zu GNU. Die GNU Compiler Collection hat schon in vielen Projekten (von Linux bis KDE, Unix bis Windows und Dos) gezeigt was sie drauf hat und das for free/kostenlos.Auch ethisch mag ich die GNU Tools weil die Macher dahinter (wie z.B Richard Stallmann) einfach Legenden und Weltverbesserer sind die mir mehr zusagen als irgendwelche MegaCompanies.

Hier ein nettes Video vom guten Dr Stallmann über seinen Lieblings Texteditor, den EMacs;)

Gruß, Peter
 
Zuletzt bearbeitet:

freaky

Registriertes Mitglied
Also ich würde schon mal sagen, dass da deine Kenntnisse schon ganz schön lange her sind. In der Programmiersprache hat sich jetzt schon verdammt viel geändert.
Ich würde das nochmal etwas überdenken. Es kommt ja auch darauf an was du Programmieren willst. Inzwischen gibt es da so viele Sprachen das es schon abhängig davon ist was dein Ziel ist.
Webprogrammierung ist relativ bequem zu lernen und sicher auch so (Job, Privat) von Vorteil.
 

pmvstrm

Registriertes Mitglied
Erstmal willkommen.

Also ich würde schon mal sagen, dass da deine Kenntnisse schon ganz schön lange her sind. In der Programmiersprache hat sich jetzt schon verdammt viel geändert.

Kannst Du mal ins Detail gehen? Welche Programmiersprache meinst Du (C oder C++ oder Java)? Alle diese Sprachen haben sich massivst verändert und Ich kann mich nicht erinnern eine bestimmte VersionsNr genannt zu haben. Aktuell sind jedoch alle 3 und nebenbei die wichtigsten Porgrammiersprachen der Welt (besonders C/C++ schon seit jahrzehnten).

Gruß, Peter
 

freaky

Registriertes Mitglied
Ehrlich gesagt verstehe ich jetzt grad nicht was du meinst :confused:
Ich hab eher auf die Ausgangsfrage des Threads geantwortet wo es hieß, dass der Ersteller 15 Jahre aus dem Job raus ist...und in der Zeit hat sich so zielmich alles geändert (egal ob Java, HTML,.....).
Was meinst du jetzt mit Version??? Die iist doch egal wenn es 15 Jahre her ist???
 

pmvstrm

Registriertes Mitglied
Hallo Alex,
Ein wichtiges Argument für die Entscheidung einer Programmiersprache wurde hier noch nicht angesprochen.Es ist eine Tatsache das die CPU Frequenzen nicht mehr steigen (the free Lunch is over) und das schon seit Jahre.Dafür werden immer mehr Kerne verbaut, aber es gibt immer noch sehr wenig parallelisierte Programme.Es gibt Programmiersprachen die gut geeignet sind um die neuen Potentiale zu nutzen und welche die völlig ungeeignet sind.Eine verlässliche Automatik für die Lastaufteilung gibt es nicht.Mancher Code ist parallelisierbar und andere Teile sind es nicht (eine Grundbedingung für Mehrkernnutzung). Die Sprachen die am besten geeignet sind um Parallelisierung durchzuführen, sind Funktionale Sprachen wie ANSI C.Alles OOP zentrierte ist eher ein Hindernis.Faktisch gibt es momentan nur ein Framework und das auch nur für C++ .Bei allen anderen Sprachen sieht es noch düsterer aus und es kann gut sein das hier eine große Marktbereinigung für Programmiersprachen einsetzen wird.Vor allem ist es aber wichtig, das Neulinge die veränderte Welt verstehen und gar nicht mehr erst auf die Idee kommen, Programmcode zu entwickeln der Parallelisierung nicht unterstützt.Den besten Parallel und Mehrkern Support haben momentan noch Sprachen wie C und C++ und sämtliche Referenzimplementierungen erscheinen zuerst für diese Sprachen.Der große cleanout Prozess hat schon begonnen (das war auch nur eine Frage der Zeit). Eine völlig neue Klasse von Server und Desktopsoftware ist auf dem Sprung die alten Platzhirsche mit 1000x facher Performancesteigerung von der Oberfläche zu fegen. Einfaches Beispiel: Einer der schnellsten Webserver in der heutigen Zeit ist der russische NGINX OpenSource Webserver. Er schlägt den altehrwürdigen Apache2 und Microsoft IIS Webserver tausendfach in der Performance.Nun aber kommt ein Neuling auf dem Markt, der erstmals das volle Parallelisierungspotential heutiger CPU's nutzt und schlägt selbst NGINX noch mal um knappe 700.000 Request per Seconds bei statischen HTML und selbst bei dynamisch generieten Websites (in Form von C-Servlets).Um es noch mal auf den Punkt zu bringen: Diese Leistungssteigerungen finden auf gewöhnlicher Standardhardware und nicht auf Supercomputern statt und hier wurden noch nicht mal die Leistungsreserven heutiger GPU's in Form von CUDA oder OpenCL beachtet, die ebenfalls noch Parallelisierungspotential bieten und noch miteinbezogen werden können.

Gruß, Peter
 

AlphaCentauri

Registriertes Mitglied
Ich würde speziell noch Ruby oder besser RubyonRails einwerfen wollen, ist aktuell der letzte Schrei in Sachen Webprogrammierung...
 
Oben