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” יניב אפשרויות)