Comment by phailhaus

4 years ago

Building for autocomplete is building for human understanding. If it is impossible for a computer to determine the context of your query, why would a human do much better?

They are not fully-aligned goals, and autocomplete should not be given equal consideration on par with human clarity.

If you want nice autocomplete too, that's fine, but if there is a tradeoff, human understanding is the primary concern.

  • I don't understand why do you think about it this way

    C#'s LINQ (really powerful tool similar to SQL) works the same way

    look:

    var list = new List<int>{1,2,3}

    var extracted = list

    .............................Where(x => x > 1)

    .............................Select(x => $"my number: {x})

    .............................ToList();

    or

    var extarcted =

    ........................from x in list

    ........................where x > 1

    ........................select $"my number: {x};

    • Technically to be equivalent you need to wrap the second one in parentheses so you can use ToList() on it. Unfortunately a bit ugly. I'm not sure why they didn't add one more keyword to handle pipelining into other functions. Something like "feed", "into", or "pipe". Or just pluck the |> operator from F#.