Zum Inhalt springen

Programmiersprachen ???


maddin

Empfohlene Beiträge

Hi maddin,

zu deiner Frage:

Lisp, Prolog und SmallTalk sind Sprachen die bei der Softwareentwicklung fuer die kuenstliche Intelligenz (KI) eingesetzt werden, auch fuer sogenannte Expertensysteme.

Cobol wird viel im kaufmaennischen Bereich eingesetzt.

Programmiersprachen lassen sich in fuenf Klassen einteilen:

- Imperative Programmiersprachen

Programme bestehen aus Folgen von Befehlen (PASCAL , MODULA-2 )

- Funktionale Programmiersprachen

Programme werden als mathematische Funktionen betrachtet (LISP , MIRANDA )

- Prädikative Programmiersprachen

Programme bestehen aus Fakten (gültige Tatsachen) und Regeln, die beschreiben, wie aus gegebenen Fakten neue Fakten hergeleitet werden können (PROLOG)

- Regelbasierte Programmiersprachen

Programme bestehen aus "wenn-dann-Regeln"; wenn eine angegebene Bedingung gültig ist, dann wird eine angegebene Aktion ausgeführt (OPS5)

-Objektorientierte Programmiersprachen

Programme bestehen aus Objekten, die bestimmte (Teil-)Probleme lösen und zum Lösen eines Gesamtproblems mit anderen Objekten über Nachrichten kommunizieren können (SMALLTALK) .

Nicht jede Programmiersprache kann eindeutig einer dieser Klassen zugeordnet werden. Es gibt auch Mischformen, z.B. koennen Java und C++ als imperative objektorientierte Programmiersprachen klassifiziert werden, denn Java- und C++-Programme bestehen aus kommunizierenden Objekten, die intern mittels imperativer Sprachkonzepte realisiert werden.

Eine kurze Definition und Beschreibung findest du unter

http://mitglied.tripod.de/alpia/berichte/prgspr.htm

Manne cool.gif

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Jahr später...
Original geschrieben von Manne

Lisp, Prolog und SmallTalk sind Sprachen die bei der Softwareentwicklung fuer die kuenstliche Intelligenz (KI) eingesetzt werden, auch fuer sogenannte Expertensysteme.

Cobol wird viel im kaufmaennischen Bereich eingesetzt.

sprachen

Sicher wird Smalltalk für Lösungen in Zusammenhang mit KI oder Expertensysteme eingesetzt, aber auch nicht viel mehr, als andere Programmiersprachen, wie z.B. C++. Smalltalk findet in allen Bereichen seinen Einsatz und ist ganz sicher keine "Sprache für Wissenschaftler".

-Objektorientierte Programmiersprachen

Programme bestehen aus Objekten, die bestimmte (Teil-)Probleme lösen und zum Lösen eines Gesamtproblems mit anderen Objekten über Nachrichten kommunizieren können (SMALLTALK) .

Objekte kommuninzieren über Methoden miteinander.

Diese Objete lösen aber ganz sicher keine (Teil-)Probleme bzw. nur indirekt. Die Methoden bzw. Nachrichten, die Objekte "verstehen" können "Probleme lösen".

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich kann dir noch ein bisschen zu COBOL sagen...

SCH***SE

Nee, quatsch, jetzt mal ernst. Also COBOL wird eigentlich nur noch von Banken und Versicherungen verwendet, da diese auf riesengroße Datenbestände auf Großrechnen zugreifen und diese halt mit COBOL programmiert werden (wurden)... Die meisten Unternehmen benutzen COBOL nicht mehr, da der Trend ja wie bekannt nicht zum Großrechner geht sondern genau in die andere Richtung.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hai!

Mal ein kleiner Einwurf aus eigener Erfahrung zum Thema Cobol(d)... das Zeugs wird nur noch verwendet, weil sich bisher noch niemand gefunden hat, der in der Lage ist, ein Programm zu schreiben, welches ein Cobol-Programm in etwas verwandeln kann, was WinDoof-kompatibel ist.

