Haskell:
שרשור מחרוזות

איך לעשות:

בהסקל, הפעולה הכי בסיסית להצמדת מחרוזות היא על ידי שימוש באופרטור ++.

main :: IO ()
main = do
    let hello = "שלום"
    let world = "עולם"
    let greeting = hello ++ ", " ++ world ++ "!"
    putStrLn greeting

פלט:

שלום, עולם!

או על ידי שימוש בפונקציית concat כדי לחבר רשימת מחרוזות:

main :: IO ()
main = do
    let wordsList = ["שלום", " ", "עולם", "!"]
    let greeting = concat wordsList
    putStrLn greeting

פלט:

שלום עולם!

צלילה לעומק

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

אלטרנטיבות להצמדת מחרוזות כוללות שימוש בפונקציות כמו intercalate מהמודול Data.List שמאפשרת הצמדת מחרוזות עם תו מפריד:

import Data.List (intercalate)

main :: IO ()
main = do
    let greeting = intercalate ", " ["שלום", "עולם"]
    putStrLn (greeting ++ "!")

פלט:

שלום, עולם!

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

גם זה רלוונטי: