Algorithms, math libraries, Dictionary of Algorithms and Data Structures , I’m not suggesting that you go and add all of it, and even if you did I would probably stubbornly stick with my own implementations, but a basic algorithm library would be something nice that other programmers may like. I linked the us gov website, it’s better than wikipedia for indexing that information on one page in my opinion. I guess this is two suggestions in one, a basic algorithm library, and a basic data structure library. Maybe skip the data structure library completely because Ada’s type system might be better to just implement custom ones? I don’t know what I’m talking about.
Something that could map out memory locations to make a visualizer, or grab more memory related information. I’m spitballing here please forgive me .
Since you are interested in functional programming, you might be interested in logic programming for Ada. Consider, for example, the LC++ library that adds statically-typed, compiled logic programming to C++ and is built on top of a functional programming library for C++. (I haven’t used it, so I don’t know if it is any good.) There exists a Prolog engine for Ada, but it is an interpreter.
Logic programming can relieve programmers of the task of writing search code in some cases in a similar way as using relational databases and queries but without needing explicit foreign keys or table joins.
One possible approach to achieving logic programming for Ada might be to write an Ada backend to the Mercury Logic Programming System, a system implementing a statically-typed, compiled language designed for high performance. Its backends compile (transpile) to one of C, Java, or C# and can seamlessly integate with code from those languages. The system could be used from Ada via its C backend, but it calls exit on fatal errors rather than returning control to the host program in which it is embedded. Its memory management strategy might also not be conducive to some projects. Of course, modifications could be made to the C backend instead of writing a new backend in Ada. I am considering doing that in the future.
I know that you don’t like Alire and you didn’t create the crate for simple_components, but that database is already found in the Alire community-index. You only have to add appropriate tags and a description to the crate entry.
Other catalogues that can be used are certain websites that discover and categorize open-source repositories (you can also manually add them), but I think they require a repository and your components doesn’t seem to be on a public one. Examples: https://www.libhunt.com/l/ada, Open Hub Projects
No, as I explained many times making crates for Simple Components is technically not possible. Alire lacks some elementary functionality for that. BTW there was no Alire in 2013 AFAIK.
That is not same. Neither project name nor its description would give you right answer. What was the last time you searched a RPM repository for anything? Once you reach some size it becomes a fool’s errand. In 90’s you would get all Linux packages on a CD and simply scrolled them down looking for what you needed. Then it exploded, geometrically. Alire is just not yet there.
They are useless. You do not need a list of projects as I explained. You need lists of features. Example: “find me projects that provide an approximation of Bessel function [in Ada].” Start with that. Or what about finding Ada run-time for a board XYZ with clock support?
They require THE repository. Simple components are packaged as Deb, RPM repositories. Stored in SourceForge. Why do you think the repository would survive when Microsoft would roll out something new?
Since search engines became totally useless we must return back to manually maintained catalogues they killed.
Ada engineers have the opportunity to fix the problems plaguing society due to development languages unsuited to the applications we all depend on. My wish list focuses on well designed, widely used, applications that are implemented with high level scripts on top of custom C-libraries.
It would be straight forward to re-implement these libraries in Ada. The availability of powerful AI coding tools would make this feasible at low cost. If you are wondering, YES these tools speak Ada and code amazingly well.
To be clear, I’m not speaking of Ada bindings here, they already exist. I suggesting total Ada base kernels compatible with the existing Hi-level Code.