I posted the same Q at programmers.SE, but nobody really helps.

In the paper “An Extended Comparative Study of Language Support for Generic Programming” by Garcia et al. an interesting comparison of programming languages features for generic programming is given:

table with comparison of GP-features

with the brief explanation of terminology:

legend for the table

Can anyone assess Scala programming language support for generic programming in a view of this framework? I.e. add a column in the first table with explanations and examples if possible.

  • 1
    $\begingroup$ Please do not post text as an image. Is that paper available online? If so, please link to it, and copy-paste the citation instead of posting a screenshot. $\endgroup$ – Gilles 'SO- stop being evil' Nov 25 '12 at 19:25
  • $\begingroup$ It is quite hard to copy-paste the table, I guess. I added link to the paper. $\endgroup$ – Artem Pelenitsyn Nov 25 '12 at 19:45
  • $\begingroup$ I'm not sure about the 3rd and 4th ones – not sure what they mean –, but I'm pretty sure that Scala supports the rest. $\endgroup$ – Dave Clarke Nov 25 '12 at 21:26
  • $\begingroup$ I have my doubts that this is ontopic here; curious that programmers.SE should fail on this one. Anyways, it would be nice it you'd put the caption of the first image and the second image here as text (maybe as list). The table itself is all but impossible to recreate here, true. $\endgroup$ – Raphael Nov 26 '12 at 0:47
  • $\begingroup$ This comparison bothers me. Taking C# as an example: it does have aliases and it automatically detects the type of parameters used in generic stuff when possible. Also, "multi-type concepts" it's not even a thing outside this paper and it is not even properly defined. Really, the poor quality of this paper is borderline offensive. It is one more of those things created to promote Haskell, and nothing else. $\endgroup$ – T. Sar May 5 '16 at 16:50

Exact answer is given on p. 17 of “Type classes as Objects and Implicits” by Oliveira et al.

| cite | improve this answer | |
  • $\begingroup$ The reference comes from Twitter after the link to this question trickled there. Thanks to Miles Sabin (@milessabin on Twitter) and Alexey Romanov. $\endgroup$ – Artem Pelenitsyn Nov 26 '12 at 6:31
  • 2
    $\begingroup$ This post can be improved by making it an actual answer, i.e. quoting the relevant statements. $\endgroup$ – Raphael Feb 23 '16 at 11:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.