את מספרי ה-IMO מנפיקה חברת IHS Fairplay הנמצאת בבעלות חלקית של חברת מרשם לוידס והיא אף מקור המידע היחיד המוסמך לאשר את זיהויו של מספר IMO. המספר מורכב משש ספרות עיקריות וספרת ביקורת, שהיא ספרת האחדות, הספרה הימנית ביותר במספר. כדי לוודא אמינותו של מספר IMO יש להכפיל כל ספרה משש הספרות העיקריות במיקומן בתוך המספר, מימין לשמאל. ספרת האחדות במספר שהתקבל חייבת להיות זהה לספרת הביקורת. כך למשל כדי לבדוק את המספר: IMO 7654329: 7×7 + 6×6 + 5×5 + 4×4 + 3×3 + 2×2 = 139. כיוון ש-9 היא ספרת הביקורת, זהו מספר IMO נכון.
היסטוריה.
מתן מספרי IMO לאוניות החל בשנת 1987 לאחר שאומצה החלטה של ארגון הימאות הבינלאומי כצעד שנועד לקדם "בטיחות בספנות, מניעת זיהום וכצעד למניעת מעשי מרמה בספנות". ההחלטה קראה למתן מספר זיהוי קבוע לכל אונייה כאמצעי לזיהויה. המספר יוותר ללא שינוי גם לאחר שהאונייה משנה דגל ויופיע על מסמכי הזיהוי של האונייה. לאחר שהחלטה זו אומצה בשנת 1994 בתקנה XI-1/3 של האמנה הבינלאומית לבטיחות החיים בים, הוסכם על אמות מידה לאוניות נוסעים בתפוסה ברוטו של 100 טון ומעלה וכן כל אוניות המשא בתפוסה ברוטו של 300 טון ומעלה. יישום התקנה הפך לחובה על כל האוניות החל מ-1 בינואר 1996.
בחודש דצמבר 2002, במסגרת הוועידה הדיפלומטית על בטיחות בספנות, הוחלט כי תקנת האמנה הבינלאומית לבטיחות החיים בים תשונה כך, שכל אונייה תחויב בסימון קבוע של מספר IMO הייחודי לה, באופן בולט על דפנותיה או על מבנה הגשר. אוניות נוסעים חייבות אף בסימון המספר על משטח אופקי באונייה הנראה בבירור מן האוויר. כל האוניות חייבות אף לסמן את המספר בתוך חלל האונייה.
מספר זיהוי לחברות ולבעלים רשומים.
במאי 2005 אומצה תקנה XI-1/3-1 באמנה הבינלאומית לבטיחות החיים בים העוסקת במספר זיהוי לחברות ובעלים רשומים של אוניות והוכנסו תיקונים לתקנה XI-1/5 על החובה של חברות ובעלים רשומים לשאת מספר זיהוי, אשר נכנסה לתוקף ב-1 בינואר 2009.
על פי סעיף 1–3 לתקנה "כל חברה ובעלים רשומים יקבל מספר המתאים למספר IMO ייחודי בהתאם לכללים למתן מספרי זיהוי לחברות ובעלים רושמים כפי שאומץ על ידי הארגון." על פי התיקונים לאמנה על מספר הזיהוי של החברה או המנהלת או הבעלים הרשומים להופיע במסמכי הזיהוי של האונייה.
סקאלה (שפת תכנות)
סקאלה (Scala) היא שפת תכנות מרובת פרדיגמות, אשר תוכננה כ-"better Java", כלומר "גרסה טובה יותר" של שפת Java. סקאלה פועלת על גבי המכונה הווירטואלית של ג'אווה (JVM) ושומרת על תאימות גבוהה עם ג'אווה המאפשרת לה לעבוד עם קוד ג'אווה.
סקאלה משלבת מאפיינים של תכנות פונקציונלי יחד עם מודל התכנות מונחה-עצמים של ג'אווה, תוך שהיא "מנקה" את מה שלעיתים קרובות נחשב כחסרונות הקיימים בשפת ג'אווה (דברים כגון type erasure, אופן הטיפול בחריגות ומערכת טיפוסים לא אחידה), ומוסיפה מספר מאפיינים חדשים המאפשרים כתיבת קוד נקי, תמציתי ואקספרסיבי יותר.
השם Scala הוא הלחם בסיסים של המילים האנגליות "scalable" (סילומי) ו-"language" (שפה), ומטרתו לרמז על כך שהשפה תוכננה לגדול ביחד עם הדרישות של המשתמשים בה. ג'יימס סטראצ'ן, המפתח של שפת התכנות Groovy, הגדיר את סקאלה כיורשת אפשרית לשפת Java.
הפצת התוכנה של סקאלה, כולל המהדר וספריות התוכנה נעשית תחת רישיון BSD.
היסטוריה.
הפיתוח של סקאלה החל ב-2001 במכון הטכנולוגי של לוזאן (EPFL) על ידי מרטין אודרסקי. אודרסקי עבד קודם לכן על ג'אווה גנרית ו-javac, מהדר הג'אווה של חברת סאן. סקאלה שוחררה לשוק בסוף 2003 / תחילת 2004 על פלטפורמת ג'אווה, וביוני 2004 גם לפלטפורמת NET. גרסה שנייה של השפה, 2.0, שוחררה במארס 2006. התמיכה ב-NET. הופסקה רשמית ב-2012. ב-17 בינואר 2011 זכה הצוות של סקאלה במענק מחקר לחמש שנים בסך של 2.3 מיליון יורו ממועצת המחקר האירופית (ERC). ב-12 במאי 2011 הקימו אודרסקי ושותפיו את חברת Typesafe, שמספקת תמיכה מסחרית בסקאלה, כמו גם הדרכה עולמית בשפה ושירותים שונים. Typesafe, ששינתה מאז את שמה ל Lightbend, גייסה עד כה כ-52 מיליון דולר, בין היתר מ-IBM ואינטל קפיטל.
פלטפורמות.
סקאלה פועלת על גבי הפלטפורמה של ג'אווה (המכונה הווירטואלית של ג'אווה) וקיימת תאימות בינה לבין תוכניות ג'אווה קיימות. תוכניות סקאלה יכולות לרוץ גם על טלפונים חכמים שמריצים את מערכת ההפעלה אנדרואיד. קיים מימוש אלטרנטיבי גם עבור פלטפורמת דוט-נט.
לסקאלה יש את אותו מודל הידור כמו בג'אווה ו-סי שארפ (separate compilation, dynamic class loading), כך שקוד סקאלה יכול לקרוא לספריות ג'אווה (או לספריות דוט-נט במימוש המתאים).
הביצועים של סקאלה שווי ערך לאלה של ג'אווה. המהדר של סקאלה יוצר bytecode זהה כמעט לגמרי לזה שנוצר על ידי המהדר של ג'אווה. למעשה, קוד בשפת סקאלה יכול לעבור "הידור-לאחור" (decompiled) לקוד ג'אווה קריא, למעט כמה פעולות constructor ייחודיות. מבחינת ה-JVM, קוד סקאלה וקוד ג'אווה הם זהים. ההבדל היחיד הוא בספריית runtime אחת בשם codice_1.
השוואה עם Java ו-#C.
כמו ג'אווה, סקאלה היא שפת תכנות מונחית-עצמים בה נהוגה טיפוסיות חזקה, המשתמשת במערכת טיפוסים סטטית. בשפה נעשה שימוש בתחביר של סוגריים מסולסלים המזכיר את שפת C, והיא עוברת הידור ל-Java bytecode, מה שמאפשר לקוד סקאלה לרוץ על גבי ה-JVM, ומאפשר קריאה חופשית לספריות ג'אווה מתוך קוד של סקאלה ולהפך, מבלי הצורך ב"שכבת דבק" כלשהי בין השתיים.
שלא כמו בג'אווה, סקאלה מוסיפה מאפיינים רבים הקיימים בשפות תכנות פונקציונליות כמו Standard ML ,Scheme ו-Haskell. ביניהם:
כמו ב-#C, אבל שלא כמו ב-Java, סקאלה מספקת מערכת טיפוסים אחידה, שבה כל הטיפוסים, כולל טיפוסים פרימיטיביים כמו integer ו-boolean הם אובייקטים היורשים מהמחלקה codice_2. כמו כן, סקאלה כוללת עוד כמה מאפיינים הקיימים ב-#C אבל לא קיימים ב-Java. ביניהם:
בנוסף לכך סקאלה כוללת כמה מאפיינים מתקדמים במערכת הטיפוסים שלה, שקיימים בשפות תכנות מעטות אחרות, אם בכלל.
השוואה עם שפות JVM אחרות.
לעיתים קרובות סקאלה מושווית עם Groovy ו-Clojure, שתי שפות תכנות הבנויות גם הן מעל ה-JVM. ההבדלים העיקריים הם:
תוכנית Hello world לדוגמה.
זוהי דוגמה לתוכנית Hello world שנכתבה בשפת סקאלה:
object HelloWorld extends App {
println("Hello, world!")
שלא כמו בתוכנית stand-alone דומה בשפת ג'אווה, בסקאלה אין צורך להצהיר על מחלקה (class), ואין צורך להגדיר שום דבר כסטטי (static); במקום זאת משתמשים באובייקט סינגלטון שנוצר באמצעות המילה השמורה object.
כאשר התוכנית נשמרת בקובץ בשם codice_3, ניתן להדר אותה משורת הפקודה:
codice_4
וכדי להריץ אותה:
codice_5
תהליך זה דומה לתהליך ההידור והרצה של קוד ג'אווה. ואכן, מודל ההידור וההרצה של סקאלה זהה לזה של ג'אווה, ובכך מאפשר תאימות שלה עם כלי בנייה של ג'אווה כדוגמת Ant.
גרסה קצרה יותר של תוכנית Hello world בסקאלה:
println("Hello, world!")
אם התוכנית נשמרת בקובץ בשם codice_6, ניתן להריץ אותה כסקריפט מבלי להדר אותה מראש, באמצעות הפקודה:
codice_7
כמו כן, ניתן להזין פקודות ישירות למפרש של סקאלה באמצעות השימוש בדגל e-:
codice_8
האתרים הארכאולוגיים של האי מרואה
טמו סלאנה
טמו אילמארי סלאנה (בפינית: Teemu Ilmari Selänne; נולד ב-3 ביולי 1970 בהלסינקי) הוא שחקן הוקי קרח פיני מקצועני לשעבר בעמדת חלוץ אגף ימני, הנחשב בעיני רבים לאחד מגדולי שחקני פינלנד בכל הזמנים.
סלאנה עשה את עיקר הקריירה שלו במדי אנהיים דאקס בליגת ה-NHL, וזכה עם הקבוצה בגביע סטנלי היחיד בתולדותיה ב-2007.
סלאנה הוא המבקיע הפיני הגדול בתולדות ה-NHL, לאחר ששבר את שיאי ההבקעה של יארי קורי. ידוע בכינוי "The Finnish Flash" ("ההבזק הפיני").
בזירה הבינלאומית, סלאנה הוא המבקיע המוביל באולימפיאדת החורף בכל הזמנים, לאחר ששבר את השיא הקודם להבקעה בקריירה במהלך אולימפיאדת ונקובר (2010).
יוקריט הלסינקי.
סלאנה סומן ככוכב כבר בגילאי הנוער, כששיחק בקבוצות הגילאים של קבוצת יוקריט הלסינקי. ב-1988 כבר נבחר בדראפט ה-NHL במקום העשירי, על ידי ויניפג ג'טס.
לאחר הבחירה בדראפט נשאר סלאנה בפינלנד והחל את הקריירה הבוגרת שלו בקבוצה הבוגרת של המועדון בו גדל, יוקריט הלסינקי, בליגה הפינית העליונה (SM-liiga). הוא הפך לכוכב ההתקפה של הקבוצה מרגע עלייתו לקבוצה הבוגרת, עם 12 נקודות ב-11 משחקים בעונתו הראשונה ו-58 נקודות ב-44 משחקים בעונתו השנייה. את העונה השלישית שלו, עונת 1991/92, סיים כמלך השערים של הליגה וכצובר הנקודות המצטיין שלה, והוביל את יוקריט לזכייה באליפות.
ויניפג ג'טס.
סלאנה הגיע לוויניפג ג'טס, הקבוצה שבחרה אותו בדראפט, בעונת 1992/93, והצדיק את הציפיות הגדולות שנתלו בו כבר בעונת הרוקי שלו. הוא סיים את העונה עם מאזן מצוין של 76 שערים, מאזן שעליו לא חזר אף שחקן NHL בשנים שלאחר מכן, ובסך הכל צבר 132 נקודות (שערים + אסיסטים) - שניהם שיאי NHL לרוקי, שמחזיקים מעמד עד היום. הוא נבחר לרוקי השנה ב-NHL וזכה על כך בגביע קאלדר.
גם בעונתו השנייה צבר מאזן נאה של 54 נקודות ב-51 משחקים, אך בעקבות קרע בגיד האכילס שלו הושבת לזמן ממושך. הג'טס, ללא סלאנה הפצוע, החמיצו את הפלייאוף.
ההתחלה של עונת 1994/95 התאחרה בעקבות סכסוך עבודה בין ה-NHL לאיגוד השחקנים שלו, וסלאנה חזר לפינלנד ולקבוצת נעוריו יוקריט הלסינקי. יחד עם כוכב NHL פיני אחר, יארי קורי, הוביל סלאנה את יוקריט לזכייה בגביע אירופה לאלופות באותה שנה.