On 17.07.19 21:05, Andre Pany wrote:

```
#!/bin/bash

text="
import std;

void main()
{
     while(true)
     {
         string enemy1 = readln().strip;
         int dist1 = to!int(readln().strip);

         string enemy2 = readln().strip;
         int dist2 = to!int(readln().strip);

         // Write an action using writeln()
         writeln(dist1 > dist2 ? enemy2 : enemy1);
         // Enter the code here
     }
}"

curl -fsS https://dlang.org/install.sh | bash -s dmd-2.087.0
source ~/dlang/dmd-2.087.0/activate
echo $text | dmd -
```

what is here wrong?

Check out what `echo $text` prints:

----
import std; void main() { while(true) { string enemy1 = readln().strip; int dist1 = to!int(readln().strip); string enemy2 = readln().strip; int dist2 = to!int(readln().strip); // Write an action using writeln() writeln(dist1 > dist2 ? enemy2 : enemy1); // Enter the code here } }
----

Note that it's all on one line. And remember that a "//"-style comment spans the rest of the line.

That's right. Everything after the first "//" is now part of the comment, all the way to the last closing brace. Obviously, that's not valid code anymore.

Try using double quotes around $text:

    echo "$text" | dmd -

Reply via email to