1 DSLs with Groovy Saager Mhatre. 2 github.com/dexterous code.google.com/u/saager.mhatre...

Preview:

Citation preview

1

DSLs with Groovy

Saager Mhatre

2

github.com/dexterous

code.google.com/u/saager.mhatre

saager.mhatre@gmail.com

thinkaround.blogspot.com

@dexterous

3

4

The basic idea of a

domain specific languageis…

5

…a computer languagethat's targeted to a particular kind of problem,

rather than a general purpose languagethat's aimed at any kind of software problem.

Martin Fowlerhttp://www.martinfowler.com/bliki/DomainSpecificLanguage.html

6

… a computer programming languageof limited expressiveness

focused on a particular domain.Martin Fowler

Domain Specific Languages

7

Chaar Banarasi Masala

Zardaa lagaa ke, Katri supaari

Tamaakhu jyaada, Gulkand kam

8

9

10

http://ant.apache.org/manual/tutorial-HelloWorldWithAnt.html#enhance

11

Excerpted from org.hamcrest.examples.junit4.ExampleWithAssertThat.java

Excerpted from http://code.google.com/p/logicalpractice-collections/wiki/GettingStarted

12

the

popularity of DSLsis a result of…

13

improved

developerproductivity

14

better

domain-expertinteraction

15

16

17

18

19

20

21

22

23

24

25

If a tree falls in a forest and no one is around to hear it, does it make a sound?

26

If a Groovy enthusiast talks DSL in a conference and no one is interested in it,

does it help the software community?

27

28

If a Groovy enthusiast talks DSL in a conference and no one is interested in it,

does it help the software community?

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

github.com/dexterous

code.google.com/u/saager.mhatre

saager.mhatre@gmail.com

thinkaround.blogspot.com

@dexterous

Recommended