I was looking into xcode 6 last night, the bit about being a paid-up developer is right, but apparently only while it's in beta.
So Kevin, are you the English guy with the strong regional accent on the roundups? I can't remember which accent, Newcastle or Cornwall or something. On Wed, Jun 11, 2014 at 3:12 PM, Kevin Wright <[email protected]> wrote: > Yes. Exactly what Jess said! > > With the best will in the world, I'd never even consider writing e.g. a > device driver in Scala. Nor code for an embedded device with tightly > constrained resources. > > C is small, well-defined, and can produce some incredibly tiny > executables. It focuses tightly on what it does well. > > I also like Go for systems work, and Rust - or at least I would if it > settled down a bit more. > > > > Swift is the opposite. It's very much an applications language. We > played with it at the Posse roundup today :) > > In many ways, it really does look too much like Scala to be mere > coincidence. We also discovered that: > - The Xcode beta is a *big* download, took us almost an hour > - You must be a paid-up Apple dev to get it > - The lack of flatMap on arrays and Optional is a gross oversight > - We couldn't implement flatMap ourselves either, as it seems you can > extend an Array, but we couldn't find a way to get at the generic type > information > - There's no way to catch exceptions > > Overall, it felt (to me) very much like a work-in-progress. > > > > On 11 June 2014 21:29, Jess Holle <[email protected]> wrote: > >> C is essentially the recognized, practical "high-level portable >> assembler" language. It's the closest thing to assembler that allows >> production of portable source code that has been proven to work for >> developing a huge range of software (drivers, operating systems, embedded >> control, servers, desktop applications, etc...) for a huge range of >> hardware and operating systems. >> >> C is essentially never "too big" or "too slow". Combined with its huge >> mindshare it seems almost permanently ensconced as the "almost bare metal" >> tool. Sure something will likely dethrone it someday -- but I'd not bet on >> that day being soon. >> >> On the other hand, is C truly a high enough language for *effective >> *development >> of some of the world's biggest applications? Not really. Is it really the >> most effective tool for developing smaller applications that don't really >> have to be "to the metal"? Arguably not. As such C will frequently be >> passed over for many of these sorts of projects (at the very least by C++, >> but often by Java, C#, and a long list of languages). >> >> -- >> Jess Holle >> >> >> On 6/11/2014 2:28 PM, clay wrote: >> >> Your reasons for preferring C are stability and long term longevity? >> >> Are those factors really that important? If a language only lasts 40 >> years rather than 100 or 1000 years, do you actually care? Like in a >> roaches will outlast human kind sort of way? Is stability the big thing >> holding you back from Java or C#? For all the legitimate gripes about >> Java/C#, basic stability and compiler crashes generally are not among them. >> >> Secondly, that isn't consistent with your preference of Scala on the >> JVM and Idris off the JVM. I find it hard to believe that Scala+Idris have >> better stability than Java and will be around longer than Java. I prefer >> Scala over Java for the advanced elegance, conciseness, and expression, but >> IMO, Scala has been a buggier language than Java, it's less serious about >> backward compatibility, and it probably won't last as many decades into the >> future as a legacy technology as Java will. >> >> Other tools might not have "the VM cost", but they all have some >> performance profile that can be quantified and logically compared. Java >> often does fairly well in those tests. >> >> >> On Wednesday, June 11, 2014 11:41:38 AM UTC-5, Ricky Clarkson wrote: >>> >>> I'm not saying I agree, but there are reasons. C works. You aren't >>> going to get a compiler segfault, then discover a debugger bug while trying >>> to debug the compiler, then fix that only to find that your build tool >>> doesn't work when your path contains spaces, and then find that you can't >>> read MP3 files without an extra library that hasn't been maintained since >>> the big bang, etc. If you need to write your own C compiler for any >>> reason, nobody is going to sue you. >>> >>> C will still exist when Objective-C, PHP, ASP, VB, Perl, Python, Ruby >>> and probably C# and Java, have all bitten the dust, because it *actually* >>> works everywhere and is kind of a base on which pretty much everything else >>> can be built without incurring 'the VM cost', however imaginary or real >>> that cost may be. >>> >>> It's also almost one of *the* bases, barring the 100s of special cases >>> it is a really simple language, kind of fundamental the same way Scheme, >>> Smalltalk and Forth are (i.e., hard to reduce further without losing real >>> capability). >>> >>> >>> On Wed, Jun 11, 2014 at 7:45 AM, clay <[email protected]> wrote: >>> >>>> >>>> On Friday, June 6, 2014 12:31:34 PM UTC-5, KWright wrote: >>>>> >>>>> Nope! >>>>> >>>>> C or Idris, I'll also accept Assembler. >>>>> >>>>> and Scala's the least bad you can get if otherwise tied to the JVM. >>>>> :) >>>>> >>>> >>>> I completely understand why you prefer Idris/Haskell over Scala and >>>> Scala over Java. >>>> >>>> But why on Earth would you also prefer C? That seems to go the >>>> opposite direction and be a big step down from Java? >>>> >>>> All the things Scala fixes from Java are broken in C as well: if >>>> expressions, for/monad comprehensions, focus on immutability, pervasive >>>> type inference, cleaned up generics, array syntax that is unified with >>>> generics (Array[Type] rather than Type[]), language level currying and >>>> partial functions, overridable var/val and ideal property system, singleton >>>> objects instead of static. >>>> >>>> And C/C++ is worse than Java: #define/#include, header files, >>>> __declspec, library dependency system is a wreck, ABI issues across >>>> binaries, hairy legacy issues that are far worse than Java, wildly varying >>>> implementations of the "standard", super complex networking/threading/file >>>> apis that make the Java standard library a work of art. Did you ever use >>>> COM/ActiveX? Have you ever worked with international strings in C? It's a >>>> major pain, it's wildly non-standard between different compiler vendors, >>>> and makes every other language ridiculously elegant in comparison. >>>> >>>> Programmers often hate the tool they use for work, because they have >>>> to deal with lots of legacy code and annoying coworkers with conflicting >>>> styles. When they use another language/tool on the side, they can do >>>> everything exactly how they want, so the other tool seems better. If you >>>> had to deal with large amounts of typical legacy business C code, I expect >>>> you would appreciate Java a lot more. And if you used Idris for work with >>>> tons of legacy code and annoying coworkers, it would be better because >>>> Idris/Haskell are so strict about enforcing certain conventions, but it >>>> still wouldn't be ideal. >>>> >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Java Posse" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> To post to this group, send email to [email protected]. >>>> Visit this group at http://groups.google.com/group/javaposse. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> -- >> You received this message because you are subscribed to the Google Groups >> "Java Posse" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/javaposse. >> For more options, visit https://groups.google.com/d/optout. >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Java Posse" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/javaposse. >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > Kevin Wright > mail: [email protected] > gtalk / msn : [email protected] > quora: http://www.quora.com/Kevin-Wright > google+: http://gplus.to/thecoda > <[email protected]> > twitter: @thecoda > vibe / skype: kev.lee.wright > steam: kev_lee_wright > > "My point today is that, if we wish to count lines of code, we should not > regard them as "lines produced" but as "lines spent": the current > conventional wisdom is so foolish as to book that count on the wrong side > of the ledger" ~ Dijkstra > > -- > You received this message because you are subscribed to the Google Groups > "Java Posse" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/javaposse. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Java Posse" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/javaposse. For more options, visit https://groups.google.com/d/optout.
