ALGOL
מתוך ויקיפדיה, האנציקלופדיה החופשית
| יש להשלים ערך זה ערך זה עשוי להיראות מלא ומפורט, אך הוא אינו שלם, ועדיין חסר בו תוכן מהותי. הנכם מוזמנים להשלים את החלקים החסרים ולהסיר הודעה זו. ראו פירוט בדף השיחה. |
ALGOL (קיצור של ALGOrithmic Language) היא משפחת שפות תכנות פרוצדורליות שפותחה החל מאמצע שנות ה-50 של המאה ה-20. ALGOL שימשה בעיקר חוקרים במדעי המחשב, אם כי תחביר השפה שימש שנים רבות גם בעולם התוכנה העסקי כאמצעי לתיאור אלגוריתמים בשלב התכנון. ל-ALGOL הייתה השפעה מכרעת על תחביר שפות שנוצרו בשלב מאוחר יותר, כדוגמת פסקל.
[עריכה] היסטוריה
ל-ALGOL היו מספר גרסאות שזוהו על פי השנה בה נוצרו. הגרסה הראשונה, ALGOL 58 הייתה תוצאה של ועדה בינלאומית של מדענים אמריקאים ואירופאים. השפה החדשה ניסתה להתמודד עם סוגיות שעלו בשימוש בשפת FORTRAN הוותיקה יותר. ALGOL 60 משנת 1960 הוכרזה שנתיים אחר כך והפכה לניב הנפוץ ביותר של ALGOL. ALGOL 60 הייתה שפת התכנות הראשונה ששימשה את המחשב הראשון שהותקן בטכניון בחיפה. בשנת 1968 פורסמה גם ALGOL 68, שהציגה מבנים מורכבים יותר שלא זכו להכרה רחבה.
ALGOL סבלה משימוש מועט בעולם התכנות הכללי בגלל חוסר בכלים לטיפול באמצעי קלט/פלט, כלומר השפה לא הכילה פקודות לכתיבה או קריאה מאמצעי קלט/פלט חיצוניים. כמו כן, יצרני המחשבים והתוכנה הבולטים באותה תקופה, כדוגמת IBM, לא השקיעו בקידומה של ALGOL, עקב ההשקעה בשפות מתחרות כמו PL/I, ולכן היא נשארה בתפוצה מוגבלת יחסית.
[עריכה] דוגמת קוד (ALGOL 60)
דוגמה לפרוצדורה בשם Absmax המחשבת את הערך המקסימלי במטריצה a דו-ממדית בגודל n על m. הערך מוחזר במשתנה y שמיקומו במטריצה נתון על ידי המשתנים i ו-k.
procedure Absmax(a) Size:(n, m) Result:(y) Subscripts:(i, k);
value n, m; array a; integer n, m, i, k; real y;
comment The absolute greatest element of the matrix a, of size n by m
is transferred to y, and the subscripts of this element to i and k;
begin integer p, q;
y := 0; i := k := 1;
for p:=1 step 1 until n do
for q:=1 step 1 until m do
if abs(a[p, q]) > y then
begin y := abs(a[p, q]);
i := p; k := q
end
end Absmax
[עריכה] קישורים חיצוניים
- פטר נאור, דו"ח על שפת התכנות האלגוריתמית ALGOL 60 (באנגלית)
| שפות תכנות | ||
|---|---|---|
|