Re: Pre-alpha D language online tour

2016-03-31 Thread André via Digitalmars-d

On Wednesday, 30 March 2016 at 19:58:32 UTC, Mark Isaacson wrote:
This is awesome! My one complaint is that the section of the 
screen that contains the code doesn't scale well vertically 
when my browser window is large. The written explanations scale 
to fit the content, the code editor does not. I'd just make it 
stretch vertically to fill the screen :). At that point you 
might also consider putting the Run/Reset buttons at the top.


Yeah I am not satisfied either. I have some issues open at the 
GitHub page regarding the layout and polishing. I will have your 
suggestions in mind! Thanks.

- André


Re: Pre-alpha D language online tour

2016-03-31 Thread André via Digitalmars-d

On Thursday, 31 March 2016 at 06:32:00 UTC, Jacob Carlborg wrote:

On 2016-03-29 18:26, André wrote:


http://dlang-tour.steinsoft.net


The example at [1] doesn't compile. "f" is declared twice and 
there's no built in property "name".


[1] http://dlang-tour.steinsoft.net/tour/basics/2


Thank you for finding this one! Fixed and will be online sonn.
- André


Re: Pre-alpha D language online tour

2016-03-31 Thread Jacob Carlborg via Digitalmars-d

On 2016-03-29 18:26, André wrote:


Here are great news on the dlang-tour project: As of now I've written
all content and the latest build is running on

http://dlang-tour.steinsoft.net


The example at [1] doesn't compile. "f" is declared twice and there's no 
built in property "name".


[1] http://dlang-tour.steinsoft.net/tour/basics/2

--
/Jacob Carlborg


Re: Pre-alpha D language online tour

2016-03-30 Thread Mark Isaacson via Digitalmars-d
This is awesome! My one complaint is that the section of the 
screen that contains the code doesn't scale well vertically when 
my browser window is large. The written explanations scale to fit 
the content, the code editor does not. I'd just make it stretch 
vertically to fill the screen :). At that point you might also 
consider putting the Run/Reset buttons at the top.


Re: Pre-alpha D language online tour

2016-03-30 Thread André via Digitalmars-d

On Tuesday, 29 March 2016 at 17:51:06 UTC, Bubbasaur wrote:

On Tuesday, 29 March 2016 at 16:26:27 UTC, André wrote:

...
I would appreciate if people could do some proof reading and 
just create pull requests for the content:


Nice work but I really think that the left content should be 
expandable. Some button like Try it or whatever should do the 
trick. It's a waste space mainly when there is nothing on the 
left side.


The same thing goes for the bottom content, I don't think it 
should be fixed.


Finally the font-size is too big for me.

Bubba.


Thank you for the good suggestions. I will create issues for 
those topics (2 are already there on GitHub).


Re: Pre-alpha D language online tour

2016-03-30 Thread André via Digitalmars-d

On Wednesday, 30 March 2016 at 17:35:55 UTC, jmh530 wrote:

On Wednesday, 30 March 2016 at 17:29:13 UTC, André wrote:

On Tuesday, 29 March 2016 at 17:10:33 UTC, jmh530 wrote:

D Basics (fix capitalization?):


The current title is "D's basics". I'm unsure what to fix 
here..




I meant that one is called D's basics and the other is called 
D's Gems. basics/Gems has a capitalization inconsistency.


Again, want to reiterate that it looks really good. Great work.


Thank you very much! Now I understand :-) Fixed and will be 
updated very soon.


Re: Pre-alpha D language online tour

2016-03-30 Thread jmh530 via Digitalmars-d

On Wednesday, 30 March 2016 at 17:29:13 UTC, André wrote:

On Tuesday, 29 March 2016 at 17:10:33 UTC, jmh530 wrote:

D Basics (fix capitalization?):


The current title is "D's basics". I'm unsure what to fix here..



I meant that one is called D's basics and the other is called D's 
Gems. basics/Gems has a capitalization inconsistency.


Again, want to reiterate that it looks really good. Great work.


Re: Pre-alpha D language online tour

2016-03-30 Thread André via Digitalmars-d
Thank you very much for your thorough review! I integrated your 
ideas and comments in the latest version. Some additional 
information on what I changed and questions left are below.


On Tuesday, 29 March 2016 at 17:10:33 UTC, jmh530 wrote:

D Basics (fix capitalization?):


