Cyclic strings, hidden programs Write 3 programs that do the following task:
Let A, B, C source codes of those three programs;

if A runs BC is produced as output,
if B runs CA is produced,
if C runs AB is produced;

so each program writes a string (cycled for each program) and hides itself from it.
Additional, but essential constraints:

standard loopholes are forbidden;
each program must be at least 1 byte long;
each of three programs must be written in a different language;

It would be nice if your submission had this format:
Language A (size of A) - Language B (size of B) - Language C (size of C) - Score
A B C
&lt;extra stuff&gt;

Winner is someone who get the minimum score, which is the sum of sizes of three programs.
Befunge-98, Gol>&lt;> and Wumpus 47*3 = 141 bytes

"r75*1-47*0.@o&amp;r84#o&amp;]=74#]=\`/KHj '!_@#,k.'g00


Try it in Befunge!
Try it in >&lt;>!
Try it in Wumpus!

That's right, it's the same program three times over! When run in any of the above languages, it prints the source code twice, which is the other two programs concatenated. 

How It Works:

Befunge code:
  "r                               j '!_@#,k.'g00

  "   Wrapping string literal over code
   r  Reflect the pointer
  "   Wrapping string literal
                                              g00   Fetch " from cell 0,0 
                                          ,k.'      Print 47 characters
                                       _@#          If the next character is 0, exit
                                      !             Otherwise, set it to 0
                                   j '              And jump back to the beginning


Gol&gt;&lt;&gt; code:
  "r75*1-47*0.                \`/KH

  "             Wrapping string literal
   r            Reverse stack
    75*1-       Push "
         47*0.  Jump to cell 28,0
                              \  Continue right
                               `/K   Duplicate the top 47 characters on the stack
                                  H  Halt and output stack contents

Wumpus code:
  "r75*1-47*0.@o&amp;r84#o&amp;]=74#]=\

  "r75*1-47*0.  Exact same function as the &gt;&lt;&gt; code, but with a bouncing string literal
                              \  Reflect left
                            ]=   Push a copy of the " to the bottom of the stack
                         74#     Push 47
                       ]=        Push a copy of the 47 to the bottom of the stack
                     o&amp;          Print the top 47 characters
                  84#            Push a '0' to make up for the missing 0 at the end
               o&amp;r               Reverse the stack and print the top 47 characters
              @                  And terminate