S (שפת תכנות)

S היא שפת תכנות שפותחה כדי להציג, לארגן ולסדר מידע סטטיסטי.

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

שפת התכנות R היא מימוש מודרני של עקרונות שפת S.

 היסטוריה 
 שפת S הישנה ("Old S") 
S היא אחת משפות התכנות לסטטיסטיקה, אשר פותחו על ידי מעבדות בל, והיא פותחה בשנים 1975–1976. עד לשנים אלו, תכנות סטטיסטי נעשה באמצעות קריאה למתודות של Fortran (שפת תכנות) . S עוצבה על מנת להציע חלופה אינטראקטיבית לכך.

הגרסה העובדת הראשונה של S נבנתה בשנת 1976 ורצה במערכת ההפעלה GCOS. בעת הזו, הייתה השפה החדשה חסרת שם. בין ההצעות לשם השפה היו SCS (באנגלית: Statistical Computing System) ו-ISCS (באנגלית: Interactive Statistical Computing System).

שם נוסף שהוצע לשפה הישנה היה SAS (באנגלית: Statistical Analysis System), אך הוא היה כבר תפוס (ראו SAS).

בשנת 1980 הופצה הגרסה הראשונה של S מחוץ למעבדות בל. בשנת 1981 הפכו גרסאות המקור שלה לזמינות.

בשנת 1984 פרסם צוות המחקר של מעבדות בל שני ספרים: "S :. An Interactive Environment for Data Analysis and Graphics ו-"Extending the S System".

בנוסף, באותה השנה קיבל קוד המקור של S רישיון באמצעות תאגיד התקשורת האמריקני AT&T למכירה למטרות חינוכיות ומסחריות.

 שפת S החדשה ("New S") 
בשנת 1988, נערכו שינויים רבים ב-S ובתחביר השפה שלה (ב-Syntax).

באותה שנה פורסם הספר: "The New S Language" כדי להציג את חידושי השפה, כגון המעבר מתוכנות מאקרו למתודות.

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

שינויים רבים אחרים התבצעו ב-S, כמו השימוש ב-X11 ובשפת התכנות Postscript, כתיבה מחדש של פונקציות פנימיות מ-Fortran ל-C והשימוש בפורמט נקודה צפה.

שפת S החדשה דומה מאוד לגרסאות חדשות של R ו-S-PLUS.

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

מחלקות ב-S4 שונות באופן בולט מהמחלקות בגרסת S3.

 לקריאה נוספת 
 S programming Language, Bauman National Library 

 קישורים חיצוניים 
 The S system, באתר Wayback Machine

 הערות שוליים 

קטגוריה:ערכים שבהם תבנית אתר רשמי אינה מתאימה להוספה אוטומטית
קטגוריה:שפות תכנות
קטגוריה:סטטיסטיקה