Rust and Go

--

On our MSc we use Python and Node.js to teach the core concepts around cryptography. We thus avoid all the horrible syntax and compilation issues of C++. But, what if we need low-level access to memory and pointers, and also require fast computation? The scripted languages, too, can cause problems when they are executed, especially in generating errors within the run-time code, and that have not been checked.

I remember adding software integration into teaching exercises, and the students generally disliked the Java, C# and C++ parts, but fire-up a bit of Python code, and it all makes learning a whole lot more fun. There’s something a bit more natural with scripting, especially as it typically avoids that whole IDE/compilation/linking part. To me, creating my code is nano or vi on Linux is just as useful as me running Visual Studio on my Mac.

Well, two answers are Rust and Go, and which merge together the advantages of compiled languages and which are easy to integrate with GitHub-based code. For them the installation of a library is not through complex compilation methods, or DLL integration, but with simple Git integration.

Like it or not, the world is moving towards GitHub, and it is now the foundation of our software world.

Go thus aims to “Code less, compile quicker, execute faster”. And so, I have written a few articles on using Go:

--

--

Prof Bill Buchanan OBE FRSE
ASecuritySite: When Bob Met Alice

Professor of Cryptography. Serial innovator. Believer in fairness, justice & freedom. Based in Edinburgh. Old World Breaker. New World Creator. Building trust.