comp.lang.ada
 help / color / mirror / Atom feed
From: Ludovic Brenta <ludovic@ludovic-brenta.org>
Subject: Re: Generating PDFs with Ada
Date: Tue, 11 Jan 2011 23:14:12 +0100
Date: 2011-01-11T23:14:12+01:00	[thread overview]
Message-ID: <87lj2rgkaz.fsf@ludovic-brenta.org> (raw)
In-Reply-To: bb7b70af-9646-4486-92db-f969eaca5454@i17g2000vbq.googlegroups.com

Adam Beneschan writes on comp.lang.ada:
> There are a lot of Windows users out there.  There are Ada compilers
> targeted to Windows (or do you object to that?).  Many of those
> Windows users use tools like Microsoft Office.  Do you believe that
> the Ada community should tell them, "Sorry, those tools aren't based
> on ISO standards, so Ada isn't for you"?

No, I think we should tell them "tools should generate PDF or
OpenDocument, not a proprietary format"; this is true whatever language
the tools are written in.

BTW, I object to the use of Microsoft Word or any word processor for
professional documents in the first place.  Professional document
management requires:

* separation of form from content (documents should not contain the
  definition of styles; they should point to shared style sheets).

* compatibility with multiple (current and future) professional version
  control systems providing the ability to branch, merge and tag
  versioned documents and versioned style sheets by multiple people at
  the same time; the only format which in my experience has this
  property is Plain Text, possibly with markup!

* compatibility with multiple (current and future) editors and viewers
  on multiple (current and future) platforms; think of legal
  requirements that documents be readable 100 years from now, and the
  fact that the only extant documents that have proven to have this
  property are on paper, parchment or papyrus.

* compatibility with search and indexing software.

* compatibility with cryptographic signatures, for authentication of
  documents

* compatibility with multiple encryption algorithms, current and future,
  for secrecy.

> I thought we were trying to encourage the spread of the Ada language.

The only correlation between Ada and PDF is that both are ISO standards
and that being an ISO standard is a Good Thing(tm); other than that the
case against proprietary formats is independent on the implementation
language of tools.

> And I'm sure there are other tools out there (besides MS Office) that
> generate .doc files.

Apart from Microsoft's own, I can't think of any such tool.  Then again,
I don't use office software much, I don't use Windows, and I would
certainly not use, much less buy, a tool that locks my data into a
proprietary format like .doc.  Maybe that's because I'm a software
engineer and not a lemming :)

> Do we intend to tell those tools' authors, "Ada would be a great
> language for writing your tool--it would make your tool more robust
> and easier to maintain--but we don't want you to use it because you're
> generating something that has a proprietary format, so please use C++
> instead"?  Why???

Ah, but I don't think C++ would make it any easier for them to generate
.doc files than Ada would.  Quite the contrary, in fact :)

> As for Microsoft using a "non-standard, proprietary and ever-changing
> format", there seems to be some format information available at
>
> http://www.microsoft.com/interop/docs/officebinaryformats.mspx

OK.

> How often this changes, I don't know, but they do have an interest in
> keeping things compatible,

