PureScript 0.8.0 "TIMESLIDES"发布,更新如下: 重大更新 None, but there are lots of new warnings related to upcoming breaking changes in 0.9: Operators as aliases will become mandatory, and regular operators (as functions) will now generate warnings. Non-exhaustive functions will get a Partial constraint in 0.9, so the exhaustivity checker will now attempt to generate warnings by looking for Partial constraints in scope. The qualified import syntax has been deprecated. Class imports will use the new class syntax in 0.9 and the alternative syntax is deprecated. 改进 Add native Partial constraint (@garyb) Reduce backtracking in parser to hopefully improve quality of parsing error messages (@paf31) Drop requirement to parenthesize single constraints in instance contexts (@garyb) Case expressions can now match multiple values (@natefaubion) Add operator aliases (@garyb) Show identifiers correctly in ctags (@nwolverson) Fix #1523, add --json-errors flag for editor integrations (@paf31) Error and warning corrections are now available to editors via --json-errors (@nwolverson) Check integer values are within range in codegen (@garyb) Support for unicode operators (@paf31) The parser now supports unicode symbols for forall and function arrows (@DavidLindbom) Module Imports Use class keyword for class references in imports (@garyb) Type imports no longer require () (@garyb) Allow import hiding with qualified imports (@garyb) Naming conflicts are now resolved at the use site (@garyb) Error Messages Fix #1662, display extra type info in instance errors (@paf31) Add information about skolem constants to type errors (@paf31) Sort rows in unification errors (@paf31) Warnings Warn on unspecified imports (@garyb) Warn when import X hiding (..) imports nothing (@garyb) Warn on duplicate imports and exports (@garyb) Warn about unused class imports (@garyb) Bug 修复 Renamer updates, fixes naming bug in some unlikely situations (@garyb) Fix #1645, implement new indentation rules for types to avoid very wide errors (@paf31) Fix "resource exhausted" issue on MacOS (@mgmeier) Fix #1664, check kind before expanding wildcards. (@paf31) Fix up shadowed module names in JS codegen (@garyb) Fix #1185, fix #1369, add everythingWithScope traversal to correct some scoping issues. (@paf31) Fix two cases where errors were missing context (@garyb) Fix #1636, instantiate polytypes fully, even under constraints. (@paf31) Fix missing data constructors in re-exports (@garyb) Fix codegen error with instance for re-exported class (@garyb) Fix #1479, encode .js files as UTF8. (@paf31) Fix a bug related to redundancy checking in cases (#1853, @nicodelpiano) Fix a TCO/composition inlining bug (@garyb, @hdgarrood) Fix renaming for nested constructor binders (#1839, @sharkdp) Fix generic deriving bug with >1 type argument (@hdgarrood) Fix generate fresh binder names unless all names in case are equal (#1825, @paf31) Fix external require expressions when minifying (#1794, @paf31) Rename foreign argument to fix compiling issue (@anttih) Allow use of bottom integer (@garyb) 其它 Fix #1700, remove warnings for syntactic features removed in 0.7.0 (@paf31) Fix psc-publish test (@passy) Relax rules for docs comments (#1820, @hdgarrood) Qualified name lookup is now supported in PSCi (#974, @soupi) https://github.com and git@github.com URLs are now allowed by psc-publish (@passy, @codedmart) Docs are now generated for module re-exports (@hdgarrood) Use friendly module name in psc-docs error (@nwolverson) Distinguish between the different ProperNames (@garyb) Warn about unspecified constructors in type imports (@garyb) Fix warning about values missing from virtual modules (@garyb) 下载页面:0.8.0 PureScript 是个小巧而强大的静态类型语言,可以编译成 JavaScript。purescript 主要是由 Haskell 和 PureScript 编写的。 PureScript 0.8.0 发布,静态类型语言下载地址