ML: התחל עם תכנות מטא

גילוי נאות: התמיכה שלך עוזרת להפעיל את האתר! אנו מרוויחים דמי הפניה עבור חלק מהשירותים שאנו ממליצים עליהם בדף זה.


ML מייצג “שפת מטה”, ו- ML היא חברה במשפחת שפות התכנות למטרות כלליות.

כמו שפות תכנות מוקדמות רבות, ML נוצר על ידי הקהילה האקדמית למטרות מחקר, ותכונותיה השפיעו על שפות תכנות רבות שהלכו בעקבותיה..

מה זה ML?

ML היא שפת תכנות פונקציונלית מורחבת רב פרדיגמה. לעתים קרובות היא מתויגת כשפה פונקציונלית “טמאה”, מכיוון שהיא מאפשרת תופעות לוואי. התכונות הכרחיות של ML בנויות על גרעין פונקציונלי.

זה שימושי במיוחד לתכנות מטה – כתיבת תוכניות שמפעילות מניפולציות של תוכניות אחרות וזו המטרה המקורית של ML. ML ידוע היטב בזכות השימוש שלה במערכת מסוג Hindley-Milner שיכולה להקצות אוטומטית את סוגי רוב הביטויים ללא הערות מפורשות..

ML משמש למגוון רחב של תכנות:

  • יישומים מדעיים;
  • משפט מוכיח;
  • מנתחים, מהדרים, שפות תכנות;
  • יישומי מערכות פיננסיות;
  • ביואינפורמטיקה ומאגרי מידע גנאלוגיים.

ML משמש גם בחינוך, בקורסי תכנות מבוא להפגנת היגיון ושיטות תכנות בסיסיות.

היסטוריה קצרה של ML

שפת התכנות ML פותחה בשנות השבעים על ידי רובין מילנר וחבריו באוניברסיטת אדינבורו במהלך עבודתם בנושא הלוגיקה לתפקודים מחשוביים (LCF) – חוקר משפטים אוטומטי אינטראקטיבי. LCF יושם ב- ML והוצג בשנת 1972. התחביר של ML נוצר בהשראת שפת התכנות ISWIM.

ML התפתחה בהמשך למספר שפות תכנות, כולן חלק ממשפחת ה- ML. שני הניבים החשובים ביותר כיום הם Standard ML (SML) ו- OCaml. תכונות ורעיונות של ML השפיעו על שפות רבות אחרות כמו Cyclone, Elm, Nemerle, Haskell, C ++, ואחרים..

תכונות

זוהי שפה שהוקלדה בקפדנות, ועושה שימוש במערכת מסוג Hindley-Milner כדי להבטיח בטיחות בסוג. כתוצאה מכך, תוכנית ML שהוקלדה היטב אינה גורמת לשגיאות בזמן ריצה. התחביר ובקרת הזרימה שלו שונים באופן מהותי משפות מסוג C, כך שלא תמצאו מיפוי טריוויאלי בין קוד C ו- ML.

ML כולל מערכת ניהול זיכרון אוטומטית באמצעות איסוף זבל, שבה הזיכרון מוקצה ומשוחרר אוטומטית על ידי המהדר. פולימורפיזם פרמטרי נתמך, כלומר אתה יכול לכתוב פונקציה פולימורפית אחת שיכולה לקחת פרמטר מכל סוג תואם.

ל- ML יש פונקציות מהשורה הראשונה וסגרים לקסיקליים, מה שמקל מאוד על הרכבת פונקציות מרובות, משימה שיכולה להיות מסובכת מאוד בשפות תכנות חיוניות..

ML תומך גם בנתונים מסוגים רקורסיביים פולימורפיים עם התאמת דפוסים, ויש לו מערכת מודולים מעולה שמרכזת מבנים וחתימות. זה בעיקר משתמש בהערכה נלהבת, כלומר כל הביטויים העליוניים תמיד מוערכים, בעוד שעדיין ניתן להשיג הערכה עצלה באמצעות סגרים.

תחילת העבודה עם ML

אם יש לך ניסיון קודם בשיטות תכנות והגיון, תחילת העבודה עם תכנות ML לא אמורה להוות אתגר רב. עם זאת, אם ML הוא ההקדמה הראשונה שלך לתכנות, עליך להתחיל עם הדרכות וקורסים בסיסיים, לפני שתעבור לאלו התובעניים יותר.

סביבת הפיתוח שלך ב- ML

ברור שתצטרך להקים סביבת פיתוח אישית משלך. אנו ממליצים להשתמש בנגזרת והמהדר הרגיל של ML של ניו ג’רזי (SML / NJ), מכיוון שזה המהדר הראשון והפופולרי ביותר לשפת התכנות ML..

