4 ms·
> the only point directly related to that is that go has a short list of reserved words (which is true of most languages). The number of keywords of a language
by hota_mazi 9y ago
> the only point directly related to that is that go has a short list of reserved words (which is true of most languages).
The number of keywords of a language is completely unrelated to its complexity (see Brainfuck or Lisp).
- majewsky 9y agoOn the other hand, see ABAP. https://www.slideshare.net/PrakashThirumoorthy/complete-list-of-all-sap-abap-keywords https://www.slideshare.net/PrakashThirumoorthy/complete-list...
- jasode 9y agoSAP ABAP syntax includes: + database retrieval and manipulation as a 1st class concept. ABAP doesn't require a 3rd-party ORM and therefore, SQL statements are 1st class syntax. + GUI capabilities as 1st class syntax (user interface elements for forms, lists, grids, visual reports, etc) Golang core doesn't have those, so it understandably doesn't need extra official keywords to address that functionality. SAP ABAP has more keywords that's typical for a 4GL type of language. Like other business-domain 4GLs, the complexity isn't the language syntax -- it's navigating the gigantic data model to find where important information lives. (e.g. Out of 10,000 tables, where does the sales invoice live? If an invoice is paid, where is that status field? And to make it harder, many of the database column names are German instead of English ... like AUGRU[1] for "auftrag grund" instead of English "OREASON" for "order reason".) If Golang language spec was revised to include a 1st-class ORM and GUI & report builder into its core syntax, it would be a more apples-to-apples comparison. Golang can have less keywords, because it has less features. [1] http://www.se80.co.uk/saptables/v/vbak/vbak.htm http://www.se80.co.uk/saptables/v/vbak/vbak.htm
- Merovius 9y ago> Golang can have less keywords, because it has less features. So, you are saying… because it's less complex?
- jasode 9y agoNo. I don't think Golang is "less complex" because it has less features than ABAP _if_ you plan to use Golang to write GUI applications that interact with databases to track enterprise data of sales, purchase orders, manufacturing, inventory control etc. "Complexity" is not a useful label unless you look at what you're actually building: - If the goal is to show "hello world", yes Golang is "simpler". - If the goal is an ERP system, Golang is way more "complex". Between those 2 extremes requires analysis on a case-by-case basis.
- snuxoll 9y agoThis is the same reason I rolled out Salesforce for a couple workflow apps for a few teams in our company. I could bootstrap a .Net/Java/whatever app to do the same thing, but our team is swamped with a backlog years long - I could only afford a couple days to develop and release this so a dozen Force.com licenses ended up saving tons on development and ongoing maintenance costs.