|
|
|
|
|
by a-saleh
3899 days ago
|
|
I don't think it makes that much sense w.r.t stream events: 1. most of the analytics/event-stream processing will be done on the backend anyway 2. If you are picky enough you can do functional programming in js. Reative.js is decent library for processing streams of events. What screams to use something more haskell-like, is their example of 'Trys', i.e: class GraphQuery extends Query {
static parse(object: any): Try<GraphQuery> {
return TimeRange.parse(object.over).flatMap((timeRange: TimeRange) => {
return Filter.parse(object.where).flatMap((filter: Option<Filter>) => {
return GroupBy.parse(object.by).flatMap((groupBy: Option<GroupBy>) => {
return new Success(new GraphQuery(
filter,
groupBy,
timeRange
));
});
});
});
}
}
should look like something like: parse : Any -> Try GraphQuery
parse object = do
timeRange <- TimeRange.parse object.over
filter <- Filter.parse object.where
groupBy <- GroupBy.parse object.by
return (createGraphQuery filter groupBy timeRange)
(haven't used haskell in quite some time, so maybe I am missing something) |
|