Linkdump

Hier kann über allgemeine Themen diskutiert werden, die sonst in kein Forum passen.
Insbesondere über Szene, Games, Kultur, Weltgeschehen, Persönliches, Recht, Hard- und Software.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Linkdump

Beitrag von Krishty »

Seine Fabergé-Fraktale sind ja nochmal besser. Schade, dass die Seite so auf mobile Nutzung fixiert ist, dass ich sie am PC kaum ansehen kann.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Alexander Kornrumpf
Moderator
Beiträge: 2106
Registriert: 25.02.2009, 13:37

Re: Linkdump

Beitrag von Alexander Kornrumpf »

Da auch hier einige undefined behaviour Puristen unterwegs sind wollte ich den Link mal reposten (via fefe):

http://www.complang.tuwien.ac.at/kps201 ... ion_29.pdf
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Linkdump

Beitrag von Krishty »

Fefes Kritik (und die der ganzen „so schlimm kann undefined behaviour nicht gemeint sein, dass man nicht einmal memmove() implementieren kann“-Fraktion) geht IMHO am Problem vorbei. Das Problem ist nicht, dass Programme nach Compiler-Upgrades total kaputtgehen, weil sie irgendwo ein Stückchen Undefined Behaviour nutzen. Das Problem ist, dass C ein totaler Fuckup ist, der viel zu viele Löcher hat und kaum als konsistente Entwicklungsbasis brauchbar ist.

Diese Signed-Right-Shift-Problematik zum Beispiel (kein UB, sondern IB, aber fürs Beispiel ausreichend): C lässt das undefiniert, „damit es auf allen möglichen Architekturen läuft“. Oh, wirklich? Es gibt da draußen Turing-vollständige Architekturen, die unmöglich in der Lage sind, ein Sign Bit zu shiften?! Ins Hirn geschissen?!

Was diese Leute meinen, ist: „damit es auf allen möglichen Architekturen in einen einzigen Maschinenbefehl übersetzbar ist, weil das uns bekannte Universum kollabieren würde, wenn x << 1 ein Funktionsaufruf wäre“. Es geht um Performance, um nichts anderes; und zwar auf feige verdeckte Art und Weise.

Und da sollte man halt lieber eine konsistente Plattform mit recht wenig UB (und stattdessen mehr IB?) zur Verfügung stellen. Die „aber dann muss mein Cray bei x << 1 eine Funktion aufrufen! EMPÖRUNG!!!!“-Idioten können dann auf ihrer Lieblingsplattform genau das tun, was alle Entwickler auf allen Plattformen sowieso schon machen – für native Befehle Intrinsics mit #ifdef drum aufrufen.

Warum nullptr-Defeferenzierungen (hihi) UB sind und nicht IB, für das jede Plattform halt eigenes Verhalten zur Verfügung stellt (GCC löscht den Ausführungspfad; Win32 löst eine SEH aus; die 0,001 % Gerätetreiber, bei denen 0 tatsächlich als Adresse gemappt ist, verhalten sich dementsprechend), werde ich wohl nie kapieren.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Alexander Kornrumpf
Moderator
Beiträge: 2106
Registriert: 25.02.2009, 13:37

Re: Linkdump

Beitrag von Alexander Kornrumpf »

Man kann es "am Problem vorbei" nennen, man kann es aber auch Schadensbegrenzung ob der Tatsache, dass das uns bekannte Universum nunmal in C geschrieben ist nennen.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Linkdump

Beitrag von Krishty »

C ist nicht unabänderlich. In der letzten C-Revision haben sie die Signed Division-Problematik gelindert (nachdem das eh jede Architektur so gemacht hat). Sie könnten Signed Shifts definieren, nachdem sich eh jede Architektur für Arithmetic Shift entschieden hat.

Wäre viel effektivere Schadensbegrenzung, dafür fehlt aber einfach das Bewusstsein und so wird der Bote erschossen (der optimierende Compiler).
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Alexander Kornrumpf
Moderator
Beiträge: 2106
Registriert: 25.02.2009, 13:37

Re: Linkdump

Beitrag von Alexander Kornrumpf »

Krishty hat geschrieben:C ist nicht unabänderlich. In der letzten C-Revision haben sie die Signed Division-Problematik gelindert (nachdem das eh jede Architektur so gemacht hat). Sie könnten Signed Shifts definieren, nachdem sich eh jede Architektur für Arithmetic Shift entschieden hat.

