< operator in Go lang : <p>Well I am a newby in Go lang, but this doesn't make sense to me:</p>

<pre><code>package main

import (
    "fmt"
    "log"
)

var rectLen, rectWidth float64 = 0, 0

func init() {
    fmt.Println("init is initialized")
    if rectLen &lt; 0 {
        log.Fatal("rectLen smaller than 0")
    }
    if rectWidth &lt; 0 {
        log.Fatal("rectWidht smaller than 0")
    }
}

func main() {
    fmt.Println("Main is initialized")
    fmt.Println(rectLen, rectWidth )
}
</code></pre>

<p>This will print out:</p>

<pre><code>init is initialized
Main is initialized
0 0
</code></pre>

<p>Why is 0 and 0 printed out when my init function is "guarding" that my rectLen, rectWidth variables should be strictly greater than 0?
If I change the values to something less than 0, it works fine, I get: </p>

<pre><code>init is initialized
2009/11/10 23:00:00 rectLen smaller than 0 
</code></pre>

<p>Thanks!</p>
