# The first impressions when I started learning Clojure

1. there are a lot of brackets in Clojure, every time you want to use a function, a pair of brackets need to appear.
2. If there are other people who don't understand how to use **fn** and come from a Java background, there is a tip.

`(map (fn [row] some code ) rows) is similar to rows.stream().map(row -> Some code).collect(Collectors.toList());`

3\. Similar to Python, Clojure also doesn't have explicit data types, and there are not "," between parameters.

4\. Try to use more **map**, **reduce**, **filter**, etc., they are truly powerful.

Resources for learning Clojure

1. <https://clojure.org/guides/learn/syntax>
2. <https://clojuredocs.org/>
3. <https://www.braveclojure.com/clojure-for-the-brave-and-true/>
