PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : B ? C C+ C++ D?



localhost
21-05-2004, 08:59
Gab es mal eine programirsprache names B oder wird es mal eine geben die D heist ist java D
Ist Java nur eine erweiterung von c++ ??

wraith
21-05-2004, 09:12
Ja, es gab B
http://cm.bell-labs.com/cm/cs/who/dmr/kbman.html
Und D gibt es auch schon länger
http://www.digitalmars.com/d/

localhost
21-05-2004, 09:21
Ist D besser wie C++ oder hatt die bustaben reihenfolge eher wehniger sin dazu


Original geschrieben von wraith
Ja, es gab B
http://cm.bell-labs.com/cm/cs/who/dmr/kbman.html
Und D gibt es auch schon länger
http://www.digitalmars.com/d/

Pingu
21-05-2004, 09:32
Original geschrieben von localhost
Ist D besser wie C++ oder hatt die bustaben reihenfolge eher wehniger sin dazu
Das ist ja fast do eine philosophische Frage wie: Welche Distribution ist besser?

Ist C++ besser als C? Stelle diese Frage mal Leuten, die Desktop-/Server-Programme schreiben, und Leuten, die Embedded Programme schreiben. Die einen werden Dir sagen, daß C oder besser ANSI C besser als C++ ist und die anderen andersherum. Warum? Weil die meisten C++ Compiler nicht so gut optimiert sind wie die ANSI C Compiler. Da aber auf einer Embedded Plattform nur wenig Resourcen zur Verfügung stehen, braucht man entsprechend hoch optimierten Code (Deswegen gibt es selbst heute noch ein paar, die sogar auf Assembler schwören).

Deshalb besser oder schlechter gibt es nicht absolut sondern nur relativ. Für relativ muß man aber die Randbedingung angeben.

Pingu

bash
21-05-2004, 17:58
Ganz am Anfang gab es sogar schon mal ne Sprache "A"...
Nur so zur Info...

peschmae
21-05-2004, 18:26
Und noch vorher?

Oder steht A etwa für Assembler? (d.h. vorher wären Lochkarten oder so)

MfG Peschmä

Pingu
21-05-2004, 19:04
siehe hier: http://cm.bell-labs.com/cm/cs/who/dmr/chist.html

Pingu

PS: Und wiedermal: Google war mein Freund.

localhost
24-05-2004, 08:42
Also D ist dan wie C oder C++ nicht platformunabhenig wie ich das verstehe.
????

Aber wenn das nach der reihenvolge geht dan wird C irgenwan weg vom fenster sein oder wie versthe ich das ??

tuxipuxi
24-05-2004, 09:04
C/C++ sind plattformunabhängig, auf den meisten Plattformen gibt es auch Compiler dafür.
D versucht - wenn ich mich richtig erinnere, du könntest auch einfach mal selber lesen - glaube ich einige Elemente aus Java reinzubringen und trotzdem noch an C++ angelehnt zu sein. Sachen wie Mehrfachvererbung wurden rausgenommen und sowas, schau dir doch mal den Vergleich an.

Gruß,
Michael.

Pingu
24-05-2004, 09:15
Original geschrieben von localhost
Also D ist dan wie C oder C++ nicht platformunabhenig wie ich das verstehe.
????
Was heißt plattformunabhängig?

- plattformunabhägig at compile time
- plattformunabhängig at run-time

ANSI/ISO C und C++ sind plattformunabhägig at compile time aber nicht plattformunabhägig at run-time. Du kannst dasselbe "Hello World"-Programm für einen 8051, AMD, ARM-Core, Intel, MIPS-Core, PowerPC, was-auch-immer Prozessor compilieren. Für mit Verwendung eines Betriebssystems oder ohne Betriebssystem. Es geht. Was nicht geht, ist das Programm einmal für eine Plattform zu kompilieren und dann auf anderen Plattformen laufen zu lassen.

Plattformunabhägig at run-time ist mit einem Compiler nicht machbar, nur mit einem Interpreter - neu-deutsch Runtime Engine, AFAIK. Denn Java Bytecode wie auch C# Bytecode läuft über eine Runtime Engine, die nichts anderes ist als ein Interpreter.

Gruß

Pingu