The current title is "D's basics". I'm unsure what to fix here..


Page 3, [...]  I would change the line

D also allows pointer arithmetic. This is not allowed in code 
which is marked as @safe but only in @system code.


to

D allows pointer arithmetic, except in code that is marked as 
@safe


Done.


Page 4, This line on const is confusing
[...]


I tried to make this part more precise.

I feel like the static keyword is complicated enough that it 
could get its own slide (or multiple). Why not just put the 
variable at the top level without static?


Very good idea. I created a new static section in the 
multi-threading chapter.



Page 7, the discussion on delegates could be clearer.


Tried to make it more precise here, too. I also moved the section
below classes because it actually is a more advanced topic and 
hasn't to

be near 'Functions, part I'.


D Gems:
Page 3, put the code examples on a separate line.


Done. Much more readable that way.


Page 7, I would re-write the last line as
[..]


Done


Page 10, might also mention @safe.


Mentioning now @safe, @system and @trusted.


Page 13, conditionnally is spelled wrong.


Fixed.

I feel like static if with templates could get a whole page by 
itself.


Thought so too when initially writing the subsection.. I'll have 
another good night's sleep to decide whether I'll actually move 
it :-)



Concurrency:
Maybe re-name Multithreading? I wouldn't consider 
std.parallelism a way to implement concurrency.


I changed the name. Better fits the topic.


VibeD:
Page 1: Define asynchronous I/O and why it matters. I see a 
short explanation near the end of Page 2, but I feel like it 
should be brought up to the front. Maybe make that big 
paragraph into a list of key vibe-d features and why they 
matter.


I followed your suggestion and rewrote the paragraph to include 
bullet points. Also I added a line on asynchronous I/O and a 
reference to the following page which explains in more detail.


Re: Pre-alpha D language online tour

2016-03-29 Thread Bubbasaur via Digitalmars-d

On Tuesday, 29 March 2016 at 16:26:27 UTC, André wrote:

...
I would appreciate if people could do some proof reading and 
just create pull requests for the content:


Nice work but I really think that the left content should be 
expandable. Some button like Try it or whatever should do the 
trick. It's a waste space mainly when there is nothing on the 
left side.


The same thing goes for the bottom content, I don't think it 
should be fixed.


Finally the font-size is too big for me.

Bubba.



Re: Pre-alpha D language online tour

2016-03-29 Thread jmh530 via Digitalmars-d

On Tuesday, 29 March 2016 at 16:26:27 UTC, André wrote:
Or just drop me a message where you find a bug and I'll have it 
fixed.




Looks good. A few suggestions, some content, some typo.

D Basics (fix capitalization?):

Page 3, code example at the bottom right does not compile with 
@system. Also, D allows pointer arithmetic in @trusted code, so 
the text above it is not completely accurate. I would change the 
line


D also allows pointer arithmetic. This is not allowed in code 
which is marked as @safe but only in @system code.


to

D allows pointer arithmetic, except in code that is marked as 
@safe


Page 4, This line on const is confusing

To a const object can't be written, but someone holding a 
mutable to the same object might just well.


I feel like the static keyword is complicated enough that it 
could get its own slide (or multiple). Why not just put the 
variable at the top level without static?


Page 7, the discussion on delegates could be clearer.

D Gems:
Page 3, put the code examples on a separate line.

Page 7, I would re-write the last line as

The attribute pure is automatically inferred by the compiler for 
templated functions and auto functions, where applicable (this is 
also true of @safe, nothrow, and @nogc).


Page 8, I was not aware of invariant. I feel like I have a struct 
somewhere that could use it!


Page 10, might also mention @safe.

Page 13, conditionnally is spelled wrong.

I feel like static if with templates could get a whole page by 
itself.


Concurrency:
Maybe re-name Multithreading? I wouldn't consider std.parallelism 
a way to implement concurrency.


VibeD:
Page 1: Define asynchronous I/O and why it matters. I see a short 
explanation near the end of Page 2, but I feel like it should be 
brought up to the front. Maybe make that big paragraph into a 
list of key vibe-d features and why they matter.


Re: Pre-alpha D language online tour

2016-03-29 Thread André via Digitalmars-d

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:

Hi,

