reserve syntax that could be used for computed field types#26816
reserve syntax that could be used for computed field types#26816JeffBezanson merged 1 commit intomasterfrom
Conversation
|
Putting this in NEWS might just add noise --- I don't believe there's anything useful you can do with this syntax currently. |
|
What about or My 2cts |
Will be very interesting to embed into a graph (LightGraphs.jl ?) or db (JuliaDB ?) library to handle the (re)computing of derived properties, metrics etc. When the time has come, of course... |
|
|
What it does is still possible assuming this is still allowed. It's nonetheless something useful that can be done currently with the syntax though. |
|
Ok, you're right. Maybe this should be a deprecation warning instead? Or continue to allow the current syntax, and require something like |
* origin/master: (22 commits) separate `isbitstype(::Type)` from `isbits` (#26850) bugfix for regex matches ending with non-ASCII (#26831) [NewOptimizer] track inbounds state as a per-statement flag change default LOAD_PATH and DEPOT_PATH (#26804, fix #25709) Change url scheme to https (#26835) [NewOptimizer] inlining: Refactor todo object inference: enable CodeInfo method_for_inference_limit_heuristics support (#26822) [NewOptimizer] Fix _apply elision (#26821) add test case from issue #26607, cfunction with no args (#26838) add `do` in front-end deparser. fixes #17781 (#26840) Preserve CallInst metadata in LateLowerGCFrame pass. Improve differences from R documentation (#26810) reserve syntax that could be used for computed field types (#18466) (#26816) Add support for Atomic{Bool} (Fix #26542). (#26597) Remove argument restriction on dims2string and inds2string (#26799) (#26817) remove some unnecessary `eltype` methods (#26791) optimize: ensure merge_value_ssa doesn't drop PiNodes inference: improve tmerge for Conditional and Const ensure more iterators stay type-stable code loading docs (#26787) ...
|
Was the triage decision to use |
That keeps the semantics consistent with super types, which I assume will probably never support deferred computed types. |
@generated struct Foo{T}
x::T
y::eltype(T)
endMaybe? |
* origin/master: (23 commits) fix deprecations of \cdot and \times (#26884) Support reshaping custom 0-dimensional arrays (#26870) fix some cases of dot syntax lowering (#26878) Pkg3: deterministically close the LibGit2 repo in tests (#26883) code loading docs: add missing graph edge (#26874) add news for #26858 and #26859 [ci skip] (#26869) Deprecate using && and || within at-dot expressions (#26792) widen `Int8` and `Int16` to `Int` instead of `Int32` (#26859) fix #26038, make `isequal` consistent with `hash` for `Ptr` (#26858) Deprecate variadic size(A, dim1, dim2, dims...) method (#26862) add using Random to example in manual (#26864) warn once instead of depwarn since we want to test it Revert "reserve syntax that could be used for computed field types (#18466) (#26816)" (#26857) Fix compilation on LLVM 6.0 change promotion behaviour of `cumsum` and `cumsum!` to match `sum` [LLVM 6] add patch to diamond if-conversion add a precompile command that can be used to precompile all dependencies (#254) use registry if no version entry exist in project for developed pacakges make Pkg3 work as a drop in for the old CI scripts update registries when adding (#253) ...
This will allows us to implement #18466 in a non-breaking way. Example:
Specifically, this disallows call expressions containing type parameters.