December 14, 2017
On Thursday, 14 December 2017 at 02:57:42 UTC, David Nadlinger wrote:
> On Wednesday, 13 December 2017 at 01:14:26 UTC, Seb wrote:
>> Also the storage on the machine is limited and we can't drop an unlimited amount of Docker images there.
>
> Shouldn't the overhead from that be fairly manageable? After all, the last layer would only be as large as a single DMD/LDC installation. Surely you would have at least a few gigabytes spare on the server?
>
>  — David

Yes, the docker images aren't too big:

https://hub.docker.com/r/dlangtour/core-exec/tags

FYI for the "import a dub library" feature, we compile a couple of important dub packages and bundle them within the docker image. It's a lot faster this way and allowed to ignore the issues of a common, shared dub package cache folder (parallel writes, growing size, prevent "delete all", ...) for now.
Anyhow you are right, spare storage isn't a huge concern, but there isn't much free storage either as it's a rather small instance (I don't even know where the machine is hosted).

As mentioned before, no one has mentioned a use case for which he would need an old, ugly compiler on run.dlang.io.
A bit of history: the app emerged from the DLang-Tour backend, where small examples can be executed and for those you can't even choose the compiler. After several problems and outages with DPaste, we added it as a backend to the runnable examples on dlang.org, for which again, you can't choice the compiler.
(To be technically correct, on the prerelease pages dmd-nightly is automatically selected.)

It's interesting to see that no one complained about gdc not being there - I thought that this would be the first comment.
December 14, 2017
On Thursday, 14 December 2017 at 06:26:16 UTC, Seb wrote:

> It's interesting to see that no one complained about gdc not being there - I thought that this would be the first comment.

Allow me to be the first.

But seriously, considering the use case for run.dlang.io, I don't see the need for hosting any compilers other than dmd-latest and dmd-nightly.  Everything else is just gravy.

Mike
December 14, 2017
On 2017-12-13 02:14, Seb wrote:

> Also the storage on the machine is limited and we can't drop an unlimited amount of Docker images there.

There could be a job that cleans up the local Docker images. If a Docker image is needed it will be pulled down again automatically. Of course there can be a few common images that are never cleaned up to reduce the waiting time for pulling down an image.

-- 
/Jacob Carlborg
December 14, 2017
On Thursday, 14 December 2017 at 06:43:58 UTC, Mike Franklin wrote:
> On Thursday, 14 December 2017 at 06:26:16 UTC, Seb wrote:
>
>> It's interesting to see that no one complained about gdc not being there - I thought that this would be the first comment.
>
> Allow me to be the first.
>
> But seriously, considering the use case for run.dlang.io, I don't see the need for hosting any compilers other than dmd-latest and dmd-nightly.  Everything else is just gravy.
>
> Mike

rust playground has plenty of choices in that matter but there's something better. it supports the top 100 most used dependencies so they are just an import away.

@seb, you think this could be added?
December 14, 2017
On Thursday, 14 December 2017 at 13:22:54 UTC, Mengu wrote:
> On Thursday, 14 December 2017 at 06:43:58 UTC, Mike Franklin wrote:
>> On Thursday, 14 December 2017 at 06:26:16 UTC, Seb wrote:
>>
>>> It's interesting to see that no one complained about gdc not being there - I thought that this would be the first comment.
>>
>> Allow me to be the first.
>>
>> But seriously, considering the use case for run.dlang.io, I don't see the need for hosting any compilers other than dmd-latest and dmd-nightly.  Everything else is just gravy.
>>
>> Mike
>
> rust playground has plenty of choices in that matter but there's something better.

As far as I can judge they also only support latest, beta and nightly as compilers, no?

> it supports the top 100 most used dependencies so they are just an import away.
> @seb, you think this could be added?

If I understand you correctly, we already support this - though the list of supported packages is rather limited for now.
Two examples:

mir: https://run.dlang.io/is/FIc6rd
mir-algorithm: https://run.dlang.io/is/3pNRH8

If you want to add your favorite library to the list -> https://github.com/dlang-tour/core-exec/blob/master/Dockerfile#L43
December 14, 2017
On Thursday, 14 December 2017 at 01:52:29 UTC, H. S. Teoh wrote:
> ...
> This can, of course, be bound to a custom keybinding, then you'll have your one-stop shop for compiling D snippets without ever seeing (much less typing) any temporary filenames. And without needing an internet connection.

That sounds powerful!
Like you said, instant win.

December 14, 2017
On 12/12/2017 10:37 AM, Seb wrote:
> After it has been in stealth mode for quite a while, I'm happy to announce that there's https://run.dlang.io

Very impressive! Nice work!

Can I add a suggestion? Have an option to show the assembler created. Being able to quickly look at the assembler output is a great way to learn the 'cost' of writing code in various ways. (This is invaluable for someone wanting to be an A-list programmer.)
December 15, 2017
On Thursday, 14 December 2017 at 15:46:03 UTC, Walter Bright wrote:
> On 12/12/2017 10:37 AM, Seb wrote:
>> After it has been in stealth mode for quite a while, I'm happy to announce that there's https://run.dlang.io
>
> Very impressive! Nice work!
>
> Can I add a suggestion? Have an option to show the assembler created. Being able to quickly look at the assembler output is a great way to learn the 'cost' of writing code in various ways. (This is invaluable for someone wanting to be an A-list programmer.)

You can use this one for nice assembly outputs https://d.godbolt.org/
December 15, 2017
On Thu, Dec 14, 2017 at 02:33:13PM +0000, Ivan Kazmenko via Digitalmars-d-announce wrote:
> On Thursday, 14 December 2017 at 01:52:29 UTC, H. S. Teoh wrote:
> > ...
> > This can, of course, be bound to a custom keybinding, then you'll
> > have your one-stop shop for compiling D snippets without ever seeing
> > (much less typing) any temporary filenames. And without needing an
> > internet connection.
> 
> That sounds powerful!
> Like you said, instant win.

As of this morning, the PR has been merged into git master, and now this works:

------
$ echo 'import std.stdio; void main(){ writeln("Instant win!"); }' |dmd -run -
Instant win!
$
------

Hooray!


T

-- 
Why are you blatanly misspelling "blatant"? -- Branden Robinson
December 16, 2017
On 12/15/2017 4:10 AM, Radu wrote:
> You can use this one for nice assembly outputs https://d.godbolt.org/

That is indeed nice and very useful. It should do dmd, too!