Question
a. In CLISP define your own function that duplicates the functionality of mapcar from the standard library. You may not use the built-in mapcar function
a. In CLISP define your own function that duplicates the functionality of mapcar from the standard library. You may not use the built-in mapcar function as a helper function. Your implementation must be recursive.
a. In CLISP define your own function that duplicates the functionality of mapcar from the standard library. You may not use the built-in mapcar function as a helper function. Your implementation must be recursive.
Input: The input to my-map is a function that takes a single argument and a homogeneous list of elements of the same data type compatible with the procedure. Note: the function argument can be named or anonymous (lambda).
Output: A new list of the original elements with the same procedure applied to each.
Examples:
> (my-map sqrt '(9 25 81 49))
'(3 5 9 7)
> (my-map add1 '(6 4 8 3))
'(7 5 9 4)
> (my-map (lambda (n) (* n n)) '(5 7))
'(25 49)
> (my-map even? '(2 5 7 12))
'(#t #f #f #t)
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started