Diskussion:Wirkung (Informatik)

aus Wikipedia, der freien Enzyklopädie
Letzter Kommentar: vor 4 Jahren von PaterMcFly in Abschnitt Beispiel
Zur Navigation springen Zur Suche springen

Überarbeiten[Quelltext bearbeiten]

Der Artikel ist allgemein unverständlich. Konkrete Beispiele werden schon in der Einleitung gemacht. Abschnitte wie "Belege zu Begriffen und Aussagen" sind ganz untypisch für Wikipedia-Artikel usw... Zudem kann man (gewollte) Seitenwirkung und (nicht gewollte) Nebenwirkung als speziallfall von Wirkung abgrenzen.

Für einen bestimmten Prozesstyp werden oft bestimmte Wirkungen spezifiziert. was ist ein bestimmter Prozesstyp ??? was ist oft???


Neben „Wirkung“ werden synonym auch die Bezeichnungen „Nebenwirkung“, „Nebeneffekt“ oder „Seiteneffekt“ verwendet. Das glaube ich so nicht. Seiteneffekt ist eine Übersetzung von side-effect, [1] In computer science, a function or expression is said to produce a side effect if it modifies some state in addition to returning a value. Synonym ist das nicht.

--Avron 13:20, 11. Aug. 2008 (CEST)Beantworten

Doch, es sind in diesem Zusammenhang Synonyme. --Hansaplatz 01:24, 23. Aug. 2008 (CEST)Beantworten
Was ist dieser Zusammenhang?-- Avron 02:50, 24. Aug. 2008 (CEST)Beantworten
Hansaplatz spricht wohl vom Kontext in diesem Artikel. Die Benennung des Phänomens mit deutschen Wörtern ist tatsächlich nicht so eindeutig, aber ich gebe ihm recht: Die Ausdrücke "Wirkung" und "Seiteneffekt" werden in der Theoretischen Informatik im gegebenen Kontext tatsächlich nebeneinander verwendet (auch wenn sie in der Umgangssprache ganz klar keine Synonyme sind). Und "Nebenwirkung" sowie "Nebeneffekt" sind ja tatsächlich Synonyme zu "Seiteneffekt". -- PaterMcFly Diskussion Beiträge 10:30, 24. Aug. 2008 (CEST)Beantworten
OK, nun verstanden.-- Avron 11:58, 24. Aug. 2008 (CEST)Beantworten

Die „Belege zu Begriffen und Aussagen“ kommen daher, dass in der Löschdiskussion Belege verlangt wurden. Ich würde sogar gerne im Laufe der Zeit noch mehr hinzufügen. Die Wikipedia verlangt ja auch grundsätzlich Belege. Da ich aber wenig Erfahrungen im Schreiben von Wikipedia-Artikel habe, ist die von mir gewählte Form vielleicht noch nicht so, wie das sonst üblich ist. Vielleicht wird das ja von jemand anders verbessert.

Ein Prozesstyp ist ein Typ eines Prozesses. Also beispielsweise kann die Maschinenspracheninstruktion „ADD“ einen Prozeß vom Typ „Additionsoperation“ verlangen. Ein einzelner Prozess (im Gegensatz zum Prozesstyp) wäre dann eine bestimmte Additionsoperation, etwa die Addition von 2 und 7 um 18.16 Uhr. Hier haben die Wörter „Prozess“ und „Typ“ die Bedeutungen, die sie auch in der Umgangssprache haben. Ein Prozess ist ein bestimmtes Geschehen, und ein Typ vereint verschiedene Dinge, die sich in einem Aspekt gleichen. So ist beispielsweise ein Gerichtsprozess ein Geschehen am Gericht und ein Fahrzeugtyp ein Typ von Fahrzeugen.

Ich stimmte Avron (13:20) zu, dass die genannten Wörter keine wirklichen Synonyme sind. „Wirkung“ erscheint mir eher als der neutrale Grundbegriff, während „Neben-“ schon eine Wertung enthält. Ich halte „Seiten-“ (im Deutschen) für falsch. Dass mein Text, der „Seiteneffekt“ als Übersetzungsfehler bezeichnet, in dem Artikel zwischenzeitlich gelöscht wurde, nehme ich erst einmal hin. (Wenn mehrere Personen an einem Text arbeiten, muß jede Person aus dieser Gemeinschaft wohl dazu bereit sein, einige Kompromisse einzugehen.)

--79.214.253.137 18:27, 11. Aug. 2008 (CEST)Beantworten

Bitte beachtet beim Überarbeiten auch meine alte Version des Artikels „Wirkung (Informatik)“. Darin bin ich auf viele der hier genannten Aspekte eingegangen. --TM 19:17, 11. Aug. 2008 (CEST)Beantworten

Hmm...., in der Version ist wirklich einiges deutlich besser erklärt. Vielleicht komme ich dazu, die beiden Versionen zu vereinen. -- PaterMcFly Diskussion Beiträge 20:06, 11. Aug. 2008 (CEST)Beantworten
Zustimmung auch hier. So einiges ist dem Artikel bei TM besser. -- Avron 20:22, 11. Aug. 2008 (CEST)Beantworten
Habe einmal die beiden Artikel ziemlich rudimentär zusammengeführt. Langsam macht das - zumindest von der Länge her ;-) - einen recht vernünftigen Eindruck. -- PaterMcFly Diskussion Beiträge 21:32, 16. Aug. 2008 (CEST)Beantworten
Der Artikel, den du jetzt einfach mal so hinzugefügt hast, wurde gelöscht, und zwar nicht ohne Grund. Ich schlage deshalb vor, den Teil erst einmal wieder zu entfernen. --Hansaplatz 00:49, 23. Aug. 2008 (CEST)Beantworten
So, ich habe die Teile aus dem gelöschten Artikel vorsichtig wieder entfernt. So haben wir, glaube ich, eine bessere Arbeitsgrundlage. --Hansaplatz 01:19, 23. Aug. 2008 (CEST)Beantworten
Sorry, was sollte das? Hast Du wirklich den Eindruck, deine riesige Löschung hat den Artikel verbessert? Der ursprüngliche Artikel wurde gelöscht, weil die Begriffe durcheinandergingen, was bei diesem Artikel meiner Meinung nach nicht mehr der Fall war. Wenn Du der Ansicht bist, dass es mit der letzen Version konkrete Probleme gab, dann beschreibe diese bitte detailierter, statt eine solche Riesenlöschaktion mitten in der Nacht durchzuziehen. -- PaterMcFly Diskussion Beiträge 10:27, 23. Aug. 2008 (CEST)Beantworten
  • Abschnitt Nebenwirkung in der prozedurorientierten Programmierung ist sinnvoll, sollte aber geglättet werden.
  • Abschnitt Nebenwirkung im weiteren Sinne halte ich für entbehrlich und verwirrent. Ob ++a oder a++, die Wirkung ist spezifiziert. Trotzdem ist die Verwendung fehleranfällig. Aber eine Nebenwirkung ist es nicht.
  • Abschnitt Wirkungsfreiheit in der rein funktionalen Programmierung Einiges davon könnte sehr gut als Erklärung in die Paradigmen passen.-- Avron 12:52, 24. Aug. 2008 (CEST)Beantworten
Ich nehme mal an, du sprichst von der langen Version?
Zum 2. Punkt: Natürlich ist die Wirkung spezifiziert (das sollte sie immer sein), aber die Operation ++a hat nun einmal eben genau einen Nebeneffekt (= eine Wirkung, siehe Einleitung), da sie eine Zustandsänderung im System hervorruft. Eine Wirkungsfreie Operation wäre a+1. In prozeduralen Programmiersprachen enthält eigentlich jede Programmzeile mindestens eine nicht-wirkungsfreie Operation, da man sonst die Zeile auch einfach weglassen könnte. -- PaterMcFly Diskussion Beiträge 13:12, 24. Aug. 2008 (CEST)Beantworten
Nein. Was dort beschrieben ist ist keine Nebenwirkungn sondern Wirkung. Jetzt wird wieder alles schön durchgemischt. Da fand ich die Version ohne den Abschnitt besser, weil klarer.--Avron 16:52, 25. Aug. 2008 (CEST)Beantworten
Nochmals: Das ist in diesem Kontext das gleiche. Nebenwirkung als Rückübersetzung aus "Side effect" bezeichnet die Wirkung einer Operation, also deren Einfluss auf den Status des Systems. Aber wenn das so verwirrend ist, dann kann ich auch immer das gleiche Wort verwenden, wird einfach sprachlich holpriger. -- PaterMcFly Diskussion Beiträge 18:13, 25. Aug. 2008 (CEST)Beantworten
Nein, du beschreibst Wirkung. In diesem Kontext ist das nicht das gleiche. Na gut, ich habe es mir es noch mal durchgelesen und im Kontext ist es als Nebenwirkung so weit richtig. Wie auch immer, der Artikel hat noch viele Ecken und Kanten und muss noch bearbeitet werden, damit er rund sein soll. -- Avron 18:25, 25. Aug. 2008 (CEST)Beantworten
Klar, bei WP:KEA glänzen wir damit noch nicht ;-) Ich hoffe, bis Ende Woche noch etwas weiterzukommen, habe aber leider während der Woche kaum Zeit für Artikelarbeit. -- PaterMcFly Diskussion Beiträge 22:05, 25. Aug. 2008 (CEST)Beantworten
Habe den Abschnitt Nebenwirkung im weiteren Sinne nochmal durchgelesen und dann entsorgt, das war tatsächlich nicht sehr sinnvoll (dass Programme Fehler haben können hat mit der Theorie dahinter nichts zu tun, und das hier ist ein Theorieartikel). Zudem war einiges doppelt.-- PaterMcFly Diskussion Beiträge 18:17, 30. Aug. 2008 (CEST)Beantworten

Seiteneffekt ist - wie diskutiert - eine falsche Übersetzung, die verwirrt, weil sie vortäuscht etwas Besonderes zu sein. So wie jeder Gerüst versteht, Rahmenwerk (framework) aber hochspeziell klingt. Ich votiere dafür, in diesem Artikel nur den Begriff Nebenwirkung zu verwenden und Seiteneffekt nur als schlechtes Synonym zu erwähnen (wie derzeit in der Einleitung). In der funktionalen Programmierung wird ja auch die Ausgabe einer Meldung auf der Konsole als Nebenwirkung verstanden. Das passt mit dem C-Beispiel nicht überein. Wäre es nicht günstig, nur eine Definition von Nebenwirkung zu haben? --iTOtto 23:02, 01.12.08 (CET)

