Row, row, row your boat
05AB1E, 80 77 bytes
“¢ã,¢ã,¢ã€žžÄ,““èî„‹€€šæ.“"merrily, "4ר“‚쀈€³€…žâ.“'-35×Ð)€ª.B3FDÁ})øvy'|ý,
Try it online!
Work in progress.
V, 139, 128 bytes
iLife is but a dream ±µ |4amerrily, x7b~A|Gently down the stream.±² |3arow, X5b~Ayour boat,±± |3I³µ-|3AòÄó.û-}|ò5DÎ4f|C|
A one-liner! (sortof :P)
Try it online!
Hexdump:
00000000: 694c 6966 6520 6973 2062 7574 2061 2064 iLife is but a d
00000010: 7265 616d 20b1 b520 7c1b 3461 6d65 7272 ream .. |.4amerr
00000020: 696c 792c 201b 7837 627e 417c 4765 6e74 ily, .x7b~A|Gent
00000030: 6c79 2064 6f77 6e20 7468 6520 7374 7265 ly down the stre
00000040: 616d 2eb1 b220 7c1b 3361 726f 772c 201b am... |.3arow, .
00000050: 5835 627e 4179 6f75 7220 626f 6174 2cb1 X5b~Ayour boat,.
00000060: b120 7c1b 3349 b3b5 2d7c 1b33 4101 1bf2 . |.3I..-|.3A...
00000070: c4f3 2efb 2d7d 7cf2 3544 ce34 667c 437c ....-}|.5D.4f|C|
Do I get bonus points for landing exactly on 2^7
?
This took a while to figure out. I'm hoping I can golf tons off like my keyboard ASCII art answer, but I'm not sure. We'll see. They are very similar challenges (and both very fun :D)
Originally I tried this (180):
3irow, ch your boat,±± ||"rCLife is but a dream.±µ ||"lD4imerrily, r||"mCGently down the stream.±² ||"gC³µ-|B"dCR³D
GRDD
MGRD
LMGR
DLMG
DDLM
³DLÍR/r
ÍG/g
ÍM/m
ÍL/l
ÍD/d
Try it online!
Which inserts this:
RDDD
GRDD
MGRD
LMGR
DLMG
DDLM
DDDL
and then does substitution to expand it out. But building it ascii-art style is much shorter (and more fun TBH)
Batch, 292 288 275 bytes
@set d=-------
@set "d=%d%%d%%d%%d%%d%^|
@set "m=M_ m_ m_ m_^|
@set "s= ^|
@set "s=Life is but a dream. %s%%m:_=errily,%Gently down the stream. %s%Row, row, row your boat,%s%%d%%d%%d%"
@for /l %%i in (1,1,6)do @call:c
:c
@echo %s:~111,146%
@set "s=%d%%s%
Edit: Saved 13 bytes by rewriting the code to use a version of the substring trick I used in my Retina answer. Conveniently I can loop six times and then fall through for a seventh iteration of the loop body, which means the quoting needed to output |
s doesn't get too onerous, however I have to be careful to take the ^
s into account when selecting the substring.