Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Paradigmen

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - Allgemein
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
bakunin



Anmeldungsdatum: 16.08.1999
Beiträge: 597
Wohnort: Lorsch (Südhessen)

BeitragVerfasst am: 10. Jan 2002 5:46   Titel: Paradigmen

Hi!

Ich habe mal versucht, die Paradigmen der Programmierung in meinem Kopf etwas zu ordnen, herausgekommen ist dieses Diagramm. Kann man das so stehen lassen? Was würdet ihr anders machen? Habe ich etwa gar eine Sprache falsch eingeordnet? (Kenne gar nicht alle genannten näher.)

Cheers,
GNU/Wolfgang
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

Dominik Seichter
Gast





BeitragVerfasst am: 10. Jan 2002 13:40   Titel: Re: Paradigmen

Hi!

Du hast leider die wichtigste aller Programmiersprachen vergessen -> Brainfuck <- ! Es gibt wohl sons keine Sprache mehr die mit nur 8 Befehlen zurecht kommt und vollkommen unlesbar ist Wink. Ich weiß leider aber nicht wie man Brainfuck da ncoh einordnen könnte Wink. Schau dir einfach mal http://koeln.ccc.de/projekte/brainfuck/ an!

CU Dom

>+++++++[<++++++++++++>-]<+++.>+++[<++++++>-]<.+++..-.++++.--..-
-------.+++++++++.>++++++[<------------->-]<.>++++++++[<++++++++
+>-]<+.+++++.>++++++[<------------->-]<.>++++++[<+++++++++++>-]<
++.+.+++++++++++++.>+++++++++[<--------->-]<-.>+++++++[<++++++++
++++>-]<+++.--.-------.----------.+.+++++++++++++.>++++[<---->-]
<.-.>++++[<++++>-]<+.-------------.+++++++++.>++++++[<----------
--->-]<.>+++++[<+++++++++++>-]<.++++++++++++++.+++++++.++++++++.
>+++++++[<------------>-]<.>++++++[<+++++++++++>-]<++.+.++++++++
+++++.>+++++++++[<--------->-]<-.>++++++[<++++++++>-]<.>++++[<++
++++++>-]<++.---.--------.+++++++++++.>++++[<---->-]<-.+++++++++
+++..----.----.+++++++++++++.+.---.++.>++++[<---->-]<-.++.+++++.
---.>++++++[<----------->-]<---.>++++[<++++++++>-]<++.>++++++[<+
+++++++>-]<.>++++[<---->-]<-.++++++++.+++++.--------.+++++++++++
++++.>+++[<------>-]<.++++++++.>++++++++[<------------>-]<-.
 

bakunin



Anmeldungsdatum: 16.08.1999
Beiträge: 597
Wohnort: Lorsch (Südhessen)

BeitragVerfasst am: 10. Jan 2002 18:20   Titel: Re: Paradigmen

Hi!

Ich kenne Brainfuck, und kann diese Sprache auch problemlos einordnen. Sie gehört zu den sog. esoterischen Programmiersprachen, die allerdings keine praktische Bedeutung haben. Wichtiger wären da die Assemblersprachen.

Cheers,
GNU/Wolfgang
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

hjb
Pro-Linux


Anmeldungsdatum: 15.08.1999
Beiträge: 3236
Wohnort: Bruchsal

BeitragVerfasst am: 10. Jan 2002 19:09   Titel: Re: Paradigmen

Hi,

so auf Anhieb vermisse ich nur die deklarativen Sprachen wie Prolog und CML2

Diese sind weder funktional noch imperativ.

Gruß,
hjb
_________________
Pro-Linux - warum durch Fenster steigen, wenn es eine Tür gibt?
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger

das



Anmeldungsdatum: 22.01.2001
Beiträge: 78
Wohnort: 42369 Wuppertal

BeitragVerfasst am: 11. Jan 2002 0:23   Titel: Re: Paradigmen

Wo ihr gerade schonmal dabei seid:
Weiß zufällig jemand eine gute Seite, die die grundlegenden Unterschiede zwischen imperativen, deklarativen und funktionalen Sprachen erklärt? Womöglich mit Code-Beispielen, z.B. das selbe Problem einmal imperativ und einmal funktional gelöst, oder so...

Danke,
Dominic
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden

bakunin



Anmeldungsdatum: 16.08.1999
Beiträge: 597
Wohnort: Lorsch (Südhessen)

BeitragVerfasst am: 11. Jan 2002 2:44   Titel: Re: Paradigmen

Hi Dominic!

Aber klar doch: http://www.uni-forst.gwdg.de/~wkurth/paradig.html

Was dort Kontrollflussparadigma genannt wird, entspricht dem imperativen Paradigma und was hier deklarativ genannt wird heißt dort Fallregel-Paradigma.

Cheers,
GNU/Wolfgang
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

das



Anmeldungsdatum: 22.01.2001
Beiträge: 78
Wohnort: 42369 Wuppertal

