I think that's part of the problem, I'm coming from many other languages
Of which, most are failures themselves (for many various reasons) according to the TIOBE ranking trend, as compared to Swift's climb.
I think that's part of the problem, I'm coming from many other languages
Their time has come and gone, popularity doesn't equal quality.Of which, most are failures themselves (for many various reasons) according to the TIOBE ranking trend, as compared to Swift's climb.
So named parameters will make software more reliable? I wonder if most operating systems or the web is written with named parameters. At this point, I thing most software in the world is still written in some version of C or some old language and still works. Suggesting that labeling parameters makes more reliable software says more about the programmers than it does the programming language.Perhaps the business perspective was to allow development of more reliable software. That was the big sell when they released Swift. Early adopters I know were sold on that, so I'd say it hit the mark.
"Code has to be written in a way that it *can* be modified in the future.
Something that I'd expect any professional developer to know."
So named parameters will make software more reliable? I wonder if most operating systems or the web is written with named parameters.
Their time has come and gone, popularity doesn't equal quality.
Would those be more reliable if they used named parameters or the "inout" identifier?Most operating systems are not reliable. Just look at the change notes for almost any Linux, iOS and OS X version. Expect more of the same in the future.
Would we have more bike riders if all bike were required to have training wheels?
...
I don't mind that some use whatever tools they use to do whatever they want. I do mind when people are forced to use something because others don't like or want what's currently or could be offered.
Modern programming practices are more like helmets and gloves than training wheels. Some states do require helmets, even for riders who don't fall (yet?).
Apple does not force the use of either Swift or Objective C for iOS or OS X apps. Code in arm64/x86-64 asm if you want... but I would not try to interview for most iOS app dev positions if that's your only skill.
It's as if every city had it's own traffic rules where some say stop on green and other say stop on red.
Think how much easier things would be if all the cars had steering wheels on the same side and all the signs/laws/etc... were universal.It is. Different countries use very different sounding words with different numbers of letters and/or syllables for "stop", "red" and "green". In some countries any traffic signs and lights seem to just for decoration, as the drivers just ignore them.
TBH, I'm not exactly a fan of ObjC either. I still don't understand why all these languages can agree on a common verb for looping or structure for a selection block, heck they can't even agree on fall thru after something is selected.
Every new programming language is an evolution process, each new language tries to solve problems of existing languages, or introduce new languages features for easier development ( not for 'training wheels' as you so suggest ) . So no - in short - languages will not be 100% consistent across the board.
Java, Python, Pascal et al are based upon the *syntax* from Algol.. hence they are named AlgolFamily. There are similarities as you suggest otherwise. I.e., For loops will look familiar across all these languages.
Other languages such as Hascal do not belong to this group so look very different. Programming languages serve different purposes.
Cobol was designed in the 50s, Pascal in the 1960s. Java 90s.. Swift in the past several years - I picked these because in a previous post you've mentioned that you've used each of them.
Would be dumb to be repeating same mistakes of a 1950s language in 2010, wouldn't it? Or repeat the same deficits as Java in Swift? No?
So - there will never be 'agreements' as you would like....
I still don't understand why all these languages can agree on a common verb for ...
I've heard that pilots all speak English, I've always wondered, don't all people that use a given programming write the same code?Funny. My Latin teacher said something very similar about every modern language. Let's all just learn Latin. (But the Chinese, among others, would disagree I suppose...).
So named parameters will make software more reliable? I wonder if most operating systems or the web is written with named parameters. At this point, I thing most software in the world is still written in some version of C or some old language and still works. Suggesting that labeling parameters makes more reliable software says more about the programmers than it does the programming language.
I have no doubt that there is more to Swift than named parameters. I also pointed out "inout" and return value at the end of the function. I haven't mastered the language yet but I've seen the use of ? and ! and unrolling and don't know what those are yet.There is more to Swift than named parameters.
Maybe because you don't fully understand swift yet?<snip>
I haven't mastered the language yet
<snip>
Someone pointed out in another thread some Swift code that was doing something more complex, and it was dam hard to read. It looks more like Apple wants their developers to stay their developers.
What standards would those be? Sure there are commonalities between languages, but standards? Examples would be nice.One problem I see is that the end user doesn't see the code. They just use the app. Having to re-code for different platforms and learn a language that doesn't follow standards of any other language doesn't seem to help.
Java and the web was supposed to move towards make code work with different devices, now this seems to break away from the ability to use knowledge and routines already proven to work.
Same for Microsoft ( C# et al ) and Google etc. Apple are being consistent.Looks like Apple really wants to set themselves apart and create their own ecosystem in every way they can.
Maybe because you don't fully understand swift yet?
What standards would those be? Sure there are commonalities between languages, but standards? Examples would be nice.
That is for server side software, things aren't so easy on the desktop side. Generally, Java desktop GUIs aren't as nice as native GUIs.. it can be done.. but takes more effort for the polish.
Same for Microsoft ( C# et al ) and Google etc. Apple are being consistent.
Like I mentioned above : much easier to write server side software in one language, and have it run on multiple O/Ses ( i.e, Linux, Winows, OSX, Solaris ) than desktop. Such languages, but not limited to, would be Java, Scala, Python, Ruby...
The standards seem to have been tossed out the window a while back. IIRC, C/c++ was setting standards and then MS and others seemed to toss things out the windows years ago with things like C#.
I was never much of a fan of server side GUIs, and native is usually better.
Users also prefer native and it can also give an edge to developers that take advantage of unique offerings of each device. That's one of the reasons I stay away from scripting, runtime universal solutions.
Here's the list of standards. AFAIK, ANSI and maybe others agree on standards for both C and C++. This allows someone to use a compiler on different systems and use the standard code base.
Isn't the web a server side GUI? The browser works like a dump terminal in that the code telling it what to do is on a server.
As far as runtime universal solutions, I'm against runtime solutions like Java vs compiled native code which is faster and more secure, although it can still have a robust runtime that can be called on and resolved at runtime like the ObjC runtime.
Here's the list of standards. AFAIK, ANSI and maybe others agree on standards for both C and C++. This allows someone to use a compiler on different systems and use the standard code base.