foldr foldl wat?

Benutzeravatar
blowfish
Sonntagsinformatiker
Sonntagsinformatiker
Beiträge: 241
Registriert: 18. Okt 2006 16:00

Beitrag von blowfish »

möchte mich auch mal in die ganze rumeckerei über scheme einmischen.
erstmal zu dem, was über die rumrückerei gesagt wurde: is ja an sich kein fehler der sprache, eher einer des editors und auch damit kann man klarkommen. goto-sprünge sind im übrigen auch was ziemlich anderes. natürlich rufst du funktionen auf, die du an anderer stelle definiert hast, aber das machst du in allen sprachen. hat nix mit goto zu tun. in der hinsicht ist eine funktionale sprache sogar sehr übersichtlich (wie ich finde).
bin der meinung, dass sich andere sprachen über den ansatz der funktionalen programmierung sehr gut erlernen lassen....spricht jedenfalls erstmal nix gegen. das mit den klammern is natürlich lästig, aber wenn man lernt, damit einigermaßen umzugehen und einrückungen halt selber vornimmt, wie man sie am liebsten hat, lässt sich mit scheme schon viel anfangen. natürlich gibt es sachen, die effektiver mit anderen sprachen zu lösen sind, aber darum geht's nicht. rekursion ist nunmal n wichtiges element in der informatik und lässt nicht in allen fällen durch iterationen ersetzen (glaub ich). und wenn du rekursion in anderen programmiersprachen nicht brauchst, dann weil die datentypen (auch noch n thema zu dem ich mich noch äußern wollte), bzw. vorhandenen funktionen dies selber implementieren. und wir sollen halt lernen, wie so was funktioniert. sonst kannste dich auch zu hause mit nem delphi-buch hinsetzen, dir ein, zwei jahre zeit lassen und das ganze lernen. brauchste nicht zur uni!
zu den datentypen und das sog. chaos, was man da veranstalten kann: mach mal n ordentliches chaos mit den 2-3 datentypen, die wir kennen. und wenn tatsächlich was daneben geht, sagt dir des der compiler doch!
lange rede, kurzer sinn: auch wenn's einem nicht sofort liegt, is scheme doch eine brauchbare sprache, und wenn's auch nur zum lernen der programmierung dient!
Ein Hemd ist Einstellungssache!

baerchen
Computerversteher
Computerversteher
Beiträge: 382
Registriert: 24. Okt 2006 15:42

Beitrag von baerchen »

naja, in der neuen hausübung soll man ja eine iterative funktion schreiben und das is schon wirklich hexenwerk in scheme wenn man nicht am ende 30 klammern zumachen will...

warum gibts denn kein einfaches for oder sowas in scheme???

banshee
Nerd
Nerd
Beiträge: 684
Registriert: 22. Okt 2006 18:46

Beitrag von banshee »

also entweder bin ich behindert oder scheme is einfach nur scheiße :D

wer mir sagen kann warum er das erste nimmt und das zweite nicht kriegtn keks:

Bild

Benutzeravatar
MisterD123
Geek
Geek
Beiträge: 811
Registriert: 31. Okt 2006 20:04
Wohnort: Weiterstadt

Beitrag von MisterD123 »

also bei mir funktioniert das programm, 1:1 abgetippt oO

rick
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 105
Registriert: 17. Jan 2006 23:20

Beitrag von rick »

jo bei mir funktioniert's auch - mach einfach mal Datei / Neu 8)

banshee
Nerd
Nerd
Beiträge: 684
Registriert: 22. Okt 2006 18:46

Beitrag von banshee »

jo, wenn ichs nochmal neu abtippe funktionierts. aber wenn ich mir sone zeile aus nem pdf dokument kopiere spuckt er mir die fehlermeldung aus, obwohl die zeile von vorne bis hinten stimmt.

scheme4tw -.-

Benutzeravatar
blowfish
Sonntagsinformatiker
Sonntagsinformatiker
Beiträge: 241
Registriert: 18. Okt 2006 16:00

Beitrag von blowfish »

banshee hat geschrieben:also entweder bin ich behindert oder scheme is einfach nur scheiße
...auch auf die gefahr hin, dass ich wieder ne verwarnung kriege, folgendes kommentar:
sollen wir das wirklich hier klären???
Ein Hemd ist Einstellungssache!

Tutor16
Windoof-User
Windoof-User
Beiträge: 30
Registriert: 25. Okt 2006 16:52

Beitrag von Tutor16 »

banshee hat geschrieben:aber wenn ich mir sone zeile aus nem pdf dokument kopiere spuckt er mir die fehlermeldung aus,
Ok, das erklärt einiges. Beim erzeugen von pdf-Dokumenten werden einige Zeichen gerne mal durch andere Zeichen ersetzt, die zwar optisch genau gleich aussehen, aber für den Rechner was völlig anderes sind.
Ich würde mal vermuten, dass genau das mit dem - (die sind da besonders anfällig) passiert ist.
Kannst ja einfachmal dieses Zeichen ersetzen. Bzw. schau dir das ganze doch mal in einem Hex-Editor an.

banshee
Nerd
Nerd
Beiträge: 684
Registriert: 22. Okt 2006 18:46

Beitrag von banshee »

nein, daran liegts nicht. ich hab das wort zeichenweise neu abgetippt und erst dann lässt es sich übersetzen. aber die semikolons für die symbols sind zb. anders

@blowfish: es is doch schon geklärt: me > scheme :)

Benutzeravatar
Twister11
Mausschubser
Mausschubser
Beiträge: 48
Registriert: 26. Nov 2005 14:18
Kontaktdaten:

Beitrag von Twister11 »

Das einfachste wäre einfach die FUNKTIONEN mal zu posten und dann kann jeder selber im Kopf versuchen zu simulieren wie die Funktionieren :) *g*
Im SCRIPT stehts ja leider net drin, zumindest hab ich da nix gefunden.

Also:

Code: Alles auswählen



;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Procedure  1a.       [foldr]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;(define (foldr combine-op init l)
;  (cond 
;    [(empty? l) init]
;    [else (combine-op (first l)
;                      (foldr combine-op init (rest l)))]))


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Procedure  2a.       [foldl]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;(define (foldl combine-op init l)
;  (cond 
;    [(empty? l) init]
;    [else (foldl combine-op
;                 (combine-op init (first l)) (rest l))]))


So, nun kann jeder wunderbar drüber nachdenken wie die wohl funktionieren :)

Antworten

Zurück zu „Archiv“