Suminda Sirinath Salpitikorala Dharmasena

My feedback

  1. 136 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    7 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    Twitter link is: https://twitter.com/dsyme

    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    Maybe you can tweet him with this. But completed features have a very low vote count generally: https://fslang.uservoice.com/forums/245727-f-language/status/1225916. Possibly suggested by the core team.

  2. 492 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    16 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    Also a feature request with this many votes should not be ignored. Otherwise why go through all this Uservoice exercise.

    Suminda Sirinath Salpitikorala Dharmasena supported this idea  · 
  3. 453 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    40 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    Something interesting I stumbled across. Some of this research could be taken into consideration http://ltamer.sourceforge.net/

    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    Also MetaML and Template Haskell would be good starting points to flesh out a strawman speck for this feature.

    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    Also it would be very cool if you can use the meta programming facility to have projectional editors within the language.

    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    MetaOCaml, PPX, Camlp4/5 can be a good starting reference to explore the possibilities. Especially MetaOCaml. Love the concepts in this.

    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    There are 3 ways to do this
    1) Quasi Quotes (QQ)
    2) Macros
    3) GADT

    Why not have all 3. F# is very well capable of doing this. If you use QQ you are dealing with concrete syntax. In other ways you can deal with it at the AST level also.

    Suminda Sirinath Salpitikorala Dharmasena supported this idea  · 
    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    I think the following related concepts might be relevant:
    1) Metaprogramming
    2) Dilecting - Syntax mutation is dilecting
    3) Extensible programming
    4) Higher Order Abstract Syntax - http://en.wikipedia.org/wiki/Higher-order_abstract_syntax, http://www.cs.cmu.edu/~fp/papers/pldi88.pdf
    5) Staging

  4. 219 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    5 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    Since OCaml has this I don't see why not F#

    Suminda Sirinath Salpitikorala Dharmasena supported this idea  · 
  5. 150 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  10 comments  ·  F# Language  ·  Flag idea as inappropriate…  ·  Admin →
    Suminda Sirinath Salpitikorala Dharmasena commented  · 

    I have run out of votes but this is a nice feature to have +3

Feedback and Knowledge Base