SML / NJ נתמך כיום בשלושת הפלטפורמות הגדולות של מערכות הפעלה: Mac OS X, Linux ו- Windows. במילים אחרות, לא אמור להיות לכם שום בעיה להפעיל סביבת פיתוח של ML כמעט בכל מחשב.

התקנת ML בפלטפורמות אלה היא פשוטה ומתועדת היטב. כל שעליך לעשות הוא לבחור בהורדה המתאימה לפלטפורמה שלך בדף ההורדה של SML / NJ ופעל לפי הוראות ההתקנה.

משאבים

ML קיימת כבר שנים, כך שלא חסרים משאבים שונים. כשמדובר בלימוד השפה, זה תמיד דבר טוב. אך יש לזכור כי משאבים רבים של ML הם ישנים למדי ועשויים להיות מיושנים.

מיקדנו את החיפוש שלנו במדריכי לימוד, ספרים אלקטרוניים וקורסים אינטראקטיביים ורלוונטיים יחסית. עם זאת, אפילו משאבים ישנים יכולים להועיל אם אתה רק מתחיל.

ML קורסים והדרכות

התמקדות במשאבים תיאורטיים היא דרך טובה לנקוט בצעדים הראשונים שלך בתכנות ML, אך לאחר שתשליט את הבסיס, תצטרך לעבור לדוגמאות מעשיות..

כדי להעריך באמת את מלוא הפוטנציאל של ML, תצטרך לראות את זה בפעולה. לאחר שנוח לך עם תחביר בסיסי, אתה יכול לקחת את האימונים שלך לשלב הבא ולנסות מדריכים ומדריכים מעשיים:

  • תכנות בתקן ML ’97 סטנדרטי: מדריך מקוון מאת סטיבן גילמור: זהו מדריך חופשי ל- ML המציג מושגים חשובים בשפת ה- ML וממחיש אותם באמצעות דוגמאות קצרות. זה זמין בפורמטים שונים.
  • תכנות ב- ML רגיל (pdf) מאת רוברט הרפר: זהו מדריך ML בחינם שנוצר לקורס אוניברסיטת קרנגי מלון “מדעי המחשב 12-212: עקרונות תכנות.”
  • מבוא עדין ל- ML מאת אנדרו קאמינג: זהו קורס חינם הכולל מבוא ושבעה שיעורים בנושא ML עם הרבה משאבים מועילים אחרים.
  • טיפים למדעני מחשבים בנושא ML רגיל (מתוקן) (pdf) מאת Mads Tofte: זהו ספר בחינם, עם מספר עצות שימושיות לתכנות ML..

משאבים נוספים

השלב הבא הוא להתמקד במשאבים מורחבים יותר, כמו הדרכות מעשיות עם הרבה קוד לדוגמה. דוגמאות אמיתיות אלו יעזרו להבנתך בתכנות ML. ייחדנו כמה מהאנשים הנפוצים ביותר:

  • מדריך למשתמש הרגיל של ניו ג’רזי: זהו מדריך מקוון לתכנות ב- ML רגיל באמצעות SML / NJ, המכסה את כל המידע, החל מהתקנת SML / NJ לשאלות נפוצות, תכונות מיוחדות, מבנה המהדר וספריות..
  • ספריית ML בסיס רגילה היא הפניה מקוונת לספריית ML בסיס רגילה.

ספרים

כללנו כמה ספרים על תכנות ML. רבים מהספרים האלקטרוניים הללו מומלצים על ידי מחנכי ML, והם יגיעו לשימוש בהפניה בזמן שאתה עובד על מדריכים ומדריכים מעשיים:

  • ML למתכנת העובד, מהדורה שנייה מאת L C Paulson: זה מתמקד בהסבר כיצד לתכנת בשפה ML, ובהוראת היסודות של תכנות פונקציונאליות.
  • אלמנטים של תכנות ML, מהדורת ML97 (מהדורה שנייה) מאת ג’פרי ד אולמן: ספר זה מספק הדרכה מקדימה נגישה, צעד אחר צעד, על תכנות ML, והתייחסות מלאה לתכונות מתקדמות והסברתן. אין צורך בידע קודם ב- ML או בתכנות פונקציונאליות.
  • ה- MLer הקטן מאת פלייזן ופרידמן: ספר זה מציג את החדשים בתכנות, כמו גם את אלו המנוסים בשפות תכנות אחרות, את עקרונות הסוגים, המחשוב, ובניית התוכניות..

נע קדימה

כמו בכל שפות התכנות, ML נלמד בסופו של דבר על ידי ביצוע. אז הגדר את סביבת הפיתוח שלך, ובעזרת משאבים אלה, התחל בקידוד. בהצלחה!

למדו על שפות תכנות מעניינות אחרות.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map