Haskell:
קריאת פרמטרים משורת הפקודה
איך לעשות:
ב-Haskell, קוד לקריאה משורת הפקודה פשוט וקצר. נשתמש במודול System.Environment:
import System.Environment (getArgs)
main :: IO ()
main = do
args <- getArgs
print argsהרצת התוכנית עם הפרמטרים hello ו-world תביא את הפלט:
["hello", "world"]ניתן גם לקרוא ארגומנט אחד עם getProgName לשם התוכנית ו-getArgs לשאר הפרמטרים.
צלילה לעומק
בעבר, אירועים כמו תחרות ה-ICFP ופורומים קהילתיים עזרו לפתח פונקציונליות בסיסית זו. ישנם אלטרנטיבות כגון מודולים חיצוניים כמו optparse-applicative לפרסינג אופציות מתקדמות יותר. ברמת המימוש, getArgs ו-getProgName מומשו בחלקם ב-C על מנת לאפשר גישה נוחה למשתני הסביבה של מערכת ההפעלה.
ראה גם
- Haskell System.Environment documentation
- optparse-applicative on Hackage
- Haskell Wiki book on command line parsing
- פוסט בבלוג אודות קריאת ארגומנטים ופרסינג ב-Haskell (חיפוש בגוגל עם מפתחי המילים “Haskell command line arguments blog” יניב אפשרויות)