www.jammni.de

Logo - Kleiner Drache
Login
Username:

Passwort:

Daten merken
Auto-Login
Registrieren
 
Online
niemand
 
Forumsuche
Suche nach:

Logo - DracheHaskell-Forum

vorherige Seite 1 2  

Siracusa

Gepostet:
23.10.2006 20:45

   
Noch ne Frage zu b) Verwendest du zufällig eine Funktion o.ä. mit dem Namen ghc in deinem Programm?
Zum Seitenanfang    
 
Blacksoul

Gepostet:
26.01.2007 17:39

   
Hallo,

ich bin neu hier und wir haben in der Schule im Moment ebenfalls Haskell, falls wir später mal studieren wollen, als kleine vorbereitung...

ich habe nun auch winhugs zu hause, jedoch kennt er bei mir die funktionen ord und chr nicht..., jedoch, da wir gerade uns mit cheffrierung beschäftigen, sind diese sehr wichtig für mich ...habe ja außerdem gerade ein problem mit caesar(vs. mutiplikation)

Wie bekomm ich nun funktionen wie ord und chr aktiviert?

mfg
PS: :l prelude.hs macht er bei mir nicht
Zum Seitenanfang    
 
Siracusa

Gepostet:
26.01.2007 18:46

   
Hi,

einfach in die Datei, in der du deinen Quellcode bearbeitest, ganz oben ein import Char einfügen. In dem Modul sind die beiden Funktionen nämlich definiert.
module MyModule (myDigitToInt) where    -- Die Zeile kannst du auch weglassen

import Char

myDigitToInt :: Char -> Int
myDigitToInt c
| c >= '0' && c <= '9' = ord c - ord '0'
| otherwise = error "myDigitToInt: character is no digit"


Und das Haskell-Prelude wird beim Start automatisch geladen, du mußt es nicht extra einbinden.

Viele Grüße,

Siracusa
Zum Seitenanfang    
 
Blacksoul

Gepostet:
26.01.2007 22:57

   
Muss ich das nun bei jeder Datei machen?

In der Schule, wo wir auch Prelude> haben ist das automatisch irgendwie mit drin..

mfg
Zum Seitenanfang    
 
Siracusa

Gepostet:
27.01.2007 20:47

   
Kann sein, daß ihr in der Schule noch eine ältere Haskell-Version habt. Bei den neueren wurden im Zuge der Modularisierung einige Funktionen aus dem Prelude in extra Dateien verlagert. Heißt also, in jeder Datei müssen die benötigten Funktionen importiert werden.

Viele Grüße,

Siracusa
Zum Seitenanfang    
 
Blacksoul

Gepostet:
27.01.2007 21:02

   
Kann ich das in die Prelude noch irgendwie mit aufnehmen, oder gibt es keine weitere Möglichkeit, außer immer einbinden?
Zum Seitenanfang    
 
Siracusa

Gepostet:
28.01.2007 01:13

   
Theoretisch kannst du die Zeile zum Einbinden ins Prelude übernehmen, da WinHugs soweit ich weiß beim Starten das Prelude jedesmal neu übersetzt. Davon ist aber dringend abzuraten, da der Code dann unter Umständen nicht mehr auf anderen Haskell-Interpretern oder -Compilern läuft. Standard-Bibliotheken sollte man niemals ändern!
Zum Seitenanfang    
 
Blacksoul

Gepostet:
28.01.2007 02:29

   
Okay..

wenn ich import Char mache, aber in der Schule das in der prelude schon mit drin ist...gibt es einen fehler?
Zum Seitenanfang    
 
Siracusa

Gepostet:
28.01.2007 07:07

   
Naja, falls es Fehler gibt kannst du es dort ja wieder rausnehmen. Oder du benutzt zuhause einfach den gleichen Interpreter/Compiler wie in der Schule.
Zum Seitenanfang    
 
Blacksoul

Gepostet:
28.01.2007 14:25

   
Hmmm...okay

dann danke für alles :)
Zum Seitenanfang    
 

vorherige Seite 1 2