This is only half true.  Their interest is to make their software
backward compatible (to ease migration to newer versions of their
software) but forward incompatible (to *force* migration to newer
versions of their software, aka planned obsolescence, and break
competitors' tools, aka total dominance).  The only reason why they have
published some specifications (the "Microsoft Open Specification
Promise") is because "open" has become a buzzword and they want to be
"buzzword compliant" and combat the rise of actual open standards.
Remember: standards exist to protect customers against greedy vendors,
not the opposite.  Me, I'll choose a Standard over a Promise every time.

> so something written according to this format would (I would think)
> work with any version of Microsoft Word for a number of years, at
> least, even if the format specification doesn't include all the latest
> features.  (I notice that it's a specification for .doc files but
> there may not a public one for .docx).  Still, I think that, at least
> hypothetically, this format information could be used to write a
> useful tool that generates a Word file, if one decided that it was
> necessary.

Technically, this is true; but generating PDF or OpenDocument is a
better alternative, and not more difficult than generating .doc. (BTW,
.doc is not a single format, it is a series of incompatible formats
dating back to circa 1989, only the last of which has been published).

> It may be that the need for writing a Word document is small enough
> that nobody has considered it worth their while to write a library
> like that.  I can accept that as a reason.  But the attitude that I
> thought I detected---"I hope [that nobody writes a library like
> that]"---is not one that I believe serves the Ada community.  I
> apologize if I read too much into anything anyone said.

Like Stephe, I too hope that nobody writes a library that helps generate
.doc files.  My reason reason is that such a tool would endorse the
proprietary format and help continue the dominance of evil proprietary
formats against standard ones.  The same tool could be just as useful
writing PDF, DocBook, OpenDocument or even Plain Text instead of any
version of .doc.  Software engineers should promote standards whenever
possible, whatever language they use.

-- 
Ludovic Brenta.



  parent reply	other threads:[~2011-01-11 22:14 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-09  1:00 Generating PDFs with Ada R. Tyler Croy
2011-01-09  9:29 ` Pascal Obry
2011-01-10  2:29   ` Stephen Leake
2011-01-10  3:48     ` Yannick Duchêne (Hibou57)
2011-01-10 10:19       ` Georg Bauhaus
2011-01-10 17:02         ` Yannick Duchêne (Hibou57)
2011-01-15 13:55       ` Elias Salomão Helou Neto
2011-01-15 14:51         ` Pascal Obry
2011-01-15 15:20           ` Elias Salomão Helou Neto
2011-01-15 17:55           ` Yannick Duchêne (Hibou57)
2011-01-16  3:13             ` Elias Salomão Helou Neto
2011-01-16  3:42               ` Yannick Duchêne (Hibou57)
2011-01-09  9:43 ` Dmitry A. Kazakov
2011-01-09 11:28   ` leonid
2011-01-09 15:36 ` Gautier write-only
2011-01-10 18:54 ` Adam Beneschan
2011-01-11  1:50   ` Randy Brukardt
2011-01-11  8:51   ` Stephen Leake
2011-01-11 15:37     ` Adam Beneschan
2011-01-11 18:41       ` Ludovic Brenta
2011-01-11 20:09         ` Yannick Duchêne (Hibou57)
2011-01-11 20:47         ` Adam Beneschan
2011-01-11 22:05           ` Yannick Duchêne (Hibou57)
2011-01-11 22:14           ` Ludovic Brenta [this message]
2011-01-11 22:22             ` Yannick Duchêne (Hibou57)
2011-01-11 22:32               ` Ludovic Brenta
2011-01-11 22:38             ` Yannick Duchêne (Hibou57)
2011-01-12  1:37             ` Shark8
2011-01-12  9:42             ` Stephen Leake
2011-01-12 22:53             ` Randy Brukardt
2011-01-13  8:29               ` Ludovic Brenta
2011-01-11 22:14           ` Yannick Duchêne (Hibou57)
2011-01-12  9:36           ` Pascal Obry
2011-01-12 13:02             ` Yannick Duchêne (Hibou57)
2011-01-12 14:16               ` Pascal Obry
2011-01-12  9:00     ` Maciej Sobczak
2011-01-12  9:44       ` sjw
2011-01-12 10:44         ` Manuel Collado
2011-01-12 13:12           ` Georg Bauhaus
2011-01-12 10:04       ` Dmitry A. Kazakov
2011-01-12 21:25         ` Maciej Sobczak
2011-01-12 21:57           ` Dmitry A. Kazakov
2011-01-12 23:14       ` Randy Brukardt
2011-01-13  8:33         ` Ludovic Brenta
2011-01-13  9:11           ` Georg Bauhaus
2011-01-13 20:40           ` Randy Brukardt
2011-01-13 22:34             ` Georg Bauhaus
2011-01-14  6:26               ` Thomas Løcke
2011-01-13 23:59             ` Edward Fish
2011-01-15 15:04         ` Elias Salomão Helou Neto
2011-01-15 17:45           ` Yannick Duchêne (Hibou57)
2011-01-15 23:58             ` Georg Bauhaus
2011-01-16  2:49             ` Elias Salomão Helou Neto
2011-01-16  3:21               ` Yannick Duchêne (Hibou57)
2011-01-16 11:59             ` Simon Wright
2011-01-16 12:57               ` Dmitry A. Kazakov
2011-01-16 14:25                 ` (see below)
2011-01-16 16:43                   ` Dmitry A. Kazakov
2011-01-16 20:48                     ` Yannick Duchêne (Hibou57)
2011-01-16 15:33                 ` Simon Wright
2011-01-16 16:44                   ` Dmitry A. Kazakov
2011-01-16 21:05                   ` Yannick Duchêne (Hibou57)
2011-01-16 20:34               ` Yannick Duchêne (Hibou57)
2011-01-16  1:27           ` Georg Bauhaus
2011-01-16  2:49             ` Yannick Duchêne (Hibou57)
2011-01-16 12:27             ` Elias Salomão Helou Neto
2011-01-16 19:22               ` Georg Bauhaus
2011-01-12 21:06   ` Florian Weimer
2011-01-12 14:14 ` RasikaSrinivasan@gmail.com
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox