Loic Denuziere

My feedback

  1. 6 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      0 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
      Loic Denuziere shared this idea  · 
    • 6 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        1 comment  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
        Loic Denuziere commented  · 

        Alternatively for something more general, we could have a null equivalent of `defaultArg`. So if it's called let's say `ifNull` (placeholder name, not actual proposal) then your `Seq.ofObj s` would be `ifNull s Seq.empty`, and `Array.ofObj s` would be `ifNull s [||]`.

      • 9 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          0 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
          Loic Denuziere supported this idea  · 
        • 5 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            1 comment  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
            Loic Denuziere shared this idea  · 
          • 10 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              2 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
              Loic Denuziere supported this idea  · 
            • 39 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                29 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
                Loic Denuziere commented  · 

                100% agree with Gauthier. It would be quite good if the compiler could figure out the order of the files, but total circular dependency is way too error-prone.

              • 26 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  8 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
                  Loic Denuziere commented  · 

                  Agreed, this would be great. Just for context, here are the two syntaxes to do this in OCaml:

                  let open Module in xyz

                  Module.(xyz)

                  Loic Denuziere supported this idea  · 
                • 58 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    10 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
                    Loic Denuziere commented  · 

                    If we implement this (which I think would be a good idea), we should definitely use the same syntax as .fsi files.

                    val f : int -> int -> int
                    let f x y = x * y

                  • 59 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      8 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
                      Loic Denuziere commented  · 

                      This is not purely an optimization though, it changes the semantics of the language. Currently, None and Some null are different, whereas with this proposal they would be equal.

                    • 179 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        19 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
                        Loic Denuziere commented  · 

                        General string interpolation exists in many languages, including Nemerle as you noted Heather. A big inconvenient is that it would require yet another string delimiter (we have 3 already...). This is about having it as an extra *printf format character, which is probably a smaller can of worms to open.

                      • 15 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          5 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →

                          This proposal is “approved in principle” for F# 4.0+. It would make a good addition to F#. (I don’t think the loss of purity (e.g. wr.t. ordering of union cases) is a critical problem and I believe you can turn of the DefaultAugmentation in any case)

                          Some technical issues may need to be ironed out during implementation.

                          If this is done, the Tag properties present on these types should also be revealed, that is covered by a separate item.

                          An implementation and testing would need to be provided by someone in the F# community (possibly including Microsoft or Microsoft Research, though not limited to them).

                          Implementations of approved language design can now be submitted as pull requests to the appropriate branch of http://github.com/Microsoft/visualfsharp. See http://fsharp.github.io/2014/06/18/fsharp-contributions.html for information on contributing to the F# language and core library..

                          I’d be glad to help guide people through the implementation process.

                          If you…

                          Loic Denuziere commented  · 

                          Peter: The thing is, these methods already exist as instance methods, they're just not exposed in F#. Making them static would break backward compatibility for C# code that uses them.

                          There is a discussion about a static syntax for instance methods here: http://fslang.uservoice.com/forums/245727-f-language/suggestions/5663326-syntax-for-turning-properties-into-functions which would provide the same advantages as you cite, but for all instance methods.

                          Loic Denuziere shared this idea  · 
                        • 457 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            under review  ·  37 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
                            Loic Denuziere commented  · 

                            I think (.Name) (with the parentheses) would be readable and non-ambiguous.
                            On the other hand, a syntax that includes the class name would mean not having to reorder code to please the type inference.

                          Feedback and Knowledge Base