Ticket #15 (closed defect)

Opened 6 years ago

Last modified 6 years ago

define/memo fails on multiple args

Reported by: dherman Owned by: dherman
Priority: critical Milestone:
Component: dherman/memoize.plt Keywords:
Cc: Version:
Racket Version:

Description

John Clements wrote:

In 4.0.1.1, this program:

#lang scheme/base

(require (planet "memoize.ss" ("dherman" "memoize.plt" 2 1)))


(define/memo (f a b)
  13)

Yields this error:

#%app: missing procedure expression; probably originally (), which is an illegal empty application in: (#%app)

This error does not occur in the mzscheme language, and it does not occur with a function of arity 1. It's probably the difference between a #%plain-app and an #%app somewhere? That's just a guess, mind you.

John

Change History

Changed 6 years ago by dherman

Mark Engelberg wrote:

Memoize no longer works for functions of more than one argument:

#lang scheme
(require (planet "memoize.ss" ("dherman" "memoize.plt" 2 1)))

(define/memo (f a b) (+ a b))

#%app: missing procedure expression; probably originally (), which is
an illegal empty application in: (#%app)


It works on functions of one argument. This is one of the most useful
packages on the planet, so I hope you can get this fixed up soon!

Thanks,

Mark

Changed 6 years ago by dherman

  • status changed from new to closed

Fixed in version 2:2.

Note: See TracTickets for help on using tickets.