Hi all,
I would like to start a discussion about a small syntactic sugar addition to Vala, that would in my opinion slightly improve the situation with asynchronous code. The following code sample should be self explanatory about my proposal:
delegate bool HttpResponseCallback (string response);
public class HttpClient : Object {
public void post_request (string request, HttpResponseCallback cb) {
cb ("Hello world");
}
}
// Current State
var client = new HttpClient ();
client.post_request("GET ....", (response) => {
debug ("got response %s", response);
return true;
}
);
// Proposed syntax:
// Vala would basically use the "pseudo-lambda" _expression_
// following the method call as a parameter to the method call
client.post_request("GET ....") (string response) {
debug ("got response %s", response);
return true;
}
I am very open to comments and suggestions.
Cheers,
--
Ali