Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   

Die mobilen Seiten von c++.de:
http://m.c-plusplus.de
Infos hier [BETA]

  
c++.de :: Rund um die Programmierung ::  Gibt es C++ Compiler die aus C++ Code Java Bytecode erzeugen können?  
Gehen Sie zu Seite 1, 2  Weiter
  Zeige alle Beiträge auf einer Seite
Auf Beitrag antworten
Autor Nachricht
C++CodeThatRunsEverywhere
Unregistrierter




Beitrag C++CodeThatRunsEverywhere Unregistrierter 21:06:14 03.03.2012   Titel:   Gibt es C++ Compiler die aus C++ Code Java Bytecode erzeugen können?            Zitieren

So dass die Binarys plattformunabhängig werden?
Mechanics
Mitglied

Benutzerprofil
Anmeldungsdatum: 27.01.2012
Beiträge: 1372
Beitrag Mechanics Mitglied 21:13:52 03.03.2012   Titel:              Zitieren

Das macht keinen Sinn. Also - nein.
cooky451
Mitglied

Benutzerprofil
Anmeldungsdatum: 16.10.2010
Beiträge: 6873
Beitrag cooky451 Mitglied 21:16:05 03.03.2012   Titel:              Zitieren

Mechanics schrieb:
Das macht keinen Sinn.
Doch. Wenn C++ ein ordentliches GUI Toolkit hätte würde ich C++ in so ziemlich jeder Hinsicht vorziehen, sogar wenn es letztlich nicht schneller wäre.

Speicheroptimierungen kann man dann aber wohl vergessen. ;)

_________________
Sie sind nicht berechtigt unrechtmäßige Kopien dieses Datenträgers zu erstellen.™
Keksverteilungsbeauftragter


Zuletzt bearbeitet von cooky451 am 21:17:01 03.03.2012, insgesamt 1-mal bearbeitet
C++CodeThatRunsEverywhere
Unregistrierter




Beitrag C++CodeThatRunsEverywhere Unregistrierter 21:22:11 03.03.2012   Titel:              Zitieren

Mechanics schrieb:
Das macht keinen Sinn. Also - nein.


plattformunabhängige Binarys und nicht nur plattformunabhäniger Code sind IMO durchaus sinnvoll.


Dadurch kann man nur für eine Plattform entwickeln und wenn der Kunde irgendwann mal Lust hat auf eine andere Plattform zu wechseln, läuft seine alte Software trotzdem noch darauf. Er braucht nur eine JVM dafür.
Zeus
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.09.2003
Beiträge: 2847
Beitrag Zeus Mitglied 22:01:12 03.03.2012   Titel:   Re: Gibt es C++ Compiler die aus C++ Code Java Bytecode erzeugen können?            Zitieren

C++CodeThatRunsEverywhere schrieb:
So dass die Binarys plattformunabhängig werden?
Anscheinend gibst kein Bedarf für solche Projekte:
http://nestedvm.ibex.org/
Mechanics
Mitglied

Benutzerprofil
Anmeldungsdatum: 27.01.2012
Beiträge: 1372
Beitrag Mechanics Mitglied 22:59:47 03.03.2012   Titel:              Zitieren

"Macht keinen Sinn" bezog sich weder auf plattformunabhängige Binaries, noch darauf, ob man Java oder C++ vorzieht. C++ ist einfach vom Prinzip her nicht Java und so ein Compiler würde keinen Sinn machen. Er würde wieder 1000 Einschränkungen auferlegen, man müsste sowieso sehr vieles beachten, damit es überhaupt irgendwie funktioniert... Nee, ich seh gar keinen Sinn in so einem Projekt. Wenn du plattformunabhägige Programme willst, musst du halt selber schauen, dass du entsprechend in C++ programmierst, möglich ist es ja.
bait
Unregistrierter




Beitrag bait Unregistrierter 23:33:29 03.03.2012   Titel:              Zitieren

LLVM kann das. http://llvm.org/docs/GettingStarted.html
Mechanics
Mitglied

Benutzerprofil
Anmeldungsdatum: 27.01.2012
Beiträge: 1372
Beitrag Mechanics Mitglied 00:11:32 04.03.2012   Titel:              Zitieren

bait schrieb:
LLVM kann das. http://llvm.org/docs/GettingStarted.html


Inwiefern?
Horst Hannelore Hansen
Unregistrierter




Beitrag Horst Hannelore Hansen Unregistrierter 00:48:49 04.03.2012   Titel:              Zitieren

C++CodeThatRunsEverywhere schrieb:
Dadurch kann man nur für eine Plattform entwickeln und wenn der Kunde irgendwann mal Lust hat auf eine andere Plattform zu wechseln, läuft seine alte Software trotzdem noch darauf. Er braucht nur eine JVM dafür.
Im anderen Fall benötigt er nur einen Compiler und die Build-Abhängigkeiten. Wenn er sich irgendwelche Binarys andrehen lassen hat, ohne den Source dazu zu haben, hat er aber in der Tat Pech gehabt.

Zu LLVM: in der Tat ermöglicht LLVM/Clang die Ausgabe von LLVM-IR als von der Zielmaschine unabhängige Zwischenrepräsentation. Aus dieser lässt sich dann der entsprechende Maschinencode erzeugen. Dies theoretisch auch mit einem Just-in-Time-Compiler, auch wenn das normalerweise bei der Nutzung von Clang/LLVM als C- oder C++-Compiler eher nicht der Fall ist.
krümelkacker
Mitglied

Benutzerprofil
Anmeldungsdatum: 10.08.2010
Beiträge: 2232
Beitrag krümelkacker Mitglied 12:16:57 05.03.2012   Titel:              Zitieren

Horst Hannelore Hansen schrieb:

Zu LLVM: in der Tat ermöglicht LLVM/Clang die Ausgabe von LLVM-IR als von der Zielmaschine unabhängige Zwischenrepräsentation. Aus dieser lässt sich dann der entsprechende Maschinencode erzeugen. Dies theoretisch auch mit einem Just-in-Time-Compiler, [...]

Naja, ganz unabhängig ist das nicht. Bei Typen wie "int", "long", "double" und "float" in C und auch C++ gibt es ja noch genug Spielraum. Und was das "struct padding"/alignment angeht, gibt's meines Wissens nach auch Unterschiede. Spätestens bei der Übersetzung zum LLVM Byte Code (oder wie auch immer das heißt), müsste man sich doch bei solchen Dingen festlegen. Damit würde man sich Maschinen-technisch doch schon etwas einschränken, nicht? Aber prinzipiell, geht das natürlich. Man könnte einfach dem LP64-Modell folgen und float=32bit(IEEE-754) und double=64bit(IEEE-754) festlegen, so, wie es glaub'ich auch Java gemacht hat. Aber in Java gibt's auch kein sizeof und Zeigerfrickeleien. Da ist man einfach noch ein Stück weiter weg von der Maschine und kann die JVM so bauen, wie man es will, inklusive eines Objekt-Layouts, was einem am besten in den Kram passt ...

Um auf die "C++ auf JVM" Thematik zurück zu kommen: Ich sehe nicht, wie das aufgrund der vielen Einschränkungen der JVM funktionieren soll, ohne das Verhalten des Programms stark anzupassen und auszubremsen.


Zuletzt bearbeitet von krümelkacker am 12:26:34 05.03.2012, insgesamt 1-mal bearbeitet
c++.de :: Rund um die Programmierung ::  Gibt es C++ Compiler die aus C++ Code Java Bytecode erzeugen können?  
Gehen Sie zu Seite 1, 2  Weiter
Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info und www.c-plusplus.net enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.