Die Kosten dafür, ein Cobol-System neu zu entwickeln, einzurichten und die User neu zu schulen gehn in Bereiche, wo unsereins wahrscheinlich nur hin gelangt, wenn er mal eben seine/ihre Festplattenkapazität in einzelne Bytes umrechnet.

Deswegen ist Cobol auch heute noch relativ gefragt - viele Banken, Versicherungen und andere Firmen sagen sich halt: "Wenn ich alles aufs neue System umstelle, kost mich das mehrere Millionen. Ein Cobol-Programmierer 'nur' 150 Euro die Stunde. Also soll der was (neues) machen."

Also, wer es kann - für die nächsten paar Jahre ist das eine gute Mögllichkeit a) Aufträge zu haben und B) viel Kohle zu scheffeln.

Und bevor jemand auf dumme Ideen kommt - ich kann es leider nur rudimentär. Oder anders ausgedrückt: ich sehe, dass es Cobol ist, wenn ich den Sourcecode kriege. :confused: Sonst wär ich auch schon reich.

Gruss,

der Onkel

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Shiloh

hi !!

also RPG iss ne sprache für die AS/400 und seine vorgänger.

ist ziemlich spalten und zeilen orientiert

das is richtig... Report Program Generator ist für die AS/400 und meiner Meinung nach sehr leicht zu erlernen und bietet dabei ALLE Mögichkeiten, die man braucht.
Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von maddin

[..]und zwar geht es um programmiersprachen und ihren einsatz. die sprachen sind:

- LISP

- COBOL

- PROLOG

- RPG

Die ersten drei SPrachen findest du im "IT Handbuch". Da steht dann kruz bei, wann sie entstanden sind und wo sie eingesetzt wurden / werden. Kurz, aber informativ.

Link zu diesem Kommentar
Auf anderen Seiten teilen

@Holzonkel

Eigentlich wäre das wirklich eine geniale Idee ... ist denn auf sowas noch niemand gekommen? Einen Compiler bauen, der Sourcecodes von einer Programmiersprache soweit möglich auf eine Andere umsetzt ... sodaß man am besten das Ganze nur durch einen aktuellen Compiler jagen muß, natürlich unter Berücksichtung des Betriebssystems und der Rechnerarchitektur. Das würde einen erst richtig reich machen! =8-]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Crush

Das würde einen erst richtig reich machen! =8-]

Nein Crush, da existiert nämlich kein Bedarf. Warum sollte ich etwas von einer Sprache in eine andere übersetzen ? Doch wohl nur, weil ich es in der Sprache brauchen könnte - und dafür gibt es doch das COM, welches mir ermöglicht, das Modul sprachenunabhängig einzubinden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Crush

Cobol & COM? Geht das überhaupt?

Hm.... ich muss jetzt dazu sagen, dass ich COBOL nicht kenne und auch spontan nicht weiss, wo diese Sprache zum Einsatz kommt (steht in meinem IT-Buch, aber das ist zuhause), aber ich nehme mal an, dass das Spezialsysteme sind, oder ?

Wenn du die Möglichkeit hast, mit COBOL Bilbliotheken zu schreiben, dann solltest du theoretisch auch das COM verwenden können.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von lpd

Hm.... ich muss jetzt dazu sagen, dass ich COBOL nicht kenne und auch spontan nicht weiss, wo diese Sprache zum Einsatz kommt (steht in meinem IT-Buch, aber das ist zuhause), aber ich nehme mal an, dass das Spezialsysteme sind, oder ?

COBOL wird hauptsächlich in großen Firmen uä. genutzt und ist schon relativ alt... aber deswegen lohnt sich kein kompletter umstieg auf ne neue programmiersprache.

Haupteinsatzgebiet von COBOL ist die AS/400.

achja, es gibt die Möglichkeit, COBOL-Programme in Java einzubinden (zumindest auf der AS/400)

Link zu diesem Kommentar
Auf anderen Seiten teilen

das is richtig... Report Program Generator ist für die AS/400 und meiner Meinung nach sehr leicht zu erlernen und bietet dabei ALLE Mögichkeiten, die man braucht.
Hast du vielleicht auch einen Link an der Hand zu RPG Dokus? Ich soll nämlich demnächst Synon machen. Das ist ein RPG-Quellcode-Generator und da ist es ja nicht schlecht wenn man auch ein bißchen RPG kann.

