awesome-ada

所属分类:云计算
开发工具:Others
文件大小:25KB
下载次数:0
上传日期:2023-04-14 19:05:43
上 传 者sh-1993
说明:  与Ada和SPARK编程语言相关的精彩资源的精心策划列表
(A curated list of awesome resources related to the Ada and SPARK programming language)

文件列表:
CONTRIBUTING.md (957, 2023-07-21)
LICENSE (7048, 2023-07-21)

# Awesome Ada [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)

Awesome


> [Ada is powering satellites, aircrafts, ships, power plants, surgical robots](https://www2.seas.gwu.edu/~mfeldman/ada-project-summary.html), drones, CNCs, servers, games and coffee makers. > Ada is arguably the most { performantcapableprecisereadablemature } programming language. > Ada is alive and kicking! > > Long live Ada/SPARK.

A curated list of awesome resources related to the Ada and SPARK programming language. ## Contents
Click to expand 1. [Presentation](#presentation) 2. [Education](#education) 1. [Entry Point](#entry-point) 2. [Tutorials](#tutorials) 3. [Online Books](#online-books) 4. [Books](#books) 5. [Specialties](#specialties) 6. [Reference](#reference) 3. [Community](#community) 1. [Questions and Answers](#questions-and-answers) 2. [News and Resources](#news-and-resources) 3. [Competition](#competition) 4. [Compilers](#compilers) 1. [Open source](#open-source) 2. [Commercial / Open source](#commercial--open-source) 3. [Commercial / Closed source](#commercial--closed-source) 4. [Online](#online) 5. [Edit](#edit) 1. [Integrated Development Editors](#integrated-development-editors) 2. [Editors](#editors) 3. [Text Modes](#text-modes) 4. [VSCode Extensions](#vscode-extensions) 6. [Deployment](#deployment) 1. [Build and Package](#build-and-package) 2. [Continuous Integration](#continuous-integration) 7. [Runtimes](#runtimes) 8. [OS and Kernels](#os-and-kernels) 9. [Games](#games) 10. [Frameworks](#frameworks) 1. [Components](#components) 2. [Distributed](#distributed) 3. [Graphical User Interface](#graphical-user-interface) 4. [Terminal User Interface](#terminal-user-interface) 5. [3D](#3d) 6. [Database](#database) 7. [Web](#web) 8. [Unit Test, Testing](#unit-test-testing) 9. [Logging](#logging) 10. [Machine Learning](#machine-learning) 11. [Automation](#automation) 11. [Tools](#tools) 1. [DevOps](#devops) 2. [Verification](#verification) 3. [Generation](#generation) 4. [UML](#uml) 5. [Encryption](#encryption) 12. [Libraries](#libraries) 1. [Math](#math) 2. [Science](#science) 3. [Algorithms, Containers and Protocols](#algorithms-containers-and-protocols) 4. [Cryptography](#cryptography) 5. [Compression](#compression) 6. [Patterns](#patterns) 7. [System Modeling](#system-modeling) 8. [Parsers, Scanners, Linters, Analysers, Interpreters and Prettyprinters](#parsers-scanners-linters-analysers-interpreters-and-prettyprinters) 9. [Format Readers and Writers](#format-readers-and-writers) 10. [Networking and Communication Middleware](#networking-and-communication-middleware) 11. [Chatting and Communication](#chatting-and-communication) 12. [Web](#web-1) 13. [Graphics and Multimedia](#graphics-and-multimedia) 14. [General Purpose Computing](#general-purpose-computing) 15. [Sound](#sound) 16. [Localization](#localization) 17. [Utilities](#utilities) 18. [Robotics](#robotics) 19. [Linux and POSIX](#linux-and-posix) 20. [Windows and .NET](#windows-and-net) 13. [Hardware and Embedded](#hardware-and-embedded) 1. [Frameworks](#frameworks-1) 2. [Firmwares](#firmwares) 3. [Drivers](#drivers) 4. [Controllers](#controllers) 5. [Communication](#communication) 6. [Libraries](#libraries-1) 7. [Applications](#applications) 8. [Bindings](#bindings) 14. [Applications](#applications-1) 1. [Office](#office) 2. [Mail](#mail) 3. [Web](#web-2) 4. [Multimedia](#multimedia) 5. [Automation](#automation-1) 6. [Simulation](#simulation) 7. [Generators and Translators](#generators-and-translators) 8. [Shells, Interpreters and Emulators](#shells-interpreters-and-emulators) 9. [Programming Languages](#programming-languages) 10. [Misc](#misc) 15. [Bindings](#bindings-1)
## Presentation ## Education ### Entry Point - [learn](https://learn.adacore.com/) - Interactive learning platform designed to teach the Ada and SPARK programming languages. - [ada-lang-io](https://ada-lang.io) - A community site for Ada. - [celebrating-ada](https://www.celebratingada.com/) - Ada history key moments. - [ada-logo-editor](https://ada-lang-io.github.io/ada-logo-editor/) - The “Ada horizon” logo maker website. ### Tutorials - [adacore-video-tutorials](https://www.youtube.com/playlist?list=PLkoa8uxigENkneyEEeDWVPgpMhPc9IJ7o) - AdaCore University Video Tutorials. - [ada-crash-course](http://www.pchapin.org/Ada/AdaCrash.pdf) - Ada 2012 crash course under 50 pages from Vermont Technical College. - [simple-games](https://drive.google.com/file/d/1hdLc9nZzTnBDcN9qJeDlJm1F9IL91Lvi/view) - Learning Ada 2012 by writing simple games. - [spark-by-example](https://github.com/tofgarion/spark-by-example) - Collection of verified functions and data types in SPARK. ### Online Books - [ada-wikibook](https://en.wikibooks.org/wiki/Ada_Programming) - Ada Programming book at Wikibooks. - [ada-distilled](https://www.adaic.org/wp-content/uploads/2010/05/Ada-Distilled-24-January-2011-Ada-2005-Version.pdf) - Ada Distilled for Ada 2005. - [ada-craft](https://www.adaic.org/resources/add_content/docs/craft/html/contents.htm) - Ada 95: The Craft of Object-Oriented Programming. - [ada-cpp-java](https://learn.adacore.com/courses/Ada_For_The_CPP_Java_Developer/index.html) - Ada for the C++ or Java Developer. - [spark-guidance](https://www.adacore.com/books/implementation-guidance-spark) - Implementation Guidance for the Adoption of SPARK. - [ada-safe-secure](https://www.adacore.com/uploads/technical-papers/SafeSecureAdav2015.pdf) - Safe and Secure Software. An invitation to Ada 2012. - [ada-95-tutorial](https://perso.telecom-paristech.fr/pautet/Ada95/a95list.htm) - A book going from beginner to advanced concepts in Ada 95, complete with source files. ### Books [Programming in Ada 2012 with a Preview of Ada 2022 (2nd ed.)](https://www.cambridge.org/core/books/programming-in-ada-2012-with-a-preview-of-ada-2022/AD30275F35CCECB97EAB80ABC32B019C#) - Comprehensive. [Programming in Ada 2012](https://www.cambridge.org/core/books/programming-in-ada-2012/55B9***B4E908A017E4D74A873***FF224#) - Comprehensive. [Beginning Ada Programming: From Novice to Professional](https://www.amazon.com/Beginning-Ada-Programming-Novice-Professional/dp/1484254279) - Introduction. [Ada 95: The Craft of Object-Oriented Programming](https://www.amazon.com/Ada-95-Craft-Object-Oriented-Programming/dp/0132303507) - General, intermediate. [Ada Plus Data Structures: An Object Oriented Approach](https://www.amazon.com/Ada-Plus-Data-Structures-Oriented/dp/0763737941) - Data Structures. [Ada for Software Engineers](https://link.springer.com/book/10.1007/978-1-84882-314-3) - Idioms, Architecture. [Concurrent and Real-Time Programming in Ada](https://www.cambridge.org/core/books/concurrent-and-realtime-programming-in-ada/9DA4389E52005382D4CC1FC5D812DA71) - Concurrency, Containers, Scheduling. [Data Structures and Algorithms: An Object-Oriented Approach Using Ada 95](https://link.springer.com/book/10.1007/978-1-4612-1854-8) - Data structures, Algorithms. [Building Parallel, Embedded, and Real-Time Applications with Ada](https://www.cambridge.org/core/books/building-parallel-embedded-and-real-time-applications-with-ada/9FC78A90F1B6A2228D69E32CE610A66C) - Concurrency, Distributed. [Analysable Real-Time Systems: Programmed in Ada](https://www.amazon.com/Analysable-Real-Time-Systems-Programmed-Ada/dp/1530265509/ref=sr_1_2?ie=UTF8&qid=1544540272&sr=8-2&keywords=ada+programming+language) - Scheduling. [Building High Integrity Applications with SPARK](https://www.cambridge.org/core/books/building-high-integrity-applications-with-spark/F213D***67D2E271F5FF3EDA765D48E95) - Formal verification. [Ada and SPARK on ARM Cortex-M](https://www.lulu.com/shop/maciej-sobczak/ada-and-spark-on-arm-cortex-m/paperback/product-22614818.html) - Embedded. ### Specialties - [gems](https://www.adacore.com/gems/) - Ada Gem Archive. - [ada-composition](https://github.com/gerr135/ada_composition) - A collections of small nifty demos/sample code that may help better layout data or structure project. - [ada-ic-learning](https://www.adaic.org/learn/materials/) - For additional learning resources, see the AdaIC learning section. - [ada-at-rosetta-code](https://rosettacode.org/wiki/Category:Ada) - A collection of programming tasks and their sample solutions in Ada. ### Reference - [iso-standard](http://www.ada-auth.org/standards/ada12_w_tc1.html) - The 2012 revision to the Ada Standard, usually known as Ada 2012. - [adalib](https://github.com/reznikmm/adalib) - Standard Ada library specification as defined in Reference Manual. ## Community ### Questions and Answers - [gitter-ada](https://gitter.im/ada-lang/Lobby) - Ada channel at Gitter. - [comp-lang-ada](https://groups.google.com/forum/#!forum/comp.lang.ada) - Ada Usenet newsgroup/forum. - [stack-overflow-ada-tag](https://stackoverflow.com/questions/tagged/ada) - Ada at Stack Overflow. - [subreddit-ada](https://www.reddit.com/r/ada/) - Ada at Reddit. - [subreddit-spark](https://www.reddit.com/r/spark/) - Spark at Reddit. - [telegram-ada](https://t.me/ada_lang) - Ada group at Telegram. - [libera-chat-ada](https://libera.chat/) - Ada channel at IRC. - [matrix-ada](https://matrix.to/#/#ada-lang_Lobby:gitter.im) - Ada room at Gitter via Matrix. ### News and Resources - [adacore-blog](https://blog.adacore.com/) - An insight into the AdaCore ecosystem. - [ada-europe](https://www.ada-europe.org/) - Ada-Europe is an international organization, set up to promote the use of Ada. - [acm-sig-ada](https://www.sigada.org/) - The Special Interest Group on Ada. - [ada-resource-association](https://www.adaic.org/community/) - Since 1990 the Ada Resource Association's principal mission has been “To ensure continued success of Ada users and promote Ada use in the software industry”. - [ada-information-clearinghouse](https://www.adaic.org/) - News and resources for the Ada programming language. - [ada-planet](https://www.laeran.pl/adaplanet/i/) - News Aggregator from the Ada programming language world. ([RSS feed via Matrix][ada-planet-via-matrix]) [ada-planet-via-matrix]: https://matrix.to/#/#ada-lang:matrix.org ### Competition ## Compilers ### Open source #### GPL (no linking exception) - [gnat-ce](https://www.adacore.com/download) - GNAT Community edition. A release of AdaCore GNAT for free software developers, hobbyists, and students. The run-time libraries provided with GNAT Community are licensed under GPLv3 without linking exception. It supports Ada 2012 only. #### GPL (with linking exception) - [fsf-gnat](https://www.getadanow.com/) - Free Software Foundation compiler for the Ada programming language which forms part of the GNU Compiler Collection. It supports all versions of the language, i.e. Ada 2012, Ada 2005, Ada 95 and Ada 83. #### MIT - [hac](https://github.com/zertovitch/hac) - HAC Ada Compiler - a small, quick Ada compiler fully in Ada. - [byron](https://github.com/OneWingedShark/Byron) - The Byron project is a community-driven Ada compiler, toolchain, and IDE-system. ### Commercial / Open source - [gnat-pro](https://www.adacore.com/gnatpro) - The GNAT Pro product line offers a comprehensive toolset (IDEs, debugger, librairies, dynamic and static analysis tools) for Ada, C and C++. ### Commercial / Closed source - [janus-ada](http://www.rrsoftware.com/html/prodinf/janus95/j-ada95.htm) - Compiler supporting all the major features of the Ada 83, Ada 95, Ada 2005 and Ada 2012 versions of the language. - [object-ada](https://www.ptc.com/en/products/developer-tools/objectada) - PTC ObjectAda is an extensive family of native and cross development tools and runtime environments. - [apex-ada](https://www.ptc.com/en/products/developer-tools/apexada) - PTC ApexAda is one of the industry's most popular development environments for Ada and mixed Ada/C/C++ applications. - [greenhills-ada](https://www.ghs.com/products/ada_optimizing_compilers.html) - Green Hills Software offers the industry's first, fully validated family of Ada Cross Compilers for real-time targets. - [xgc](https://www.xgc.com/) - XGC provide GCC-based bare-metal toolchains with Ada95 support for aerospace-specific targets such as MIL1750, ERC32 and LEON. As well as a legacy M68000 toolchain. ### Online - [tutorials-point-ada-compiler](https://www.tutorialspoint.com/compile_ada_online.php) - Online compiler built on the CodingGround engine. - [jdoodle-ada-compiler](https://www.jdoodle.com/execute-ada-online) - Online compiler that provides multiple versions of GNAT to test with. - [compiler-explorer](https://godbolt.org/) - Run GNAT FSF compilers interactively from your web browser and interact with the assembly. ## Edit ### Integrated Development Editors [The GNAT Programming Studio](https://github.com/AdaCore/gps) - [ada-visual](https://marketplace.visualstudio.com/items?itemName=AlexGamper.VisualAda) - Ada language integration for Visual Studio 2017. ### Editors - [lea](https://github.com/zertovitch/lea) - LEA, a Lightweight Editor for Ada, aims to provide an easy, script-world-like, "look & feel" for developing Ada projects of any size and level, while enabling access to full-scale development tools like GNAT. LEA includes HAC, the HAC Ada Compiler. ### Text Modes - [gnu-emacs-ada-mode](https://www.nongnu.org/ada-mode/) - Gnu Emacs major-mode for editing Ada sources. - [vim-ada-bundle](https://github.com/thindil/Ada-Bundle) - Maintained Ada Bundle : Complete Ada-Mode for Vim/NeoVim. - [ada-tmbundle](https://github.com/textmate/ada.tmbundle) - TextMate support for Ada. - [bbedit-ada-module](https://www.barebones.com/support/bbedit/plugin_library.html) - BBEdit support for Ada. - [ob-ada-spark](https://github.com/rocher/ob-ada-spark/) - Ada/SPARK support for org-babel : Evaluate source code blocks with Gnu Emacs and org files. ### VSCode Extensions - [adacore-ada](https://marketplace.visualstudio.com/items?itemName=AdaCore.ada) - Language Support for Ada. It includes [Language Server for Ada][ada-language-server]. - [ada-vscode](https://github.com/Lucretia/ada-vscode) - Basic syntax highlighting for Ada and GPR. - [ada-utilities](https://github.com/Lucretia/ada-utilities) - VSCode extension Ada programmers which provides a few utility functions. ## Deployment ### Build and Package - [alire](https://github.com/alire-project/alire) - A catalog of ready-to-use Ada libraries plus a command-line tool (alr) to obtain, compile, and incorporate them into your own projects. It aims to fulfill a similar role to Rust's cargo or OCaml's opam. - [aura](https://github.com/annexi-strayline/AURA) - An integrated build and source/package management tool with a more hands-on versioning approach. Alternative to alire and gprbuild. Optimized for CI/CD pipelines. - [gprbuild](https://github.com/AdaCore/gprbuild) - Adacore multi-language software build tool. - [ravenadm](https://github.com/jrmarino/ravenadm) - Administration tool for Ravenports http://www.ravenports.com. - [synth](https://github.com/jrmarino/synth) - Next D/Ports build tool for live systems (Alternative for Portmaster and Portupgrade tools). - [ada4cmake](https://github.com/mosteo/ada4cmake) - CMake macros for simple gnat project inclusion. - [cmake-ada-offa](https://github.com/offa/cmake-ada) - Ada language support for CMake. - [cmake-ada-cho3](https://github.com/cho3/cmake-ada) - CMake language support for Ada, fork of [plplot]'s cross-platform support code. ### Continuous Integration - [continuous-verification](https://github.com/jklmnn/continuous-verification) - SPARK formal verification automated with Travis CI. - [ada-actions](https://github.com/ada-actions/toolchain) - Ada Toolchains for GitHub Actions. ## Runtimes - [bb-runtimes](https://github.com/AdaCore/bb-runtimes) - GNAT bare metal board support package (BSP). - [avr-ada](https://sourceforge.net/projects/avr-ada) - GNAT for 8-bit AVR microcontrollers. - [ada-runtime](https://github.com/Componolit/ada-runtime) - A downsized Ada runtime which can be adapted to different platforms. - [cortex-gnat-rts](https://github.com/simonjwright/cortex-gnat-rts) - This package includes GNAT Ada Run Time Systems (RTSs) based on FreeRTOS and targeted at boards with Cortex-M0, M3, -M4, -M4F MCUs. - [adawebpack](https://github.com/godunko/adawebpack) - GNAT RTL for WASM and bindings for Web API. [ada-runtime]: https://github.com/Componolit/ada-runtime [adawebpack]: https://github.com/godunko/adawebpack ## OS and Kernels - [m2os](https://m2os.unican.es/) - RTOS with simple tasking support for small microcontrollers. - [marte-os](https://marte.unican.es/) - MaRTE OS is a Hard Real-Time Operating System for embedded applications that follows the Minimal Real-Time POSIX.1 ... ...

近期下载者

相关文件


收藏者