Inspired by the Go online language tour 
(https://tour.golang.org/) and the great experience it gave me 
learning the language I started a similar project for D some 
weeks ago. It's currently in a very pre-alpha state but I 
wanted to announce it in case someone had something similar in 
mind and is willing to contribute. The basic idea behind this 
tour is to introduce features of the language with short 
explanations and example code that is compiled and run online.


The code is located here:

https://github.com/stonemaster/dlang-tour

I've setup a server which always runs the latest version:

http://dlang-tour.steinsoft.net

This tour doesn't allow compiling online because the current 
implementation would just make it too easy to hijack the server 
:-) Compiling and running online can be activated when 
compiling locally though. My goal would be to integrate the 
tour with DPaste in the long run.


Working on this tour unfortunately stalled a little bit in this 
year but I am trying to work on the project constantly in the 
upcoming weeks. There is still a lot of content missing and, 
more importantly, good D source examples. But I have a rough 
guideline on which D topics I'd like to add content for.


Any kind of feedback is highly appreciated, of course.


Here are great news on the dlang-tour project: As of now I've 
written all content and the latest build is running on


http://dlang-tour.steinsoft.net

Somewhere ago I've implemented running code samples online (which 
are run in a Docker container on the server) so the tour is fully 
functional. There are still some polishing work to be left and 
some issues to be fixed before this should go public: 
https://github.com/stonemaster/dlang-tour/issues


I would appreciate if people could do some proof reading and just 
create pull requests for the content: 
https://github.com/stonemaster/dlang-tour/tree/master/public/content/en.
Or just drop me a message where you find a bug and I'll have it 
fixed.


Thanks,
André


Re: Pre-alpha D language online tour

2016-01-30 Thread André via Digitalmars-d

On Monday, 25 January 2016 at 21:18:45 UTC, rsw0x wrote:

On Monday, 25 January 2016 at 21:12:14 UTC, André wrote:

[...]


might be worth noting that Rust uses playpen for sandboxing 
their online compiler

https://github.com/thestinger/playpen


Thank you for the link and the information! Unfortunately playpen 
doesn't work inside a Docker container because it basically uses 
the same technologies and has dependencies just available on 
systemd based base systems.


I know decided to go the Docker way. I just pushed a change which 
lets the source be compiled and run within a Docker container 
that contains RDMD. This is working quite well so far and should 
be a quite safe sandbox. The started  Docker containers are 
restricted in memory usage and could be restricted in terms of 
CPU usage.


And this is online as of now. So the source code editor is now 
ready for compiling D online in the tour :-)


Cheers,
André


Re: Pre-alpha D language online tour

2016-01-28 Thread André via Digitalmars-d

On Thursday, 28 January 2016 at 10:09:40 UTC, Ali Çehreli wrote:

On 01/25/2016 10:17 AM, André wrote:

> http://dlang-tour.steinsoft.net

I love it! :)

> Working on this tour unfortunately stalled a little bit in
this year
> but I am trying to work on the project constantly in the
upcoming
> weeks.

This thread is an indication of what a great idea it's been. ;)

Ali


Thank you very much. Another motivation to keep going on :-)

André



Re: Pre-alpha D language online tour

2016-01-28 Thread André via Digitalmars-d
On Thursday, 28 January 2016 at 09:53:12 UTC, Nicholas Wilson 
wrote:

Another typo: In Basic's page two (Basic types) it says
The prefix u denotes unsigned types. char translates to 
UTF-8 characters, dchar is   used in UTF-16 strings and 
dchar in UTF-32 strings.

Should be
The prefix u denotes unsigned types. char translates to 
UTF-8 characters, _W_char is used in UTF-16 strings and dchar 
in UTF-32 strings.


Also

in Basics 10 the comments for the string types are the wrong 
way round

alias dstring = immutable(dchar)[]; // UTF-16
alias wstring = immutable(wchar)[]; // UTF-32


Nicholas, thank you very much for proof reading! Has been fixed.


Re: Pre-alpha D language online tour

2016-01-28 Thread Nicholas Wilson via Digitalmars-d

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:

Hi,

Inspired by the Go online language tour 
(https://tour.golang.org/) and the great experience it gave me 
learning the language I started a similar project for D some 
weeks ago. It's currently in a very pre-alpha state but I 
wanted to announce it in case someone had something similar in 
mind and is willing to contribute. The basic idea behind this 
tour is to introduce features of the language with short 
explanations and example code that is compiled and run online.


The code is located here:

https://github.com/stonemaster/dlang-tour

I've setup a server which always runs the latest version:

http://dlang-tour.steinsoft.net

This tour doesn't allow compiling online because the current 
implementation would just make it too easy to hijack the server 
:-) Compiling and running online can be activated when 
compiling locally though. My goal would be to integrate the 
tour with DPaste in the long run.


