Posts

Alire - Ada Library Repository

Sadly, there has been a loooong pause in my journey to learn Ada. I was kind of surprised to see that it has been already almost three years since the last post, incredible! I think one of the major obstacle in my quest was the fact that I wasn't accustomed to look for and install all the libraries I'd need for a project, manually. I wasn't accustomed to do that, as most of the other languages I've used before have some sort of dependency management system, pip  for Python, sbt for Scala etc. Call it laziness, if you will, but nowadays I'd say it's something that is kind of expected to be available. It's part of the modern on-boarding experience. So, a while back I was lucky to find the Alire , a new project to bring just that missing piece of infrastructure to the Ada world. My motivation to learn Ada increased ten fold! The Alire project lives in GitHub  Alire (github.com)  and is most actively developed by Alejandro R. Mosteo and Fabien Chouteau, who are

Ada Web Server: Status page

Image
One really nice feature of AWS is it's baked in support for server status information. It would be a simple to include all sorts of details of the running server for a custom dashboard, and there is also a ready made template for seeing many of those while the server is running. Status page documentation lists the values available and tells that you just need the aws_status.thtml template in place for you to see them. You can find a ready made example of that template in the sources of AWS. What the doc page doesn't say, is that you need to configure the feature a little. Have a configuration file for your server next to the executable, let's name it myserver.ini for example. In that file you need to have the following lines: Admin_URI /admin Admin_Password b6f40a2907436718ab246a4bc48e7fd8 There you have your admin page URL defined, relative to the server root address. Also be sure to set your password. Now you have to generate this password, and not

Ada web development

Almost the very first step of my Ada journey was to find a web framework for it. Ada is a general purpose programming language, even though often it's not seen as one. "Aviation industry language" is common association, or just something that runs in embedded space (and especially embedded stuff in space industry). Since everything is on Internet these days, it's quite natural to set the interface through the web. My default toolbox for it in Scala world is Lift . Would be wonderful to find a similar framework which would follow Lift's "View First" ideology. But at this stage, I'm happy to settle with any tooling I can find. JVM world and other popular language ecosystems are almost polluted by different web frameworks. Ada isn't so popular and there's much less to pick from. But I was positively surprised to find a couple of interesting projects. AWS No, not The Amazon thingie. Here AWS would stand for Ada Web Server . It is maint

First post

I'm starting a new blog about learning the Ada programming language. The intention is not to write very extensively about the progress, but rather more like random remarks and interesting findings along the way. I like different (programming) languages and every now and then want to try out something new. Or in this case, a rather old, yet evolving language. While first version was introduced already in 1983, there has been new language versions, in 1995, 2005 and 2012. And another one is coming up, some time near 2020. So, Ada is not dead, as someone might incorrectly tell you! I have professional history with C , Python , Java and C# . The current go-to language for me is Scala . After Python and Scala, one might wonder, why on earth would I be interested in learning a language, which, in comparison, is quite verbose with all it's begin and end clauses, and is case InSensiTive, and doesn't use implicit type conversions to smooth your way forward? Well, after you