内容简介:PureScript v0.12.0-rc1 发布,PureScript 是个小巧而强大的静态类型语言,可以编译成 JavaScript。PureScript 主要是由 Haskell 和 PureScript 编写的。 主要更新: Added applicative-do notation; ado i...
PureScript v0.12.0-rc1 发布,PureScript 是个小巧而强大的静态类型语言,可以编译成 JavaScript。PureScript 主要是由 Haskell 和 PureScript 编写的。
主要更新:
Added applicative-do notation;
ado
is now a keyword. An full explanation of the behaviour and usage ofado
is available in a comment on the issue. (#2889, @rightfold)Removed wrapper scripts for the old binary names (psc, psci, etc.) (#2993, @hdgarrood)
Removed compiler support for deriving
purescript-generics
.purescript-generics-rep
is still supported. (#3007, @paf31)Instances with just one method now require the method to be indented (bug fix, but potentially breaking) (#2947, @quesebifurcan)
Overlapping instances are now an error rather than a warning, but can be resolved with the new instance chain groups feature (#2315, @LiamGoodacre)
It is no longer possible to export a type class that has superclasses that are not also exported (bug fix, but potentially breaking) (#3132, @parsonsmatt)
Eq
andOrd
deriving will now rely onEq1
andOrd1
constraints as necessary where sometimes previouslyEq (f _)
would be required.Eq1
andOrd1
instances can also be derived. (#3207, @garyb)Some
Prim
type classes have been renamed/moved, so will require explicit importing (#3176, @parsonsmatt):RowCons
is nowPrim.Row.Cons
Union
is nowPrim.Row.Union
Fail
is nowPrim.TypeError.Fail
Warn
is nowPrim.TypeError.Warn
Users can no longer specify modules under the
Prim
namespace (#3291, @parsonsmatt)TypeConcat
andTypeString
have been replaced because they were in kindSymbol
but weren't literals. ThePrim.TypeErrer.Doc
kind and related constructors (Text
,Quote
,Beside
,Above
) have been added in their place. TheFail
andWarn
type classes now accept aDoc
instead of aSymbol
.
(#3134, @LiamGoodacre)In simple cases instance overlaps are now checked at declaration time rather than being deferred until an attempt is made to use them. (#3129, @LiamGoodacre)
Chaining non-associative or mixed associativity operators of the same precedence is no longer allowed (#3315, @garyb)
The
--dump-corefn
and--source-maps
arguments topurs compile
have been removed. There is now a--codegen
argument that allows the specific codegen targets to be specified - for example,--codegen corefn
will not produce JS files,--codgen js,corefn
will produce both. If thesourcemaps
target is usedjs
will be implied, so there's no difference between--codegen js,sourcemaps
and--codegen sourcemaps
). If no targets are specified the default isjs
. (#3196, @garyb, @gabejohnson)Exported types that use foreign kinds now require the foreign kinds to be exported too (bug fix, but potentially breaking) (#3331, @garyb)
改进
Added
Cons
compiler-solved type class forSymbol
(#3054, @kcsongor)The
Append
compiler-solved type class forSymbol
can now be run in reverse (#3025, @paf31)Find Usages for values and constructors in
purs ide
(#3206, @kRITZCREEK)purs ide
treatshiding
imports the same as open imports when sorting (#3069, @kRITZCREEK)Added inlining for fully saturated usages of
runEffFn/mkEffFn
(#3026, @nwolverson)Improved explanation of
UnusableDeclaration
error (#3088, #3304, @i-am-tom)Improved rendering of comments in generated JavaScript by removing additional newlines (#3096, @brandonhamilton)
Instance chain support. (#2315, @LiamGoodacre)
Improved orphan instance error to include locations where the instance would be valid (#3106, @i-am-tom)
Added an explicit error for better explanation of duplicate type class or instance declarations (#3093, @LiamGoodacre)
purs ide
now provide documentation comments (#2349, @nwolverson)Clarified meaning of duplicate labels in a
Record
row (#3143, @paf31)Explicit import suggestions consistently use
(..)
for constructors now (#3142, @nwolverson)Large compiler perfomance improvement in some cases by skipping source spans in
Eq
,Ord
for binders (#3265, @bitemyapp)Added support for error/warning messages to carry multiple source spans (#3255, @garyb)
Improved tab completion in
purs repl
when parens and brackets are involved (#3236, @rndnoise)Improved completion in
purs repl
after:kind
and:type
(#3237, @rndnoise)Added the "magic do" optimisation for the new simplified
Effect
type (Control.Monad.Eff
is still supported) (#3289, @kRITZCREEK, #3301, @garyb)Improvide build startup times when resuming a build with incremental results (#3270, @kRITZCREEK)
Added compiler-solved
Prim.Row.Nub
type class (#3293, @natefaubion)Improved docs for
Prim.Row.Cons
andPrim.Row.Union
(#3292, @vladciobanu)Functor
can now be derived when quantifiers are used in constructors (#3232, @i-am-tom)purs repl
will now complete types after::
(#3239, @rndnoise)Added compiler-solved
Prim.Row.Lacks
type class (#3305, @natefaubion)Added current output path to missing output error message from
purs ide
(#3311, @rgrinberg)Improved parser error messages for
.purs-repl
(#3248, @rndnoise)require
in generated JavaScript now includes fullindex.js
file paths (#2621, @chexxor)Added more compiler-solved type classes and supporting types and kinds to
Prim
:Prim.Ordering
module withkind Ordering
,type LT
,type EQ
,type GT
Prim.RowList
module withclass RowToList
,kind RowList
,type Nil
,type Cons
Prim.Symbol
module withclass Compare
,class Append
,class Cons
(#3312, @LiamGoodacre, @kRITZCREEK)Generated code for closed records now explicitly reconstructs the record rather than looping (#1493, @fehrenbach, blog post with more details)
bug 修复
Fixed a bug with names cause by
Prim
always being imported unqualified (#2197, @LightAndLight)Fixed overlapping instances error message to reflect its new status as an error (#3084, @drets)
Added source position to
TypeClassDeclaration
errors (#3109, @b123400)Fixed entailment issues with skolems and matches in the typechecker (#3121, @LiamGoodacre)
Fixed multiple parentheses around a type causing a crash (#3085, @MonoidMusician)
Fixed
purs ide
inserting conflicting imports for types (#3131, @nwolverson)Fixed constraints being inferred differently for lambda expressions compared with equational declarations (#3125, @LiamGoodacre)
Updated glob handling to prevent excessive memory usage (#3055, @hdgarrood)
Added position information to warnings in type declarations (#3174, @b123400)
Fixed documentation generated for Pursuit rendering functional dependency variables as identifier links (#3180, @houli)
Naming a function argument
__unused
no longer breaks codegen (#3187, @matthewleon)Added position information to
ShadowedName
warning (#3213, @garyb)Added position information to
UnusedTypeVar
warning (#3214, @garyb)Added position information to
MissingClassMember
,ExtraneousClassMember
,ExpectedWildcard
errors (#3216, @garyb)Added position information to
ExportConflict
errors (#3217, @garyb)Fixed
ctags
andetags
generation when explicit exports are involved (#3204, @matthewleon)Added position information to
ScopeShadowing
warning (#3219, @garyb)Added position information for various FFI related errors and warnings (#3276, @garyb)
Added all available positions to
CycleInModule
andDuplicateModule
errors (#3273, @garyb)Added position information for
IntOutOfRange
errors (#3277, @garyb, @kRITZCREEK)Warnings are now raised when a module re-exports a qualified module with implicit import (#2726, @garyb)
purs repl
now shows results for:browse Prim
(#2672, @rndnoise)Added position information to
ErrorParsingFFIModule
(#3307, @nwolverson)Added position information for
ScopeConflict
cause by exports (#3318, @garyb)Added position information to errors that occur in binding groups and data binding groups (#3275, @garyb)
Fixed a scoping issue when resolving operators (#2803, @kRITZCREEK, @LightAndLight)
Type synonyms are now desugared earlier when newtype deriving (#3325, @LiamGoodacre)
Fixed subgoals of compiler-solved type classes being ignored (#3333, @LiamGoodacre)
Added position information to type operator associativity errors (#3337, @garyb)
其它
Updated installation information to include details about prebuild binaries (#3167, @MiracleBlue)
Test suite now prints output when failing cases are encountered (#3181, @parsonsmatt)
Updated test suite to use tasty (#2848, @kRITZCREEK)
Refactored
let
pattern desugaring to be less brittle (#3268, @kRITZCREEK)Added makefile with common tasks for contributors (#3266, @bitemyapp)
Added
ghcid
and testing commands to makefile (#3290, @parsonsmatt)Removed old unused
MultipleFFIModules
error (#3308, @nwolverson)mod
anddiv
forInt
are no longer inlined as their definition has changed in a way that makes their implementation more complicated - purescript/purescript-prelude#161 (#3309, @garyb)The test suite now checks warnings and errors have position information (#3211, @garyb)
The AST was updated to be able to differentiate between
let
andwhere
clauses (#3317, @joneshf)Support for an optimization pass on
CoreFn
was added (#3319, @matthewleon)
详情见发布公告。
下载地址:
【声明】文章转载自:开源中国社区 [http://www.oschina.net]
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- TinySelect 0.4.2 发布,带来大量更新
- ColorWanted 4.1.0 发布,带来大量更新
- MariaDB 10.3.6 发布,带来多项更新
- VS Code 1.23.0 发布,带来众多更新
- 记一次 Chrome 更新带来的登录 Cookie 问题
- Node.js v8.0.0 正式发布,带来大量更新
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Head First Web Design
Ethan Watrall、Jeff Siarto / O’Reilly Media, Inc. / 2009-01-02 / USD 49.99
Want to know how to make your pages look beautiful, communicate your message effectively, guide visitors through your website with ease, and get everything approved by the accessibility and usability ......一起来看看 《Head First Web Design》 这本书的介绍吧!