Working on this tour unfortunately stalled a little bit in this 
year but I am trying to work on the project constantly in the 
upcoming weeks. There is still a lot of content missing and, 
more importantly, good D source examples. But I have a rough 
guideline on which D topics I'd like to add content for.


Any kind of feedback is highly appreciated, of course.

Regards,
André


Another typo: In Basic's page two (Basic types) it says
The prefix u denotes unsigned types. char translates to UTF-8 
characters, dchar is   used in UTF-16 strings and dchar in 
UTF-32 strings.

Should be
The prefix u denotes unsigned types. char translates to UTF-8 
characters, _W_char is used in UTF-16 strings and dchar in UTF-32 
strings.


Re: Pre-alpha D language online tour

2016-01-28 Thread Mengu via Digitalmars-d

On Tuesday, 26 January 2016 at 18:45:55 UTC, André wrote:
On Tuesday, 26 January 2016 at 14:25:33 UTC, CraigDillabaugh 
wrote:


let's put it on github and let everyone contribute and make 
things easier for you. :)


It is on Github (see post #1)


On a related note: because it's on GitHub it's even possible to 
contribute content and examples just through the web interface. 
A quick guide on how the content is structured (all written is 
standard markdown) can be found here: 
https://github.com/stonemaster/dlang-tour/tree/master/public/content. The tour's content files found in that folder can just be edited using the GitHub web interface which will then automagically create a pull request for you without the need to locally pull the repository. And the preview mode of GitHub makes sure the layout isn't broken that much :-) It has never been easier to contribute!


FYI, I've now added content + examples for the templates and  
interface sections.


Thanks,
André


sorry, i must have missed the github link on the first post. 
forked it. here comes the turkish translation for the tour. it 
will follow the english content.


let's get this on people.


Re: Pre-alpha D language online tour

2016-01-28 Thread Nicholas Wilson via Digitalmars-d
On Thursday, 28 January 2016 at 09:36:00 UTC, Nicholas Wilson 
wrote:

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:

[...]


Another typo: In Basic's page two (Basic types) it says
The prefix u denotes unsigned types. char translates to 
UTF-8 characters, dchar is   used in UTF-16 strings and 
dchar in UTF-32 strings.

Should be
The prefix u denotes unsigned types. char translates to 
UTF-8 characters, _W_char is used in UTF-16 strings and dchar 
in UTF-32 strings.


Also

in Basics 10 the comments for the string types are the wrong way 
round

alias dstring = immutable(dchar)[]; // UTF-16
alias wstring = immutable(wchar)[]; // UTF-32



Re: Pre-alpha D language online tour

2016-01-28 Thread Ali Çehreli via Digitalmars-d

On 01/25/2016 10:17 AM, André wrote:

> http://dlang-tour.steinsoft.net

I love it! :)

> Working on this tour unfortunately stalled a little bit in this year
> but I am trying to work on the project constantly in the upcoming
> weeks.

This thread is an indication of what a great idea it's been. ;)

Ali



Re: Pre-alpha D language online tour

2016-01-26 Thread André via Digitalmars-d
On Monday, 25 January 2016 at 21:42:04 UTC, Craig Dillabaugh 
wrote:


I should do this myself, but since I can't access my Github 
account ATM and will likely forget.  The page:


http://dlang-tour.steinsoft.net/tour/basics/1

The line:

"An import statement mustn't appear at the top ... "

Should read:

"An import statement need not appear at the top ... "


Oh stupid Denglish mistake. Thanks a lot for proof reading! Fixed 
and black magic will make sure this is going to be rolled out 
very soon.


Re: Pre-alpha D language online tour

2016-01-26 Thread André via Digitalmars-d
On Monday, 25 January 2016 at 21:53:26 UTC, Guillaume Piolat 
wrote:


Very nice work and very much needed!

Found some errors:

- http://dlang-tour.steinsoft.net/tour/basics/2

  * "long, ulong (32 bit)" <= should be "64 bit"

  * "real (depending on platform, 80 bit on Intel x64)" <= 
80-bit on Intel x86 32-bit, not sure about Intel x86_64 and I 
think it depends.


  * "A conversion between variables of different types is only 
