The @HIS_Conf will return on Nov 9 as a virtual event! Talks will focus on cyber safety for embedded systems, innovations in software testing & formal methods. The keynote will present NCSC's work in embedded & critical systems. Register today! #HISConf21 r.adaco.re/l3 pic.twitter.com/NoypESOi8d
Normal view
- Fosstodon @adaprogrammers
- Adding a serial command line to the #RaspberryPi #Pico in #Ada youtu.be/Obdva8svTAo
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- The @HIS_Conf will return on Nov 9 as a virtual event! Talks will focus on cyber safety for embedded systems, innovations in software testing & formal methods. The keynote will present NCSC's work in embedded & critical systems. Register today! #H
The @HIS_Conf will return on Nov 9 as a virtual event! Talks will focus on cyber safety for embedded systems, innovations in software testing & formal methods. The keynote will present NCSC's work in embedded & critical systems. Register today! #H
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- Our upcoming online Public Ada Training is taking place Sep 27-Oct 1, 2021. Learn how to use the Ada programming language through a combination of live lectures and hands-on workshops. Find out more and register today! adacore.com/events/public-… #Adapr
Our upcoming online Public Ada Training is taking place Sep 27-Oct 1, 2021. Learn how to use the Ada programming language through a combination of live lectures and hands-on workshops. Find out more and register today! adacore.com/events/public-… #Adapr
Our upcoming online Public Ada Training is taking place Sep 27-Oct 1, 2021. Learn how to use the Ada programming language through a combination of live lectures and hands-on workshops. Find out more and register today! adacore.com/events/public-… #Adaprogramming
- Fosstodon @adaprogrammers
- On my dime I'll ship (to US locations) 15+ years of hardcopy SIGAda Ada Letters issues (1998 - 2013 & a few more) and some Ada conference & resource CDs, all in exc condition. Tag me if you're interested & we can do some DMs. @adaprogrammers
On my dime I'll ship (to US locations) 15+ years of hardcopy SIGAda Ada Letters issues (1998 - 2013 & a few more) and some Ada conference & resource CDs, all in exc condition. Tag me if you're interested & we can do some DMs. @adaprogrammers
On my dime I'll ship (to US locations) 15+ years of hardcopy SIGAda Ada Letters issues (1998 - 2013 & a few more) and some Ada conference & resource CDs, all in exc condition. Tag me if you're interested & we can do some DMs. @adaprogrammers @AdaCoreCompany @AdaLabs pic.twitter.com/NrGaldRJNs
- AdaCore - YouTube
- Streamline Certification using QGen TQL-1 Qualifiable Auto Code Generator for Simulink®/Stateflow®
Streamline Certification using QGen TQL-1 Qualifiable Auto Code Generator for Simulink®/Stateflow®
Presented by S. Tucker Taft - AdaCore
This session will introduce the QGen Auto Code Generator for Simulink®/Stateflow® and explain the advantages provided by a TQL-1 Qualification, in terms of reduced time and effort to certify a Simulink-based application. The talk will identify the DO-178C and DO-331 objectives that are covered by the QGen code generator, meaning that your team can avoid many of the most labor-intensive steps involved in achieving certification, even at the highest level of criticality. The talk is aimed at both engineers and managers for such critical systems development activities and will cover the features of the QGen code generator, as well as other tools with which it is integrated, including a model-level debugger and testing tools for Simulink-based applications running in embedded targets.
Engineering Self-Verified Software
Implementation and verification are traditionally viewed as two separate activities. Even in test-driven environments, the test platform is distinct from the implementation one. This talk will present an alternative approach where the verification and development activities are engineered together, creating effectively a “self-verified” program combining at the same place an implementation and the means to verify its correctness.
4 key takeaways
- Developing verification at the same time as the code allows for more efficient coding processes and mitigates errors at the end of the process.
- Formal proofs and testing can be combined to increase the level of safety and decrease overall development costs.
- There are alternatives to the C programming language that allows more effective verification.
- There is a way to redirect software developers energy from worrying about low-level coding errors to concentrate on more valuable aspects of software engineering.
Presented by Quentin Ochem at ScaleUp OSS.5 Europe Day.
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- Check out our latest blog post presenting the whitepaper "Security-Hardening Software Libraries with Ada and SPARK" as part of our efforts under the HICLASS project. blog.adacore.com/security-harde… #HICLASS #softwaresecurity #Adaprogramming
Check out our latest blog post presenting the whitepaper "Security-Hardening Software Libraries with Ada and SPARK" as part of our efforts under the HICLASS project. blog.adacore.com/security-harde… #HICLASS #softwaresecurity #Adaprogramming
Check out our latest blog post presenting the whitepaper "Security-Hardening Software Libraries with Ada and SPARK" as part of our efforts under the HICLASS project. blog.adacore.com/security-harde… #HICLASS #softwaresecurity #Adaprogramming
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- Learn how to avoid the most labor-intensive steps involved in achieving certification by viewing the talk How to Streamline Your Certification Process using the QGen TQL1 Qualifiable Auto Code Generator for Simulink(r)/Stateflow(r) at @MilAero's TechSummi
Learn how to avoid the most labor-intensive steps involved in achieving certification by viewing the talk How to Streamline Your Certification Process using the QGen TQL1 Qualifiable Auto Code Generator for Simulink(r)/Stateflow(r) at @MilAero's TechSummi
Learn how to avoid the most labor-intensive steps involved in achieving certification by viewing the talk How to Streamline Your Certification Process using the QGen TQL1 Qualifiable Auto Code Generator for Simulink(r)/Stateflow(r) at @MilAero's TechSummit r.adaco.re/l0 pic.twitter.com/R4HjGCJLZg
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- Join us and various Mi-V RISC-V® ecosystem partners on July 21–22 at the 1st annual Mi-V Virtual Summit Conference 2021, a technology showcase bringing together an esteemed group of innovators, academics, clients & collaborators.@MicrochipTech @ris
Join us and various Mi-V RISC-V® ecosystem partners on July 21–22 at the 1st annual Mi-V Virtual Summit Conference 2021, a technology showcase bringing together an esteemed group of innovators, academics, clients & collaborators.@MicrochipTech @ris
Join us and various Mi-V RISC-V® ecosystem partners on July 21–22 at the 1st annual Mi-V Virtual Summit Conference 2021, a technology showcase bringing together an esteemed group of innovators, academics, clients & collaborators.@MicrochipTech @risc_v r.adaco.re/l1 pic.twitter.com/FysV1zOuzd
Advanced Resource Embedder 1.1.0
The resource embedder allows to embed files in binaries by producing C, Ada or Go source files that contain the original files. The first version of the tool was representing the file content as an array of bytes. In Ada, they are accessed through an `Ada.Streams.Stream_Element_Array` which is not easy to use when you need the content as a string.
The new release introduces the customization of the format for each resource. The format is controlled through the XML description by the `format` attribute. The following data formats are supported:
- `binary` format provides the file content as a binary data,
- `string` format provides the file content as string,
- `lines` format splits the content in several lines and according to a set of customizable rules.
With the `string` format, the Ada code generator can generate the following function:
```
function Get_Content (Name : in String)
return access constant String;
```
The `lines` format tells the code generator to represent the content as an array of separate lines. For this integration, some control is available to indicate how the content must be split and optionally apply some filter on the input content. These controls are made within the XML description by using the `line-separator` and `line-filter` description: The `line-separator` indicates the characters that represent a line separation. There can be several `line-separator` definition. The `line-filter` defines a regular expression that when matched must be replaced by an empty string or a specified content. The `line-filter` are applied in the order of the XML definition.
The example below is intended to integrate an SQL scripts with:
- a separate line for each SQL statement,
- remove spurious empty lines and SQL comments.
The SQL statements are separated by `;` (semi-colon) and the `line-separator` indicates to split lines on that character. By splitting on the `;` we allow to have an SQL statement on multiple lines in the original SQL source file.
```XML <package>
<resource name='Scripts'
format='lines'
type='access constant String'>
<line-separator>;</line-separator>
<!-- Remove new lines -->
<line-filter>[\r\n]</line-filter>
<!-- Remove C comments -->
<line-filter>/\*[^/]*\*/</line-filter>
<!-- Remove contiguous spaces after C comments removal -->
<line-filter replace=' '>[ \t][ \t]+</line-filter>
<install mode='copy' strip-extension='yes'>
<fileset dir="sql">
<include name="**/*.sql"/>
</fileset>
</install>
</resource>
</package> ```
Then the first `line-filter` will remove the `r` and `n` characters.
The regular expression `/\*[./]*\*/` matches a C style comment and remove it.
The last `line-filter` replaces multiple tabs and spaces by a single occurrence.
Below is an example of generated code with the above resource description. Each file is accessed through a separate variable whose name is built from the base name of the original file.
[Resource Embedder Overview](Ada/are-scripts.png)
The command used to generate this code was:
``` are lang=Ada -o src var-access content-only rule=package.xml . ```
and the `sql` directory contains only two files: `create-database.sql` and `drop-database.sql`.
The complete example is available for two languages:
- Embedding SQL scripts in Ada and mapping them in array of String(https://gitlab.com/stcarrez/resource-embedder/tree/master/examples/ada-lines)
- Embedding SQL scripts in C and mapping them in array of String(https://gitlab.com/stcarrez/resource-embedder/tree/master/examples/c-lines)
To install the tool, follow the instructions given in the initial announcement: Advanced Resource Embedder for Ada, C and Go(https://blog.vacs.fr/vacs/blogs/post.html?post=2021/06/11/Advanced-Resource-Embedder).
If you want to know more about the tool, have a look at its documentation:
- Resource Embedder Guide(https://resource-embedder.readthedocs.io/en/latest/) PDF(https://gitlab.com/stcarrez/resource-embedder/blob/master/docs/are-book.pdf)
- Man page: are (1)(https://gitlab.com/stcarrez/resource-embedder/blob/master/docs/are.md)
and if you have ideas for improvements, fork the project and submit a pull request!
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- Announcing the successful completion of the C compiler qualification for @AlstomFrance's safety-critical railway systems to reach the highest qualification level in EN 50128 & have full confidence in the quality of generated code. #Adaprogramming r.ad
Announcing the successful completion of the C compiler qualification for @AlstomFrance's safety-critical railway systems to reach the highest qualification level in EN 50128 & have full confidence in the quality of generated code. #Adaprogramming r.ad
Announcing the successful completion of the C compiler qualification for @AlstomFrance's safety-critical railway systems to reach the highest qualification level in EN 50128 & have full confidence in the quality of generated code. #Adaprogramming r.adaco.re/kz pic.twitter.com/1Sw4RLp0R3
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- 📣We're happy to announce our new programming competition, the Ada/SPARK Crate Of The Year Award for all software projects of any degree of maturity! Read the full blog post to learn more about the prizes, registration & timeline - r.adaco.re/ky #Ad
📣We're happy to announce our new programming competition, the Ada/SPARK Crate Of The Year Award for all software projects of any degree of maturity! Read the full blog post to learn more about the prizes, registration & timeline - r.adaco.re/ky #Ad
📣We're happy to announce our new programming competition, the Ada/SPARK Crate Of The Year Award for all software projects of any degree of maturity! Read the full blog post to learn more about the prizes, registration & timeline - r.adaco.re/ky #Adaprogramming
- Fosstodon @adaprogrammers
- Announcing The First Ada/SPARK Crate Of The Year Award @AdaCoreCompany blog.adacore.com/announcing-the…
Announcing The First Ada/SPARK Crate Of The Year Award @AdaCoreCompany blog.adacore.com/announcing-the…
Announcing The First Ada/SPARK Crate Of The Year Award @AdaCoreCompany blog.adacore.com/announcing-the…
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- This blog post by Rod Chapman covers a few more performance improvements to the SPARKNaCl cryptographic library, including a small change that saves 60 Million CPU cycles from the critical 'Sign' operation with all optimization disabled. r.adaco.re/kx #A
This blog post by Rod Chapman covers a few more performance improvements to the SPARKNaCl cryptographic library, including a small change that saves 60 Million CPU cycles from the critical 'Sign' operation with all optimization disabled. r.adaco.re/kx #A
This blog post by Rod Chapman covers a few more performance improvements to the SPARKNaCl cryptographic library, including a small change that saves 60 Million CPU cycles from the critical 'Sign' operation with all optimization disabled. r.adaco.re/kx #Adaprogramming
- Fosstodon @adaprogrammers
- "Programs must be written for people to read, and only incidentally for machines to execute." — Harold Abelson
- Fosstodon @adaprogrammers
- #Ada addresses one of the most vexing issues with #hardware updates: Creating portable code that can define data structures with a specific physical layout, insulated from problems caused by endianness differences. @AdaCoreCompany bit.ly/3wAx0Tv
#Ada addresses one of the most vexing issues with #hardware updates: Creating portable code that can define data structures with a specific physical layout, insulated from problems caused by endianness differences. @AdaCoreCompany bit.ly/3wAx0Tv
#Ada addresses one of the most vexing issues with #hardware updates: Creating portable code that can define data structures with a specific physical layout, insulated from problems caused by endianness differences. @AdaCoreCompany bit.ly/3wAx0Tv
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- Today, we celebrate all women in engineering who shape society through technological innovation every day - keep going, the world needs you! Check out our #INWED21 blog, which profiles remarkable & inspirational #EngineeringHeroes 👏 @INWED1919 @WES
Today, we celebrate all women in engineering who shape society through technological innovation every day - keep going, the world needs you! Check out our #INWED21 blog, which profiles remarkable & inspirational #EngineeringHeroes 👏 @INWED1919 @WES
Today, we celebrate all women in engineering who shape society through technological innovation every day - keep going, the world needs you! Check out our #INWED21 blog, which profiles remarkable & inspirational #EngineeringHeroes 👏 @INWED1919 @WES1919 blog.adacore.com/international-…
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- #Ada addresses one of the most vexing issues with #hardware updates: Creating portable code that can define data structures with a specific physical layout, insulated from problems caused by endianness differences. @AdaCoreCompany bit.ly/3wAx0Tv
#Ada addresses one of the most vexing issues with #hardware updates: Creating portable code that can define data structures with a specific physical layout, insulated from problems caused by endianness differences. @AdaCoreCompany bit.ly/3wAx0Tv
#Ada addresses one of the most vexing issues with #hardware updates: Creating portable code that can define data structures with a specific physical layout, insulated from problems caused by endianness differences. @AdaCoreCompany bit.ly/3wAx0Tv
- AdaCore | Ada/C/C++ tools for critical software / @AdaCoreCompany
- Download this report from @Gartner_inc to gain insight into the growing importance of application security testing and why it is becoming so critical. We support this by providing security-oriented features such as #fuzzing, static and dynamic analysis r.
Download this report from @Gartner_inc to gain insight into the growing importance of application security testing and why it is becoming so critical. We support this by providing security-oriented features such as #fuzzing, static and dynamic analysis r.
Download this report from @Gartner_inc to gain insight into the growing importance of application security testing and why it is becoming so critical. We support this by providing security-oriented features such as #fuzzing, static and dynamic analysis r.adaco.re/kv pic.twitter.com/v4zPNrFMKH