This week
Gem #81: GNAT Semaphores
Previous weeks
Gem #80: Speedy Shift and Rotate in SPARK
Gem #79: Where did my memory go? (Part 3)
Gem #78: Where did my memory go? (Part 2)
Gem #77: Where did my memory go? (Part 1)
Gem #76: Tokeneer Discovery – Lesson 6
Gem #75: Tokeneer Discovery – Lesson 5
Gem #74: Tokeneer Discovery – Lesson 4
Gem #73: Tokeneer Discovery – Lesson 3
Gem #72: Tokeneer Discovery – Lesson 2
Gem #71: Tokeneer Discovery – Lesson 1
Gem #70: The Scope Locks Idiom
Gem #69: Let’s SPARK! – Part 2
Gem #68: Let’s SPARK! – Part 1
Gem #67: Managing the GPS Workspace
Gem #66: GPS’s Key Shortcuts Editor
Gem #65: gprbuild
Gem #64: Handling Multiple-Unit Source Files
Gem #63: The Effect of Pragma Suppress
Gem #62: C++ constructors and Ada 2005
Gem #61: Interfacing with C++ constructors
Gem #60: Generating Ada bindings for C++ headers
Gem #59: Generating Ada bindings for C headers
Gem #58: Ada / Java exception handling
Gem #57: Ada / Java cross dispatching
Gem #56: Creating Ada to Java calls using GNAT-AJIS
Gem #55: Introduction to Ada / Java Interfacing
Gem #54: Scripting Capabilities in GNAT (Part 2)
Gem #53: Safe and Secure Software: Chapter 12: Conclusion
Gem #52: Scripting Capabilities in GNAT (Part 1)
Gem #51: Safe and Secure Software: Chapter 11, Certified Safe with SPARK
Gem #50: Overload Resolution
Gem #49: Safe and Secure Software: Chapter 10, Safe Concurrency
Gem #48: Extending Interfaces in Ada 2005
Gem #47: Safe and Secure Software : Chapter 9, Safe Communication
Gem #46: Incompatibilities between Ada 83 and Ada 95
Gem #45: Safe and Secure Software : Chapter 8, Safe Startup
Gem #44: Accessibility Checks (Part III)
Gem #43: Safe and Secure Software : Chapter 7, Safe Memory Management
Gem #42: Safe and Secure Software : Chapter 6, Safe Object Construction
Gem #41: Accessibility Checks (Part II: Ada2005)
Gem #40: Safe and Secure Software : Chapter 5, Safe Object Oriented Programming
Gem #39: Efficient Stream I/O for Array Types
Gem #38: Safe and Secure Software : Chapter 4, Safe Architecture
Gem #37: Bounded Buffer package in GNAT Hierarchy (Part 2)
Gem #36: Safe and Secure Software : Chapter 3, Safe Pointers
Gem #35: bounded buffer package in GNAT hierarchy (Part 1)
Gem #34: Safe and Secure Software : Chapter 2, Safe Typing
Gem #33: Accessibility Checks (Part I: Ada95)
Gem #32: Safe and Secure Software : Chapter 1, Safe Syntax