none
מה המטרה של פיתוח שפת F#? RRS feed

  • שאלה

  • מה היתרונות שלה מול שפות .NET אחרות?

    האם המטרה לפיתוחה היא מעבר קל משפה קדומה לשפה תומכת .NET בעלת סינטקס דומה (כדוגמת J# ו-VB.NET)?

     

    תודה מראש :)


    • נערך על-ידי Melgino יום ראשון 30 אוקטובר 2011 00:33
    יום ראשון 30 אוקטובר 2011 00:32

תשובות

  • אני לא יודע אם אתה עדיין מסוקרן, אבל רק עכשיו מצאתי במקרה את השאלה בגוגל :)

    אני רואה כאן שתי שאלות שונות, הראשונה היא למה לפתח ב-#F? והשנייה היא למה #F פותחה במקור?.

    השאלה הראשונה היא שאלה קשה, והיא קשורה לעוד שפות שדומות ל-#F. אני יכול (ואני עומד לעשות זאת) לתת לך רשימה של יתרונות ספציפיים של #F ולקוות שתכנע, אבל זה לא באמת יעבוד. #F ושפות דומות (Haskell ו-ML במיוחד, אבל גם שפות כמו LISP ו-Scheme) "חושבות" בצורה מאוד שונה משפות מיינסטרים כמו #C ו-Java (למרות שהגרסאות החדשות של #C דומות ל-#F, ולא במקרה). ל-Python ול-Ruby יש דימיון ל-#F, אבל המתכנתים שעובדים איתן נוטים לחשוב יותר בצורה המיינסטרימית. שיטת החשיבה השונה מקלה על דברים רבים, במיוחד כאשר עושים דברים שקשורים למדע (אבל גם גרפיקה ואתרי אינטרנט אפשר לעשות עם #F). אפילו במקרים שבהם #F לא נותנת קוד נוח יותר (גם לכתיבה וגם לקריאה), מכיוון ש-#F עוצבה גם בדמות #C, תמיד תוכל לכתוב קוד דמוי #C (כך שבעצם אין מקרים שבהם #C מוצלחת יותר מ-#C).

    הנה רשימה קצרה ולא מלאה:

    • פונקציות הן ערכים (גם ב-#C, מגרסא 3)! אפשר לכתוב פונקציה שמקבלת מערך ופונקציה אחרת, וקוראת לפונקציה האחרת על כל איבר במערך. אפשר להחזיר פונקציות. אפשר ליצור מערך של פונקציות, ולקרוא לכולם עם פרמטר מסוים. ישנן המון דוגמאות, ואחרי שלומדים #F, קשה לחזור לשפות כמו Java - כל כך נוח!
    • pattern matching. קשה להסביר את זה בלי דוגמאות קוד, אבל אפשר. PM נותן לך בקלות רבה מאוד לבדוק האם מבנה נתונים תואם לתבנית שאתה מצפה (אפשר גם לספק כמה תבניות, ולפצל למקרים - בדומה ללולאה switch מתוחכמת מאוד), וגם להוציא את המידה ממבנה הנתונים.
    • מערכת טיפוסים חזקה. ב-#C טיפוס יכול להיות טיפוס יסודי (מספר, אות וכו') או יכול להיות מחלקה (ויש גם טיפוסים כלליים, Generics). כבר הזכרתי שב-#F גם טיפוס יכול להיות גם פונקציה, אבל זה לא הכול: ל-#F יש תמיכה מובנית ב-n-יות סדורות (ל-4 #C יש מחלקה ל-n-יות סדורות, אבל זה לא נוח כמו ב-#F), יש טיפוסי סכום (למשל צורה גיאומטרית יכולה להיות ריבוע עם גובה ורוחב או עיגול עם רדיוס) שבעזרת PM כל מאוד להשתמש בהם, יש טיפוסי כפל (גרסא נוחה ל-structs) ויש יחידות מידה (לא כמו בשפות אחרות שנבדקות בזמן ריצה, אלא כאלו שנבדקות בזמן הקומפילציה ולכן גם לא מאיטות את זמן הריצה).
    • computation expressions (מי שמכיר, זו גרסא מורחבת למונאדות, monads). בעקרון, זה רק סוכר ("הופך את הקוד למתוק", כמו שב-C אפשר לכתוב [a[i ולא רק *(a + 4 * i) ). אם שמת לב, ל-#C גרסא 5 יש asynchronous computations, אבל ל-#F יש את זה כבר כמה שנים, כי ממש קל לכתוב את זה עם CE. כמו הכל, זה לא מוסיף כוח, אבל הופך את הקוד לקצר וקריא.
    • מצב אינטראקטיבי (מיקרוסופט הבטיחה להוציא תוכנות עזר שנותנות מצב אינטראקטיבי ל-#C ול-VB, אבל למה לחכות?). אתה מכניס בלוק קוד -> אתה מקבל תוצאה.
    • type providers. ל-3 #F (יגיע עם VS11) הוסיפו TP. אני לא רוצה להעמיק על זה, אבל בקיצור TP מקלים מאוד על עבודה עם כמויות גדולה של מידע. ישנן כמה הרצאות באינטרנט בנושא (אני ממליץ להקשיב להרצאות של Don Syme בנושא) וכמה דוגמאות כאן: http://fsharp3sample.codeplex.com/.

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

    השאלה השנייה כבר פחות מעניינת אחרי הראשונה, אבל בעקרון #F התחילה כ-OCaml ל-NET., אבל היום היא כבר הרבה מעבר.

    • הוצע כתשובה על-ידי pituachMVP, Moderator יום שני 14 נובמבר 2011 06:05
    • סומן כתשובה על-ידי Melgino יום שני 14 נובמבר 2011 15:00
    • סימון כתשובה בוטל על-ידי Melgino יום שני 14 נובמבר 2011 15:00
    • הצעה כתשובה בוטלה על-ידי Melgino יום שני 14 נובמבר 2011 15:00
    • סומן כתשובה על-ידי Melgino יום שני 14 נובמבר 2011 15:00
    יום ראשון 13 נובמבר 2011 09:28
  • אתחיל ממילה טובה :-)
    סיכום יפה ומושקע

    נעבור לכמה נקודות מהנסיון האישי שלי שלא מסתדרות עם מה שכתבת:

    * כמי שמגיע ישירות מתחום המדע (ומדע בשבילי זה פיזיקה בלבד ולא כל מקצועות "המדע" להתפלספות ורוח כמו מדעי רוח או מדעי משחקי הלגו לילדים בני שנה עד שנתיים) אני לא מכיר את הדברים שאתה מציג כאן. במדע שאני מכיר ועבדתי לא מעט בחברות מחקר (החל מאוניברסיטת ת"א ועד המכון הגיאופיזי לישראל ועוד..) השפות לתכנות בהן עושים שימוש הן קודם כל פורטרן והבאה בתור היא C. נתקלתי בהרבה מקרים של מעבר ל C# מתוך C או מ C++. אני דרך אגב עבדתי עם פורטרן ו C למשל בעבר.

    אני בטוח שאף אחד מהגופים שעבדתי איתם לא שמע על F# ואני לא מכיר שום תוכנת מחקר שפותחה ב F#. לא שאין אבל אישית אני לא מכיר :-)

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

    כמובן שאני אומר מה שאני מכיר ואולי יש דברים אחרים במקומות שלא נפגשתי (קשה לי להאמין בזה)

    * TP לא קשור ל F# ספציפית אלא כל שפה בדוט נט מאפשרת עבודה עם TP. אני עובד עם TP בטכנולוגיית MVC בכלל בשפת C# כרגע (בדיוק לאחרונה ראיתי גם סירטון על זה). הדבר נכון לגבי שאר הדברים שרשמת שיש ב F# אם עברתי על הכל ברפרוף. דינמיות (אם לזה התכוונת) נוספה מדוט נט גרסה 4 וקיימת עתה בכל שפה בדוט נט.

    * דרך אגב בדקתי את F# ממש ממש ממש... ממש מזמן כמו שאני נוהג לבדוק כל דבר כמעט שיוצא לשוק אם יש לי כוח/זמן. הכנתי את הפרוייקט הלימודי שהיה באתר של מייקרוסופט לשם בדיקה ולימוד. לא התרשמתי באופן אישי ולא נגעתי שוב בשפה זו אף פעם אחר כך :-)

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

    אי אפשר להעריך בלי ללמוד ולהתנסות :-)


    signature
    • סומן כתשובה על-ידי Melgino יום שני 14 נובמבר 2011 15:03
    יום ראשון 13 נובמבר 2011 15:14
    מנחה דיון

כל התגובות

  • אני לא יודע אם אתה עדיין מסוקרן, אבל רק עכשיו מצאתי במקרה את השאלה בגוגל :)

    אני רואה כאן שתי שאלות שונות, הראשונה היא למה לפתח ב-#F? והשנייה היא למה #F פותחה במקור?.

    השאלה הראשונה היא שאלה קשה, והיא קשורה לעוד שפות שדומות ל-#F. אני יכול (ואני עומד לעשות זאת) לתת לך רשימה של יתרונות ספציפיים של #F ולקוות שתכנע, אבל זה לא באמת יעבוד. #F ושפות דומות (Haskell ו-ML במיוחד, אבל גם שפות כמו LISP ו-Scheme) "חושבות" בצורה מאוד שונה משפות מיינסטרים כמו #C ו-Java (למרות שהגרסאות החדשות של #C דומות ל-#F, ולא במקרה). ל-Python ול-Ruby יש דימיון ל-#F, אבל המתכנתים שעובדים איתן נוטים לחשוב יותר בצורה המיינסטרימית. שיטת החשיבה השונה מקלה על דברים רבים, במיוחד כאשר עושים דברים שקשורים למדע (אבל גם גרפיקה ואתרי אינטרנט אפשר לעשות עם #F). אפילו במקרים שבהם #F לא נותנת קוד נוח יותר (גם לכתיבה וגם לקריאה), מכיוון ש-#F עוצבה גם בדמות #C, תמיד תוכל לכתוב קוד דמוי #C (כך שבעצם אין מקרים שבהם #C מוצלחת יותר מ-#C).

    הנה רשימה קצרה ולא מלאה:

    • פונקציות הן ערכים (גם ב-#C, מגרסא 3)! אפשר לכתוב פונקציה שמקבלת מערך ופונקציה אחרת, וקוראת לפונקציה האחרת על כל איבר במערך. אפשר להחזיר פונקציות. אפשר ליצור מערך של פונקציות, ולקרוא לכולם עם פרמטר מסוים. ישנן המון דוגמאות, ואחרי שלומדים #F, קשה לחזור לשפות כמו Java - כל כך נוח!
    • pattern matching. קשה להסביר את זה בלי דוגמאות קוד, אבל אפשר. PM נותן לך בקלות רבה מאוד לבדוק האם מבנה נתונים תואם לתבנית שאתה מצפה (אפשר גם לספק כמה תבניות, ולפצל למקרים - בדומה ללולאה switch מתוחכמת מאוד), וגם להוציא את המידה ממבנה הנתונים.
    • מערכת טיפוסים חזקה. ב-#C טיפוס יכול להיות טיפוס יסודי (מספר, אות וכו') או יכול להיות מחלקה (ויש גם טיפוסים כלליים, Generics). כבר הזכרתי שב-#F גם טיפוס יכול להיות גם פונקציה, אבל זה לא הכול: ל-#F יש תמיכה מובנית ב-n-יות סדורות (ל-4 #C יש מחלקה ל-n-יות סדורות, אבל זה לא נוח כמו ב-#F), יש טיפוסי סכום (למשל צורה גיאומטרית יכולה להיות ריבוע עם גובה ורוחב או עיגול עם רדיוס) שבעזרת PM כל מאוד להשתמש בהם, יש טיפוסי כפל (גרסא נוחה ל-structs) ויש יחידות מידה (לא כמו בשפות אחרות שנבדקות בזמן ריצה, אלא כאלו שנבדקות בזמן הקומפילציה ולכן גם לא מאיטות את זמן הריצה).
    • computation expressions (מי שמכיר, זו גרסא מורחבת למונאדות, monads). בעקרון, זה רק סוכר ("הופך את הקוד למתוק", כמו שב-C אפשר לכתוב [a[i ולא רק *(a + 4 * i) ). אם שמת לב, ל-#C גרסא 5 יש asynchronous computations, אבל ל-#F יש את זה כבר כמה שנים, כי ממש קל לכתוב את זה עם CE. כמו הכל, זה לא מוסיף כוח, אבל הופך את הקוד לקצר וקריא.
    • מצב אינטראקטיבי (מיקרוסופט הבטיחה להוציא תוכנות עזר שנותנות מצב אינטראקטיבי ל-#C ול-VB, אבל למה לחכות?). אתה מכניס בלוק קוד -> אתה מקבל תוצאה.
    • type providers. ל-3 #F (יגיע עם VS11) הוסיפו TP. אני לא רוצה להעמיק על זה, אבל בקיצור TP מקלים מאוד על עבודה עם כמויות גדולה של מידע. ישנן כמה הרצאות באינטרנט בנושא (אני ממליץ להקשיב להרצאות של Don Syme בנושא) וכמה דוגמאות כאן: http://fsharp3sample.codeplex.com/.

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

    השאלה השנייה כבר פחות מעניינת אחרי הראשונה, אבל בעקרון #F התחילה כ-OCaml ל-NET., אבל היום היא כבר הרבה מעבר.

    • הוצע כתשובה על-ידי pituachMVP, Moderator יום שני 14 נובמבר 2011 06:05
    • סומן כתשובה על-ידי Melgino יום שני 14 נובמבר 2011 15:00
    • סימון כתשובה בוטל על-ידי Melgino יום שני 14 נובמבר 2011 15:00
    • הצעה כתשובה בוטלה על-ידי Melgino יום שני 14 נובמבר 2011 15:00
    • סומן כתשובה על-ידי Melgino יום שני 14 נובמבר 2011 15:00
    יום ראשון 13 נובמבר 2011 09:28
  • אתחיל ממילה טובה :-)
    סיכום יפה ומושקע

    נעבור לכמה נקודות מהנסיון האישי שלי שלא מסתדרות עם מה שכתבת:

    * כמי שמגיע ישירות מתחום המדע (ומדע בשבילי זה פיזיקה בלבד ולא כל מקצועות "המדע" להתפלספות ורוח כמו מדעי רוח או מדעי משחקי הלגו לילדים בני שנה עד שנתיים) אני לא מכיר את הדברים שאתה מציג כאן. במדע שאני מכיר ועבדתי לא מעט בחברות מחקר (החל מאוניברסיטת ת"א ועד המכון הגיאופיזי לישראל ועוד..) השפות לתכנות בהן עושים שימוש הן קודם כל פורטרן והבאה בתור היא C. נתקלתי בהרבה מקרים של מעבר ל C# מתוך C או מ C++. אני דרך אגב עבדתי עם פורטרן ו C למשל בעבר.

    אני בטוח שאף אחד מהגופים שעבדתי איתם לא שמע על F# ואני לא מכיר שום תוכנת מחקר שפותחה ב F#. לא שאין אבל אישית אני לא מכיר :-)

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

    כמובן שאני אומר מה שאני מכיר ואולי יש דברים אחרים במקומות שלא נפגשתי (קשה לי להאמין בזה)

    * TP לא קשור ל F# ספציפית אלא כל שפה בדוט נט מאפשרת עבודה עם TP. אני עובד עם TP בטכנולוגיית MVC בכלל בשפת C# כרגע (בדיוק לאחרונה ראיתי גם סירטון על זה). הדבר נכון לגבי שאר הדברים שרשמת שיש ב F# אם עברתי על הכל ברפרוף. דינמיות (אם לזה התכוונת) נוספה מדוט נט גרסה 4 וקיימת עתה בכל שפה בדוט נט.

    * דרך אגב בדקתי את F# ממש ממש ממש... ממש מזמן כמו שאני נוהג לבדוק כל דבר כמעט שיוצא לשוק אם יש לי כוח/זמן. הכנתי את הפרוייקט הלימודי שהיה באתר של מייקרוסופט לשם בדיקה ולימוד. לא התרשמתי באופן אישי ולא נגעתי שוב בשפה זו אף פעם אחר כך :-)

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

    אי אפשר להעריך בלי ללמוד ולהתנסות :-)


    signature
    • סומן כתשובה על-ידי Melgino יום שני 14 נובמבר 2011 15:03
    יום ראשון 13 נובמבר 2011 15:14
    מנחה דיון
  • תודה!

    הנה תשובות לך (באותו הסדר):

    • אני במקרה נותן "הרצאה" קצרה על #F בעוד שבועיים לפיזיקאים "בוגרי C ו-MatLab" :) לא, #F לא נכנסה עדיין לאוניברסיטאות, כי הן צריכות לשמור על תאימות על קוד שכבר נכתב ואין לאיף אחד זמן ללמוד עוד שפת תכנות ותרגם את כל הקוד, אז כן - רוב פרויקטי המחקר הוותיקים בארץ (או לפחות בגבעת רם) עדיין עובדים עם C ו-FORTRAN. לעומת זאת, אם אין לך בסיס קוד נרחב שאתה צריך לשמור על תאימות איתו, כדאי מאוד לבדוק את #F. דברים כמו יחידות מידה, תמיכה בביטויי LaTeX (לא פורסם עדיין, אבל בקרוב יהיה אפשר להכניס ביטוי LaTeX שכתבת ישירות לקובץ הקוד ולעבוד איתו, ובכך להימנע משגיאות העתקה כאשר מעתיקים מנייר), טיפוסי סכום (וגם כפל, אבל פחות) ופונקציות כערכים - הופכים עבודה על סימולציות, עבודה עם משוואות (נומריות וסימבוליות) ועוד, לכיף. לדעתי השפה היחידה שמתחרה באמת ב-#F בתחום הזה היא Mathematica, אבל היא מכוונת להיבטים אחרים.

    אני באופן אישי עובד בעיקר על פיזיקה קלה (תיכונית+) ועל מדעי המחשב (בעיקר עבודה סימבולית על עצי ביטויים), ומדי פעם גם לוקח על עצמי פרויקטים מעשיים (אתרים אינטרנט, שפות תכנות לשימוש ספציפי, ואפילו יצירת גרסאות מיוחדות של #F לשימושים מיוחדים).

    • TP לא קיימים בשום שפה אחרת, והיא בוודאי לא "דינמיות". אני לא רוצה להיכנס לדיון על זה, כי זו לא נראת נקודה חשובה, אבל אם אתה עובד הרבה עם מידע כדאי לשמוע את ההרצאות. TP אמורים לפתור את הבעיות של code generation שיש לשפות אחרות, למשל Linq to Sql פשוט יוצר קובץ קוד עם כל מה שצריך. ל-TP יש יתרונות על סתם code gen, אם ממש חשוב לך לדעת מה הם בדיוק, אני יכול לשאול אנשים שעובדים עם זה.
    • אני לא יודע מתי היה "מזמן מזמן", ואני בוודאי לא יודע מה מיקרוסופט שמו באתר שלהם :) אני עדיין לא מצאתי מקום טוב ללימוד #F באינטרנט, אבל לדעתי הספר Real-World Functional Programming (של Tomas Petricek) מאוד טוב לאנשי #C. פגשתי לא מעט אנשים שלא התרשמו מ-#F, מכל מיני סיבות. או שלא היה להם מזל, והם לא מצאו את מקורות הלימוד הנכונים, או שלא לכולם #F מתאימה.

    נ.ב.: עברתי על המון שאילתאות גוגל בסגנון "type providers asp.net mvc", עם כל מיני צירופי מילות יחס - לא מצאתי כלום. עכשיו אני כבר סתם מסוקרן - למה התכוונת?

    יום ראשון 13 נובמבר 2011 15:40
  • לא ממש שאלתי שאלות אבל תודה בכל מקרה :-)

    * מדע בתיכון / "פיזיקה קלה"... :-)

    * פרוייקטים של "בניית אתרים" עבור גופים מדעיים = לעבודה כמדען וחוקר?!?
    אני לתומי חשבתי שכאשר אני מדבר מי שעובד במדע ברור שאני מדבר על מדענים/חוקרים במדע וכשדיברתי על נסיון בתחום לא דיברתי על תואר ראשון כמובן שלא נותן כלום עדיין אלא על לימודי תארים גבוהים במדע (הכוללים כבר ביצוע מחקרים ייחודיים) ובעבודה במדע דיברתי על מחקרים מדעיים, פירסומים מדעיים רישמיים בסיפרות המדעית העולמית, והרצאות בכנסים מדעיים לדוגמה. אז אם הדבר לא היה ברור אני מדבר על עבודה במדע ולא על שירות למדע ולא על עבודה בתיכון או ב"פיזיקה קלה" :-)
    ושוב אני אומר שאולי יש מי שעובד ב F# ובסך הכל הצגתי מנסיוני המועט שלא פגשתי עדיין אחד כזה מתחום המדע ואני מעריך שלא אפגוש הרבה כאלו בעתיד אם בכלל (זו לא הערכה מקצועית! אלא רק הערכה על בסיס הכרות אישית מועטת כאמור עם אנשים בתחום המדע).

    * ב C# כותבים באופן ידני עבור כל סוג את הפרוביידר שלו (לא מובנה כמו כמו F#). באתר של http://www.pluralsight-training.net יש דוגמאות של קורסים בנושא.

    * דינאמיות היה במשפט חדש ללא קשר לנושא הקודם אלא בקשר ל "מצב אינטראקטיבי" עליו דיברת. לא היה ברור לי בוודאות למה הכוונה (לכן רשמתי "אם לזה התכוונת") אבל נראה לי שזה חלק מהדינמיות שהוכנסה. האפשרות לעבוד בדומה לשפות דינמיות שאינן עוברות קמפול למשל כמו רובי ושוב אני אומר שזה רק בהנחה שבכלל הבנתי למה אתה מתכוון שם ואם לזה הכוונה אז הדבר הוסף מדוט נט 4

    ** אני לא זוכר היכן מפני שמזמן הכוונה היתה להרבה חודשים אחורה (אולי שנתיים) אבל כשמייקרוסופט פירסמו על F# בעיתון שהם שולחים במייל היה שם גם קישור למדריך קצר (היה על הפנים אם אני זוכר טוב) והיה גם קישור לפרוייקט לימודי קצר. אני מאוד ממליץ למי שרוצה ללמוד לחפש דברים כאלה כדי לנסות לתרגל (יכול להיות שהקישור שהבאת בהחלט מסכם את הנושא... לא בדקתי) אבל כמו שנאמר הדרך הכי טובה להעריך זה לתרגל וללמוד


    signature
    יום ראשון 13 נובמבר 2011 18:32
    מנחה דיון
  • לא, לא ראיתי מחקר אקדמי ב-#F (ואני מתעלם מ-F-star, בלי סיבה טובה). אפילו מאמרים של מדעי המחשב (לא "הנה לולאה") שבאים עם דוגמאות קוד, ראיתי רק בווריאנטי ML אחרים. הזכרתי את אתרי האינטרנט כדבר לא מדעי, לצד גרפיקה.

    המצב האינטראקטיבי לא אומר ש-#F דינמית (היא לא קיבלה שום דבר חדש מ-4 NET.), היא עדיין מקומפלת ועדיין עוברת בדיקת טיפוסים. המצב האינטראקטיבי ל-#C ו-VB מגיע עם VS11, נראה לי שבשם "Roslyn".

    יום ראשון 13 נובמבר 2011 18:39
  • תודה לשניכם על המידע, למרות שלא הגעתם לעמק השווה.. (-:

    האינפורמציה הזאת מספיקה לי.

    יום שני 14 נובמבר 2011 15:07