מי יודע

Under Death

New member
מי יודע

איזו שפת תיכנות רצה טבעי על VMS? זה כמו batch של מיקרוסופט C++ של יוניקס PERL על לינוקס
 

galh

New member
Digital Command Langauge - DCL

אני מניח שאתה מתכוון ל- DCL, אבל בשורה אחת כתבת המון שטויות. אין דבר כזה "שפת תכנות שרצה טבעי", אין הבדל בין יוניקס ללינוקס מבחינת השפות, שניהן מסוגלות להריץ תוכניות שקומפלו מ- ++C או להריץ תוכניות Perl. גם Batch זה שאריות מעידן ה- DOS, בחלונות עדיף להשתמש ב- Scripting Host למטלות דומות.
 

Under Death

New member
"שפת תכנות שרצה טבעי"

באמת לא היה המינוח המדויק אבל אין לי ממש כוח כרגע להכנס לפרטים. בוודאי שיש הבדל בין יוניקס ללינוקס, לפחות ממה שאני יודע! קודם כל נתחיל מזה ששפת C או C++ (לא זוכר איזו מהשתיים נדמה לי C) הומצאה בשביל לפתח את יוניקס ולכן מותאמת עליה באופן מושלם, מעבר לזה בלינוקס אין צורך לקמפל קודים בשפת פרל מכיוון שהמערכת יודעת להריץ אותם לבד, לא יודע בקשר לפרל ויוניקס אבל אם אתה אומר אז אני מקבל את זה... נכון, הBATCH זה שארית של DOS אבל זה טיפה יותר נפוץ מ SCRIPTING HOST וטיפה יותר מזכיר את DCL.
 

vinney

Well-known member
"מערכת" לא יודעת

שפת C הומצאה במהלך העבודה על UNIX, זה נכון, אבל UNIX זה שם כולל למשפחה של מערכות הפעלה בעלות API מסוים, שלינוקס תומכת בו כמעט במלואו, ולכן נחשבת "כמעט UNIX". לגבי C ו++C - ההבדל בין זה לPERL הוא שקוד PERL רץ לא מקומפל בעזרת הINTERPRETER, ואת הקוד בC צריך לקמפל, זה נכון לUNIX, לינוקס, חלונות וכל השאר. יש INTERPRETERים גם לC אבל גרועים. C לא מוטעמת באופן מושלם על אף אחד, אין דבר כזה. אתה יכול לכתוב אפליקציות בC בכל מכונה שיש שם מהדר של C, ובכל מכונה כמעט יש. BATCH אולי מזכיר את DCL, באותה מידה גם SCRIPTING HOST וגם SHELL SCRIPTS, כי כולם נועדו לאותו דבר, רק שBATCH הוא הפרימיטיבי בינהם.
 

galh

New member
החלטת לעצבן אותי? ../images/Emo46.gif

יש הבדל בין לינוקס ליוניקס (אגב, איזה מהם?). מה זה בדיוק "מותאמת באופן מושלם"? אין קשר ישיר בין שפת התכנות, במקרה הזה C, לבין מערכת ההפעלה. גם הקרנל (לינוקס) של גנו/לינוקס כתוב ב- C. (שפת ++C הומצאה הרבה הרבה שיוניקס יצאה לשוק). המערכת לא יודעת להריץ פרל. שאתה "מריץ" קובץ פרל המערכת טוענת את התוכנית perl שמקמפלת את התוכנית לשפת byte-code ואז מריצה את הקוד שנוצר דרך "מכונה וירטואלית". אותו תהליך קורה בלינוקס, יוניקס וחלונות.
איפה ראית שימוש בקובץ BAT לאחרונה? משהו קצת יותר מורכב מהעתקת קובץ. שפת BATCH לא מזכירה בגרוש את DCL! אין לי סבלנות למנות את כל היתרונות של DCL (הזכרונות על המנוח מעלים בי דמעות
), אבל בקצרה: פונקציות, סאב-רוטינות, פונקציות לגישה למשאבי המערכת וטיפול במחרוזות.
 

Under Death

New member
תרגיע!

נכון שהמערכת לא יודעת להריץ פרל אבל תהליך הלינקינג שלו מובנה כבר בתוך לינוקס, לזאת היתה הכוונה! דרך אגב, יש אקטיב פרל לווינדווז ועוד כל מני אפליקציות אחרות שמאפשרות להריץ פרל על ווינדווז ולבצע את כל תהליך הלינקינג. ראיתי שימוש בלא מאט קבצי BAT לאחרונה בהרבה מאוד מקומות! ותאמין לי שאני יודע כמה DCL יותר טוב מ BAT, זאת חלק מהסיבה שבגללה לומדים אותה לא? בנוגע לזה שסי רצה פיקס על יוניקס לא לזה בדיוק הייתה הכוונה. סי הומצאה בשביל לפתח את יוניקס ולהיות הSHELL SCRIPT שלה.
 

vinney

Well-known member
C לא הומצאה בשביל זה

C הומצאה כתחליף לשפת B הנחותה שהייתה העיקרית בתהליך הפיתוח בBELL LABS. זה שזה היה במהלך פיתוח UNIX, לא אומר שהיא הומצאה לשם כך. הSHELL SCRIPT של UNIX נקרא SH.
 

IP yuval

New member
שאלות:

למה פרל צריך לינקינג? למה זה צריך להיות קשור למערכת הפעלה? איפה מבוצע הלינקינג בתוך לינוקס? אתה אומר שcsh היה קיים לפני שפת C שדורשת בד"כ מהדר?
 

galh

New member
אז תפסיק לזרוק buzz words...

בלי לדעת מה אתה אומר! ללינוקס אין שום תהליך linkage מובנה בשביל לתמוך בפרל. ליתר דיוק, לפרל אין תהליך של linkage מאחר שזו שפת סקריפט. תן דוגמאות ל"לא מעט" קבצי BAT "בהרבה מאוד מקומות", בבקשה. כמה מקומות? מי לומד DCL היום בדיוק? מערכת ההפעלה VMS (והיורשת שלה, OpenVMS) די נכחדה מהעולם ואני לא מכיר עוד מערכת שהריצה DCL. מה הקשר בין מערכת הפעלה לבין shell script לבין שפת C?! שפת C מעולם לא הייתה shell script בניגוד ל- csh או bash.
 
למעלה