On 03 Jun 2014, at 6:32 , Camille Teruel <camille.ter...@gmail.com> wrote:

> 
> On 3 juin 2014, at 17:34, Johan Fabry <jfa...@dcc.uchile.cl> wrote:
> 
>> 
>> On Jun 3, 2014, at 4:21 AM, Camille Teruel <camille.ter...@gmail.com> wrote:
>> 
>>>> To what I understand, types are inferred, it is not statically typed. Am I 
>>>> wrong ? 
>>> 
>>> If there is type inference then it is statically typed (at least partially 
>>> if not every variable type can be inferred)
>> 
>> To repeat myself: this is not the case. Example is the RoelTyper.
> 
> Yes, there are many type inferencers for dynamically-typed languages.
> But that's not because one builds a type inferencer for say Smalltalk that I 
> can say "Smalltalk has type inference": the inferencer is not integrated 
> within the language, it's just an analysis tool on top.
> If someone says that his language has type inference, he means that the type 
> inferencer is built into the language, and normally there is some type 
> checking and/or the compiler is designed to leverage type information which 
> means that the language is at least partially statically-typed (if not 
> entirely).
> Because if a language does no type checking nor type-based optimisations, for 
> what purpose would it have type inference built into it?

Inferred types have an often overlooked purpose that, IMHO, in dynamic 
languages, is their biggest benefit. 
That being, it can reduce the number of false positives in common development 
actions such as auto-complete, searching for implementors, etc.

A pharo with built-in type inference would be no better.
A pharo with built-in type inference, and tools utilizing it, would.

It’s a bit of a shame that programmer productivity is a less favourable 
research area than optimization, when in that case, using the much cheaper type 
info from PIC’s instead, yield equivalent results.
(ref. http://www.cs.ucsb.edu/~urs/oocsb/papers/oopsla95-tf.pdf)

Cheers,
Henry

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

Reply via email to