bash
24-05-2004, 09:30
Original geschrieben von peschmae
Und noch vorher?

Oder steht A etwa für Assembler? (d.h. vorher wären Lochkarten oder so)

MfG Peschmä

Hinter A verbirgt sich nicht Assembler, sondern die allerersten Anfänge von Mr. Ritchie beim entwerfen der Sprache C <= also das ANSI C das wir heute kennen...

A ist einfach nur der erste C-Gehversuch :D



Andy
:D

localhost
25-05-2004, 18:05
Wer D für eine kernel besser als C++ ??

peschmae
25-05-2004, 18:41
Die meisten Kernel sind in C geschrieben. C++ wird nur für einige wenige verwendet - beispielsweise gibts L4 in C++ - aber die verwenden dann keine von den aufwändigeren C++-Features.

D ist halt noch n bisschen mehr in Richtung "Benutzerfreundlich" und damit wohl ein bisschen weniger geeignet für Kernel als C++.

MfG Peschmä

beren
14-06-2004, 08:05
siehe: http://www.opend.org/ (www.opend.org/)

Lin728
14-06-2004, 09:33
@localhost:
Wieso sollte die Sprache D bitte die Sprache C verdrängen? Hat denn Java C++ verdrängt oder C# C++?
Ich halte deratige Diskussionen für überhaupt nicht sinnvoll, wenn man eigentlich nicht weiß, um was es geht.

C hat verschiedene Eigenschaften welche für manche Anwendungen sehr gut sind, für andere eher weniger. Einen Kernel in C zu schreiben, hat den Vorteil, dass es sehr gut optimierte Compiler gibt, und dass man sehr genau bestimmen kann, was im Hintergrund schlussendlich passiert. Außerdem verschendet man keine Zeit mit dem Anlegen von Objekten.

Eine GUI Anwendung in C kann man wohl machen, komfortable ist es aber sicher in Java oder C++/D.

dark_red
14-06-2004, 14:38
zu den abhängigkeiten und verwandschaften der programmiersprache kann ich nur diesen link empfehlen: http://www.levenez.com/lang/

ausdrucken und übers bett hängen... direkt neben seiner unix history map (auch auf levenez.com zu finden)

cybercrow
14-06-2004, 14:56
Original geschrieben von Pingu

Plattformunabhägig at run-time ist mit einem Compiler nicht machbar, nur mit einem Interpreter - neu-deutsch Runtime Engine, AFAIK. Denn Java Bytecode wie auch C# Bytecode läuft über eine Runtime Engine, die nichts anderes ist als ein Interpreter.


Ich darf mal Stroustrup zitieren:

"Java isn't platform independent; it is a platform. Like Windows, it is a proprietary commercial platform. That is, you can write programs for Windows/Intel or Java/JVM, and in each case you are writing code for a platform owned by a single corporation and tweaked for the commercial benefit of that corporation. "

Meine Meinung:

Eine BlackBox (binär Pakete) können nie Platformunabhängig sein!
Programme, wenn sie mit einer Programmiersprache geschrieben sind die einen offenen Standard haben, sind in ihrer natürlichen Form (dem Quellcode) immer Platformunabhängig!

Lin728
14-06-2004, 20:49
So gesehen stimmts vollkommen, die JVM heißt ja nix anderes als "Virtuelle Maschine".

Ich hoffe die openSource gerüchte rund um Java sind wahr und Java wird unter eine erträgliche Lizenz gestellt. Ansonsten ist mit die J2SE-Platform einfach zu unsicher (lizenztechnisch), gottseidank gibts Classpath und GCJ!

comrad
17-06-2004, 12:50
Awt und Swing geht nunmal nicht mit gcj finde ich sehr schade. Ausserdem hab ich immer Probleme mit dem GCJ z.B. im Bezug aufs Datum und die Uhrzeit. Da bekommt der funktionierende Quellcode (funktionierend im Bezug auf javac) auf einmal unsinnige Werte und so weiter.

comrad

peschmae
17-06-2004, 13:43
Schon mal Kaffe oder Sablevm probiert? Damit geht sogar AWT offenbar, und bei Sablevm scheinen sogar einige Swing-Sachen zu laufen
http://sablevm.org/screenshots.html

MfG Peschmä