# Would any other language meet the HOLWG requirements today?

**URL:** <https://forum.ada-lang.io/t/would-any-other-language-meet-the-holwg-requirements-today/1469>\
**Category:** General\
**Created:** [November 13, 2024, 5:32pm UTC](https://forum.ada-lang.io/t/would-any-other-language-meet-the-holwg-requirements-today/1469 "2024-11-13T17:32:11Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![kevlar700](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/kevlar700/32/1118_2.png) [@kevlar700](https://forum.ada-lang.io/u/kevlar700)\
**Post date:** [November 13, 2024, 5:32pm UTC](https://forum.ada-lang.io/t/would-any-other-language-meet-the-holwg-requirements-today/1469/1 "2024-11-13T17:32:11Z")

</div>

According to Grady Booch software engineering with Ada book. The high order language working groups task was to

"_Identity requirements for DoD high-order languages"._

_“Evaluate existing languages against these requirements.”_

"Recommend the adoption or implementation of _a minimal set of programming languages"._

They couldn’t find an existing language to meet those requirements.

The question is would any other language than Ada do so today. I guess a subset of C++ though C was ruled out as a base for any acceptable language.

---

<div class="post-metadata">

**Author:** ![F-Loyer](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/f-loyer/32/531_2.png) [@F-Loyer](https://forum.ada-lang.io/u/F-Loyer)\
**Post date:** [November 13, 2024, 7:19pm UTC](https://forum.ada-lang.io/t/would-any-other-language-meet-the-holwg-requirements-today/1469/2 "2024-11-13T19:19:38Z")

</div>

I have read someone on Facebook write « any language can be an abstraction of/over C »… (it can be a requirement if a language: building other languages…)… and I disagree ! A `little S : String := Get_Line;` can’t be expressed in C. Ada can allocate a variable length array in the stack, not C !

---

<div class="post-metadata">

**Author:** ![kevlar700](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/kevlar700/32/1118_2.png) [@kevlar700](https://forum.ada-lang.io/u/kevlar700)\
**Post date:** [November 13, 2024, 7:51pm UTC](https://forum.ada-lang.io/t/would-any-other-language-meet-the-holwg-requirements-today/1469/3 "2024-11-13T19:51:48Z")

</div>

It’s interesting that Java had more compliance than c++ atleast in 97.

[https://web.archive.org/web/20200914235617/https://dwheeler.com/steelman/steeltab.htm](https://web.archive.org/web/20200914235617/https://dwheeler.com/steelman/steeltab.htm)

---

<div class="post-metadata">

**Author:** ![simonjwright](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/simonjwright/32/11_2.png) [@simonjwright](https://forum.ada-lang.io/u/simonjwright)\
**Post date:** [November 13, 2024, 8:56pm UTC](https://forum.ada-lang.io/t/would-any-other-language-meet-the-holwg-requirements-today/1469/4 "2024-11-13T20:56:37Z")

</div>

> [@F-Loyer](#):
>
> Ada can allocate a variable length array in the stack, not C !

[alloca()](https://man7.org/linux/man-pages/man3/alloca.3.html)

---

<div class="post-metadata">

**Author:** ![RREE](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/rree/32/34_2.png) [@RREE](https://forum.ada-lang.io/u/RREE)\
**Post date:** [November 14, 2024, 3:28pm UTC](https://forum.ada-lang.io/t/would-any-other-language-meet-the-holwg-requirements-today/1469/5 "2024-11-14T15:28:35Z")

</div>

C supports variable-sized arrays since the C99 standard.

```ada
void fun(int size) 
{ 
     int arr[size]; 
     // Code 
}

```

---

<div class="post-metadata">

**Author:** ![jere](https://forum.ada-lang.io/user_avatar/forum.ada-lang.io/jere/32/87_2.png) [@jere](https://forum.ada-lang.io/u/jere)\
**Post date:** [November 14, 2024, 4:30pm UTC](https://forum.ada-lang.io/t/would-any-other-language-meet-the-holwg-requirements-today/1469/6 "2024-11-14T16:30:59Z")

</div>

> [@RREE](#):
>
> C supports variable-sized arrays since the C99 standard.

Yep, those solved quite a few problems for me in C.

I think they made them optional to support in the standard at c11. At some point there was some talk about deprecating them but I don’t know if that ever happened officially

I liked VLAs, but I do understand why the C language community moved away from them since there isn’t any stack checking in C (Ada does this, so they aren’t as dangerous for Ada)
