HackerTrans
トップ新着トレンドコメント過去質問紹介求人

FabienC

no profile record

投稿

Ada Bindings for Raylib

blog.adacore.com
3 ポイント·投稿者 FabienC·2 年前·0 コメント

Show HN: Software design for my open-source pocket synthesizer (in Ada)

weenoisemakers.com
2 ポイント·投稿者 FabienC·2 年前·0 コメント

Let me tell you about me Gear Fabrication Syndrome

weenoisemaker.com
166 ポイント·投稿者 FabienC·3 年前·174 コメント

Show HN: Understanding Braids (digital audio synthesis 101)

weenoisemaker.com
7 ポイント·投稿者 FabienC·4 年前·0 コメント

コメント

FabienC
·4 年前·議論
Now there's an app for that https://www.adacore.com/qgen :)
FabienC
·5 年前·議論
The focus of Ada is not on safe arithmetic only, it's on functional safety at large: the code does what it is specified to do and nothing else.

Ada shines in its specification power, how developers can express what the code is supposed to do (strong typing, ranges, contracts, invariants, generics, etc.). And then you can either check your code at "compile time" with SPARK [1], that provides a mathematical proof that you code follows the specification. SPARK also proves that you don't have buffer overflows or division by zero for instance. Or you can have checks inserted in the run-time code which greatly improves the benefits of testing as every deviation from specifications will be detected, not only the ones you decided to check in your tests.

In terms of memory safety, Ada always had an edge on C/C++ because of the lower usage of pointers (see parameter modes [2]) and the emphasis on stack allocation. Now with the introduction of ownership in SPARK it's getting on par with Rust on that topic.

[1] https://learn.adacore.com/courses/intro-to-spark/chapters/05... [2] https://learn.adacore.com/courses/intro-to-ada/chapters/subp...
FabienC
·5 年前·議論
> Fighter planes are coded in C++, not Ada.

https://www.adacore.com/customers/eurofighter-typhoon https://www.adacore.com/customers/amx-modernization-program https://www.adacore.com/customers/arinc-653 https://www.adacore.com/company/our-customers