לדלג לתוכן

קובץ:Understanding arrows mean1 data flow.svg

תוכן הדף אינו נתמך בשפות אחרות.
מתוך ויקיפדיה, האנציקלופדיה החופשית

לקובץ המקורי(קובץ SVG, הגודל המקורי: 1,000 × 436 פיקסלים, גודל הקובץ: 17 ק"ב)

ויקישיתוף זהו קובץ שמקורו במיזם ויקישיתוף. תיאורו בדף תיאור הקובץ המקורי (בעברית) מוצג למטה.

תקציר

תיאור
English: Data flow in the mean1 example of b:en:Haskell/Arrow tutorial. Rectangles are arrows (rounded rectangles are arrows made with arr) and circles are other data flow split/merge points. Haskell source code being represented:
(total &&& (const 1 ^>> total)) >>> arr (uncurry (/))
תאריך יצירה
מקור נוצר על־ידי מעלה היצירה
יוצר Daniel Mlot

Haskell/diagrams source code for generating the image:

{-# LANGUAGE NoMonomorphismRestriction #-}

import Diagrams.Prelude
import Diagrams.Backend.Cairo.CmdLine

main = mainWith $ pad 1.05 . centerXY $ connDiag

baseDiag = hsep 0.5 . fmap centerY $
    [ anAmper # named "amp"
    , anArrow "total" # named "sum" # centerX
        ===
    strutY 1
        ===
    (aFunction "const 1" # named "one" |||
        strutX 1 |||
        anArrow "total" # named "count") # named "path2" # centerX
    , aFunction "/" # named "divide"
    ]

connDiag = baseDiag
    # connectPerim' baseConnOpts
        "amp" "sum" (1/8 @@ turn) (1/2 @@ turn)
    # connectPerim' baseConnOpts
        "amp" "one" (7/8 @@ turn) (1/2 @@ turn)
    # connectPerim' baseConnOpts
        "one" "count" (0 @@ turn) (1/2 @@ turn)
    # connectPerim' baseConnOpts
        "sum" "divide" (0 @@ turn) (3/8 @@ turn)
    # connectPerim' baseConnOpts
        "count" "divide" (0 @@ turn) (5/8 @@ turn)
    where
    baseConnOpts = with & lengths .~ large
        & shaftStyle %~ lc baseColour . lw veryThick
        & headStyle %~ fc (darken 0.2 baseColour)

aFunction :: String -> Diagram B
aFunction s = roundedRect 1.6 1.2 0.4 # applyStyle initStyle
    <> nudgedText s
        # fc baseColour

anArrow :: String -> Diagram B
anArrow s = rect 1.6 1.2 # applyStyle initStyle
    <> nudgedText s

anAmper :: Diagram B
anAmper = circle 0.5 # applyStyle initStyle
    <> nudgedText "&&&"

initStyle :: Style V2 Double
initStyle = mempty # lc baseColour # lwL 0.1

baseColour = mediumorchid

nudgedText :: String -> Diagram B
nudgedText s = alignedText 0.5 0.5 s
    # font "monospace" # fontSize (local 0.25) # bold # fc baseColour

רישיון

אני, בעל זכויות היוצרים על עבודה זו, מפרסם בזאת את העבודה תחת הרישיון הבא:
w:he:Creative Commons
ייחוס שיתוף זהה
הקובץ הזה מתפרסם לפי תנאי רישיון קריאייטיב קומונז ייחוס-שיתוף זהה 4.0 בין־לאומי.
הנכם רשאים:
  • לשתף – להעתיק, להפיץ ולהעביר את העבודה
  • לערבב בין עבודות – להתאים את העבודה
תחת התנאים הבאים:
  • ייחוס – יש לתת ייחוס הולם, לתת קישור לרישיון, ולציין אם נעשו שינויים. אפשר לעשות את זה בכל צורה סבירה, אבל לא בשום צורה שמשתמע ממנה שמעניק הרישיון תומך בך או בשימוש שלך.
  • שיתוף זהה – אם תיצרו רמיקס, תשנו, או תבנו על החומר, חובה עליכם להפיץ את התרומות שלך לפי תנאי רישיון זהה או תואם למקור.

כיתובים

נא להוסיף משפט שמסביר מה הקובץ מייצג

פריטים שמוצגים בקובץ הזה

מוצג

היסטוריית הקובץ

ניתן ללחוץ על תאריך/שעה כדי לראות את הקובץ כפי שנראה באותו זמן.

תאריך/שעהתמונה ממוזערתממדיםמשתמשהערה
נוכחית03:22, 17 ביולי 2015תמונה ממוזערת לגרסה מ־03:22, 17 ביולי 2015‪436 × 1,000‬ (17 ק"ב)DuplodeUser created page with UploadWizard

אין בוויקיפדיה דפים המשתמשים בקובץ זה.

שימוש גלובלי בקובץ

אתרי הוויקי השונים הבאים משתמשים בקובץ זה:

מטא־נתונים