Wäre viel effektivere Schadensbegrenzung, dafür fehlt aber einfach das Bewusstsein und so wird der Bote erschossen (der optimierende Compiler).
Verstehe ich das Problem falsch? Es gibt einen Konflikt zwischen Leuten, die Compilercode schreiben, und Leuten, die existierendem Code warten. Der Standard ist bezüglich dieses Konfliktes agnostisch in dem Sinne das er weder verbietet was die eine Partei lieber hätte noch was die andere Partei lieber hätte. Jetzt sagst du das eigentliche Problem ist dass der Standard es nicht regelt obwohl sich eh alle einig sind?
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Linkdump

Beitrag von Krishty »

„Einig“ sicher nicht, aber der Konflikt – „Wie gehen wir mit Undefiniertem Verhalten um?“ – wäre nicht so groß, wenn der C-Standard Undefiniertes Verhalten minimieren würde.

Das passiert nicht; mit der Argumentation, UB würde C kompatibel zu allen möglichen Architekturen halten. Tatsächlich ist aber keine Zeile mehr portabel oder überaupt noch kompatbiel (siehe memove()).

Ich denke, dass C da nicht agnostisch ist, sondern den Compiler-Leuten (die ja in den 70ern gern jeden Ausdruck direkt in einen Assembler-Befehl übersetzen wollten, und für die UB Arbeitsersparnis bedeutet) viel zu sehr entgegenkam. Das ist aber nicht Verfehlung der Compiler-Leute, sondern des Standardisierungskomitees.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Alexander Kornrumpf
Moderator
Beiträge: 2106
Registriert: 25.02.2009, 13:37

Re: Linkdump

Beitrag von Alexander Kornrumpf »

Krishty hat geschrieben:Das ist aber nicht Verfehlung der Compiler-Leute, sondern des Standardisierungskomitees.
Ich kann nicht beurteilen wer hier einen Fehler macht. Ich habe die Einstellung, die durch diesen infantilen "Festplatte formatieren"-Witz (ich hoffe es ist ein Witz?) symboliert wird ein paarmal in freier Wildbahn getroffen (ohne selbst C-Entwickler zu sein) und ich finde diese Einstellung extrem unpragmatisch. Von daher wollte ich einfach mal die Gegenmeinung weiter vebreiten. Um über Ursachen und Lösungen zu spekulieren kenne ich das C-Ökosystem zu wenig.

Insbesondere, ich weiß nicht wie einig wir uns da sind, verdient hypothetischer ein Compilerentwickler, der wirklich (mehr oder weniger mit Absicht, und nicht durch einen Zufall von Douglas Adamschen ausmaßen) die Festplatte formatiert, weil er es laut Standard "darf", meiner Meinung nach beliebig schlechtes Karma. No way wäre das in meinem Weltbild eine Verfehlung von jemand anderem als diesem Entwickler selbst.

Was mich erschreckt, ist dass einige offenbar intelligente Menschen näherungsweise der Meinung sind, das mit dem Formatieren wäre wirklich ok. Womit ich meine erste Frage selbst beantwortet habe.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Linkdump

Beitrag von Krishty »

Wow, sowas wird wirklich gemacht? Das Schlimmste, das ich bisher getroffen habe, war einfach ein Absturz oder eine Endlosschleife.

Wer hat das denn gemacht?
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Alexander Kornrumpf
Moderator
Beiträge: 2106
Registriert: 25.02.2009, 13:37

Re: Linkdump

Beitrag von Alexander Kornrumpf »

Nicht gemacht (soviel ich weiß). Leuten als "Argument" um die Ohren gehauen, wenn sie es wagen boundschecks zu machen. In der Sprache unserer Zeit: eine Verrohnung des Diskurses.

Was ist das für eine Art einen Dialog zu führen?

- "Ich will Boundschecks machen können"
- "Sei froh dass ich deine Festplatte nicht formatiere, du Wicht"
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Linkdump

Beitrag von Krishty »

Hehe. Microsoft sind da die pragmatischsten. Die sagen: Der Adressraum ist unter Win32 flach und alles ist adressierbar. Da sind Boundchecks dann kein UB mehr (auch wenn man sich trotzdem anstrengen muss, dass sie nicht wegoptimiert werden). Dafür ist ihr Compiler dann nicht standardkonform (sie haben unser heiliges UB zu IB gemacht) und alle spucken drauf.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Spiele Programmierer
Establishment
Beiträge: 426
Registriert: 23.01.2013, 15:55

Re: Linkdump

Beitrag von Spiele Programmierer »

@Krishty
Der Compiler ist deswegen nicht standardkonform?
Undefined Behaviour heißt doch, dass vom Standard her undefiniert ist, was passiert. Das schließt aber doch nicht aus, dass auf einer bestimmten Plattform in einer Situation immer das selbe Verhalten eintritt.

@Alexander Kornrumpf
Der Kern des Problems mit Undefined Behavour ist nicht, dass irgendein Compiler dann Code einsetzt, der anfängt die Festplatte zu formatieren oder sowas. Die Aussage steht nur stellvertretend dafür, dass tatsächlich undefiniert ist was dann passiert und mit entsprechender Wahrscheinlichkeit wirklich alles passieren kann. Die Sache mit der Formatierung ist normalerweise natürlich ausreichend unwahrscheinlich. Man denke doch aber mal an den Quellcode von dem Programm "format", das dafür geschrieben wurde die Festplatte zu formatieren. Mit Undefined Behaviour wäre es realistisch denkbar, dass die Ausführung vom Programmierer unbeabsichtigt von irgendeiner Stelle irgendwie in die Formatierungsroutine springen kann.

Im Prinzip ist auftretender Undefined Behaviour einfach ein Bug. Genau wie bei einem Bug wird Verhalten ausgelöst das vom Programmierer mehr oder weniger nicht erwünscht ist. Auftretender Undefined Behaviour ist also per Definition "böse". Bounds Checks sind an sich kein Problem. Ein Problem wäre aber, wenn der Bounds Check zu Undefined Behaviour führt, der zum Beispiel dafür sorgt, dass der Compiler (oder ein anderer) den Bounds Check komplett wegoptimiert so das gar nicht mehr gecheckt wird. (das hat schon ganz konkret in der Praxis für Probleme gesorgt)

Um dem Problem vorzubeugen eignet, bietet zum Beispiel Clang Sanitizer an, um das Problem aufspühren zu können (Undefined Behavior, Address, etc.). Sehr lesenswert ist auch noch das: What Every C Programmer Should Know About Undefined Behavior

Ich bin prinzipiell aber auch dafür, dass man die Menge an Undefined Behaviour drastisch einschränkt. Kristhy hat schon einige Stellen von leicht zu behebenden Fällen genannt. Andere Fälle wie zum Beispiel Integer Overflow könnt man von Undefined Behaviour zu Unspecified Value umwandeln. Ich glaube nicht, dass dadurch viele nützliche Optimierungen betroffen wären.
Zuletzt geändert von Spiele Programmierer am 04.03.2016, 17:57, insgesamt 1-mal geändert.
Alexander Kornrumpf
Moderator
Beiträge: 2106
Registriert: 25.02.2009, 13:37

Re: Linkdump

Beitrag von Alexander Kornrumpf »

Spiele Programmierer hat geschrieben: @Alexander Kornrumpf
Der Kern des Problems mit Undefined Behavour ist nicht,
Ich weiß was undefined behaviour ist, danke.
dass irgendein Compiler dann Code einsetzt, der anfängt die Festplatte zu formatieren oder sowas. Die Aussage steht nur stellvertretend dafür, dass tatsächlich undefiniert ist was dann passiert und mit entsprechender Wahrscheinlichkeit wirklich alles passieren kann. Die Sache mit der Formatierung ist normalerweise natürlich ausreichend unwahrscheinlich. Man denke doch aber mal an den Quellcode von dem Programm "format", das dafür geschrieben wurde die Festplatte zu formatieren. Mit Undefined Behaviour wäre es realistisch denkbar, dass die Ausführung vom Programmierer unbeabsichtigt von irgendeiner Stelle irgendwie in die Formatierungsroutine springen kann.
Mein Punkt war, dass es entlarvend ist, wie das mit dem Formatieren als Totschlagargument gebraucht wird.
Im Prinzip ist auftretender Undefined Behaviour einfach ein Bug. Genau wie bei einem Bug wird Verhalten ausgelöst das vom Programmierer mehr oder weniger nicht erwünscht ist. Auftretender Undefined Behaviour ist also per Definition "böse". Bounds Checks sind an sich kein Problem. Ein Problem wäre aber, wenn der Bounds Check zu Undefined Behaviour führt, der zum Beispiel dafür sorgt, dass der Compiler (oder ein anderer) den Bounds Check komplett wegoptimiert so das gar nicht mehr gecheckt wird. (das hat schon ganz konkret in der Praxis für Probleme gesorgt)
Dass Compiler z. B. Boundchecks als undefined behaviour wegoptimieren ist weder ein Naturgesetz noch eine Vorgabe des Standards sondern schlicht eine Entscheidung der Compilerentwickler. Es ist diese Entscheidung, die kritisiert wird.
Alexander Kornrumpf
Moderator
Beiträge: 2106
Registriert: 25.02.2009, 13:37

