comp.lang.ada
 help / color / mirror / Atom feed
From: Kenneth Wolcott <kennethwolcott@gmail.com>
Subject: Re: memoization in Ada? Hash ADT?
Date: Fri, 21 Jul 2023 22:30:44 -0700 (PDT)	[thread overview]
Message-ID: <b1a023f7-c8a4-423d-8f55-c94cc9260b75n@googlegroups.com> (raw)
In-Reply-To: <1f6ad7f7-3bd3-4094-b037-eac7d352d68dn@googlegroups.com>

On Friday, July 21, 2023 at 8:50:06 PM UTC-7, Kenneth Wolcott wrote:
> Hi; 
> 
> I'm working on the Rosetta Code task: 
> 
> "Stirling numbers of the second kind" 
> 
> I have a working recursive solution written in Ada but I'd like to memoize it to cut down on the redundant and duplicative calls (similar to a recursive solution to calculating the Fibonacci sequence). 
> 
> So I think I need a hash ADT (which I've used in Perl) but I've never used in Ada. 
> 
> So I want to preserve the calculation of the Stirling2 for each N and K so I can do a lookup. If this were based on a single unsigned integer, an array would suffice. Maybe a 2d array would suffice? 
> 
> Thanks, 
> Ken Wolcott

I solved the specific problem using a 2d array for caching.  This is not memoization, per se, but this works very well.  The recursive calls are now very fast as there is a maximum of one calculation per recursive call.

So, any resources on how to write Ada programs that take advantage of memoization?

Thanks,
Ken

  reply	other threads:[~2023-07-22  5:30 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-22  3:50 memoization in Ada? Hash ADT? Kenneth Wolcott
2023-07-22  5:30 ` Kenneth Wolcott [this message]
2023-07-24 21:18   ` Gautier write-only address
2023-07-26  4:38     ` Kenneth Wolcott
2023-07-26  7:50       ` Simon Wright
2023-07-26 21:36       ` Gautier write-only address
2023-07-26 22:18         ` Kenneth Wolcott
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox