Melhorias para línguas que tiveram que ser retiradas após o lançamento de programação?

StackOverflow https://stackoverflow.com/questions/1812393

  •  06-07-2019
  •  | 
  •  

Pergunta

Existem exemplos de melhorias significativas para as principais linguagens de programação que foram totalmente liberados e, em seguida, considerado suficientemente falho que tiveram que ser retiradas?

UPD @ Jeff Foster tem um exemplo de um recurso que não está implementada de forma consistente e eu ia levá-las como respostas

UPD Há uma área de cinzento entre Reprovado e retirado. Eu suspeito que há milhares de exemplos Reprovados - que ainda podem ser usados, mas não são aconselhados. Não posso conceber que existem características que alguns criadores pensavam que podiam aplicar integralmente ou de forma consistente, mas realmente quebrou a integridade do sistema.

Eu estava particularmente procurando melhorias (não características originais) como estas terão sido planeados (provavelmente com o envolvimento da comunidade) e liberados após o teste, etc.

Foi útil?

Solução 6

Há não parece haver qualquer exemplos claros.

Outras dicas

C ++ tem uma palavra-chave "exportação" que muito poucos compiladores implementar. Não foi retirado, mas desde que tão poucos compiladores implementá-lo de que é efetivamente inútil. Consulte aqui para mais informações.

reduce() em Python foi removido do espaço global de python 3.0. Ele ainda pode ser encontrada nas functools módulo, então eu não sei se ele realmente conta. O raciocínio por trás disso é dada na entrada do blog do GvR: http://www.artima.com/weblogs/viewpost.jsp?thread=98196 .

Recursos Reprovados no PHP 5.3.x incluem magic_quotes, register_globals, e estas funções estão obsoletos:

  • call_user_method () (uso call_user_func () em vez)
  • call_user_method_array () (uso call_user_func_array () em vez)
  • define_syslog_variables ()
  • dl ()
  • ereg () (uso preg_match () em vez)
  • ereg_replace () (uso preg_replace () em vez)
  • eregi () (uso preg_match () com o 'i' modificador vez)
  • eregi_replace () (uso preg_replace () com o 'i' modificador vez)
  • set_magic_quotes_runtime () e seu alias, magic_quotes_runtime ()
  • session_register () (usar o $ _SESSION superglobal vez)
  • session_unregister () (usar o $ _SESSION superglobal vez)
  • session_is_registered () (usar o $ _SESSION superglobal vez)
  • set_socket_blocking () (uso stream_set_blocking () em vez)
  • split () (uso preg_split () em vez)
  • split () (uso preg_split () com o 'i' modificador vez)
  • sql_regcase ()
  • mysql_db_query () (uso mysql_select_db () e mysql_query () em vez)
  • mysql_escape_string () (uso mysql_real_escape_string () em vez)
  • Passando nomes das categorias de locale como strings, é considerada obsoleta. Use o LC_ * família de constantes em seu lugar.
  • O parâmetro is_dst para mktime (). Use o novo fuso horário manipulação funções em seu lugar.

Mesmo que este é totalmente servidos em direção línguas é inevitável para lidar com HTML na web programação, por isso peço desculpas, mas deve mencionar que ..

elementos applet, basefont, center, dir, font, isindex, menu, s, strike, u são preteridos em HTML 4.01, a maioria geralmente em favor da CSS para denominar como apresentação ea estrutura não devem ser misturados.

Depois de ter passado muitos anos hackers Fortran aqui estão algumas das construções deliciosas removidos do F77 ( http://en.wikipedia.org/wiki/Fortran#Obsolescence_.26_deletions ):

Nesta revisão da norma, uma número de características foram removidos ou modificado de uma maneira que poder invalidar anteriormente padrão-conformando programas. (Remoção foi a única alternativa ao admissível X3J3 naquele tempo, já que o conceito de "depreciação" ainda não estava disponível para os padrões ANSI.) Enquanto a maioria da 24 itens na lista de conflito (ver Apêndice A2 de X3.9-1978) dirigida lacunas ou casos patológicos permitido pelo padrão anterior, mas raramente usado, um pequeno número de capacidades específicas foram deliberadamente removido, tais como:

* Hollerith constants and Hollerith data, such as:

    `GREET = 12HHELLO THERE!`

* Reading into a H edit (Hollerith field) descriptor in a FORMAT

especificação. * Overindexing de limites de matriz por subscritos.

    DIMENSION A(10,5)
>         Y= A(11,1)
* Transfer of control into the range of a DO loop (also known as

"Extended Range").

Oh o desgosto de não ser capaz de saltar para o meio de loops DO profundamente aninhados.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top