I want to do something sort of like this:
let x = 5 let y = 10 let expr = Console.ReadLine() expr
Where one might type 'x+y' in the console to store in expr.
How does one evaluate a statement like this in F#?
Ultimately, I want a user to be able to enter expressions, or a set of rules for a system, on a webpage and have them saved in a database to be applied at appropriate times in an F# library. I just don’t know how to convert the entered string in to a function value in F#.
Thanks for any help you may provide!
Adam
F# doesn’t have eval, as mentioned, but if you can define the grammar, you can utilize the Lex and Yacc implementations in F# (fslex and and fsyacc).
EDIT:
As a quick follow up, I know in ocaml you can exploit the interactive console to your users with
ocamlmktop. I am unsure of an equivalent in F#. This, although, doesn’t seem to match what you want with a web interface (correct?).