Io :: lambda.

לא חסימת I / O ב Lambda סגנון
הורד עכשיו

Io :: lambda. דירוג וסיכום

פרסומת

  • Rating:
  • רישיון:
  • Perl Artistic License
  • מחיר:
  • FREE
  • שם המפרסם:
  • Dmitry Karasik
  • אתר האינטרנט של המוציא לאור:
  • http://search.cpan.org/~karasik/Prima-1.26/pod/Prima/Widget.pod

Io :: lambda. תגים


Io :: lambda. תיאור

לא חסימת I / O ב Lambda סגנון Io :: Lambda הוא מודול Perl עם חסימת I / O ב Lambda Style.Synopsise קוד להלן מבצעים בקשות HTTP מקביל להשתמש קפדנית; השתמש IO :: Lambda QW (: Lambda); השתמש IO :: Socket :: Inet; # יצירת Lambda אובייקט משנה HTTP {שלי ($ המארח, $ URL) = @_; שלי $ Socket = IO :: Socket :: Inet-> חדש (Peeraddr => $ Host, Peerport => 80); Lambda {הקשר $ שקע; כתוב {הדפס $ Socket "קבל $ URL http / 1.0 "BUF $ =" קרא {return $ buf אלא אם כן sysread ($ שקע, $ buf, 1024, אורך ($ buf)); שוב;}}}} # אש למבדה אחת והמתנה עד שהוא משלים הדפסה HTTP ('www.perl.com', '/') -> לחכות, # אש למעלה למבדה המחכה לשני בקשות HTTP במקביל lambda {הקשר http ('www.perl.com', '/'), http ('www.google.com', '/'); זנבות {print @_;}} -> המתן; הערה: io ו Lambda הם מילים נרדפות - אני אישית מעדיף Lambda אבל כמה למצוא את המילה מעט לא הולם, ומכאן io.This מודול הוא ניסיון נוסף להילחם בזוועות של תכנות ללא חוסם I / O. זה מנסה להחזיר את הפשטות של סגנון התכנות הצהרתי, כי הוא רק זמין כאשר אחד מעסיק חוטים, coroutines, או תהליכים שיתוף פעולה. בדרך כלל קידוד לא -Blocking I / O עבור תהליך יחיד, תוכניות יחיד חוט דורש בנייה של מכונות המדינה, לעתים קרובות קומפלקס למדי, אשר אינו עוזר לבהירות של הקוד. לא בניגוד לשרפים בשפות פונקציונליות, כי לאכוף סדר ההוצאה להורג על כללי פונקציות ללא הזמנה, מסגרת זו מסייעת למתכנת כדי לבטא את סדר ביצוע של I / O Callbacks בסגנון קידוד הדומה לתכנות רציף, הצהרתי. המדריך מתחיל עם דוגמאות קוד, ולאחר מכן מסביר הנחות בסיסיות, ואז סוף סוף מקבל של מושגים מורכבים, שבו מתחיל הכיף האמיתי. אתה יכול לדלג ישירות שם ("זרם Io"), שבו סגנון פונקציונלי מתערבב עם I / O. דרישות: · פרל


Io :: lambda. תוכנה קשורה