รายละเอียดซอฟแวร์:
ขณะนี้สนับสนุนทั้ง Haskell 98 ภาษาและความหลากหลายของนามสกุลภาษา
คุณสมบัติ .
- GHC มี การสนับสนุนที่ดีโดยเฉพาะอย่างยิ่งสำหรับการทำงานพร้อมกันและขนานรวมทั้งการสนับสนุนหน่วยความจำสำหรับซอฟแวร์การทำธุรกรรม (STM).
- GHC สร้างรหัสได้อย่างรวดเร็วโดยเฉพาะอย่างยิ่งสำหรับโปรแกรมพร้อมกัน ลองดูที่ผลการดำเนินงาน GHC บนคอมพิวเตอร์ภาษา Benchmarks เกมและความคิดเห็นบางส่วน Haskell โดยจัดงานในปัจจุบันของการยิงเบรนต์ Fulgham.
- GHC ทำงานบนหลายแพลตฟอร์มรวมทั้ง Windows และพันธุ์มากที่สุดของระบบปฏิบัติการยูนิกซ์และหลายสถาปัตยกรรมหน่วยประมวลผลที่แตกต่างกัน มีคำแนะนำรายละเอียดสำหรับ porting GHC เพื่อแพลตฟอร์มใหม่.
- GHC มีความสามารถในการเพิ่มประสิทธิภาพอย่างกว้างขวางรวมทั้งระหว่างการเพิ่มประสิทธิภาพโมดูล.
- GHC รวบรวมรหัส Haskell ทั้งโดยการใช้คอมไพเลอร์ C กลาง (GCC) หรือโดยการสร้างรหัสพื้นเมืองบนแพลตฟอร์มบาง สภาพแวดล้อมแบบโต้ตอบรวบรวม Haskell เพื่อ bytecode และสนับสนุนการดำเนินการของผสม bytecode / รวบรวมโปรแกรม.
- Profiling ได้รับการสนับสนุนทั้งตามเวลา / การจัดสรรและชนิดของโปรไฟล์กอง.
- GHC มาพร้อมกับความหลากหลายของห้องสมุด.
มีอะไรใหม่ ในข่าวประชาสัมพันธ์นี้:
- โดยค่าเริ่มต้น GHC ได้เตือนใหม่เปิดใช้งาน -fwarn หลุม -typed ซึ่งเป็นสาเหตุของคอมไพเลอร์ที่จะตอบสนองกับประเภทของตัวแปรที่ไม่ได้ผูกไว้จะพบในรหัสที่มา.
- ตอนนี้มันเป็นไปได้ที่จะประกาศ "ปิด" ครอบครัวชนิดเมื่อใช้นามสกุล TypeFamilies.
- GHC ในขณะนี้สนับสนุนการบรรทุกเกินพิกัดตัวอักษรรายชื่อโดยใช้นามสกุลใหม่ OverloadedLists.
- GHC ในขณะนี้สนับสนุนคำพ้องรูปแบบการเปิดใช้งานโดย -XPatternSynonyms นามสกุล.
มีอะไรใหม่ ในรุ่น 7.6.2:
- ข้อผิดพลาด typechecker ยาวนานซึ่งได้รับอนุญาต unsafeCoerce ไป จะเขียนได้รับการแก้ไข.
- ข้อผิดพลาดได้รับการแก้ไขที่ทำให้เกิด GHC บางครั้งไม่ทราบว่าคอมไพล์เป็นสิ่งจำเป็น.
- ถ้าทั้ง -H และ -M & # x3c ขนาด & # x3e; ธงจะได้รับแล้ว GHC จะไม่เกินขนาดกองสูงสุด.
- ปิดโดยหนึ่งข้อผิดพลาดที่อาจก่อให้เกิด segfaults ในการแยกธง RTS ได้รับการแก้ไข.
- ข้อบกพร่องต่างๆที่อาจทำให้ GHC ต้องตกใจเมื่อรวบรวมไฟล์ที่มาบางอย่างได้รับการแก้ไข.
- ข้อบกพร่องบางอย่างในรูปแบบการตรวจสอบ DataKinds และนามสกุล PolyKinds ได้รับการแก้ไข.
- ประสิทธิภาพของโปรแกรมที่รวบรวมได้รับการปรับปรุงในบางกรณี.
มีอะไรใหม่ ในรุ่น 7.6.1:
- ชนิด Polymorphic และโปรโมชั่นในขณะนี้มีการดำเนินการอย่างเต็มที่และ คุณสมบัติที่รองรับ:. หมวดที่ 7.8 & quot; polymorphism ชนิด & quot;
- 64bit Windows เป็นแพลตฟอร์มในขณะนี้ได้รับการสนับสนุน.
- ตอนนี้มันเป็นไปได้ที่จะเลื่อนการข้อผิดพลาดชนิดจน runtime ใช้ -fdefer ประเภท-สถานะข้อผิดพลาด:. มาตรา 7.13, & quot; การชะลอข้อผิดพลาดชนิด runtime & quot;
- RTS ในขณะนี้สนับสนุนการเปลี่ยนแปลงจำนวนของความสามารถในการที่รันไทม์กับ Control.Concurrent.setNumCapabilities. มาตรา 4.15.2 & quot; ตัวเลือกสำหรับ RTS ขนาน SMP & quot;
มีอะไรใหม่ ในรุ่น 7.4.2:.
- hp2ps ตอนนี้สามารถจัดการ backslashes ในตัวบ่งชี้ได้อย่างถูกต้อง
- แก้ไขข้อผิดพลาดในการดำเนินการเริ่มต้นของ popcount ใน Data.Bits.
- สภาพการแข่งขันที่มีศักยภาพใน Control.Concurrent.Chan ได้รับการแก้ไข.
- ข้อผิดพลาด MVAR ซึ่งอาจก่อให้เกิดการติดตายได้รับการแก้ไข.
- เมื่อใช้ -fwarn-ไม่ปลอดภัย GHC ตอนนี้รายงานนามสกุลภาษาที่ไม่ปลอดภัย.
- RTS ไม่เธรดในขณะนี้หลีกเลี่ยง wakeups เมื่อระบบไม่ได้ใช้งาน.
- ข้อผิดพลาดที่ก่อให้เกิดความผิดพลาดที่มีขนาดสแต็คเริ่มต้นขนาดเล็กมากได้รับการแก้ไข.
มีอะไรใหม่ ในรุ่น 7.4.1:
- มีคุณลักษณะใหม่ที่ปลอดภัย Haskell เป็น (-XSafe , -XTrustworthy, -XUnsafe) มาตรา 7.23, & quot; Haskell ปลอดภัย & quot ;. การออกแบบที่มีการเปลี่ยนแปลงตั้งแต่ 7.2.
- มีคุณสมบัติใหม่ที่แตกต่างชนิดคือ (-XPolyKinds) มาตรา 7.8.1 & quot; polymorphism ชนิด & quot ;. ผลข้างเคียงของการนี้ก็คือว่าเมื่อขยายไม่ได้เปิดใช้งานในบางสถานการณ์ชนิดมีการผิดนัดตอนนี้เพื่อ * แทนที่จะสรุป.
- มีชนิด จำกัด คุณลักษณะใหม่ (-XConstraintKinds) คือ. มาตรา 7.10, & quot; ชนิด จำกัด & quot;
- ตอนนี้มันเป็นไปได้ที่จะให้การจัดเรียงของการประกาศใด ๆ ที่พร้อมรับคำ ghci. มาตรา 2.4.4 & quot; ประเภทชั้นและประกาศอื่น ๆ ที่ & quot;
- โปรไฟล์และการใช้งาน HPC ได้รับการควบรวมกิจการและการซ่อมแซม การเปลี่ยนแปลงที่มองเห็นได้รวมถึงการเปลี่ยนชื่อของธง profiling และกองค่าใช้จ่ายที่ศูนย์มีความหมายใหม่ที่ควรในกรณีส่วนใหญ่ผลในรูปแบบที่มีประโยชน์มากขึ้นและใช้งานง่าย + RTS -xc ธงตอนนี้ยังช่วยให้กองติดตาม.
- ตอนนี้มันเป็นไปได้ที่จะเขียนปลั๊กอินคอมไพเลอร์. มาตรา 9.3 & quot; คอมไพเลอร์ปลั๊กอิน & quot;
- การสนับสนุน DPH ได้รับการปรับปรุงอย่างมีนัยสำคัญ.
- ขณะนี้คือการสนับสนุนเบื้องต้นสำหรับการรวบรวม registerised บนแพลตฟอร์ม ARM ใช้ LLVM.
มีอะไรใหม่ ในรุ่น 7.0.4:
- จุดถดถอยที่ลอยอยู่ใน 7.0.3 ผลกระทบต่อ 86 ได้รับการแก้ไข.
- ลิงเกอร์ GHCi ตอนนี้จับปล้นบางส่วนไฟล์วัตถุ นี้แก้โหลดแพคเกจ GHC ใน ghci เมื่อมันถูกปลดออกซึ่งมักจะเป็นกรณีในแพคเกจการกระจาย Linux.
- ข้อผิดพลาดที่ก่อให้เกิดผลที่ไม่ดีจาก getCPUTime, getClockTime getCurrentTime และได้รับการแก้ไข.
- ข้อผิดพลาดของระบบ runtime กับกองขนาดใหญ่ได้รับการแก้ไข.
- ข้อผิดพลาดของระบบ runtime เมื่อโปรไฟล์กองได้รับการแก้ไข.
- ข้อผิดพลาดของระบบ runtime เมื่อโปรไฟล์กองได้รับการแก้ไข.
- ข้อผิดพลาดของระบบ runtime ซึ่งก่อให้เกิดผลที่ไม่ถูกต้องและ segfaults เมื่อใช้เรียกกลับ FFI, ได้รับการแก้ไข.
- ข้อผิดพลาดของระบบ runtime ซึ่งก่อให้เกิดเป็นครั้งคราวโปรแกรมขนานไปกับ & # x3c; & # x3c; ห่วง & # x3e; & # x3e; เมื่อใช้ -feager-blackholing, ได้รับการแก้ไข.
- สิทธิ์ไดเรกทอรีที่ไม่ถูกต้องเมื่อติดตั้งได้รับการแก้ไข.
- การปรับปรุงบางอย่างได้รับการสร้างขึ้นมาเพื่อสนับสนุนพันธมิตรใหม่ TestSuite.
- พันธมิตรคือตอนนี้ 1.10.2.0 (เป็น 1.10.1.0).
มีอะไรใหม่ ในรุ่น 7.0.2:
- คอมไพเลอร์:
- เก่า [$ foo | ... |]. ไวยากรณ์ทำงานอีกครั้ง แต่จะเลิก
- มี improvments สำคัญในการตรวจสอบชนิดใหม่.
- GHCi:
- โหลด .a ห้องสมุดนี้เป็นไปได้ในทุกแพลตฟอร์ม ห้องสมุด .o จะยังคงถูกนำมาใช้โดยการตั้งค่าถ้าทั้งสองอยู่ GHCi จะไม่เตือนเกี่ยวกับที่หายไป .o ห้องสมุด.
- ตอนนี้เราปิด .ghci ไฟล์หลังจากที่ได้อ่านพวกเขาซึ่งอยู่บนเครื่อง Windows ช่วยให้พวกเขามีการเปลี่ยนแปลงในขณะที่กำลังทำงาน GHCi.
- ตอนนี้มันเป็นไปได้ที่จะ. ล้างตัวแปร ghci (args, prog ที่พรอมต์บรรณาธิการและหยุด)
- ระบบ Runtime:
- DTrace ได้รับการสนับสนุนในขณะนี้บน Solaris นอกเหนือไปจาก OS X.
- สร้างระบบ:
- OS X 10.6 ที่สร้างขึ้นมาในขณะนี้การทำงานกับทั้ง 10.5 และ 10.6.
- การติดตั้งของ Windows ในขณะนี้รวม libstdc ++ DLL.
- ค๊อด:
- GHC ตอนนี้มาพร้อมกับค๊อด 2.9.0.
- GHC ขณะนี้รวมถึงฐานข้อมูล hoogle สำหรับห้องสมุด.
มีอะไรใหม่ ในรุ่น 7.0.1:
- บนแพลตฟอร์ม POSIX มีผมใหม่ / ผู้จัดการ O ขึ้นอยู่กับ epoll / kqueue / การสำรวจความคิดเห็นซึ่งจะช่วยให้แบบมัลติเธรด I / O รหัสที่จะไต่ไปเป็นจำนวนมากมีขนาดใหญ่ (100k +) หัวข้อ.
- GHC ขณะนี้มีเครื่องกำเนิดไฟฟ้ารหัส LLVM สำหรับรหัสบางรหัสหนักคณิตศาสตร์โดยเฉพาะอย่างยิ่งการใช้เครื่องกำเนิดไฟฟ้ารหัส LLVM สามารถนำบางส่วนปรับปรุงประสิทธิภาพการทำงานที่ดี.
- ตรวจสอบชนิดได้รับการซ่อมแซมซึ่งหมายความว่ามันคือตอนนี้สามารถที่จะถูกต้องจัดการปฏิสัมพันธ์ระหว่างส่วนขยายระบบการพิมพ์.
- Inliner ได้รับการซ่อมแซมซึ่งควรโดยทั่วไปให้ประสิทธิภาพที่ดีขึ้นในขณะที่ลดการระเบิดที่ไม่จำเป็นรหัสขนาด.
- ชิ้นส่วนขนาดใหญ่ของระบบการรันไทม์ได้รับการซ่อมแซมโดยเฉพาะเครื่องจักรที่เกี่ยวข้องกับการป้องกันและปลุกของหัวข้อและข้อยกเว้นการขว้างปา (throwTo) กรณีหลายของการปฏิบัติงานพยาธิวิทยาได้รับการแก้ไขโดยเฉพาะอย่างยิ่งที่ตัวเลขขนาดใหญ่ของหัวข้อการมีส่วนร่วม.
- เนื่องจากมีการเปลี่ยนแปลงในระบบ runtime ถ้าคุณกำลังใช้ Control.Parallel.Strategies จากแพคเกจขนานกรุณาอัพเกรดอย่างน้อย 2 รุ่น (โดยเฉพาะรุ่นที่ 3) การดำเนินการตามกลยุทธ์ในขนาน 1.x จะสูญเสียความเท่าเทียมกับ GHC 7.0.1.
ความคิดเห็นที่ไม่พบ