DEV Community

SimpleGeek
SimpleGeek

Posted on

What should a programming language do "out of the box"?

It seems to require a lot of boilerplate in most mature programming languages to accomplish things that we do frequently. For instance: database access, making RESTful web service calls, receiving RESTful web service calls, file IO (especially with commonly-used formats such as CSV), and GUI work. Alternatively, you can usually find a third party library/framework that provides a decent implementation, but the ability is rarely built into the standard library.

What are your thoughts? (Also curious if someone has counter-examples of languages that implement common tasks in the standard library.)

Top comments (7)

Collapse
 
eljayadobe profile image
Eljay-Adobe

Some do the minimum, like Lua. Some try to do everything, like Python.

Both Lua and Python are successful, and both fulfill different needs.

Programming languages are tools. Some are more suitable for certain problem domains.

So to me, the question needs to be in the context of what problem is trying to be solved, and then consider which programming language(s) are best suited to tackle that problem.

Collapse
 
simplegeek profile image
SimpleGeek

Good point. Without a defined problem domain, a language can easily grow into a beast that doesn't handle anything well.

Collapse
 
jessekphillips profile image
Jesse Phillips

This is a hard one. Having all the tools in the standard library is nice because you have it when you have the language. But building out such a library is hard and generally there is many approaches that might be desired. Not to mention the ever growing new thing that should get added.

This leads me to the idea the standard libraries should allow for better standards across 3rd party libraries.

Standard set of Exception types. Standard containers. Standard attributes.

github.com/JesseKPhillips/DIPs/blo...

Collapse
 
winstonpuckett profile image
Winston Puckett
  • String interpolation
  • Generics
  • Complex data structures
  • Inferred type
  • Array methods (map, filter, sort, etc)

Or... That's just my favorite features of any language

Collapse
 
shadowtime2000 profile image
shadowtime2000

Array helpers, object helpers, simple GUI, IO, web server, and calling web servers.

Collapse
 
simplegeek profile image
SimpleGeek

100% agree. Array helpers are vital.

Collapse
 
ivan_jrmc profile image
Ivan Jeremic

GUI