Redfox

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Elo!!!

Ein kleines unvollständiges Beispiel:

xstring proc pascal near

arg @@str:dword

uses ds

lds dx, @@str

add dx, offset xstring:xstring_len

mov ax,ds

ret

endp

oder

xstring_clear proc pascal near

arg @@str:dword

uses ds, bx, ax

lds bx, @@str

xor ah, ah

mov ds:[bx,xstring_len],ah

ret

endp

ein printline kann dann so ungefähr aussehen

print_line macro @@1, @@2

lea dx,@@1

mov ah,9

int 21h

call @@2 method xstring:dosstr, ds offset @@2

push ds

mov ds, ax

mov ah, 9

int 21h

pop ds

lea dx, endl

mov ah,9

int 21h

endm

stack 512

dataseg

str1 xstring<>

str2 xstring<>

no1 db 'String Nr. 1: "$'

no2 db 'String Nr. 2: "$'

demo1 db "Ein ASCII-String",0

... usw

der Startup-Code sieht dann auch nochmal gar nicht nach Assembler aus:

startupcode

call str1 method xstring:init, ds offset str1

print_line no1, str1

call str2 method xstring:init, ds offset str2

print_line no2, str2

call str1 method xstring:copyasciiz, \

ds offset str1 \

ds offset demo1

print_line no1, str1

call str1 method xstring:copypas, \

ds offset str1 \

ds offset demo2

print_line no1, str1

Die Klassen und Strukturen werden dann in .aso-Dateien hinterlegt (=Assembler Objects)

global pascal parent_init:near

global pascal parent_print:near

global pascal parent_pntmsg:near

parent struc gloabl method {

init:word = parent_init

print:word = parent_print

virtual pntmsg:word = parent_pntmsg

}

parent_msg db "Dies ist die Elternklasse.",13,10,"$"

ends

Die Virtuelle Methode muß man noch ausdefinieren:

global pascal child_init:near

global pascal child_pntmsg:near

child struc global parent method {

init:word = child_init

virtual pntmsg:word = child_pntmsg

}

child_msg db "Dies ist die Kindklasse.",13,10,"$"

ends

Das wird nur noch reinincluded ins Programm

Damit man das nicht falsch versteht - diese calls z.B. werden vom Assembler umgeformt. z.B.:

call es:di method parent:pntmsg uses ds:bx, @@parent

wird zu

mov bx, [es:di.@Mptr_list]

call [ds:bx.pntmsg], @@parent

Aber irgendwie war das ja auch eine Grundvoraussetzung um Objektorientierung zu realisieren - es muß in Assembler darstellbar sein, weil hier alles irgendwann endet und in Maschinencode abläuft.

aber denk jetzt bloß nicht, daß ich sowas selber programmiere ... es ist nur gut zu wissen, daß es möglich ist.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Crush!

Mensch, da würgt der mir gleich ordentlich Assembler-Code rein :-) Ist zwar schon ne Weile her, aber teilweise kann ichs entziffern.

Über die Objektorientiertheit lässt sich aber jetzt streiten. Ich kann OO Ansätze entdecken, aber viel mehr schon nicht auch. Naja, für mich gibts ja eh nur eine wirklich OO Sprache :-)

Gruss

Elo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

leider kann ich dir nur etwas über Cobol sagen:

Cobol ist eine kommerzielle und administrative Programmiersprache und wurde vom American National Standard Institut standardisiert. Eigentlich heisst sie seitdem auch ANSI COBOL. Um Übersicht ins Programm zu bringen, hat man es in 4 Teile(DIVISIONs) gegliedert.

IDENTIFICATION DIVISION

ENVIRONMENT DIVISION

DATA DIVISION

PROCEDURE DIVISION.

Diese DEVISIONs müssen auch in dieser Reihenfolge im Programm erscheinen.

Falls du noch mehr über COBOL erfahren willst, melde dich.

Ciao Micesh

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...