Ich stimme der Kritik zu. Zudem ist die dem Artikel zugrunde liegende Vorstellung, das "Wirkung" und "Seiteneffekt" synonym sind, nicht durch den Sprachgebrauch gedeckt - die abschliessenden Belegstellen sind wenig überzeugend; ich würde sogar bestreiten, das es einen informatik-spezifischen Begriff "Wirkung" überhaupt gibt. Die Übersetzung von "side effect" nach "Seiteneffekt" mag nicht gerade der Gipfel deutscher Sprachästhetik sein, hat sich aber durchgesetzt. Die Referenzen auf DIE "Theoretische Informatik" sind schierer Unsinn (Ja, ich weiss wovon ich rede, man möge gerne meine Seiten googlen.). Ich empfehle, den Artikel komplett einzustampfen und durch eine Übersetzung aus der englischen oder franz. Wikipedia zu ersetzen.

-- Burkhart.Wolff (ohne Datum und/oder Uhrzeit signierter Beitrag, erstellt um 11:50, 19. Mär. 2009 (CET))Beantworten

Dann bring doch bitte bessere Belege. Und es ist nun mal so, dass da ein paar Begriffe durcheinandergehen, das kann ich aber auch aus der Praxis bestätigen. Vielleicht könnte man den Artikel entsprechend vereinheitlichen, halte ich aber nicht für sinnvoll, weil wir hier ohne Grund nichts zementieren sollten (sondern ggf. Konflikte aufzeichnen). Und natürlich kümmert sich vorwiegend die theoretische Informatik um die Semantik von Instruktionen einer Sprache. Du kannst gerne eine Übersetzung anfangen. Jene Artikel sind aber auch nicht gerade das Gelbe vom Ei (mit der Quellenlage und so) und sie befassen sich logischerweise nicht mit dem Sprachlichen Unterscheidungsproblem im Deutschen. -- PaterMcFly Diskussion Beiträge 12:46, 19. Mär. 2009 (CET)Beantworten

Versionsgeschichte der verbundenen Version[Quelltext bearbeiten]

Am 16.8.2008 wurden von einer älteren Version Textteile importiert. Damit sie nicht verlorengeht, hier die Versionsgeschichte jener Version:

