Dario Greggio wrote:
> I once had a friend using Delphi for home automation.
> Point is, when you come down to bit-level, C is *inherently* better.
> You can do that in Pascal, and of course you can have the low-level
> details in a DLL, but in the end C is more fit.
Having used C, C++ and Delphi professionally, more or less full-time,
and more or less in equal amounts for the past 20 years, I'm puzzled by
that statement.
IM(ns)HO, the weak points of the language spectrum go like this:
- Delphi: Essentially single-platform (Windows).
- C#: Ditto, plus inherently slower due to bytecode interpretation.
- C: Lacks efficient means to structure complex systems (e.g.,
inheritance, standard containers).
- C++: Very slow to compile/link.
(Note that C/C++ need to be considered alongside a portability/UI
library, like wxWidgets.)
- P* (Perl, Python, Java): Inherently slower due to interpretation.
To me, those are the issues that really matter. If Delphi were
supported (really) on Linux and the Mac, it would be ideal: it's got
fast build time AND fast execution, trivially easy UI and DB
construction, extensive libraries (many of them open-source), and an
expressive yet readable and protective syntax (you can shoot yourself in
the foot if you really need to, but you have to work at it).
I'm starting to move to Python, though, because of the platform issue.
C++/wxWidgets is also a very strong contender, but because of C++'s
complex syntax, the compile/link stage is orders of magnitude slower,
and I find that makes a big difference in day-to-day productivity.
--
Timothy J. Weber http://timothyweber.org
> Timothy J. Weber wrote:
>
>> - C#: Ditto ["single platform"], plus inherently slower due to bytecode
>> interpretation.
>
> Isn't the Mono project bringing C# (and other .NET technologies) to Linux
> (and other OSes)?
>
> <http://www.mono-project.com/Main_Page>
>
> Gerhard
>
Timothy J. Weber wrote:
>> There are tons of libraries for Delphi, I wouldn't be too surprised if
>> there
>> are more component libraries for Delphi, than for VC++. IMO, there's
>> little
>> difference b/w Delphi and VC++, except that the latter is a bit closer to
>> the metal.
>
> I've heard this said before, and I don't understand it. I've used and
> written highly optimized routines in Delphi that flip bits and access
> byte-mapped structures - and also used inline assembler where necessary.
>
> You seem to have experience with Delphi, so I don't think you're just
> repeating the rumor. What makes VC++ seem closer to the metal to you?
I'm just repeating the rumor. My experience with Delphi is rather limited,
and VC++ experience is virtually nonexistent (beyond college coursework). At
work, my duties are mostly managerial/HR/CS in nature.
I remember reading (and hearing) that VC++ is the language of choice for
writing things like drivers, and a few examples I've seen of wrappers
written in Delphi to access WIndows routines struck me as rather awkward. I
assumed it was because C++ is more closely related to C.
Since you've used both languages extensively, your opinion definitely
overrides mine.
Our company is having a very hard time hiring good technical people
(software developers, graphics designers, web developers), and I feel like
I'm wasting money on Monster and Careerbuilder.
A guy I met at a conference in Colorado last month, mentioned that he met
some of his current employees at professional trade shows. I've hired a good
hardware engineer this spring after I met him at a senior project fair. Is
unemployment so low, that people are no longer actively looking for work?
Please help me better spend my employment ad budget. :)
Xiaofan Chen wrote:
> On 10/11/07, Vitaliy <spamKILLspammaksimov.org> wrote:
>
>> I remember reading (and hearing) that VC++ is the language of choice for
>> writing things like drivers, and a few examples I've seen of wrappers
>> written in Delphi to access WIndows routines struck me as rather awkward. I
>> assumed it was because C++ is more closely related to C.
The wrappers are ugly. But that's simply a translation layer from C
(Microsoft's assigned native language for Windows) to Pascal. Once
someone has done that translation, you write in Pascal the same as you
would in C, using the same API names, etc.
> This must be true. I've tried to read a bit of driver codes under Windows
> and Linux but they are way too complicated to me. Most of them are in
> C (not even C++) but with some OOP concept. I do not think any of the
> driver writers are using Delphi/C# to write the driver.
I would bet not C#, but Delphi would certainly be a possibility.
For OS-level stuff like this, no matter what language you're using,
you've got the same available vocabulary - the relevant system API that
you need to interface with. And you're pretty much following whatever
recipe MS tells you to, so the logical structure of the code is going to
be pretty similar.
> Eg: I am not so sure how difficult to write a WinUSB wrapper in Delphi.
> It is said to be much easier in C++ than in C#. Maybe Delphi will
> be similar as C# (using P/Invoke?). You see I know a lot of
I would expect the Delphi version would look just like the C version,
just with "{" changed to "begin", etc. Really not much difference in
structure.
--
Timothy J. Weber http://timothyweber.org
Mark Rages wrote:
> wxWidgets is much, much easier to learn with wxPython than with the
> C++ bindings, because of the non-trivial compile times. Fred Brooks
> wrote a chapter about turnaround time and debugging. Still true.
Yes!! That's what I can't bear with C++. It really does become
non-trivial when you're working on even a moderate-sized app.
I remember when I was working on Acrobat (all [nominally] C++), a full
build would take hours. Not including all the plug-ins. Even a re-link
with one changed module would take... well, more than long enough to
forget what you were doing.
--
Timothy J. Weber http://timothyweber.org
> On 10/10/07, Xiaofan Chen <.....xiaofancKILLspam.....gmail.com> wrote:
>
>> On 10/10/07, Vitaliy <EraseMEspamspam_OUTTakeThisOuTmaksimov.org> wrote:
>>
>>> Delphi 6 PE allows you to add components. It's just not "officially"
>>> available anymore (but recently I was still able to download it
>>> "unofficially" for personal use).
>>>
>>>
>> Delphi 7 Personal Edition is officially downloadable from
>> Borland Poland along with Borland C++ Builder 6 Personal Edition.
>>
>> You just need to register for the registration code (for
>> Delphi 7 Personal Edition).
>> http://www.borland.pl/download/personal.shtml
>>
>> Last time I post the links but it is now slightly changed.
>>
>>
>
> Now they seem to remove it from the website.
>
Looked at http://cc.codegear.com/free/delphi and it appears
that Delphi 6, 7, and 2005 are no longer available.
Looks like they're pushing the Turbo Delphi editions.