BeitragVerfasst am: 11. Jan 2002 14:31   Titel: Re: Paradigmen

Danke!

Aber nochwas:

Die Verwendung eines bestimmten Programmier-Paradigmas legt noch nicht die Wahl der Programmiersprache fest!
Beispiel: Objektorientierte Programmierung auch in Fortran möglich (gr. Aufwand!), prozedurale Elemente auch in C++ usw.


Ok, das ist mir soweit klar... Aber hätte vielleicht mal jemand, rein interessehalber, ein Beispiel für funktionalen C-Code? Ich weiß nicht ganz, was ich mir darunter vorstellen sollte... (Ob es sinnvoll wäre, in C funktional zu programmieren, wäre natürlich zu bezweifeln).

Dominic
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden

Dominik Seichter
Gast





BeitragVerfasst am: 11. Jan 2002 17:14   Titel: Re: Paradigmen

Hi Dominic!

Ich _denke_ funktionaler C-Code ist ganz "normaler" C-Code z.B.:

int a = 4 + 3;
printf( "Ergebnis: %i
", a);

CU Dom
 

bakunin



Anmeldungsdatum: 16.08.1999
Beiträge: 597
Wohnort: Lorsch (Südhessen)

BeitragVerfasst am: 11. Jan 2002 17:59   Titel: Re: Paradigmen

Hi!

> Ich _denke_ funktionaler C-Code ist ganz "normaler" C-Code

Nein.

C ist imperativ (befehlsorientiert) und prozedural, aber nicht funktional, wie auch in meinem Diagramm zu sehen ist. Funktionale Sprachen sind solche wie LISP, Scheme, Haskell und ML.

Cheers,
GNU/Wolfgang

PS: %i? Muss das nicht %d sein?
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

das



Anmeldungsdatum: 22.01.2001
Beiträge: 78
Wohnort: 42369 Wuppertal

BeitragVerfasst am: 12. Jan 2002 0:43   Titel: Re: Paradigmen

Jep, C ist natürlich ein klassisches Beispiel für eine imperative Sprache. Aber trotzdem ist es ja möglich, in C beispielsweise objektorientiert zu programmieren (siehe GTK+). Die Schwierigkeit dabei ist nur, daß C - im Gegensatz zu C++ - die nötige Syntax dazu nicht von Haus aus mitbringt, der Code kann also mitunter etwas umständlich werden.
Aber wenn es stimmt, daß man, wenn auch mit relativ großem Aufwand, in jeder Sprache nach jedem Paradigma programmieren kann, sollte also auch funktionaler C-Code möglich sein. Meine Frage ist nur, wie das aussehen könnte. Wie würde z.B. ein Scheme-Programm aussehen, wenn man es, unter Beibehaltung der Programmstruktur, nach C übersetzen würde? (Das das in der Praxis nicht sinnvoll wäre ist klar).

Dominic
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden

bakunin



Anmeldungsdatum: 16.08.1999
Beiträge: 597
Wohnort: Lorsch (Südhessen)

BeitragVerfasst am: 12. Jan 2002 1:24   Titel: Re: Paradigmen

Hi Dominic!

Funktional in C zu programmieren ist wohl möglich, indem man dem funktionalen Code entsprechende Datenstrukturen definiert und diese Datenstrukturen von einem kleinen, imperativen Teil verarbeiten lässt. Oder ist das geschummelt?

Außerdem gibt es ja noch die GNU C Erweiterungen:

code:

int i = { int x;
if (foo == Qnil)
x = Qnil
else
x = { int y;
do {
y = bar (foo++);
} while (y == Qnil);
y; } x; };



Kann man das als funktional gelten lassen? Bin da ja kein Experte, aber ich finde das sehr Scheme-like.

Aber im Ernst: Ich glaube nicht so recht, dass man wirklich mit jeder Sprache nach ausnahmslos jedem Schema programmieren kann. Das widerspricht auch keinesfalls der Aussage, dass man durch die Sprache noch nicht auf ein bestimmtes Paradigma festgelegt ist.

Cheers,
GNU/Wolfgang
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

bakunin



Anmeldungsdatum: 16.08.1999
Beiträge: 597
Wohnort: Lorsch (Südhessen)

BeitragVerfasst am: 12. Jan 2002 1:41   Titel: Re: Paradigmen

Hi!

Ok, und jetzt nochmal Code, der nicht nur funktional ist, sondern auch funktioniert.

code:

int i = ({ int x;
if (foo == Qnil)
x = Qnil;
else
x = ({ int y;
do {
y = bar (foo++);
} while (y == Qnil);
y; }); x; });



Wenn jemand sehr daran interessiert ist, kann er sich auch mal den C-Teil des GNU Emacs anschauen, der verwendet Makros, um funktionalen Code zu ermöglichen, wenn ich mich recht erinnere.

Cheers,
GNU/Wolfgang
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - Allgemein Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy