במשחקי חבר העמים שנערכו בגולד קוסט, קווינסלנד אוסטרליה באפריל 2018 הוא זכה במדליית כסף בריצת 1500 מטר בתוצאה של 3:35.17 דקות, אחרי אלייז'ה מנאנגוי (3:34.78 דקות) ולפני ג'ק וייטמן מסקוטלנד (3:35.97 דקות). ביולי אותה שנה הוא זכה שוב בתחרות ליגת היהלום במונקו בריצת 1500 מטר בשיא אישי חדש של 3:28.41 דקות.
באליפות אפריקה שנערכה באסבה, ניגריה בתחילת אוגוסט אותה שנה הוא זכה במדליית כסף בריצת 1500 מטר בתוצאה של 3:35.93 דקות, אחרי אלייז'ה מנאנגוי (3:35.20 דקות) ולפני רונלד מוסגלה מאוגנדה (3:36.41 דקות).
אלוף עולם.
באליפות העולם שנערכה בדוחה, קטר ב-6 באוקטובר 2019 הוא זכה במדליית זהב בריצת 1500 מטר בתוצאה של 3:29.26 דקות, לפני תאופיק מחלופי מאלג'יריה (3:31.38 דקות) ומרצ'ין לבנדובסקי מפולין (3:31.46 דקות).
באולימפיאדת טוקיו זכה במדליית כסף בתוצאה של 3:29.01 דקות, לאחר המנצח יקוב אינגבריגטסן (3:28.32 דקות).
באליפות העולם באתלטיקה 2022 סיים שישי בתוצאה של 3:30.69 דקות.
ג'ון דילייני
ג'ון קווין דילייני (באנגלית: John Kevin Delaney; נולד ב-16 באפריל 1963) הוא פוליטיקאי אמריקאי חבר המפלגה הדמוקרטית אשר כיהן כנציג המחוז השישי של מרילנד בבית הנבחרים של ארצות הברית.
ב־28 ביולי 2017 דילייני הודיע על כוונתו להתמודד בבחירות לנשיאות ארצות הברית בשנת 2020 אך פרש בהמשך.
ביוגרפיה.
דילייני נולד בווד רידרג' שבניו ג'רזי. ב-1985 סיים תואר ראשון באוניברסיטת קולומביה וב-1988 סיים תואר JD במשפטים באוניברסיטת ג'ורג'טאון. לאחר הלימודים עבד כעורך דין פרטי. ב-1996 הקים את חברת "HealthCare Financial Partners" בתחום אספקת מימון לעסקים בענף השירותים הרפואיים. החברה הפכה לציבורית ב-1996. בשנת 2000 הקים את חברת "CapitalSource" העוסקת בתחום המימון לעסקים קטנים ובינוניים, החברה הונפקה ב-2003 בבורסה לניירות ערך בניו יורק.
באפריל 2012 ניצח בבחירות המקדימות של המפלגה הדמוקרטית למושב המחוז השישי של מרילנד בבית הנבחרים של ארצות הברית. בנובמבר אותה שנה ניצח בבחירות הכלליות לאחר שגבר על חבר הקונגרס המכהן רוסקו ברלט מהמפלגה הרפובליקנית ברוב של 58.4%. בבחירות 2014 גבר על דן בוניגנו ברוב זעום של 49.7% לעומת 48.2% ליריבו. בבחירות 2016 נבחר לכהונה שלישית לאחר שהשיג רוב של 56%. הוא כיהן כחבר ועדת השירותים הפיננסים של בית הנבחרים וחבר ועדת הכלכלה של הקונגרס. דילייני בחר לא להתמודד לתקופת כהונה נוספת בבחירות 2018.
דילייני נשוי לאפריל מקיין-דילייני והם הורים לארבע בנות.
הספרייה והארכיונים הלאומיים של קוויבק
הספרייה והארכיונים הלאומיים של קוויבק (בצרפתית: Bibliothèque et Archives nationales du Québec; ובקיצור BAnQ) הוא ארגון ממשלתי של קוויבק המנהל את ספריית ההפקדה והארכיונים הלאומיים של הפרובינציה ואת הספרייה הלאומית שלה, שנמצאת ב"ספרייה הגדולה" ( Grande Bibliothèque) במונטריאול. הארגון נוסד מאיחוד של הספרייה הלאומית של קוויבק (Bibliothèque nationale du Québec; BNQ) ושל הארכיונים הלאומיים של קוויבק (Archives nationales du Québec) ב-2006.
הספרייה מקדמת ומשמרת חומרי מורשת הקשורים לקוויבק וכן מספקת שירותים של ספרייה ציבורית. הארגון מפעיל ספריות הפתוחות לקהל. במונטריאול נמצאים הספרייה הגדולה (Grande Bibliothèque) שבנייתה החלה ב-2001 והיא נפתחה לציבור ב-2005, BAnQ Vieux-Montréal שנפתח ב-1971 ו-BAnQ Rosemont–La Petite-Patrie שהוקם ב-1948 ושופץ ב-1996 ושם ממוקם משרדי ההנהלה. בנוסף מפעיל הארגון ספריות בגאספה (הוקמה ב-2010), בגאטינו (הוקמה ב-1977), באוניברסיטת לאוול שבקוויבק סיטי (1920), ברימוסקי (1979), ברוין-נוראנדה (1980), בסאגנה (1978), בסט איל (1981), בשרברוק (1979) ובטרואה ריבייר (1977).
אוסף הספרייה כולל עותקים של כל היצירות שיצאו לאור בקוויבק, וכן יצירות שעוסקות בקוויבק או נכתבו על ידי יוצרים מקוויבק. הארכיונים הלאומיים של קוויבק נוסדו ב-2 בספטמבר 1920 כשהמנהל הראשון של הארגון היה ז'ורז'-פייר רוי.
Common Lisp
Common Lisp (בראשי תיבות: CL) היא ניב של שפת התכנות Lisp, שפורסמה לראשונה ב־1984 ועברה תקינה על ידי ANSI בשנת 1994 ופורסמה שוב כ־ANSI Common Lisp.
היסטוריה.
Common Lisp פותחה להיות ניב מתוקנן וטוב יותר של MacLisp. בתחילת שנות ה־80 כבר היו מספר קבוצות שעבדו על יורשים מגוונים ל־MacLisp כגון Lisp Machine Lisp, Spice Lisp, NIL ו־S-1 Lisp. מטרתה המרכזית של Common Lisp הייתה לאחד, לתקנן ולהרחיב את התכונות של כל אחד מהניבים האלה בשפה אחת. Common Lisp כשלעצמה אינה יישום של Lisp אלא אפיון בלבד. קיימים מגוון יישומים ל־Common Lisp, ביניהם יישומים קנייניים, חינמיים ובקוד פתוח.
מאפיינים.
Common Lisp היא שפה רב־תכליתית שמשלבת מספר פרדיגמות כגון תכנות פרוצדורלי, פונקציונלי, ומונחה־עצמים. מהיותה שפה דינמית, היא מאפשרת פיתוח איטרטיבי והדרגתי נוח יותר שנעשה תוך כדי זמן הריצה של התוכנה מבלי להפריע לה.
השפה מאפשרת ביאור טיפוסים והמרתם עבור שלבי אופטימיזציה מתקדמים בזמן הפיתוח כדי לאפשר למהדר לחולל קוד יעיל יותר בביצועים. בנוסף ניתן להצהיר בעבור כל פונקציה או מרכיב בקוד בנפרד באיזה רמה של תאימות טיפוסית רוצים להשתמש כדי למנוע אי־התאמה בין טיפוסים שונים.
אפיון השפה כולל את CLOS (שם מלא: "Common Lisp Object System") מערכת מובנת לתמיכה בתכנות מונחה־עצמים שתומכת במולטי־מתודות, למעשה הן פונקציות שזיהוי התאימות בינן לבין טיפוסיות הפרמטרים נעשה באופן דינמי בזמן ריצה. תכונה שמאפשרת למתודות לא להשתייך לאף טיפוס מלכתחילה ולהישאר סטטיות בהתאם לפרדיגמת הפונקציונליות של השפה Lisp.
Common Lisp היא שפת שניתנת להרחבה בעזרת קוד מאקרו סטנדרטי של Lisp המצוי בכל ניביה, או בעזרת codice_1 שמנתח ומפרשן קלט של מחרוזת תווים לקוד ריצה, תכונה המאפשרת למשתמש ליצור תחביר מותאם אישית עם חוקיות חדשה לשפה בכל עת.
Common Lisp תומכת בתאימות לאחור עד רמה מסוימת עבור MacLisp ו־Lisp המקורית של ג'ון מקארתי, וזה מאפשר לשפה לתמוך בקוד Lisp מיושן מאמצע המאה ה־20.
תחביר.
ביטויים סימבולים (Symbolic Expressions).
ביטויים סימבולים (באנגלית: Symbolic Expressions או בקיצור, S-Expression) הם ביטויים אשר נמצאים בתוך סוגריים, מכילים בד״כ הוראה בראש הרשימה, ואז את האופרנדים (האיברים המשתתפים). הביטוי עובר הערכה לאחר השלמת הרשימה.
לדוגמה : codice_2 יחבר את 5, 3, ו־2, ויוערך ל־10.
ביטויים סימבולים יכולים להופיע באופן מקונן, כלומר, בתוך ביטויים סימבולים אחרים. לדוגמה,
קוד זה יעריך את הביטוי האריתמטי codice_2 וידפיס את התוצאה באמצעות הפעולה המובנית codice_4. הפעולה codice_4 היא פעולה אונארית (כלומר, מקבלת פרמטר יחיד) אשר תדפיס את הביטוי שניתן לה בשורה חדשה. על מנת לכתוב טקסט ללא מעבר לשורה חדשה, ניתן להשתמש בפעולה codice_6 באותו האופן.
פעולות חשבון.
ארבע פעולות החשבון המרכזיות ב־Common Lisp, ובניבי Lisp בכלל, הם חיבור codice_7, חיסור codice_8, כפל codice_9, וחילוק codice_10. אמנם פעולות חשבון בסיסיות אלה קיימות בכלל שפות התכנות, במשפחת Lisp צורת הכתיבה שלהם היא תחילית (דומה לכתיב פולני במתמטיקה) עם מספר אופרנדים מרובה (מספר האיברים המשתתפים בפעולה) בניגוד לכתיב המסורתי במתמטיקה לפיו סימני פעולה מסומנים תמיד באופן בינארי בין שני אופרנדים בלבד המשתתפים בפעולה. הכתיב התחילי משותף גם לפונקציות כשהאיברים בביטוי הם הפרמטרים בהתאמה. בפעולות מובנות רבות אין מגבלה למספר האופרנדים. הפעולות חיבור, חיסור, כפל, וחילוק אינן פעולות בינאריות ב־Lisp. לדוגמה, החישוב formula_1 נכתב ב־Lisp כך,
פעולות השוואה.
פעולות השוואה ב־Lisp, כמו במתמטיקה בדידה, ובמדעי המחשב בכלל, משוות בין שני ביטויים או יותר ומחזירות ערך בוליאני (אמת או שקר). אמת אם הביטוי מתקיים, ושקר אם הביטוי אינו מתקיים. באופן מקביל, בשפות תכנות רבות משתמשים בפעולת השוואה בינארית (בדרך כלל מסומנת כ־codice_11) על מנת לבדוק האם שני ביטויים שווים זה לזה. מפני שהתחביר בניבי Lisp משתמש בכתיב תחילי, אז פעולת ההשוואה (כמו עם שאר הפעולות) ממוקמת תמיד בתחילת הביטוי ויודעת להתמודד מול מספר אופרנדים מרובה (האיברים המשתתפים בהשוואה יכולים גם הם להיות ביטויי השוואה מקוננים). על מנת לבצע השוואה ב־Common Lisp ניתן להשתמש (בין היתר) בפעולה codice_12 בעלת arity אינסופי, וכן בפעולה הבינארית codice_13. בין הפעולות הללו ישנם הבדלים אחרים, לדוגמה,
-&gt; T
-&gt; NIL
פעולות codice_14 ו־codice_15.
הפעולות codice_15 ו־codice_14 קולטות מספר בלתי מוגבל של ערכים, ופולטות את הערך הכי גדול או הכי קטן בהתאמה. לדוגמה, הביטוי codice_18 יפלוט codice_19. לעומת זאת codice_20 יפלוט codice_21.
התניה.
בקרת זרימה לפי תנאי נכתבת ב־Common Lisp בעזרת ההוראה codice_22.
ניבי Lisp אחרים לעיתים תבוצע התניה באמצעות הוראת ה־codice_23 (קיצור ל "condition").
מקומם של הפרמטרים בביטוי codice_22 מתארים את מבנה ההוראה,
(expression-to-be-evaluated-when-true)
(expression-to-be-evaluated-when-false))
לדוגמה, קטע הקוד הבא ידפיס האם formula_2 שווה ל formula_3,
(print "They are equal.")
(print "They are not equal."))
רשימות.