Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.mobile.ipad > #46238

Re: Hello World

From DMcCunney <dennis.mccunney@gmail.com>
Newsgroups comp.mobile.android, comp.mobile.ipad
Subject Re: Hello World
Date 2015-03-09 19:28 -0400
Organization A noiseless patient Spider
Message-ID <mdla9p$jeo$1@dont-email.me> (permalink)
References (3 earlier) <080320152152196012%nospam@nospam.invalid> <2b776$54fdb8d8$43da7656$21646@nntpswitch.blueworldhosting.com> <mdklh0$8r7$1@dont-email.me> <mdkqd4$u3s$1@dont-email.me> <090320151507453494%nospam@nospam.invalid>

Cross-posted to 2 groups.

Show all headers | View raw


On 3/9/2015 4:07 PM, nospam wrote:
> In article <mdkqd4$u3s$1@dont-email.me>, DMcCunney
> <dennis.mccunney@gmail.com> wrote:
>
>>> People tell me that C++ is the best general-purpose language.
>>
>> To which others will respond that it's an abomination, and you should
>> use ANSI C.  :-)
>
> nonsense. c++ fixes all the crap that ansi c is.

<blink>  Do remember that the earliest versions of C++ were implemented 
at Bell Labs as cfront, which translated C++ to C, for compilation by 
the Unix C compiler, cc.  Native code compilation came later.

There's still an awful lot of C code in the wild.

>> It largely depends on what you're writing.  If you are writing systems
>> software, you use a language like C/C++ that compiles to native machine
>> code.  If you are writing an application, the equation changes.
>
> no it doesn't.
>
> apps that are native code run faster and give a much better user
> experience.

Native code may be faster, but user experience is based on many things, 
and speed is only one.  From use user's perspective, the question isn't 
"How fast is it", it's "Is it fast *enough?*"  If it is, the speed 
advantage from native code is irrelevant, and the easier development and 
shorter development cycles using something like Java or Python become 
compelling.

>> (And you must be aware of compiler differences.  When Mozilla was
>> creating what became Firefox, they used C++ and wanted portable code.
>> There was an amusing developer's document that had lots of admonitions
>> to the effect of "Just because it works in Microsoft Visual C++, don't
>> assume it works elsewhere."  A particular problem child was the C++
>> compiler shipped with HP-UX.)
>
> microsoft's compiler was not standards compliant.
>
> blame them, not the language.

I blame programmers who weren't versed in the standard, and thought what 
Visual C++ did was the way they all did it.

And even if two products are theoretically standards compliant, you can 
find differences in how they *implement* the standard.  Depending upon 
the standard and how it is written, both may be arguably standards 
compliant yet incompatible.

>> On Android, the development language is Java, as implemented by the
>> Dalvik runtime.
>
> dalvik is what android used to use. it's now art.

Still a Java runtime, but noted.

>> iOS, as mentioned, expects Objective-C or Swift.  On
>> Windows, Linux, or OS/X, you might use Python.
>
> python is not a good choice for apps, except maybe very simple ones.

<giggle>

>> The advantage to Java and Python is that they compile to an intermediate
>> representation targeted at the virtual machine implemented by the
>> language runtime.  It's possible to write and compile Java, for example,
>> on Windows, and run the code on a different platform.  The output from
>> Java compilation is the same regardless of what you compiled it on.  I
>> have IBM's Eclipse IDE written in Java here.  I run the *same* binary on
>> Windows and Linux.
>
> that doesn't work well in practice.

It's not easy to achieve, but *is* achievable.  See my example of 
Eclipse above.  And if you do it, it's a lot faster and simpler to 
develop than writing in something like C++, getting it portable, then 
cross compiling for different architectures.

>> Modern hardware is fast and powerful enough that you can write in
>> something like Python and get good enough performance that you don't
>> *have* to compile to native code.
>
> except that other developers *are* compiling to native code, which
> means their apps will be that much better.

You may picture me rolling on the floor and laughing hysterically.

As an example, an app used daily here is Calibre, from
http://calibre-ebook.com.

Calibre is a "Swiss Army Knife for eBooks", written by an Indian 
developer named Kovid Goyal.  Kovid began writing it while a PhD 
candidate in computer science.  He had a Sony Reader which used a 
proprietary eBook format called BBLF, and the only place you could get 
content for the reader was the Sony Store.  What became Calibre began as 
a tool to get content into the BBLF format so he could read it in his 
device.

It has grown since.  These days the principal use is to create and 
maintain an eBook library, using the public domain SQLite product as the 
underlying DBMS.  You can add books to the library from online or local 
sources, and go out to various sites on the Internet to gather the 
metadata for the book.  Calibre also has comprehensive conversions 
facilities, so if you have, say, an eBook in ePub format, and want to 
read it on a device that uses Amazon's Mobipocket format instead, 
Calibre can convert it for you.  Recent versions are steadily adding 
features to edit ePub files, taking over from the no longer developed 
Sigil program.

It's available for 32 and 64bit Windows, a portable Windows version, 
Linux, and OS/X.  I have it here under Windows and Ubuntu.  Kovid has a 
new point release weekly, fixing bugs and adding features.

