คำถามติดแท็ก scala-2.8

18
ห้องสมุดคอลเลกชัน Scala 2.8 เป็นกรณีของ "บันทึกการฆ่าตัวตายที่ยาวที่สุดในประวัติศาสตร์" หรือไม่? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันเพิ่งเริ่มดูที่การนำคอลเลคชั่นห้องสมุดสกาล่ากลับมาใช้ใหม่ซึ่งกำลังจะวางตลาดในรุ่น2.8 ที่ใกล้เข้ามา ผู้ที่คุ้นเคยกับห้องสมุดจาก 2.7 จะสังเกตเห็นว่าห้องสมุดจากมุมมองการใช้งานมีการเปลี่ยนแปลงเล็กน้อย ตัวอย่างเช่น... > List("Paris", "London").map(_.length) res0: List[Int] List(5, 6) ... สามารถใช้งานได้ทั้งสองรุ่น ห้องสมุดใช้ประโยชน์ได้อย่างเด่นชัดจริงๆแล้วมันยอดเยี่ยมมาก อย่างไรก็ตามผู้ที่ไม่คุ้นเคยกับ Scala ก่อนหน้านี้และได้พูดคุยกับคนอื่นเพื่อทำความเข้าใจกับภาษาในขณะนี้ต้องทำให้ความรู้สึกของลายเซ็นวิธีการเช่น: def map[B, That](f: A => B)(implicit bf: CanBuildFrom[Repr, B, That]): That สำหรับฟังก์ชั่นการใช้งานที่เรียบง่ายนี่เป็นลายเซ็นที่น่ากลัวและเป็นสิ่งที่ฉันคิดว่าตัวเองต้องดิ้นรนที่จะเข้าใจ ไม่ใช่ว่าฉันคิดว่า Scala น่าจะเป็น Java คนต่อไป (หรือ / C / C ++ …

4
สกาล่า 2.8 breakOut
ใน Scala 2.8มีวัตถุอยู่ในscala.collection.package.scala: def breakOut[From, T, To](implicit b : CanBuildFrom[Nothing, T, To]) = new CanBuildFrom[From, T, To] { def apply(from: From) = b.apply() ; def apply() = b.apply() } ฉันได้รับแจ้งว่าผลลัพธ์นี้ใน: > import scala.collection.breakOut > val map : Map[Int,String] = List("London", "Paris").map(x => (x.length, x))(breakOut) map: Map[Int,String] = Map(6 -> London, …

4
<: <, <% <, และ =: = หมายถึงอะไรใน Scala 2.8 และเอกสารเหล่านั้นอยู่ที่ไหน
ฉันเห็นได้ในเอกสาร API สำหรับPredefว่าเป็นประเภทย่อยของประเภทฟังก์ชันทั่วไป (จาก) =&gt; ถึง แต่นั่นคือทั้งหมดที่กล่าว เอ่ออะไรนะ? อาจมีเอกสารอยู่บ้าง แต่เครื่องมือค้นหาไม่จัดการ "ชื่อ" เช่น "&lt;: &lt;" ดีมากดังนั้นฉันจึงไม่สามารถค้นหาได้ คำถามติดตามผล: เมื่อใดที่ฉันควรใช้สัญลักษณ์ / คลาสขี้ขลาดเหล่านี้และทำไม


4
“ บริบทผูกพัน” ใน Scala คืออะไร?
หนึ่งในคุณสมบัติใหม่ของ Scala 2.8 คือขอบเขตบริบท บริบทที่ผูกไว้คืออะไรและมีประโยชน์ที่ใด แน่นอนฉันค้นหาก่อน (และพบเช่นนี้ ) แต่ฉันไม่พบข้อมูลที่ชัดเจนและละเอียดมาก


4
แพ็คเกจวัตถุ
แพคเกจวัตถุคืออะไรไม่ใช่แนวคิดมากนัก แต่เป็นการใช้งาน ฉันพยายามหาตัวอย่างที่ใช้งานได้และรูปแบบเดียวที่ฉันต้องทำงานมีดังนี้: package object investigations { val PackageObjectVal = "A package object val" } package investigations { object PackageObjectTest { def main(args: Array[String]) { println("Referencing a package object val: " + PackageObjectVal) } } } ข้อสังเกตที่ฉันได้ทำคือ: package object _root_ { ... } ไม่ได้รับอนุญาต (ซึ่งสมเหตุสมผล) package object x.y { ... …
92 scala  scala-2.8 

7
ความต่อเนื่องของ Scala คืออะไรและเหตุใดจึงต้องใช้
ฉันเพิ่งเสร็จสิ้นการเขียนโปรแกรมใน Scalaและฉันได้ตรวจสอบการเปลี่ยนแปลงระหว่าง Scala 2.7 และ 2.8 สิ่งที่น่าจะสำคัญที่สุดคือปลั๊กอินความต่อเนื่อง แต่ฉันไม่เข้าใจว่ามันมีประโยชน์อะไรหรือทำงานอย่างไร ฉันเห็นว่ามันดีสำหรับ I / O แบบอะซิงโครนัส แต่ฉันไม่สามารถหาสาเหตุได้ แหล่งข้อมูลยอดนิยมบางส่วนในหัวข้อนี้ ได้แก่ : ความต่อเนื่องที่คั่นและ Scala ไปที่ Scala รสชาติของ 2.8: ความต่อเนื่อง อธิบายความต่อเนื่องแบบคั่น (ใน Scala) และคำถามนี้ใน Stack Overflow: อะไรคือความแตกต่างที่ใหญ่ที่สุดระหว่าง Scala 2.8 และ Scala 2.7? น่าเสียดายที่ไม่มีการอ้างอิงใด ๆ เหล่านี้ที่พยายามกำหนดว่าความต่อเนื่องมีไว้เพื่ออะไรหรือฟังก์ชัน shift / reset ควรทำอย่างไรและฉันไม่พบการอ้างอิงใด ๆ ที่ทำ ฉันไม่สามารถเดาได้ว่าตัวอย่างใดในบทความที่เชื่อมโยงนั้นทำงานอย่างไร (หรือสิ่งที่พวกเขาทำ) ดังนั้นวิธีหนึ่งที่จะช่วยฉันได้คือการไปทีละบรรทัดผ่านหนึ่งในตัวอย่างเหล่านั้น แม้แต่เรื่องง่ายๆจากบทความที่สาม: reset …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.