(Aktuell) (Vorherige) 14:05, 13. Feb. 2008 (edit) Harro von Wuff (A) (Diskussion | Beiträge) K (11.123 Bytes) (-la entkat) (Zurücksetzen | rückgängig)
(Aktuell) (Vorherige) 14:02, 13. Feb. 2008 (rev) (edit) Harro von Wuff (A) (Diskussion | Beiträge) K (hat „Wirkung (Informatik)“ nach „Benutzer:TMg/Wirkung (Informatik)“ verschoben) (rückgängig)
(Aktuell) (Vorherige) 18:24, 5. Feb. 2008 (rev) (edit) TMg (Diskussion | Beiträge) K (11.298 Bytes) (Erklärender Link zu Übersetzungsschwierigkeit) (rückgängig)
(Aktuell) (Vorherige) 18:17, 5. Feb. 2008 (rev) (edit) TMg (Diskussion | Beiträge) (11.221 Bytes) (Weitere aussagekräftige Quelle hinzugefügt; fehlenden Link zum Fachbegriff Operationale Semantik hinzugefügt) (rückgängig)
(Aktuell) (Vorherige) 16:48, 4. Feb. 2008 (rev) (edit) TMg (Diskussion | Beiträge) (10.901 Bytes) (Grundlos gelöschten Absatz wieder eingefügt; solche Änderungen bitte begründen, damit das nachvollzogen werden kann) (rückgängig)
(Aktuell) (Vorherige) 15:58, 4. Feb. 2008 (rev) (edit) 79.214.233.209 (Diskussion) (10.512 Bytes) (rückgängig)
(Aktuell) (Vorherige) 00:35, 4. Feb. 2008 (rev) (edit) TMg (Diskussion | Beiträge) (10.915 Bytes) (Noch einmal stark erweitert und weitestgehend neu geschrieben, dieses Mal mit Quellenangaben) (rückgängig)
(Aktuell) (Vorherige) 20:04, 28. Jan. 2008 (rev) (edit) Jesi (Diskussion | Beiträge) K (5.172 Bytes) (→Beispiel noch ein Zusatz) (rückgängig)
(Aktuell) (Vorherige) 19:56, 28. Jan. 2008 (rev) (edit) Jesi (Diskussion | Beiträge) (5.146 Bytes) (→Beispiel Satz umformuliert, sonst missverständlich) (rückgängig)
(Aktuell) (Vorherige) 19:52, 28. Jan. 2008 (rev) (edit) Jesi (Diskussion | Beiträge) (5.165 Bytes) (→Beispiel eine Ergänzung, etwas Optik) (rückgängig)
(Aktuell) (Vorherige) 00:42, 24. Jan. 2008 (rev) (edit) TMg (Diskussion | Beiträge) (5.093 Bytes) (Kleine Ergänzungen wie in der Diskussion angemerkt) (rückgängig)
(Aktuell) (Vorherige) 23:17, 23. Jan. 2008 (rev) (edit) TMg (Diskussion | Beiträge) K (4.859 Bytes) (→Beispiel Noch eine wichtige Begründung ergänzt, was diesen Seiteneffekt zum Seiteneffekt (im negativen Sinne) macht) (rückgängig)
(Aktuell) (Vorherige) 22:34, 23. Jan. 2008 (rev) (edit) TMg (Diskussion | Beiträge) (4.659 Bytes) (Komplett neu geschrieben. Quellen: englische Wikipedia, http://wap.frank-buss.de/funktional/faq.html#3.6 und viele andere sowie eigenes Wissen (abgeschlossenes Informatikstudium)) (rückgängig)
(Aktuell) (Vorherige) 19:07, 23. Jan. 2008 (rev) (edit) Avron (Diskussion | Beiträge) (2.123 Bytes) (LA+) (rückgängig)
(Aktuell) (Vorherige) 17:20, 17. Jan. 2008 (rev) (edit) Avron (Diskussion | Beiträge) (1.948 Bytes) (Quellen fehlen) (rückgängig)
(Aktuell) (Vorherige) 16:02, 25. Dez. 2007 (rev) (edit) AlleborgoBot (Diskussion | Beiträge) K (1.937 Bytes) (Bot: Ändere: it:Effetto collaterale) (rückgängig)
(Aktuell) (Vorherige) 03:58, 13. Dez. 2007 (rev) (edit) 84.161.80.186 (Diskussion) (1.951 Bytes) (Versuch nicht vorhandensein von Wirkung bei fps zu ordnen) (rückgängig)
(Aktuell) (Vorherige) 19:47, 18. Okt. 2007 (rev) (edit) JAnDbot (Diskussion | Beiträge) K (2.025 Bytes) (Bot: Ergänze: ru:Побочный эффект (программирование) (UTF8!)) (rückgängig)
(Aktuell) (Vorherige) 18:15, 14. Sep. 2007 (rev) (edit) 83.222.51.151 (Diskussion) (1.953 Bytes) (Der Inkrementopreator vor dem Operanten (++ VOR i) meint das 'i' VOR Verwendung (also vor der Subtraktion mit 5) inkrementiert wurde, wie es auch die Schreibweise in der Definition angibt ((i+1)-5).) (rückgängig)
(Aktuell) (Vorherige) 11:54, 1. Sep. 2007 (rev) (edit) Klaustro (Diskussion | Beiträge) (1.954 Bytes) (zurück auf die letzte korrekte Version (5. Mai 2007)) (rückgängig)
(Aktuell) (Vorherige) 06:43, 28. Aug. 2007 (rev) (edit) 217.83.73.19 (Diskussion) (2.105 Bytes) (Überarbeitung des Absatzes zu „Seiteneffekten“) (rückgängig)
(Aktuell) (Vorherige) 16:34, 2. Aug. 2007 (rev) (edit) TobiasHerp (Diskussion | Beiträge) (2.385 Bytes) (Richtigstellung des Seiteneffekts; Gliederung) (rückgängig)
(Aktuell) (Vorherige) 03:44, 25. Jun. 2007 (rev) (edit) Odioz (Diskussion | Beiträge) (2.149 Bytes) (-Anglizismus, +Nebenwirkung unbeabsichtigt) (rückgängig)
(Aktuell) (Vorherige) 17:08, 19. Jun. 2007 (rev) (edit) 84.57.22.114 (Diskussion) (4.530 Bytes) (rückgängig)
(Aktuell) (Vorherige) 17:07, 23. Mai 2007 (rev) (edit) 194.95.179.132 (Diskussion) (4.529 Bytes) (rückgängig)
(Aktuell) (Vorherige) 16:58, 23. Mai 2007 (rev) (edit) 194.95.177.123 (Diskussion) (3.287 Bytes) (rückgängig)
(Aktuell) (Vorherige) 15:42, 21. Mai 2007 (rev) (edit) Leider (Diskussion | Beiträge) K (1.998 Bytes) (side effect) (rückgängig)
(Aktuell) (Vorherige) 01:13, 5. Mai 2007 (rev) (edit) Boemmels (Diskussion | Beiträge) (1.954 Bytes) (-link; Nebenwirkung ist medizinisch) (rückgängig)
(Aktuell) (Vorherige) 13:04, 29. Mär. 2007 (rev) (edit) Plaicy (Diskussion | Beiträge) (undefiniertes entfernt) (rückgängig)
(Aktuell) (Vorherige) 22:25, 9. Mär. 2007 (rev) (edit) Skipper Michael (Diskussion | Beiträge) (Klarere Fassung) (rückgängig)
(Aktuell) (Vorherige) 16:59, 19. Feb. 2007 (rev) (edit) 147.210.22.149 (Diskussion) (mod. fr:Effet de bord (informatique)) (rückgängig)
(Aktuell) (Vorherige) 12:47, 29. Nov. 2006 (rev) (edit) Bota47 (Diskussion | Beiträge) K (Bot: Ergänze: cs:Vedlejší účinek) (rückgängig)
(Aktuell) (Vorherige) 16:35, 7. Okt. 2006 (rev) (edit) 217.232.113.206 (Diskussion) (rückgängig)
(Aktuell) (Vorherige) 07:30, 18. Aug. 2006 (rev) (edit) RobotQuistnix (Diskussion | Beiträge) K (Bot: Ergänze: fr:Effet de bord) (rückgängig)
(Aktuell) (Vorherige) 19:01, 16. Aug. 2006 (rev) (edit) 80.140.117.22 (Diskussion) (rückgängig)
(Aktuell) (Vorherige) 00:20, 8. Aug. 2006 (rev) (edit) Chobot (Diskussion | Beiträge) K (Bot: Ergänze: it:Effetto collaterale (informatica)) (rückgängig)
(Aktuell) (Vorherige) 10:15, 27. Jul. 2006 (rev) (edit) Tobias Bergemann (Diskussion | Beiträge) K (Synonyme fett formatiert (zum schnelleren Finden, wenn man über eine Weiterleitungsseite auf diese Seite kam)) (rückgängig)
(Aktuell) (Vorherige) 06:23, 19. Jul. 2006 (rev) (edit) YurikBot (Diskussion | Beiträge) K (Bot: Ergänze: el:Παρενέργεια (επιστήμη υπολογιστών) (UTF8!)) (rückgängig)
(Aktuell) (Vorherige) 04:50, 26. Jun. 2006 (rev) (edit) YurikBot (Diskussion | Beiträge) K (Bot: Ergänze: ko:부수효과 (전산학) Ändere: en:Side effect (computer science)) (rückgängig)
(Aktuell) (Vorherige) 21:11, 17. Jun. 2006 (rev) (edit) 84.163.69.66 (Diskussion) (rückgängig)
(Aktuell) (Vorherige) 13:12, 28. Feb. 2006 (rev) (edit) Levin (Diskussion | Beiträge) K (linkfix) (rückgängig)
(Aktuell) (Vorherige) 22:39, 18. Feb. 2006 (rev) (edit) Snert (Diskussion | Beiträge) (schweift zu weit vom Thema ab -> raus) (rückgängig)
(Aktuell) (Vorherige) 14:17, 13. Nov. 2005 (rev) (edit) Tsca.bot (Diskussion | Beiträge) K (Bot: ergänze: ja) (rückgängig)
(Aktuell) (Vorherige) 01:00, 6. Nov. 2005 (rev) (edit) Flogger (Diskussion | Beiträge) (rv) (rückgängig)
(Aktuell) (Vorherige) 02:43, 26. Okt. 2005 (rev) (edit) Roland2 (Diskussion | Beiträge) (Kat.) (rückgängig)
(Aktuell) (Vorherige) 20:49, 29. Aug. 2005 (rev) (edit) 84.56.148.179 (Diskussion) (Fehlendes Semikolon hinter der Zuweisung eingefügt, andernfalls sieht das Beispiel mehr nach Perl, Python oder Ruby aus und nicht nach C oder Java..) (rückgängig)
(Aktuell) (Vorherige) 15:14, 7. Jul. 2005 (rev) (edit) Bhaak (Diskussion | Beiträge) K (+pl) (rückgängig)
(Aktuell) (Vorherige) 13:30, 25. Jun. 2005 (rev) (edit) 80.136.238.145 (Diskussion) (siehe Diskussion) (rückgängig)
(Aktuell) (Vorherige) 13:21, 25. Jun. 2005 (rev) (edit) 80.136.238.145 (Diskussion) (Ausdruck wiederhergestellt) (rückgängig)
(Aktuell) (Vorherige) 19:54, 16. Jun. 2005 (rev) (edit) Daniel B (Diskussion | Beiträge) (Situation in C und C++ nochmals neu geschrieben) (rückgängig)
(Aktuell) (Vorherige) 22:50, 25. Mär. 2005 (rev) (edit) Hades (Diskussion | Beiträge) (en) (rückgängig)
(Aktuell) (Vorherige) 11:46, 7. Feb. 2005 (rev) (edit) Sparti (Diskussion | Beiträge) K (Kategorie) (rückgängig)
(Aktuell) (Vorherige) 03:27, 10. Nov. 2004 (rev) (edit) 217.93.11.183 (Diskussion) (Zwei Abschnitte am Ende entfernt, die eine Bedeutung wiedergeben, die so nicht allgemein üblich ist ("Seiteneffekt" für unabsichtliche Nebenwirkung einer Bearbeitung von Quelltext)) (rückgängig)
(Aktuell) (Vorherige) 00:27, 2. Nov. 2004 (rev) (edit) BWBot (Diskussion | Beiträge) K (Bananeweizen - Bot: Typo) (rückgängig)
(Aktuell) (Vorherige) 19:51, 28. Okt. 2004 (rev) (edit) W.amadeus (Diskussion | Beiträge) (rückgängig)
(Aktuell) (Vorherige) 22:14, 27. Okt. 2004 (rev) (edit) Wst (Ex-A) (Diskussion | Beiträge) K (paste, bitte ggf vereinen) (rückgängig)
(Aktuell) (Vorherige) 23:52, 20. Jul. 2004 (rev) (edit) D (A) (Diskussion | Beiträge) K (rückgängig)
(Aktuell) (Vorherige) 15:30, 19. Jul. 2004 (rev) (edit) 159.154.2.99 (Diskussion) (+Kategorie:Informatik) (rückgängig)
(Aktuell) (Vorherige) 16:48, 10. Jun. 2004 (rev) (edit) 213.148.153.141 (Diskussion) (mit funktionale Programmiersprache verlinkt) (rückgängig)
(Aktuell) (Vorherige) 00:05, 20. Mai 2004 (rev) (edit) Lummer (Diskussion | Beiträge) (Erweiterung um "Zuweisung", etc.) (rückgängig)
(Aktuell) (Vorherige) 18:25, 16. Mai 2004 (rev) (edit) Lummer (Diskussion | Beiträge) (rückgängig)
(Aktuell) (Vorherige) 18:03, 12. Mai 2004 (rev) (edit) 217.231.120.120 (Diskussion) (Wirkung als Begriff im Rahmen der Informatik)

-- PaterMcFly Diskussion Beiträge 21:30, 16. Aug. 2008 (CEST)Beantworten

Quellen[Quelltext bearbeiten]

Die "Quelle" Jörg Demmer Prozeduren, Funktionen, Methoden Johann Wolfgang Goethe-Universität, Frankfurt am Main 2006.. habe ich gelöscht, da es sich in weiten Teilen um eine Kopie des ehemaligen Wikipediaartikels zu dem Thema handelt. --Hansaplatz 22:24, 22. Aug. 2008 (CEST)Beantworten

Unverständlicher Abschnitt Paradigmen der Programmierung[Quelltext bearbeiten]

Ich verstehe schon worauf der Abschnitt hinaus will und es ist so in Ordnung. Aber ich habe es erst nach mehrmaligem Lesen verstanden. Ich glaube kaum, dass ein Laie das Verstehen kann.

Zum einen wird die Abstraktionsebene gewechselt, aber nicht wirklich erklärt. Eine Funktion wird im Ende auch als eine Abfolge von Maschinenbefehlen ausgeführt, was zumindest temporär zu eine Veränderung des Speichers mit sich führt. Wichtig ist dass die Veränderung nicht das Ziel, sondern nur Mittel zum Zweck ist und bei Ende der Funktion rückgängig gemacht wird.

Wenn man das erklären will, sollte man wenigstens kurz darauf eingehen, was der Unterschied zwischen Prozedur und Funktion ist. -- Avron 12:39, 24. Aug. 2008 (CEST)Beantworten

Du hast recht, das ist noch nicht optimal. Ich warte mit Änderungen allerdings noch ein paar Stunden, bis ich oben eine Antwort von Hansaplatz bekomme. Bleibt diese weg, werde ich seine Megalöschung wieder revertieren und dann im langen Artikel (mit den IMHO guten Beispielen) den entsprechenden Abschnitt überarbeiten. -- PaterMcFly Diskussion Beiträge 12:50, 24. Aug. 2008 (CEST)Beantworten

Methode/Prozedur[Quelltext bearbeiten]

Eine Methode ist eine Funktion, die keinen Wert hat.

Ist statt Methode nicht eher Prozedur gemeint? --Matthäus Wander 00:33, 4. Okt. 2009 (CEST)
Fände ich auch besser. Und ich würde "hat" durch "liefert" ersetzen, um die unfreiwillige Komik zu vermeiden. Wenn niemand meckert, erledige ich beide Ersetzungen "demnächst". -- UKoch 23:43, 7. Mär. 2011 (CET)Beantworten
Die "liefert"-Änderung mache ich jetzt. Den Rest rühre ich lieber nicht an -- der Sprachgebrauch geht anscheinend sehr weit auseinander. -- UKoch 18:38, 5. Aug. 2011 (CEST)Beantworten

Beitrag von 85.179.217.1[Quelltext bearbeiten]

85.179.217.1 hat am 30. Jul. 2011 Folgendes in den Artikel geschrieben:

In computer science, a function or expression is said to have a side effect if, in addition to returning a value, it also modifies some state or has an observable interaction with calling functions or the outside world. For example, a function might modify a global or static variable, modify one of its arguments, raise an exception, write data to a display or file, read data, or call other side-effecting functions. In the presence of side effects, a program's behavior depends on history; that is, the order of evaluation matters. Understanding a program with side effects require knowledge about the context and its possible histories; and is therefore hard to read, understand and debug.
Das und NUR das ist mit Seiteneffekt (oder Nebenwirkung/Nebeneffekt) als Fachbegriff in der Informatik gemeint.
'Wirkung' ist NICHT das gleiche wie 'Nebenwirkung', genausowenig wie 'Karte' und 'rote Karte' das gleiche sind.
Wenn eine Funktion einen Wert zurückgibt, ist dies eine Wirkung der Funktion, aber keine Nebenwirkung.
Daher sollte es eine eigene Seite nur für 'Nebenwirkung (Informatik)' geben.
Prozessorerwärmung zählt damit eindeutig nicht zu den Nebenwirkungen, da die Programmausführung nicht von der Prozessortemperatur abhängt.
Auch hat ein Seiteneffekt nichts mit der Spezifikation zu tun: Wenn eine Funktion eine globale Variable ändert, ist dies ein Seiteneffekt, egal ob dies in der Spezifikation angeben wird oder nicht.

Den anderen Artikelinhalt hat die IP gelöscht. Das war natürlich Mist, aber vielleicht mag ja jemand die inhaltlichen Anregungen aufgreifen. -- UKoch 18:37, 5. Aug. 2011 (CEST)Beantworten

Wirkung triffts wohl auch nicht[Quelltext bearbeiten]

"Seiteneffekt", ob richtig übersetzt oder nicht, hat sich in Deutschland eingebürgert. Ob es nun tatsächlich "Nebenwirkung" heißen müsste, mag sein- "Wirkung" verfehlt es jedenfalls komplett, da die offensichtliche Wirkung, bspw. a++ (lesen, dann um 1 erhöhen), eben auch noch Nebenwirkungen am Rande mit sich ziehen kann. Im Übrigen ist der angefügte Link zu irgendeiner "Einführung in die Informatik 2"-Veranstaltung irgendeines Professors irgendeiner Universität wenig belegend. Wenn er seinen Studenten das Zebra als gestreiftes Pferd verkaufen würde, wäre die Aussage nicht dadurch wahr, dass er Professor an einer Universität ist. Es ist wenig zielführend dem Kind einen anderen Namen zu geben, wenn es sonst überall als Seiteneffekt bekannt ist. (nicht signierter Beitrag von Mayomoto (Diskussion | Beiträge) 18:05, 22. Feb. 2015 (CET))Beantworten

Hast du für deine Aussage denn eine bessere Quelle? --PaterMcFly Diskussion Beiträge 12:33, 24. Feb. 2015 (CET)Beantworten
Ich habe eine nicht belegte und meine Auffassung nach falsche Behauptung aus dem Artikel entfernt. Ein Funktionsaufruf in einer funktionalen Programmiersprache kann durchaus eine Wirkung im umgangssprachlichen Sinn haben, z.B. die, dass der Anwender hinterher das Ergebnis des Funktionsaufrufs kennt.
Der Artikel verbleibt in einem diskussionswürdigen Zustand. Da offensichtlich mehrere unterschiedliche Begriffe im Umlauf sind, wäre es im Sinne von WP:NPOV geboten, die Alternativen als gleichrangig darzustellen und nicht eine als richtig und die übrigen als falsch. Elektrolurch Kontakt 11:01, 3. Mär. 2015 (CET)Beantworten
"Seiteneffekt" scheint in Deutschland üblich zu sein. Er ist ja übrigens sehr häufig der Haupteffekt (einen Seiteneffekt unbeabsichtigt produzieren ist schlechter Programmierstil, wenn nicht gleich fehlerhaft); wer "x++" schreibt, will vornehmlich die Variable x inkrementieren, ob er nebenbei vor lauter Eleganz auch noch mit dem Wert "x_bisher" was rechnen will (x++ ist ein Ausdruck, der einen Wert hat, alles andere heißt Seiteneffekt) oder nicht.--131.159.79.16 20:32, 6. Apr. 2016 (CEST)Beantworten

Nebenwirkungen[Quelltext bearbeiten]

Wäre Nebenwirkung eine sinnvolle alternative Übersetzung für die aktuell verwendeten Begriffe Nebeneffekt und Seiteneffekt?

Die Menschen können sich darunter schon etwas vorstellen, während Seiteneffekt und Nebeneffekt ein völlig neues Wort ist für den Leser.

Nebenwirkungen sind bereits aus der Pharmazie bekannt.

ShalokShalom (Diskussion)

Nein, denn Nebenwirkungen im Sinne der Medizin sind unbeabsichtigt, Seiteneffekte hingegen sind beabsichtigt und ein essenzieller Bestandteil fast aller verbreiteten Mainstream-Programmiersprachen. Elektrolurch Kontakt 20:36, 5. Okt. 2017 (CEST)Beantworten
Dieser Thread ist zwar schon alt, aber gleichwohl aktuell: Doch, die Bezeichnung Nebenwirkung ist korrekt. Das hat nichts damit zu tun, ob in der Medizin irgendetwas unbeabsichtigt ist oder nicht. Die Informatik orientiert sich nicht an der Medizin. Oder wer von euch nimmt den Pschyrembel zur Hand, wenn er einen informatischen Text schreibt?
Außerdem bezieht sich auch im Englischen "side effect" nicht auf den medizinischen Begriff "side effect", sondern auf den informatischen. Der Begriff bedeutet unterschiedliche Dinge in unterschiedlichen Disziplinen.
"Nebenwirkung" ist nichts anderes als die Bedeutung bzw. Übersetzung von "side effect", und "Seiteneffekt" ist kein deutscher Begriff, sondern eine Fehlübersetzung, bei der Techniker, welche sich für sprachliche Korrektheit nicht interessieren und dafür auch kein übermäßiges Talent mitbringen, einfach "side" zu "Seite" und "effect" zu "Effekt" übersetzen. Man kann mittlerweile argumentieren, "Seiteneffekt" sei de facto zu einem Fachbegriff geworden. Jedoch sollte es einem deutlich widerstreben, einen "Fachbegriff" zu verwenden, der nur aufgrund einer intellektuellen Fehlleistung existiert.
Das folgende Beispiel macht den Unsinn einer wörtlichen Übersetzung deutlicher: Würde man im Englischen "green table" sagen, dann hätten die deutschen Techniker "Grüntisch" sagen müssen statt "Seiteneffekt" oder "Nebenwirkung", denn sie übersetzen ja syntaktisch statt semantisch. ʘχ (Diskussion) 10:40, 20. Feb. 2018 (CET)Beantworten

"Eine Variable repräsentiert zu jedem Zeitpunkt des Programmablaufes einen ganz bestimmten Wert."[Quelltext bearbeiten]

Wenn dem so wäre, gebe es keine Nullpointer-Exceptions. --91.55.222.122 08:21, 8. Aug. 2018 (CEST)Beantworten

Wieso? Null ist ein ganz bestimmter Wert (der Pointer-Variablen). --PaterMcFly Diskussion Beiträge 10:02, 8. Aug. 2018 (CEST)Beantworten

Beispiel[Quelltext bearbeiten]

Bei dem Text des Beispiels versteh ich nur Bahnhof trotz Erfahrungen mit Programmiersprachen. Was genau passiert durch die if-Anweisung, wenn die Variable a nicht verändert wird. Ein Funktionsrumpf mit dem Parameter a wird's wohl kaum sein. Kann man das auch verständlich formulieren.--Wruedt (Diskussion) 11:07, 7. Jan. 2020 (CET)Beantworten

Das etwas ungewohnte an dem Beispiel ist die Präfixnotation. In C-Pseudocode ist es dasselbe wie:
int Foo()
{
    if (a == 0) // mit a als globaler Variable
        return a + 1;
    else 
        return a * 2;
}
Hier wird die Variable a nicht angefasst, die Methode ist also wirkungsfrei. Anders etwa in diesem Fall:
void Foo()
{
    if (a == 0) // mit a als globaler Variable
        a = a + 1;
    else 
        a = a * 2;
}

Diese Implementation ist nicht wirkungsfrei. (nicht signierter Beitrag von PaterMcFly (Diskussion | Beiträge) 13:17, 7. Jan. 2020 (CET))Beantworten

Danke, das Beispiel ist so verständlich, was imo für den gesamten Artikel nicht gilt. Da aber letzten Endes die Routine int Foo() einen Rückgabewert hat, wird doch eine Wirkung beabsichtigt bzw. erreicht. Versteh deshalb immer noch nicht was dieser Artikel eigentlich darlegen will.---Wruedt (Diskussion) 23:01, 7. Jan. 2020 (CET)Beantworten
Müsste der Artikel nicht Nebenwirkung (Informatik) heißen. Der zweite Teil deines Beispiel (void Foo()) zeigt doch wie man's nicht machen sollte. Wird die globale Variable a in einer Schleife in der auch noch Foo aufgerufen wird verändert, so tritt ein unerwünschter Nebeneffekt auf. Das C-Beispiel hielte ich in jedem Fall für geeigneter, da sicher wesentlich mehr Leute C oder ähnliche Sprachen verstehen.--Wruedt (Diskussion) 07:38, 8. Jan. 2020 (CET)Beantworten
Foo im ersten Beispiel ist für sich alleine nebenwirkungsfrei. Der Aufruf, der wahrscheinlich sowas wie "int b=Foo();" machen würde, ist es hingegen nicht, ausser dort steht nur "Foo();", oder der Wert wird weiter den Stack hinaufgereicht.
Die Sprache könnte man eventuell ändern - Tatsächlich ist aber die Unterscheidung eben besonders in funktionalen Programmiersprachen wichtig, in prozeduralen Sprachen (wie C) sind die Nebenwirkungen nämlich meistens erwünscht, denn dort enthält fast jede Zeile eine Variablenzuweisung. Genau das müsste man wohl besser darstellen: Funktionale Sprachen kommen praktisch gänzlich ohne explizite Variablenzuteilung aus, man versucht also, alles nebenwirkungsfrei zu halten (weil das dort effizienter ist). Bei prozeduralen Sprachen, wo alles Schritt-für-Schritt abgearbeitet wird, ist es genau umgekehrt - dort machen nebenwirkungsfreie Funktionen und Befehlssequenzen keinen Sinn (ausser man will nur CPU-Zeit verbraten). Das ist jetzt allerdings wahrscheinlich schwierig nachzuvollziehen, wenn man nie mit funktionalen Sprachen gearbeitet hat (ist bei mir auch schon ein Weilchen her). --PaterMcFly Diskussion Beiträge 20:16, 8. Jan. 2020 (CET)Beantworten
Wie der Artikel heissen soll ist allerdings nicht so klar; da gab es auch schon diverse Diskussionen, siehe oben drüber. --PaterMcFly Diskussion Beiträge 20:16, 8. Jan. 2020 (CET)Beantworten