(And it has become his job.  It's open source under the GPL, but you can 
donate to him if you're happy, and enough people have been that Kovid 
can develop Calibre full time.)

It's written in Python.

The only other app I am aware of comparable to Calibre is Readerware, 
and *that's* written in *Java*.

There's an awful lot of production code out there in Python, with more 
all the time. As mentioned, modern hardware is fast enough that you 
don't necessarily have to compile to native code to get adequate 
performance.
______
Dennis

Back to comp.mobile.ipad | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-07 12:53 -0600
  Re: Hello World Inge Svensson <ingesvensson@bredband.net> - 2015-03-07 19:58 +0100
  Re: Hello World Doc O'Leary  <droleary@2usenet2014.subsume.com> - 2015-03-08 15:02 +0000
    Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-08 14:51 -0500
      Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-08 20:41 +0000
        Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-08 20:44 +0000
        Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-08 16:51 -0500
          Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-08 16:11 -0500
            Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-08 17:23 -0500
              Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-08 22:51 +0000
                Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-08 22:52 +0000
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-08 21:52 -0500
                Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-09 12:09 +0000
                Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-09 07:52 -0500
                Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-09 13:31 +0000
                Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-09 09:04 -0500
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-09 11:10 -0500
                Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-09 10:14 -0500
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-09 11:26 -0500
                Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-09 17:32 +0000
                Re: Hello World DMcCunney <dennis.mccunney@gmail.com> - 2015-03-09 14:57 -0400
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-09 15:07 -0500
                Re: Hello World Alan Meyer <ameyer2@yahoo.com> - 2015-03-09 16:19 -0400
                Re: Hello World Lewis <g.kreme@gmail.com.dontsendmecopies> - 2015-03-09 22:02 +0000
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-09 22:36 -0400
                Re: Hello World Tony Cito <tonycito@this.is.invalid> - 2015-03-10 13:23 +0000
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-10 19:50 -0400
                Re: Hello World DMcCunney <dennis.mccunney@gmail.com> - 2015-03-09 19:28 -0400
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-10 19:50 -0400
                Re: Hello World DMcCunney <dennis.mccunney@gmail.com> - 2015-03-10 20:58 -0400
                Re: Hello World Alan Meyer <ameyer2@yahoo.com> - 2015-03-10 22:31 -0400
                Re: Hello World Lewis <g.kreme@gmail.com.dontsendmecopies> - 2015-03-09 19:14 +0000
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-09 15:07 -0500
                Re: Hello World Alan Meyer <ameyer2@yahoo.com> - 2015-03-09 13:56 -0400
                Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-09 15:15 -0500
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-09 16:19 -0500
                Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-09 15:25 -0500
                Re: Hello World Nigel Wade <nmw@ion.le.ac.uk> - 2015-03-10 11:23 +0000
                Re: Hello World Alan Meyer <ameyer2@yahoo.com> - 2015-03-09 16:37 -0400
                Re: Hello World Lewis <g.kreme@gmail.com.dontsendmecopies> - 2015-03-09 21:58 +0000
                Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-09 18:09 -0500
                Re: Hello World Lewis <g.kreme@gmail.com.dontsendmecopies> - 2015-03-10 23:43 +0000
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-10 19:50 -0400
                Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-09 15:17 -0500
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-09 16:19 -0500
                Re: Hello World Alan Meyer <ameyer2@yahoo.com> - 2015-03-09 16:27 -0400
                Re: Hello World Nigel Wade <nmw@ion.le.ac.uk> - 2015-03-10 15:18 +0000
                Re: Hello World Your Name <YourName@YourISP.com> - 2015-03-10 13:31 +1300
                Re: Hello World Your Name <YourName@YourISP.com> - 2015-03-10 09:29 +1300
                Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-09 16:29 -0500
                Re: Hello World Your Name <YourName@YourISP.com> - 2015-03-09 13:26 +1300
        Re: Hello World Sunshine <sunshine@my.antispam.invalid> - 2015-03-08 16:08 -0500
          Re: Hello World nospam <nospam@nospam.invalid> - 2015-03-08 17:23 -0500
      Re: Hello World Doc O'Leary  <droleary@2usenet2014.subsume.com> - 2015-03-09 03:26 +0000
  Re: Hello World Lewis <g.kreme@gmail.com.dontsendmecopies> - 2015-03-09 14:20 +0000
    Re: Hello World BugHunter <bughunter@com.invalid> - 2015-03-09 15:42 +0100
      Re: Hello World Lewis <g.kreme@gmail.com.dontsendmecopies> - 2015-03-09 19:05 +0000
    Re: Hello World Michelle Steiner <michelle@michelle.org> - 2015-03-09 08:12 -0700
    Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-09 17:48 +0000
      Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-09 18:30 +0000
        Re: Hello World BugHunter <bughunter@com.invalid> - 2015-03-09 19:35 +0100
      Re: Hello World Lewis <g.kreme@gmail.com.dontsendmecopies> - 2015-03-09 19:11 +0000
        Re: Hello World Ed Cryer <ed@somewhere.in.the.uk> - 2015-03-10 12:16 +0000
      Re: Hello World Your Name <YourName@YourISP.com> - 2015-03-10 09:35 +1300
      Re: Hello World "HankG" <hgxrp@yahoo.com> - 2015-03-11 13:58 -0400

csiph-web