Re: Linkdump

Beitrag von Alexander Kornrumpf »

Noch eine Ergänzung: Ich habe den Eindruck, dass es wirklich Leute gibt, die glauben, dass es ihnen der Standard erlaubt, und zwar nicht im Sinne von Standardkonformität, sondern moralisch wie rechtlich wirklich _erlaubt_, für ub beliebigen Code einzusetzen, und dass es ein reiner Akt der Nächstenliebe ist, dass sie nur nop einsetzen und nicht irgendwas wirklich schädliches. Und vielleicht ist das etwas übertrieben, und vielleicht glaubt niemand das komplett, sondern, wie ich oben sagte, nur näherungsweise, in mehr oder weniger hitzigen Diskussionen, aber ich halte das für ein extrem gefährliches Weltbild.
Spiele Programmierer
Establishment
Beiträge: 426
Registriert: 23.01.2013, 15:55

Re: Linkdump

Beitrag von Spiele Programmierer »

Ich denke, da geht es viel mehr ums Prinzip. Und in heftigen Diskussionen bei besonders kritikressistenten Programmier ("Ich will die Bounds Checks aber mit UB! Und bei mir funktioniert es ja!") kann ich mir schon vorstellen, dass der Eindruck erweckt wird, man würde sich wünschen, die Compiler würden es demjenigen "heimzahlen".

Sicherlich fände keiner gut, wenn Compiler die Festplatte aus Jux formatieren. Aber es ist halt Tatsache, dass viele gänige Compiler die Möglichkeit zur Optimierung nutzen bzw. nutzen möchten und werden. Auch wenn man das doof findet, ist es schlicht und ergreifend trotzdem eine sehr schlechte Idee die Bounds Checks so zu schreiben, dass sie bei einigen Compilern wegoptimiert werden. Oder vielleicht beim nächsten Update. Und dann muss man die Programmierer darauf hinweisen und ihm muss klar werden, dass er die Bounds Checks so nicht schreiben darf. Auch nicht wenn sie gerade auf den Compiler zu funktionieren zu scheinen. Es sind eben durchaus auch sehr viel unglücklichere Situationen denkbar! Die Sache mit der Formatierung der Festplatte ist zwar nicht sehr realistisch und etwas überspitzt, soll das aber eigentlich auf den Punkt bringen.
Alexander Kornrumpf
Moderator
Beiträge: 2106
Registriert: 25.02.2009, 13:37

Re: Linkdump

Beitrag von Alexander Kornrumpf »

Spiele Programmierer hat geschrieben: Aber es ist halt Tatsache, dass viele gänige Compiler die Möglichkeit zur Optimierung nutzen bzw. nutzen möchten und werden. Auch wenn man das doof findet, ist es schlicht und ergreifend trotzdem eine sehr schlechte Idee die Bounds Checks so zu schreiben, dass sie bei einigen Compilern wegoptimiert werden. Oder vielleicht beim nächsten Update.
Das ist eben wie gesagt keine bloße "Tatsache" sondern eine Entscheidung an der Menschen beteiligt waren und die man kritisieren kann oder anders treffen könnte. Wie du selbst oben sagst, verbietet der Standard es insbesondere nicht, sich bei bestimmten UBs konsistent zu verhalten und es gibt Fälle, wo es ein sinnvolles konsistentes Verhalten gibt, auch wenn der Standard dieses nicht vorsieht.

Wir sind hier tief im Reich von Meinungen und während ich nicht genug mit C zu tun habe um sagen zu können das ich selbst der einen oder der anderen Meinung besonders nahestehe, fällt es mir von außen auf, dass die Vertreter einer der beiden Meinungen fälschlicherweise so tun, als sei ihre Meinung naturgegeben. Und das ist immer ein sehr schlechtes Zeichen.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Linkdump

Beitrag von Krishty »

