בהסקל, מה ההבדל בין "תן x = 5" ל "x = 5"?


תשובה 1:

x = 5 יכול להיות

  • הצהרה ברמה העליונה היא הצהרה מקומית בתוך ביטוי מתיר או איפה לחסום
x = 5 - הצהרת ברמה העליונה foo = - דוגמה מטופשת func, מוסיפה 5 ואז מחלקת על ידי 2 לאפשר y = 2 x = 5 ב (/ y). (+ x) foo = (/ y). (+ x) כאשר y = 2 x = 5

בואו x = 5 יכול להיות

  • תחילתו של ביטוי מרשה (ראה לעיל) הצהרה מקומית בהבנת רשימה הצהרה מקומית בגוש דו-ציון.

מה שלא יכול להיות זו הצהרה ברמה העליונה.

המצטרפים החדשים להאסקל מבולבלים לעיתים קרובות על ידי אותה נקודה אחרונה, מכיוון שהם צריכים להקליד let x = 5 ולא רק x = 5 אם הם עובדים במעטפת GHCi. אך הסיבה לכך היא ש- GHCI עובד על ידי גלישת כל שורה שהוקלדה בתוך כניסה מרומזת, כך שהקוד שאתה מקליד באופן אינטראקטיבי ל- GHCi הופך לביטוי אחד ארוך מקונן. כתוצאה מכך קוד שהוקלד ב- CHCi אינו פועל בדיוק באותה פורמט כמו קוד Haskell רגיל.