allowed by the compiler if no precision is lost." => except FP 
types. eg: double => float.



I think you have some room to introduce __gshared, I've seen 
one case on IRC with someone not knowing about it and wondering 
why threads read a different value.


You already say that "slices" and "dynamic arrays" are the same 
thing, but I think this need to be put in bold. For the longest 
time I had difficulty to envision the difference between the 
two concepts, but there seems to be none. It happens some D 
material present them separately.


Thank you very much for going through the content! I integrated 
your comments and they will be online very soon. I added a 
paragraph for __gshared in the storage classes section and I 
added a sentence to emphasize that slices and dynamic arrays are 
the same. I am not sure about the latter so I might revise it 
after sleeping some days on it :-) Thanks again! - André


Re: Pre-alpha D language online tour

2016-01-26 Thread Zalastax via Digitalmars-d
Looks great! For Windows dmd can also be installed using  
https://chocolatey.org/packages/dmd


Re: Pre-alpha D language online tour

2016-01-26 Thread Mengu via Digitalmars-d

On Tuesday, 26 January 2016 at 10:30:17 UTC, André wrote:
On Monday, 25 January 2016 at 21:53:26 UTC, Guillaume Piolat 
wrote:

[...]


Thank you very much for going through the content! I integrated 
your comments and they will be online very soon. I added a 
paragraph for __gshared in the storage classes section and I 
added a sentence to emphasize that slices and dynamic arrays 
are the same. I am not sure about the latter so I might revise 
it after sleeping some days on it :-) Thanks again! - André


let's put it on github and let everyone contribute and make 
things easier for you. :)


Re: Pre-alpha D language online tour

2016-01-26 Thread CraigDillabaugh via Digitalmars-d

On Tuesday, 26 January 2016 at 13:48:57 UTC, Mengu wrote:

On Tuesday, 26 January 2016 at 10:30:17 UTC, André wrote:
On Monday, 25 January 2016 at 21:53:26 UTC, Guillaume Piolat 
wrote:

[...]


Thank you very much for going through the content! I 
integrated your comments and they will be online very soon. I 
added a paragraph for __gshared in the storage classes section 
and I added a sentence to emphasize that slices and dynamic 
arrays are the same. I am not sure about the latter so I might 
revise it after sleeping some days on it :-) Thanks again! - 
André


let's put it on github and let everyone contribute and make 
things easier for you. :)


It is on Github (see post #1)


Re: Pre-alpha D language online tour

2016-01-26 Thread André via Digitalmars-d
On Tuesday, 26 January 2016 at 14:25:33 UTC, CraigDillabaugh 
wrote:


let's put it on github and let everyone contribute and make 
things easier for you. :)


It is on Github (see post #1)


On a related note: because it's on GitHub it's even possible to 
contribute content and examples just through the web interface. A 
quick guide on how the content is structured (all written is 
standard markdown) can be found here: 
https://github.com/stonemaster/dlang-tour/tree/master/public/content. The tour's content files found in that folder can just be edited using the GitHub web interface which will then automagically create a pull request for you without the need to locally pull the repository. And the preview mode of GitHub makes sure the layout isn't broken that much :-) It has never been easier to contribute!


FYI, I've now added content + examples for the templates and  
interface sections.


Thanks,
André


Re: Pre-alpha D language online tour

2016-01-26 Thread André via Digitalmars-d
On Monday, 25 January 2016 at 21:16:51 UTC, Craig Dillabaugh 
wrote:

[...]


Looks promising.  You should rename it D-tours so that you can 
take advantage of D's underused, but excellent, pun making 
potential :o)


Then you need to include some graphics:

http://www.roadtrafficsigns.com/detour-signs


:-) That actually was my first working title! But I feared that 
the name could have a bad influence on the content so I decided 
for the straight forward version.


Re: Pre-alpha D language online tour

2016-01-25 Thread Andrei Alexandrescu via Digitalmars-d

On 1/25/16 1:17 PM, André wrote:

Hi,

