Re: [math-fun] Apple introduces new "swift" programming language
Swift includes an automatic type inferencing system akin to languages like ML & Haskell. This is a good thing, and a very long time coming for a non-research language. It has function closures (yippee), now that Lisp, Scheme & Javascript taught everybody that they needed them, but Swift doesn't use a real tracing garbage collector: it uses reference counts. https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conce... I've advocated reference counts in the past for certain selected applications, but they aren't appropriate for a "general purpose" non-applicative programming language (i.e., one that includes assignment). Every such language eventually had to do a forklift upgrade to install a real tracing garbage collector, because there are just too many memory leaks otherwise. Talk to Microsoft about C# sometime. The biggest problem with both Swift & C# is that they are proprietary. Fewer & fewer engineers want to commit their lives to working for one company, so focussing on either Swift or C# might be a career-limiting move ("CLM" in Microsoft terminology). At 06:59 PM 6/6/2014, Warren D Smith wrote:
* Henry Baker <hbaker1@pipeline.com> [Jun 07. 2014 08:48]:
[...]
The biggest problem with both Swift & C# is that they are proprietary.
For C#, not quite, see http://en.wikipedia.org/wiki/C_Sharp_(programming_language) "...approved as a standard by Ecma (ECMA-334) and ISO (ISO/IEC 23270:2006)." Still...
Fewer & fewer engineers want to commit their lives to working for one company, so focussing on either Swift or C# might be a career-limiting move ("CLM" in Microsoft terminology).
...this is true. Under Linux, you even need Mono for C# (CLI), which no one right in his mind is willing to use. I could not find any information about Swift being standardized (or on its way there). Apple's history regarding the free/open software culture is not exactly helping adoption of Swift.
[...]
Am Fri, 06 Jun 2014 19:24:00 -0700 schrieb Henry Baker <hbaker1@pipeline.com>:
Swift includes an automatic type inferencing system akin to languages like ML & Haskell. This is a good thing, and a very long time coming for a non-research
If you like type inference, you might be interested in Red Hat's Ceylon language http://ceylon-lang.org/ . The type system is rather cool, including intersection and union types. Apparently, the type system is even turing complete! https://github.com/lucaswerkmeister/ceylon-typesystem-turing-complete (I'm not sure what that means for the decidability of type inference, though.) It is not wide-spread, but I don't think it is intended as a research language: You can compile it to run on the Java VM, where it has (in marketing-speak, this would be a case for the word 'leverages') interoperability with existing Java classes. You can also compile it to Javascript to run in a browser.
The biggest problem with both Swift & C# is that they are proprietary.
This is open source: http://ceylon-lang.org/code/licenses/ Greetings, Dirk (who's lurking in the background and enjoying many of the discussions here!)
participants (3)
-
Dirk Lattermann -
Henry Baker -
Joerg Arndt