workshit/src/moonscript/fuckedtail.moon

32 lines
638 B
Plaintext

class Buffer
-- number -> Buffer
-- creates a new Buffer with the given limit number
new: (limit = 5) =>
@limit = limit -- number
@data = {} -- table
-- nil
-- clears all entries in @data if its length is above number @limit
purge: =>
if #@data > @limit
table.remove @data, 1
@purge!
else return
-- anything -> nil
-- adds the given line anything to @data and calls the too long purging function
add: (line) =>
table.insert @data, line
@purge!
with Buffer 5
while true
n = io.read!
if n ~= nil
\add n
else
break
for _, i in pairs .data
print i