There go nowhere, you have to remember that every function in Haskell is currified, so, think in the (+) function, you can do the next, think in the type first:
(+) :: Num a => a -> a -> a
now I can do my custom plusOne, plusTwo, etc, so fast thanks to the curryfication, because
(+) :: Num a => a -> a -> a
has "implicit paranthesis" and really looks like:
(+) :: Num a => a -> (a -> a)
meaning give me a number a give you a function back, so:
plusOne :: Num a => a -> a
plusOne = (+1)
plusTwo :: Num a => a -> a
plusTwo = (+2)
Can you see? you transform the (+) in a new function by giving to it just one of the two parameters, same happens with < and > functions, you can create the function greaterThanTen like this:
greaterThanTen :: (Num a, Ord a) => a -> a
greaterThanTen = (>10)
So in your example of takeWhile (< 3) your (< 3) is the function "less than 3", and if you "read" all the function would be "take while n is less than 3"
you can play around with it in the console by asking the types with :t command
:t (< 3)
(< 3) :: (Num a, Ord a) => a -> Bool