The Golden 20s of the 20th century began with the end of WW1 and ended with the stock market crash of 1929. It was considered the decade that was the calm before the storm. However, it was a decade of sweeping technological change and innovation that transformed industrial productivity, life in general and in turn the world economy. It improved the general well-being of many. Electricity, the internal combustion engine and radio changed everyday life forever.
The sooner a language is formally specified and standardized the better. I don’t want to see Rust go the way of languages like Ruby(which eventually got a spec) or Clojure (still does not have one). Without this and the longer it’s delayed, external libraries spring up to solve problems that should be fully or partially addressed in the core of the language. A formal language spec along with standardization would also potentially inform much higher quality crate design while also allowing quicker progress on many fronts due to less ambiguity.
TLDR; This problem has been solved for 40 years but the software development industry is still very fashion-oriented. In both Common Lisp and Smalltalk error handlers can resume the computation that raised it, restart it, or refuse to handle it while the error handling code itself can be separated out from where it is caught i.e. into re-usable functions. Without unwinding the stack and losing the context of why/where the error occurred.
Ada (previously) is a time-tested, safe, secure programming software-engineering language with a 40-year record of success in mission-critical applications such as… Air Traffic Management SystemsDesktop and Web ApplicationsCommercial AviationBanking and Financial SystemsRailway TransportationInformation SystemsCommercial RocketsCommercial Shipboard Control SystemsCommercial Imaging Space VehiclesTelevision/Entertainment IndustryCommunication and Navigational Satellites and ReceiversMedical IndustryData CommunicationsGeneral IndustryScientific Space VehiclesMilitary Applications How good is Ada though for something that most programmers might work on in their day to day ?
The Raspberry Pi 4 is a leap forward not just for the Pi but for single-board computers across the board. It’s a great light-weight desktop replacement. It’s even surprised me as a viable Rust / Ada development environment. Raspberry Pi 4 running MATE desktop My setup includes a Raspberry Pi 4 FLIRC case which is basically a giant aluminum heat sink. This allows for a completely silent setup running at an average of 54’C.
Ada is the only pragmatic language that is still growing in a healthy way that meets the Steelman language requirements (created by US DoD circa 1978). Ada is rare among programming languages in that it is one of the few that was designed up-front according to a years-long well defined specification. Rust, at least aspires to meeting some of these requirements, even if not intentionally. Crucial in the Steelman requirements were:
As I’ve been spending a lot of time with Arm hardware lately as my primary desktop and server platform I missed using my secure messenger app of choice. I was able to cook up builds for both armv7l/armhf/GNU Linux (32-bit) and arm64/aarch64/GNU Linux (64-bit). These are unofficial but fully working builds of Signal Desktop for Linux on Arm processors. Enjoy ! Signal Desktop armv7l/armhf/GNU Linux Signal Desktop arm64/aarch64/GNU Linux
Latent Semantic Indexing (LSI) is used widely today in Semantic Search and has many other uses in Deep Machine Learning. This is a pretty good explanation/visualization from 40 years ago.
Here are some initial thoughts on Rust in the almost two years since I last looked at it along with some implementations of merge and quick sort. (These are just my opinions so please don’t panic !)
- Cargo is awesome for managing package dependencies and building projects.
- Rust is a very nice systems programming language that supports a functional style of programming. Much easier to work with than C/C++ with very near the same performance in many cases.