English 中文(简体)
Enhancements to programming languages that had to be withdrawn after release?
原标题:

Are there examples of significant enhancements to major programming languages that were fully released and then found to be sufficiently flawed that they had to be withdrawn?

UPD @Jeff Foster has an example of a feature that is not consistently implemented and I d take those as answers

UPD There is a grey area between Deprecated and withdrawn. I suspect that there are thousands of Deprecated examples - which can still be used but are not advised. I can conceive that there are features which some creators thought they could implement fully or consistently but actually broke the integrity of the system.

I was particularly looking for enhancements (not original features) as these will have been planned (probably with community involvement) and released after testing, etc.

最佳回答

There don t seem to be any clear examples.

问题回答

C++ has a keyword "export" which very few compilers implement. It s not been withdrawn, but since so few compilers implement it that it is effectively useless. See here for more information.

reduce() in Python has been removed from the global namespace from python 3.0. It can still be found in the functools module though, so I don t know if it really counts. The reasoning behind this is given in GvR s blog entry: http://www.artima.com/weblogs/viewpost.jsp?thread=98196.

Deprecated features in PHP 5.3.x include magic_quotes, register_globals, and these functions are deprecated:

  • call_user_method() (use call_user_func() instead)
  • call_user_method_array() (use call_user_func_array() instead)
  • define_syslog_variables()
  • dl()
  • ereg() (use preg_match() instead)
  • ereg_replace() (use preg_replace() instead)
  • eregi() (use preg_match() with the i modifier instead)
  • eregi_replace() (use preg_replace() with the i modifier instead)
  • set_magic_quotes_runtime() and its alias, magic_quotes_runtime()
  • session_register() (use the $_SESSION superglobal instead)
  • session_unregister() (use the $_SESSION superglobal instead)
  • session_is_registered() (use the $_SESSION superglobal instead)
  • set_socket_blocking() (use stream_set_blocking() instead)
  • split() (use preg_split() instead)
  • spliti() (use preg_split() with the i modifier instead)
  • sql_regcase()
  • mysql_db_query() (use mysql_select_db() and mysql_query() instead)
  • mysql_escape_string() (use mysql_real_escape_string() instead)
  • Passing locale category names as strings is now deprecated. Use the LC_* family of constants instead.
  • The is_dst parameter to mktime(). Use the new timezone handling functions instead.

Even though this is entirely catered toward programming languages it s inevitable to deal with HTML on the web, so I apologize but must mention that..

applet, basefont, center, dir, font, isindex, menu, s, strike, u elements are deprecated in HTML 4.01, most usually in favor of CSS for styling as presentation and structure shouldn t be mixed.

Having spent many years hacking FORTRAN here are some of the delightful constructs removed from F77 (http://en.wikipedia.org/wiki/Fortran#Obsolescence_.26_deletions):

In this revision of the standard, a number of features were removed or altered in a manner that might invalidate previously standard-conforming programs. (Removal was the only allowable alternative to X3J3 at that time, since the concept of "deprecation" was not yet available for ANSI standards.) While most of the 24 items in the conflict list (see Appendix A2 of X3.9-1978) addressed loopholes or pathological cases permitted by the previous standard but rarely used, a small number of specific capabilities were deliberately removed, such as:

* Hollerith constants and Hollerith data, such as:

    `GREET = 12HHELLO THERE!`

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

specification. * Overindexing of array bounds by subscripts.

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

"Extended Range").

Oh the heartbreak of no longer being able to jump into the middle of deeply nested DO loops.





相关问题
XML-RPC Standard and XML Data Type

I was looking at XML-RPC for a project. And correct me if I m wrong, but it seems like XML-RPC has no XML datatype. Are you supposed to pass as a string? or something else? Am I missing something? ...

Is it exists any "rss hosting" with API for creating feeds

I am creating a desktop app that will create some reports. I want to export these reports as RSS or ATOM feeds. I can easily create feeds with Rome lib for Java. But I have no idea how to spread them. ...

Improving Q-Learning

I am currently using Q-Learning to try to teach a bot how to move in a room filled with walls/obstacles. It must start in any place in the room and get to the goal state(this might be, to the tile ...

High-traffic, Highly-secure web API, what language? [closed]

If you were planning on building a high-traffic, very secure site what language would you use? For example, if you were planning on say building an authorize.net-scale site, that had to handle tons ...

Def, Void, Function?

Recently, I ve been learning different programming langages, and come across many different names to initalize a function construct. For instance, ruby and python use the def keyword, and php and ...

热门标签