Hi Keith, thank you for your response. Sorry I didn't say that I saw this
issue on linux/arm64. For your example above, the result on linux/arm64 is
like this:
go tool compile -S tmp.go
0x001c 00028 (spill.go:4) MOVD"".p(FP), R0
0x0020 00032 (spill.go:4) MOVH
It don't think it does. For instance, an int16 will be spilled to a 2-byte
slot in the stack frame.
Can you show us what you are seeing? This is what I tried:
package main
func f(p, q *int16) {
x := *p
y := *q
g()
*p = y
*q = x
}
func g()
go tool compile -S tmp.go
0x001d 00029 (tmp1.go:4) MOVQ
Until now, I have found some examples related to creating a simple TCP
client, like these:
http://www.inanzzz.com/index.php/post/j3n1/creating-a-concurrent-tcp-client-and-server-example-with-golang
https://www.linode.com/docs/guides/developing-udp-and-tcp-clients-and-servers-in-go/
Those articl
Indeed!
Go has while loops :)
for {
// do some stuff
if !condition { break }
}
instead of
{
// do some stuff
} while condition
They are identical functionally, so why bother with the second syntax? You
then get into arguments about which one to use.
-- Marcin
On Tue, Nov 3, 2020 at 11:3
Languages often have a whole variety of loop constructs.
C has for loops as well us while loops.
Go adopts the principle from the Zen of python:
*There should be one-- and preferably only one --obvious way to do it. *It
takes a minimalist approach - there is only one looping construct: the for
l
On Tue, Nov 3, 2020 at 6:09 AM 'Dan Kortschak' via golang-nuts
wrote:
> My first professional programming language was Perl, decades later I
> still wake up in a sweat thinking about post-fix conditionals and the
> 'unless' conditional.
I don't miss MUMPS post conditional either.
--
You receiv