Inspired by the Go online language tour (https://tour.golang.org/) and
the great experience it gave me learning the language I started a
similar project for D some weeks ago. It's currently in a very pre-alpha
state but I wanted to announce it in case someone had something similar
in mind and is willing to contribute. The basic idea behind this tour is
to introduce features of the language with short explanations and
example code that is compiled and run online.

The code is located here:

https://github.com/stonemaster/dlang-tour

I've setup a server which always runs the latest version:

http://dlang-tour.steinsoft.net


Whoa, what a sight for sore eyes. I very much encourage development by 
you and the entire community. We need to make this easily accessible 
from dlang.org. Please let me know how we can help. Thank you! -- Andrei


Re: Pre-alpha D language online tour

2016-01-25 Thread JohnCK via Digitalmars-d

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:

...
http://dlang-tour.steinsoft.net
...
Any kind of feedback is highly appreciated, of course.


This is very neat and I think this is a thing this will be very 
good for newcomers.


PS: On the index page "after page 1" there is a huge white space 
on the left side: http://i.imgur.com/ypCTdbo.png


JohnCK.


Re: Pre-alpha D language online tour

2016-01-25 Thread André via Digitalmars-d

On Monday, 25 January 2016 at 20:02:10 UTC, rsw0x wrote:

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:
This tour doesn't allow compiling online because the current 
implementation would just make it too easy to hijack the 
server :-) Compiling and running online can be activated when 
compiling locally though. My goal would be to integrate the 
tour with DPaste in the long run.


I wonder how much bandwidth it would use to host a sandboxed 
server with dmd on it. Are any of the dpaste guys around that 
could give an estimate?


If DPaste isn't an option I thought about implementing sandbox 
compiling within Docker containers. A Docker container running 
rdmd to compile online code is quite easily put together. The 
advantage with Docker is that it starts quickly and can be 
limited in terms of memory and CPU. And it is a pretty safe 
sandbox (so far). The current code actually implements caching 
already so that not every unchanged code example has to be 
compiled online.
The dlang-tour currently runs in a Docker container itself 
because it makes deployment later on very easy. So together with 
some sandboxing mechanism for compiling it should be able to 
scale quite well depending on future usage.
The question is just whether it's better to use the existing 
DPaste infrastructure or to implement something especially for 
the tour?


Re: Pre-alpha D language online tour

2016-01-25 Thread Craig Dillabaugh via Digitalmars-d

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:

Hi,

Inspired by the Go online language tour 
(https://tour.golang.org/) and the great experience it gave me 
learning the language I started a similar project for D some 
weeks ago. It's currently in a very pre-alpha state but I 
wanted to announce it in case someone had something similar in 
mind and is willing to contribute. The basic idea behind this 
tour is to introduce features of the language with short 
explanations and example code that is compiled and run online.


[...]


Looks promising.  You should rename it D-tours so that you can 
take advantage of D's underused, but excellent, pun making 
potential :o)


Then you need to include some graphics:

http://www.roadtrafficsigns.com/detour-signs


Re: Pre-alpha D language online tour

2016-01-25 Thread rsw0x via Digitalmars-d

On Monday, 25 January 2016 at 21:12:14 UTC, André wrote:

[...]


might be worth noting that Rust uses playpen for sandboxing their 
online compiler

https://github.com/thestinger/playpen


Re: Pre-alpha D language online tour

2016-01-25 Thread Guillaume Piolat via Digitalmars-d

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:

Hi,

Inspired by the Go online language tour 
(https://tour.golang.org/) and the great experience it gave me 
learning the language I started a similar project for D some 
weeks ago. It's currently in a very pre-alpha state but I 
wanted to announce it in case someone had something similar in 
mind and is willing to contribute. The basic idea behind this 
tour is to introduce features of the language with short 
explanations and example code that is compiled and run online.


The code is located here:

https://github.com/stonemaster/dlang-tour

I've setup a server which always runs the latest version:

http://dlang-tour.steinsoft.net

This tour doesn't allow compiling online because the current 
implementation would just make it too easy to hijack the server 
:-) Compiling and running online can be activated when 
compiling locally though. My goal would be to integrate the 
tour with DPaste in the long run.


Working on this tour unfortunately stalled a little bit in this 
year but I am trying to work on the project constantly in the 
upcoming weeks. There is still a lot of content missing and, 
more importantly, good D source examples. But I have a rough 
guideline on which D topics I'd like to add content for.


Any kind of feedback is highly appreciated, of course.

Regards,
André


Very nice work and very much needed!

Found some errors:

- http://dlang-tour.steinsoft.net/tour/basics/2

  * "long, ulong (32 bit)" <= should be "64 bit"

  * "real (depending on platform, 80 bit on Intel x64)" <= 80-bit 
