[Seaside] Dynamic typing in smalltalk

Alexandre BP abalonpe at ulb.ac.be
Fri Oct 29 18:23:14 UTC 2010


thanks for your time,Your second solution seems very nice I'll try it as soon as possible.
The second one however forces me to have a big list of loops that look like '(selectedType = 'Book') ifTrue: [var := PaperBibliArticle new]. ' which is neither clean nor evolutive.I wanted to do something like:
 dynamicTyping := ('PaperBibli', selectedType, ' new') asSymbol.bibEntry := PaperBibli perform: dynamicTyping.
OR
 dynamicTyping := ('PaperBibli', selectedType) asSymbol.bibEntry := PaperBibli perform: dynamicTyping new.
--> it doesn't work unfortunately ...
OR:
As in JAVA:
PaperBibli bibEntry;
(when I need it)bibEntry = new PaperBibliArticle;
Anyway I'll try the second solution which is more elegant.thank you very muchalex

 
> Date: Fri, 29 Oct 2010 13:56:14 -0300
> From: andres at lifia.info.unlp.edu.ar
> To: seaside at lists.squeakfoundation.org
> Subject: Re: [Seaside] Dynamic typing in smalltalk
> 
> Hi Alexandre,
> 			I guess you could try two approaches:
> 
> 1. Just list the classes in a select, so that the first step is choosing 
> the entry. Once you have this you just create the appropriate class.
> 
> 2. Decouple the type of the object from the object itself (check also 
> http://www.ksc.com/article3.htm). Thus PaperBibli would know an object 
> (lets say PaperType) whose subclasses would be Book, Article, etc. When 
> the user selects the type he wants you just set the object's type. The 
> type class is the one that holds the type-specific information.
> 
> HTH,
>          Andrés
> 
> Alexandre BP escribió:
> > thank you for your replyI have a class named "PaperBibli" which keeps a list of bibliographic entries.Those entries are of different type: Article, Book, Conference,...Every type has its own fields such as: author,title,...
> >  --> I created SubClasses of "PaperBibli" for each type so that when I instanciate an bibliographic entry I don't have lots of variables(fields) which are empty because not required in a particular type.The problem is that when I instanciate my bibliographic entry I still don't know of which type it is because the user tell me so by choosing in a scroll list.
> > I hope that my explanation is clear
> > 
> > 
> > 
> > Date: Fri, 29 Oct 2010 12:24:22 -0400
> > Subject: Re: [Seaside] Dynamic typing in smalltalk
> > From: sean at monkeysnatchbanana.com
> > To: seaside at lists.squeakfoundation.org
> > 
> > There are types in smalltalk. Each object has a type.
> > That aside, what are you trying to accomplish with your example below?
> > 
> > On Fri, Oct 29, 2010 at 12:13 PM, Alexandre BP <abalonpe at ulb.ac.be> wrote:
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > Hello,
> > I would like to know if it is possible to apply dynamic typing in smalltalk. For example, If I want to use polymorphism, it would be:	
> >       var := Class new.	var := (SubClass1) message. 	var := (SubClass2) message.
> > 
> > Where message from SubClass1 is different then the one from SubClass2.Is there any solution for my problem? I know that there is no type in smalltalk but there is definitely a way to use polymorphism right?
> > 
> > Thank you in advance,Regardsalex 		 	   		  
> > 
> > _______________________________________________
> > 
> > seaside mailing list
> > 
> > seaside at lists.squeakfoundation.org
> > 
> > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
> > 
> > 
> > 
> > 
> > 
> > _______________________________________________
> > seaside mailing list
> > seaside at lists.squeakfoundation.org
> > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside 		 	   		  
> > 
> > 
> > ------------------------------------------------------------------------
> > 
> > _______________________________________________
> > seaside mailing list
> > seaside at lists.squeakfoundation.org
> > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20101029/2734974d/attachment-0001.htm


More information about the seaside mailing list