[Progra] Aufgabe 2

[Progra] Programmierung
[DSAL] Datenstrukturen und Algorithmen
[SWT] Softwaretechnik
[DB] Datenbanken und Informationssysteme

Aufgabe 2

Beitragvon Der Fuß » 17.01.08 23:21

Wie kann ich denn in Hugs eine .hs File laden, die eine andere benutzt? (Ich will also squareroot ausführen und benutze darin times.)
Der schreibt dann undefined variable times, obwohl beide im gleichen Ordner sind.
Benutzeravatar
Der Fuß
 
Beiträge: 114
Registriert: 27.10.07 17:11

Beitragvon theTux » 17.01.08 23:27

Ob das möglich ist, ohne Module dafür definiert zu haben, weiß ich nicht.
Schreib' doch einfach alle Funktionen in die gleiche Datei. Bzw. kopier' die Funktionen in die Datei, in der du sie brauchst.
Stur lächeln und... oh, falscher Pinguin.
Benutzeravatar
theTux
 
Beiträge: 577
Registriert: 15.01.06 16:41

Beitragvon Der Fuß » 17.01.08 23:32

YEAH! Danke, funktioniert.
Aber leider geht mein gutes squareroot nicht...
Benutzeravatar
Der Fuß
 
Beiträge: 114
Registriert: 27.10.07 17:11

Beitragvon Der Fuß » 17.01.08 23:42

Moment, es geht doch. Ich dachte, der Rechner würde sich aufhängen, aber er musste nur so lange rechnen. (Bei Eingabe von squareroot 16 schon ca. 5 Minuten!!!)
Ist also nicht das effizienteste Programm.
Benutzeravatar
Der Fuß
 
Beiträge: 114
Registriert: 27.10.07 17:11

Beitragvon mr.nice » 18.01.08 07:19

Bei mir kommt sogar stack overflow wenn ich times in squareroot benutze... seltsam. mit * Operator klappts :)
mr.nice
 
Beiträge: 43
Registriert: 07.01.08 18:34

Beitragvon mirko » 18.01.08 08:49

mr.nice hat geschrieben:Bei mir kommt sogar stack overflow wenn ich times in squareroot benutze... seltsam. mit * Operator klappts :)


dann dürfte die inline-variante der multiplikation effizienter implementiert sein, als deine... - gibt es denn werte, für die squareroot keinen stack-overflow bekommt?
mirko
 
Beiträge: 1032
Registriert: 22.10.06 18:33
Studiert seit: WS 12/13

Beitragvon O.D. » 18.01.08 09:20

Wenn er die falsch implementiert hat, kann es sein, dass die Funktion nicht terminiert.
Beispiel:
Code: Alles auswählen
foobar :: Int ....
foobar (x+1) = ... foobar x
foobar 0 = ...

funktioniert, während
Code: Alles auswählen
foobar :: Int ...
foobar (x) = ... foobar (x-1)
foobar 0 = ...

nicht funktioniert, obwohl sie ja scheinbar dasselbe tun.
I can hear deaf people!
Benutzeravatar
O.D.
 
Beiträge: 745
Registriert: 05.08.06 19:31
Wohnort: Aachen & Minden
Studiengang: Informatik (M.Sc.)
Anwendungsfach: Physik

Beitragvon mirko » 18.01.08 10:06

subtraktionen waren allerdings gar nicht erlaubt. wenn er also die zweite variante implementiert hat, hat er eh gegen die aufgabenstellung verstoßen...
mirko
 
Beiträge: 1032
Registriert: 22.10.06 18:33
Studiert seit: WS 12/13

Beitragvon O.D. » 18.01.08 10:18

Kerl, das war doch nur ein Beispiel. Ich hab nicht den Dunst einer Ahnung wie die Aufgabe lautet. Außerdem würde ich mich hüten irgendwas zu schreiben was die Lösung der Aufgabe enthalten könnte.
I can hear deaf people!
Benutzeravatar
O.D.
 
Beiträge: 745
Registriert: 05.08.06 19:31
Wohnort: Aachen & Minden
Studiengang: Informatik (M.Sc.)
Anwendungsfach: Physik

Beitragvon mr.nice » 18.01.08 10:27

irgendwie gehts jetzt, hab da was vertauscht...

ab 9 gabs den error...
mr.nice
 
Beiträge: 43
Registriert: 07.01.08 18:34

Beitragvon MaoDelinSc » 18.01.08 11:40

Unrecognised character `\0' in column 4

kommt als Fehlermeldung, noch bevor ich irgendwas in Hugs eintippe...
Hab keine Ahnung, was das heißen soll, irgendwas kaputt in meiner vierten Zeile? Dafür sieht die aber ziemlich korrekt aus... Int Int = Int wird ja wohl gehen bei einer Int -> Int -> Int Funktion...
Oder heißt das irgendwas anderes?
MaoDelinSc
 
Beiträge: 296
Registriert: 07.12.07 10:28
Wohnort: Aachen
Studiengang: Informatik (B.Sc.)
Studiert seit: WS 09/10
Anwendungsfach: Medizin

Beitragvon mirko » 18.01.08 12:03

MaoDelinSc hat geschrieben:Unrecognised character `\0' in column 4


column heißt "spalte", nicht "zeile". kommt denn irgendwo in deinem code ein '\0' vor? hast du hugs mal mit nem anderen programm oder ganz ohne programm gestartet?
mirko
 
Beiträge: 1032
Registriert: 22.10.06 18:33
Studiert seit: WS 12/13

Beitragvon MaoDelinSc » 18.01.08 12:06

Also Hugs klappt mit den Programmen aus der Vorlesung...
Hab keinen \ benutzt...
Hab meine Editor-Dateien jetzt mal mit ANSI codiert statt mit Unicode und jetzt kommt die Fehlermeldung nicht mehr, dafür aber eine andere^^

Syntax error in expression (unexpected numeric literal)

sieht doch schon mal freundlicher aus, da der Fehler am Programm zu liegen scheint... (wobei ich aber auch nicht weiß, was Hugs mir zu sagen versucht)

Syntax error in declaration (unexpected symbol "x") wie kann das denn sein wenn ich eine Funktion Int -> Int -> Int habe und direkt drunter 1 x = x schreibe und nirgendwo sonst im Programm kommt ein x vor?
MaoDelinSc
 
Beiträge: 296
Registriert: 07.12.07 10:28
Wohnort: Aachen
Studiengang: Informatik (B.Sc.)
Studiert seit: WS 09/10
Anwendungsfach: Medizin

Beitragvon Coolcat » 18.01.08 13:15

@MaoDelinSc: Schick mir mal den Quellcode per PM.Vermutlich liegt der Fehler ganz wo anders, die Fehlermeldungen sind nicht immer ganz hilfreich.
My software never has bugs. It just develops random features.
Benutzeravatar
Coolcat
Promoter
 
Beiträge: 2574
Registriert: 28.11.05 21:26
Wohnort: Kohlscheid / Düsseldorf
Studiengang: Informatik (Dipl.)
Studiert seit: fertig
Anwendungsfach: BWL

Beitragvon O.D. » 18.01.08 14:37

Man muss nur wissen wie Hugs tickt :)
I can hear deaf people!
Benutzeravatar
O.D.
 
Beiträge: 745
Registriert: 05.08.06 19:31
Wohnort: Aachen & Minden
Studiengang: Informatik (M.Sc.)
Anwendungsfach: Physik

Nächste

Zurück zu Praktische Informatik