Circular history buffer: Your program should provide a function [or set of functions} to support a bash-like history capability. The program should…

programming

Can you help me with this assignment as soon as possible

Circular history buffer: Your program should provide a function [or set of functions} to supporta bash-like history capability. The program should repeatedly display a prompt and then acoepta line of input that is stored in a circular buffer. The circular buffer should be able to hold 5lines {this should be a constant you can change later]. Have yourfunction assign numbers, starting at 1, to each input line received and print thecommand number as part of the prompt {for example: "10> ‘i]. Prior to storing an input line,your program should interpret special commands: I ix means repeat the {absolute} input line numbered as {but only ifit is one of savedcommands — there may be less than 5}. In addition to storing a copy of the command, display the original input line or display an error message if the argumentat is invalid. I exit means terminate the program.I history means print the saved commands [again_. there may be less than 5}. I parse n means tokenize input line number n. This input line shouldn’t be stored inthe buffer, but instead display each word [token] on a separate line.