on Intel x86 32-bit, not sure about Intel x86_64 and I think it 
depends.


  * "A conversion between variables of different types is only 
allowed by the compiler if no precision is lost." => except FP 
types. eg: double => float.



I think you have some room to introduce __gshared, I've seen one 
case on IRC with someone not knowing about it and wondering why 
threads read a different value.


You already say that "slices" and "dynamic arrays" are the same 
thing, but I think this need to be put in bold. For the longest 
time I had difficulty to envision the difference between the two 
concepts, but there seems to be none. It happens some D material 
present them separately.




Re: Pre-alpha D language online tour

2016-01-25 Thread Craig Dillabaugh via Digitalmars-d

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:

Hi,

Inspired by the Go online language tour 
(https://tour.golang.org/) and the great experience it gave me 
learning the language I started a similar project for D some 
weeks ago. It's currently in a very pre-alpha state but I 
wanted to announce it in case someone had something similar in 
mind and is willing to contribute. The basic idea behind this 
tour is to introduce features of the language with short 
explanations and example code that is compiled and run online.


The code is located here:

https://github.com/stonemaster/dlang-tour

I've setup a server which always runs the latest version:

http://dlang-tour.steinsoft.net

This tour doesn't allow compiling online because the current 
implementation would just make it too easy to hijack the server 
:-) Compiling and running online can be activated when 
compiling locally though. My goal would be to integrate the 
tour with DPaste in the long run.


Working on this tour unfortunately stalled a little bit in this 
year but I am trying to work on the project constantly in the 
upcoming weeks. There is still a lot of content missing and, 
more importantly, good D source examples. But I have a rough 
guideline on which D topics I'd like to add content for.


Any kind of feedback is highly appreciated, of course.

Regards,
André


I should do this myself, but since I can't access my Github 
account ATM and will likely forget.  The page:


http://dlang-tour.steinsoft.net/tour/basics/1

The line:

"An import statement mustn't appear at the top ... "

Should read:

"An import statement need not appear at the top ... "


Re: Pre-alpha D language online tour

2016-01-25 Thread André via Digitalmars-d

On Monday, 25 January 2016 at 18:31:57 UTC, JohnCK wrote:

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:

...
http://dlang-tour.steinsoft.net
...
Any kind of feedback is highly appreciated, of course.


This is very neat and I think this is a thing this will be very 
good for newcomers.


PS: On the index page "after page 1" there is a huge white 
space on the left side: http://i.imgur.com/ypCTdbo.png


JohnCK.


Thanks very much! Actually this huge white space is by design :-) 
On every section that doesn't include a code example the space 
that the source editor would use is just left blank. That way the 
content always stays at the same position. And it looked awkward 
when the content just streched to the whole screen on big 
displays.. That is the same behaviour the Go tour has if no 
source is shown and I didn't come up with a better solution so 
far.


Cheers,
André


Re: Pre-alpha D language online tour

2016-01-25 Thread André via Digitalmars-d
On Monday, 25 January 2016 at 19:51:44 UTC, Andrei Alexandrescu 
wrote:

On 1/25/16 1:17 PM, André wrote:

Hi,

[...]

The code is located here:

https://github.com/stonemaster/dlang-tour

I've setup a server which always runs the latest version:

http://dlang-tour.steinsoft.net


Whoa, what a sight for sore eyes. I very much encourage 
development by you and the entire community. We need to make 
this easily accessible from dlang.org. Please let me know how 
we can help. Thank you! -- Andrei


Thank you for the motivating words! I'll keep you posted on 
progress and you'll hear from me when I need help :-)


Regards,
André


Re: Pre-alpha D language online tour

2016-01-25 Thread jmh530 via Digitalmars-d

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:


Any kind of feedback is highly appreciated, of course.




I didn't go through it line by line, but my general impression is 
that it looks really good. Congrats.


Re: Pre-alpha D language online tour

2016-01-25 Thread rsw0x via Digitalmars-d

On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:
This tour doesn't allow compiling online because the current 
implementation would just make it too easy to hijack the server 
:-) Compiling and running online can be activated when 
compiling locally though. My goal would be to integrate the 
tour with DPaste in the long run.


I wonder how much bandwidth it would use to host a sandboxed 
server with dmd on it. Are any of the dpaste guys around that 
could give an estimate?