|
Red היא שפת תכנות די מעניינת ונראית כתוספת מעניינת לארגז הכלים.
השפה מושפעת מ-Rebol ומתוארת בתור Full-Stack - שפה שמכסה החל מפיתוח חומרה ומנהלי התקנים וכלה בכתיבת תסריטים ו-DSL, כמתואר בתרשים הבא:
<img src="/whatsup/images/articles/red-full-stack.png" alt="Red language full stack" style="max-width:100%"></img>
השפה אינה דורשת התקנה ומאפשרת להריץ תסריטים כמות שהם (עם JIT) ו־REPL ומספקת הידור סטטי לבינאריים טבעיים. בנוסף, התכונות העיקריות כוללות:
- תחביר ידידותי לבני אנוש
- Homoiconic
- פרדיגמות תכנות: Functional, imperative, reactive ו־symbolic
- תכנות מונחה עצמים מבוסס Prototype
- הצהרת טיפוסי משתנים אופציונלית והדרגתית
- מאקרואים
- יותר מ־50 סוגי טיפוסים מובנים
- הידור סטטי ו־JIT לקוד טבעי
- הידור קרוס-פלטפורם פשוט ועשוי כהלכה
- מייצר בינאריים הניתנים להרצה בגודל של פחות מ־1MB וללא תלויות
- תמיכה טובה ב־Concurrency ומקביליות
- יכולות תכנות Low-level בעזרת Red/System ־ DSL מובנה
- כולל DSL מובנה לכתיבת parser
- מערכת GUI טבעית חוצת פלטפורמות עם DSL תואם לממשק משתמש וציור
- גישור ל־JVM
- תוסף עבור Visual Studio Code בעל יכולות רבות
- הטמעה קלה בשפות אחרות
- חותמת זכרון נמוכה ו־garbage collected
- קובץ בודד (מעט גדול מ-1MB) מכיל את כל הכלים, ספריה סטנדרטית מלאה ו־REPL.
- ללא התקנה ולא הגדרות
- כיף מובטח!
המטרות ש־Red יכולה להדר אליהן בין פלטפורמות כוללות:
- DOS ו־MS חלונות: x86
- לינוקס: x86, ARMv5 ו-armel
- Raspberry Pi: לינוקס ARMv5 ו־armhf
- FreeBSD: x86
- Darwin: OS X
- Syllable: x86
- אנדרואיד: ARMv5 ו-x86
דוגמאות פשוטות לתחביר תמצאו בעמוד הוויקיפדיה אודות Red , מידע מפורט יותר בתיעוד ולגבי העתיד במפת הדרכים של הפרוייקט. | |
|
|
|