[ 
https://issues.apache.org/jira/browse/CASSANDRA-7526?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14098988#comment-14098988
 ] 

Jonathan Ellis commented on CASSANDRA-7526:
-------------------------------------------

[~thobbs] to review

> Defining UDFs using scripting language directly from CQL
> --------------------------------------------------------
>
>                 Key: CASSANDRA-7526
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7526
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Sylvain Lebresne
>            Assignee: Robert Stupp
>             Fix For: 3.0
>
>         Attachments: 7526-full.txt, 7526-on-7562.txt
>
>
> In CASSANDRA-7395 we'll introduce the ability to define user functions by 
> dropping a java class server side. While this is a good first step and a good 
> option to have in any case, it would be nice to provide a simpler way to 
> define those functions directly from CQL. And while we probably don't want to 
> re-invent a new programming language inside CQL, we can reuse one. Typically, 
> with java 8, we could use nashorn. This would allow a syntax along the lines 
> of:
> {noformat}
> CREATE FUNCTION sum (a bigint, b bigint) bigint AS { return a + b; }
> {noformat}
> Note that in this, everything before the AS will be parsed by us, which we'll 
> probably want because we'll probably need to have the types of 
> arguments/return in practice anyway, and it's a good idea to reuse CQL types. 
> The expression after the AS will be given to Nashorn however.
> Please note that in theory we could ultimately support multiple language 
> after the AS. However, I'd like to focus on supporting just one for this 
> ticket and I'm keen on using javascript through Nashorn because as it's the 
> one that will ship with java from now on, it feels like a safe default.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to