Probably need embedded guys to get good C.

Reply to this note

Please Login to reply.

Discussion

Perfect name for the ultimate followup to HolyC

no, just not gonna happen

but after 8 years learning to be an expert with Go i think i can take on plugging in more performant or widely supported C things... i've actually kinda been enjoying the challenge of interfacing Go with C this last few days

go is great for almost everything natively, but for everything else there is a good C library... the secp256k1 library is a prime example, the one made by the btcsuite/decred guys is sooo crappy i can't stand it

and UI is an area i can probably find a decently simple but complete C library that lets me finally build some "friendly" interfaces - without contaminating my eyes with javascript

oh, ahaha yeah, embedded, c, 100%

but there is tinygo which is basically Go without GC

makes concurrency and dynamic arrays/maps much easier while keeping things tight

Why don't you just use noscrypt with a Go wrapper?

^^^^ true

i already did it anyhow, i needed a neat little interface that makes it easy to dial back to the btcec signatures but also neat enough to use as a MAC for the noise protocol implementation i started working on (mainly for a secure shell)

it uses the bitcoin-core/secp256k1 library directly and can be used either for signing/verification or verification only, with minimal overhead, it's more than 2x faster at verifying and about 5x faster at signing, so it definitely has utility as an MAC, as it was i already had determined i could use it to snip packets into 1.5kb chunks each with a distinct signing key for 8Mb/s, so, being this was the big overhead it's probably gonna be more like 20Mb/s especially if the SIMD sha256 based CTR encryption is also 2x or better, the signatures are the biggest overhead