Differences

This shows you the differences between two versions of the page.

Link to this comparison view

dss:workshop-01 [2019/08/14 14:56]
eduard.staniloiu [3. Dictionaries]
dss:workshop-01 [2021/03/10 23:46] (current)
eduard.staniloiu
Line 1: Line 1:
 ====== Highschool workshop - Introduction to D ====== ====== Highschool workshop - Introduction to D ======
 +
 +===== Slides =====
 +
 +{{:​dss:​workshop-liceu.odp|Slides}}
  
 ===== Exercises ===== ===== Exercises =====
 +
 +For these exercises you can use the [[https://​run.dlang.io|D Online Editor]].
 +If you wish to install the D compiler and Standard Library, go to the [[https://​dlang.org/​download.html|download]] page.
  
 ==== 1. Array Median Element ==== ==== 1. Array Median Element ====
Line 12: Line 19:
   - Write [[https://​ocw.cs.pub.ro/​courses/​dss/​laboratoare/​01#​unittests|unittests]] to validate your implementation.   - Write [[https://​ocw.cs.pub.ro/​courses/​dss/​laboratoare/​01#​unittests|unittests]] to validate your implementation.
  
-<​note>​+<​note ​tip>
 Use small [[https://​ocw.cs.pub.ro/​courses/​dss/​laboratoare/​01#​functions|functions]] to increase code readability and testing. Use small [[https://​ocw.cs.pub.ro/​courses/​dss/​laboratoare/​01#​functions|functions]] to increase code readability and testing.
 +</​note>​
 +
 +<​note>​
 +Remember to pass the **-unittest** argument to the compiler, in order to enable the unittests.
 </​note>​ </​note>​
  
Line 51: Line 62:
   - Add the [[http://​ocw.cs.pub.ro/​courses/​dss/​laboratoare/​03?&#​safe_functions|@safe]] attribute to the **main** function. What happens?   - Add the [[http://​ocw.cs.pub.ro/​courses/​dss/​laboratoare/​03?&#​safe_functions|@safe]] attribute to the **main** function. What happens?
   - How can we get rid of the error messages?   - How can we get rid of the error messages?
 +
 +==== 5. Function templates ====
 +
 +Write a simple templated function that computes the sum of the elements of an array.
 +Your function should be able to work on any numeric type. This is exactly what we demoed in the presentation.
 +
 +<​note>​
 +If you want to read more about D meta-programming,​ start with this introductory [[https://​ocw.cs.pub.ro/​courses/​dss/​laboratoare/​02|hands-on]].
 +</​note>​
 +
dss/workshop-01.1565783801.txt.gz ยท Last modified: 2019/08/14 14:56 by eduard.staniloiu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0