Thread overview
Re: More precise GC
Mar 28, 2010
William T. Fnk
Mar 28, 2010
#ponce
Mar 28, 2010
superdan
March 28, 2010
bearophile Wrote:

> William T. Fnk:
> >This is a rather ridiculous way of emulating algebraic data types<
> 
> I think algebraic data types in Haskell don't allow you to use for example enums with no tags, where the tag is stored in the less significant bit of the pointer that points to the enum.
> And I think algebraic data types will not be added to D, while normal not-GC-precise enums will be kept in D, so...

Why not? Are you scared of the functional language stigma? D is already functional enough. It can't possibly get any worse. I can already write pure functional monads with the ugly D2 closure syntax. The language is already ruined in the eyes of practical imperative coders.

How I see this is that features like algebraic datatypes are questioning the authority. You have a holy mission to prove that a practical language can be built without such basic features. It indeed can be built, but you need ways to emulate the behavior since it is pretty crucial and common in practical applications. You already emulate it in your code example. And it looks bad.

The problem is two-fold, there are newbie users in the community who have no idea what an algebraic data type is. And then there are some more or less arrogant (actually there's only one person whose arrogance exceeds anything I've ever seen) language designers who recently studied the algebraic datatype article from wikipedia. They just don't want to admit they didn't know it before. And it's getting harder and harder to admit that mistake.

> 
> 
> >and value-oriented programming.<
> 
> I don't know what this is.

You need to study more SPJ videos, slides & articles..

> 
> Bye,
> bearophile

March 28, 2010
> The problem is two-fold, there are newbie users in the community who have no idea what an algebraic data type is. And then there are some more or less arrogant (actually there's only one person whose arrogance exceeds anything I've ever seen) language designers who recently studied the algebraic datatype article from wikipedia. They just don't want to admit they didn't know it before. And it's getting harder and harder to admit that mistake.
> 

How do I emulate untagged unions with an algebraic datatype ? Please enlighten me.
March 28, 2010
William T. Fnk Wrote:

> bearophile Wrote:
> 
> > William T. Fnk:
> > >This is a rather ridiculous way of emulating algebraic data types<
> > 
> > I think algebraic data types in Haskell don't allow you to use for example enums with no tags, where the tag is stored in the less significant bit of the pointer that points to the enum.
> > And I think algebraic data types will not be added to D, while normal not-GC-precise enums will be kept in D, so...
> 
> Why not? Are you scared of the functional language stigma? D is already functional enough. It can't possibly get any worse. I can already write pure functional monads with the ugly D2 closure syntax. The language is already ruined in the eyes of practical imperative coders.
> 
> How I see this is that features like algebraic datatypes are questioning the authority. You have a holy mission to prove that a practical language can be built without such basic features. It indeed can be built, but you need ways to emulate the behavior since it is pretty crucial and common in practical applications. You already emulate it in your code example. And it looks bad.
> 
> The problem is two-fold, there are newbie users in the community who have no idea what an algebraic data type is. And then there are some more or less arrogant (actually there's only one person whose arrogance exceeds anything I've ever seen) language designers who recently studied the algebraic datatype article from wikipedia. They just don't want to admit they didn't know it before. And it's getting harder and harder to admit that mistake.

wut's yer point bitch? say it who it is mo'fucker so the nigga can defend his ass. dun fuck around with vague shit like that.

geez this group is fucked. sum1 opened them dog pound gatez.