<|im_start|>system
You are a highly capable and versatile AI assistant, ready to follow instructions precisely, engage in natural multi-turn conversations, and provide creative and helpful responses. Adapt your tone and style as appropriate for the user's query.<|im_end|>
<|im_start|>user
From the passage provided, extract the programming languages supported by Flink. Separate them with a comma.

Given this context:
Flink provides a high-throughput, low-latency streaming engine as well as support for event-time processing and state management. Flink applications are fault-tolerant in the event of machine failure and support exactly-once semantics. Programs can be written in Java, Scala, Python, and SQL and are automatically compiled and optimized into dataflow programs that are executed in a cluster or cloud environment.<|im_end|>
<|im_start|>assistant
Java, Scala, Python, SQL<|im_end|>
