Hello guys

Hello guys,

Even that the most voted feature requests have nothing to do with what will be implemented in future releases and when, voting up for them increase their priority and make them close to get considered/done. Please, don't forget to vote :D

Here is a TOP20 below:
https://quality.embarcadero.com/browse/RSP-14867 - Local variables with value
https://quality.embarcadero.com/browse/RSP-13290 - NameOf(T) compiler (magic) function
https://quality.embarcadero.com/browse/RSP-12100 - Ternary operator
https://quality.embarcadero.com/browse/RSP-12527 - Additional class operators
https://quality.embarcadero.com/browse/RSP-13340 - Expanded/Enhanced type helpers
https://quality.embarcadero.com/browse/RSP-15539 - Binary literal
https://quality.embarcadero.com/browse/RSP-13724 - Global generics
https://quality.embarcadero.com/browse/RSP-13141 - Char in [] operator for Unicode strings
https://quality.embarcadero.com/browse/RSP-12767 - Enumerable constraint to generics
https://quality.embarcadero.com/browse/RSP-12788 - Parameterless constructor/destructor for records
https://quality.embarcadero.com/browse/RSP-15419 - Loop over enum type
https://quality.embarcadero.com/browse/RSP-13386 - Non-COM interface
https://quality.embarcadero.com/browse/RSP-16187 - Partial classes
https://quality.embarcadero.com/browse/RSP-13725 - Allow non parameterized interfaces to have parameterized methods
https://quality.embarcadero.com/browse/RSP-13341 - Iterators (aka Yield)
https://quality.embarcadero.com/browse/RSP-13339 - True lambda style syntax
https://quality.embarcadero.com/browse/RSP-13305 - Null propagation operator
https://quality.embarcadero.com/browse/RSP-12759 - External declarations in records
https://quality.embarcadero.com/browse/RSP-13322 - Attribute contraints
https://quality.embarcadero.com/browse/RSP-16251 - Capture lists for anonymous methods

The list is ordered by the count of votes.

Newly added:
https://quality.embarcadero.com/browse/RSP-17926 - Mobile Device Virtual Keyboard Input Field That Auto Handles Covered Edit Fields

Comments

  1. Thanks. I voted for several that I've encountered and would have found useful, and added a comment to one (partial classes).

    ReplyDelete
  2. I voted for global generics. Why create a class just to implement a static function? Delphi is not C#, we are lucky to have plain procedures and functions.

    ReplyDelete
  3. I already have voted for most of them...

    But right now, if I would have to choose single feature that would be support for unlimited number of class (record) helpers.

    ReplyDelete
  4. Dalija Prasnikar​, I would kill for that,
    Infact this is one of the things that make me give CSharp the "am still with you bro" look.

    ReplyDelete
  5. I wish there was a way to downvote some of them

    ReplyDelete
  6. I'd kill for interface helpers... grr

    ReplyDelete
  7. Agustin Ortu It is included in the expanded/enhanced type helper request :D

    ReplyDelete
  8. Dalija Prasnikar 13340, 15539, 13141, 12788, 13386, 16187, 12759, 16251.

    ReplyDelete
  9. Agustin Ortu That's my top wish as well, but I don't think it is in this list, do you know what is issue number for this?

    ReplyDelete
  10. it is included in the expanded/enhanced type helper request :D --> https://quality.embarcadero.com/browse/RSP-13340 on first comment:

    I miss a lot this, I would love to be able to define helpers for interfaces and generic types

    ReplyDelete
  11. May you, Lars Fosdal, pin this post for sometime?

    ReplyDelete
  12. Agustin Ortu I miss interface helpers and generic ones too. Great things could be made fun with this support :D

    ReplyDelete
  13. Horácio Filho Pinned. I couldn't do it from the mobile G+ UI, but it was possible in the Web UI.

    ReplyDelete
  14. I would prefer focus on fixing bugs rather than new features.

    ReplyDelete
  15. Hans Lavdal Jakobsen I need both bugfixes and new features. The lack of an enum clause for generic types is crippling.

    ReplyDelete
  16. I'm going over this list with a fine tooth comb.

    ReplyDelete
  17. Eugene Kotlyarov If you really want to down vote those, I guess we don't have too much in common.

    BTW, interface helper you wish for is proposed in 13340 you wish to down vote so... I am a bit confused.

    ReplyDelete
  18. Dalija Prasnikar out of interest, how would the compiler resolve conflicting names between helpers? ie, if 2 class (record) helpers have the same method name (eg Clear or something common). Or would you expect compiler error?

    ReplyDelete
  19. Chang Guangyu If we are to get something similar to LINQ, I think a significantly more detailed and well founded QP issue is needed.

    ReplyDelete
  20. Jason Smart It would not resolve it. It would fail to compile such code because of ambiguity.

    Other languages that have class extensions don't have limitation on having only one in scope like Delphi has.

    So it is more question of some particular technical reasons (at time helpers were introduced) preventing Delphi having more than one in scope rather than how to implement that feature at all.

    ReplyDelete
  21. Usually overload resolution rules apply on extension methods - Eric Lippert explained in his blog how this works in C#(https://ericlippert.com/2013/12/23/closer-is-better/)

    ReplyDelete
  22. Stefan Glienke Nice... Swift just fails :(

    ReplyDelete
  23. Lars Fosdal


    "If we are to get something similar to LINQ, I think a significantly more detailed and well founded QP issue is needed."

    From Alan Bauer, Reddit, 8 years ago:

    "As was mentioned, anonymous methods are a step toward some kind of LINQ-like functionality. However, my ultimate goal is to use this underlying mechanism for increased parallelism both in terms of a library-based solution in the near-future and ultimately as intrinsic parallel-computing functionality of the language itself.

    Building the foundation is the first step in building a house."

    Allen Bauer. CodeGear/Embarcadero Chief Scientist.

    https://www.reddit.com/r/programming/comments/6tp3i/pascal_gets_closures_before_java_why_hasnt_the/c04ung2/

    Unfortunately it seems we never got more than the basement of that house. :-( If the statement was accurate, the quality of the QP shouldn't matter since they were already working on it. If that was ever really the case though one has to determine for oneself.

    ReplyDelete
  24. LINQ-like functionality needs more than anonymous methods support, generics support has to be powerful as well. Now that we have ARC, the anonymous methods support has to be improved in order to allow a way to programmers instruct the compiler of how closures should capture the variables. The lack of more generic constraints to allow safer use of operators also makes hard have fun playing with generics and anonymous methods.

    ReplyDelete
  25. Lars Fosdal Offtopic : Is there a way for my account to unpin this thread?

    ReplyDelete
  26. Andreas Schachtner Why would you want it? :D

    ReplyDelete
  27. Andreas Schachtner Is it a pain from mobile G+?

    ReplyDelete
  28. Lars Fosdal yes that is possible. Ignoring does't help, always this thread on top.

    ReplyDelete
  29. Horácio Filho The activity is pretty low, so I guess we can unpin it, but I am going to try something...

    ReplyDelete
  30. Andreas Schachtner - I made a short link to this post of Horácio Filho and pinned that instead. Is that an acceptable compromise?

    ReplyDelete
  31. Lars Fosdal I am fine with it :D Thanks a lot, man :D

    ReplyDelete
  32. Andreas Schachtner Sorry for any inconvenience :D

    ReplyDelete
  33. A. Bouchez Why not? Feel free 😁 Please, share with us why have you downvoted some 😁

    ReplyDelete
  34. Roland Kossow and Oliver Holmes Done :D Sorry for the so long reply.

    ReplyDelete

Post a Comment