Spiele Programmierer hat geschrieben:@Krishty
Der Compiler ist deswegen nicht standardkonform?
Undefined Behaviour heißt doch, dass vom Standard her undefiniert ist, was passiert. Das schließt aber doch nicht aus, dass auf einer bestimmten Plattform in einer Situation immer das selbe Verhalten eintritt.
Stimmt, das war Quark. Viel mehr provoziert er, dass Programme UB enthalten.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Linkdump

Beitrag von Chromanoid »

http://www.firstmenonthemoon.com/ Mondlandung mit Funksprüchen und Aufnahme aus dem Landemodul.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Linkdump

Beitrag von Krishty »

seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Linkdump

Beitrag von Chromanoid »

Fifty psychological and psychiatric terms to avoid: a list of inaccurate, misleading, misused, ambiguous, and logically confused words and phrases http://journal.frontiersin.org/article/ ... 01100/full
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Linkdump

Beitrag von Chromanoid »

Irgendwie witzige aber auch ziemlich gruselige Story: http://fusion.net/story/287592/internet ... nsas-farm/

Eine Farm nahe des geographischen Zentrums der Vereinigten Staaten wird von dem Geo-IP-Dienst MaxMind als Ort für alle IPs verwendet, die nicht genauer zugeordnet werden können. Die Folgen sind für die Anwohner ziemlich übel, Besuche vom FBI, Doxxing usw.

Die freie Datenbank von MaxMind benutzen wir übrigens als Captcha...
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Linkdump

Beitrag von Krishty »

Raymond Chen erzählt jeden Montag aus dem Krieg der Zeit, als er DOS-Spiele Windows 95-kompatibel machen musste:Interessanter Lesestoff für alle, die wissen wollen, warum Windows 95 so wackelig war (schließlich waren die Programmierer nicht gerade blöd). Mehr Artikel, nicht notwendigerweise Spiele betreffend, gibt’s da auch noch zu Hauf.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Linkdump

Beitrag von Chromanoid »

Irrsinnnige Notiz am Rande: Supercell macht mit Clash Royale und Clash of Clans 250 Millionen Dollar Umsatz pro Monat 0_o (ich frage mich ob das anhält)
http://www.gamesbrief.com/2016/05/clash ... in-a-month
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Linkdump

Beitrag von Chromanoid »

Menschengemachter Meteoritenschauer zur Olympiade 2020? http://www.trendsderzukunft.de/skycanva ... 016/05/20/

War mir unsicher ob das zum Jammern, zum Anti-Jammern oder lustig ist. Daher hier...
Benutzeravatar
mnemonix
Establishment
Beiträge: 101
Registriert: 09.04.2010, 20:38

Re: Linkdump

Beitrag von mnemonix »

Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Linkdump

Beitrag von Chromanoid »

Ein ziemlich toller deutschsprachiger Blog zum Thema Spieledesign: https://nachtfischer.wordpress.com/blog/
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Linkdump

Beitrag von Chromanoid »

Neulich gab es auf Spieleprogrammierer.de eine kleine Diskussion zum Thema Garbage Collection. Ich als Fan von automatischem Speichermanagement freue mich über diesen Artikel Language Features and Culture, der das ausdrückt, das mir bei der Diskussion auch als ein großer Unterschied zwischen GC- und "Nicht-GC"-Sprachen und ihren Ökosystemen vorkam.
joggel

Re: Linkdump

Beitrag von joggel »

Ich weiß nicht wo ich das hier hinlegen soll, deswegen hier im Linkdump:

https://www.it-talents.de/foerderung/co ... on-10-2016

Sowas könnt ihr doch ;)
Schnappt euch das Preisgeld^^
Alexander Kornrumpf
Moderator
Beiträge: 2106
Registriert: 25.02.2009, 13:37

Re: Linkdump

Beitrag von Alexander Kornrumpf »

joggel hat geschrieben:Ich weiß nicht wo ich das hier hinlegen soll, deswegen hier im Linkdump:

https://www.it-talents.de/foerderung/co ... on-10-2016

Sowas könnt ihr doch ;)
Schnappt euch das Preisgeld^^
500€ "vielleicht" erscheint mir ein bisschen wenig dafür.
joggel

Re: Linkdump

Beitrag von joggel »

Mh...jemand hat doch hier vor kurzem so etwas vorgestellt. Da wäre ja der Aufwand nicht so groß für den jenigen..
Antworten