AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen
Thema durchsuchen
Ansicht
Themen-Optionen

EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

Ein Thema von paule32.jk · begonnen am 9. Okt 2024 · letzter Beitrag vom 25. Nov 2024
Antwort Antwort
Benutzerbild von paule32.jk
paule32.jk

Registriert seit: 24. Sep 2022
Ort: Planet Erde
356 Beiträge
 
Delphi 11 Alexandria
 
#1

EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 9. Okt 2024, 15:37
Hallo,
ich habe mich schon öfters gefragt, warum bei Delphi Bedingungen/Condition's und Vergleichen der rechte Wert mit einen Assign-Zeichen (also dem ist-gleich = Zeichen) eingeleitet wird.

Für mich macht es mehr Sinn:
if foo == 42 then... zu schreiben als:
if foo = 42 then ... weil das if foo = 42 doch sehr nach Zuweisung und nicht gerade nach Vergleich anmutet.
Sind da Pläne bekannt, das zu ändern - oder ist das Historisch bedingt ?
ich mein... Alles Neu macht der Mai ...
Frag doch einfach
Alles was nicht programmiert werden kann, wird gelötet
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.166 Beiträge
 
Delphi 12 Athens
 
#2

AW: EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 9. Okt 2024, 15:50
Hallo,
ich habe mich schon öfters gefragt, warum bei Delphi Bedingungen/Condition's und Vergleichen der rechte Wert mit einen Assign-Zeichen (also dem ist-gleich = Zeichen) eingeleitet wird.
Das ist wohl der Ur-Pascal Syntax geschuldet, mach Dir keine Hoffnung auf Änderung
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#3

AW: EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 9. Okt 2024, 16:03
Unter Pascal ist das "=" eben kein Assign-Zeichen, sondern ein Vergleichszeichen. Zum Assign verwendet man ":=".

Aber tröste dich, wenn man von Pascal kommt, dann sieht C halt einfach nur falsch aus.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.166 Beiträge
 
Delphi 12 Athens
 
#4

AW: EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 9. Okt 2024, 16:06
.. dann sieht C halt einfach nur falsch aus.
Soweit würde ich jetzt aber auch nicht gehen
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.490 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 9. Okt 2024, 16:14
Ich schon. Ich kam von der Schule und da gab es nur "=". Ich fand das ":=" komisch und auch das ":=".
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.166 Beiträge
 
Delphi 12 Athens
 
#6

AW: EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 9. Okt 2024, 17:01
Ich schon. Ich kam von der Schule und da gab es nur "=". Ich fand das ":=" komisch und auch das ":=".
und wie findest Du "==", "===", "!=", "!==", "<>" "is" ?
Ist auch alles nicht besser

Mit würde auch "=" "==" und "!=" reichen, aber die Welt ist halt komplexer
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
711 Beiträge
 
Delphi 12 Athens
 
#7

AW: EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 10. Okt 2024, 13:55
.. dann sieht C halt einfach nur falsch aus.
Soweit würde ich jetzt aber auch nicht gehen
Ich schon, die C/C++-Syntax ist einfach hässlich und dass die Sprache case-sensitive ist nur eine Fehlerquelle mehr. Naja, C kommt halt aus dem frühen IT Mittelalter, als Compiler noch Probleme mit Identifiern mit mehr als 4 Zeichen hatten etc., weil die Rechner einfach nicht genug Arbeitsspeicher hatten...
Peter Below
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.166 Beiträge
 
Delphi 12 Athens
 
#8

AW: EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 10. Okt 2024, 14:42
Naja, C kommt halt aus dem frühen IT Mittelalter, ...
Na gut, Pascal aber auch
https://unterrichten.zum.de/wiki/Pro...ammiersprachen

1971/1972, das macht wenig Unterschied.

Mit C/C++ kann man sehr elegante Konstrukte machen, wenn man will,
und Pascal's begin-end muss man nicht unbedingt schön finden

Für mich ist es halt ein unentschieden
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.338 Beiträge
 
Delphi 12 Athens
 
#9

AW: EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 9. Okt 2024, 16:22
Wobei grade in C-Sprachen dieser Mist viele Probleme bereitet hat.

Logisch und Syntaktisch finde ich = garnicht schlecht.
Es entspricht auch dem, was man im Matheunterricht mal gelernt hat.

Zitat:
if (i = 132) {
Und dann wurde später in Editoren eingebaut, dass es hier eine Warnung gibt, weil man vermutlich == machen wollte, es aber dennoch der Syntax entsprach,
denn so wird erstmal die Variable überschrieben und es ergibt auch immer True.

In nicht tysicheren C-igen kann man auch gern sowas bekommen.
1 + 1 = 11
1 - 1 = 0
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 9. Okt 2024 um 16:24 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.993 Beiträge
 
Delphi 12 Athens
 
#10

AW: EMB DCE 12 - Bedingungen mit einen Assign-Zeichnen

  Alt 11. Okt 2024, 09:33
Hallo,
ich habe mich schon öfters gefragt, warum bei Delphi Bedingungen/Condition's und Vergleichen der rechte Wert mit einen Assign-Zeichen (also dem ist-gleich = Zeichen) eingeleitet wird.

Für mich macht es mehr Sinn:
if foo == 42 then... zu schreiben als:
if foo = 42 then ... weil das if foo = 42 doch sehr nach Zuweisung und nicht gerade nach Vergleich anmutet.
Sind da Pläne bekannt, das zu ändern - oder ist das Historisch bedingt ?
ich mein... Alles Neu macht der Mai ...
":=" ist in der Mathematik als Definitions zeichen gebräuchlich.
Da Pascal(aka Procedural Delphi) aus dem Universitäts- und Lehrumfeld kommt , benutzt es mathematische Symbole soweit das geht.
"=" wird zum vergleichen benutzt.
":=" das Definitionszeichen wird zum Zuweisen genutzt....das Zuweisungszeichen wäre iegentlich ein links pfeil...aber sowas wie "<-" führt zu Verwirrungen bei negativen zahlen
"a<-7" könnte ja a kleiner -7 heißen oder +7 der variable a zuweisen.
Wenn man Mathe-Formel-Editoren hatte benutzte man früher auch oft das Indentiätszeichen "≡" für zuweisungen aber das ist eben nach ISO 31-11
https://de.wikipedia.org/wiki/Liste_...nitionszeichen
nicht mehr en vogue und "≡" sollte jetzt nur noch für Identität/Kongruenz genutzt werden.

Delphi benutzt ":=" weil es damals noch keine coolen unicode zeichen gab wie Definition linksseitig "≔" oder eben "≝" (das ist ein = mit dem Wort DEF oben drüber).



Es gibt übrigens noch eine ganze Reihe anderer operatoren die wir in Delphi nicht haben ...zum Glück...
z.b. "test auf unifizierbarkeit" wie in Prolog....
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty (11. Okt 2024 um 09:35 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz