Summary: some advise
           Product: D
           Version: D2
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: DMD

--- Comment #0 from galaxylang <> 2010-10-23 18:55:56 PDT 
I am from china and poor of english,i am sorry you may can't
understand what i am meaning.
Recently,i am study a lite about haskell,so i think now D's
template is some like a functional program evolution form c++.
because i find some restrict,i think it's still in a low-level
for we still think it in a c++ way.Should we drop more from c++,
then go into a high-level template program?

now i want to point out what i found which is can't tolerance and some 
i think should be work out.

this code don't work because the name query somelike  not a bidirection
way,[alias ReturnType!(T) Out],can't resolve the opCall

class monad(alias T)
    alias ReturnType!(T) Out;//*****


class    maybe(T):monad!(maybe!T)
    auto    opCall(maybe!T)
        alias maybe!long R;
        return R.init;
there is another sample:
struct B(T)
alias B!(C) BC;//identifier 'C' is not defined!
alias B!int C;

add parital template feature
struct P(A...)
alias  P!int P1;
P1 p1;//instance of P!int
alias P1!long P2;
P2 p2;//intance of P!(int,long)

this feature will make D has the power to write a template functional
library,and change D into a high-levle program language.

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to