[Lazarus] [PATCH] components/turbopower_ipro: added the Iphttpbroker and its example

silvioprog silvioprog at gmail.com
Tue Jan 26 14:30:05 CET 2016


On Tue, Jan 26, 2016 at 9:17 AM, Fabrício Srdic <fabricio.srdic at gmail.com>
wrote:

> 2016-01-25 23:09 GMT-02:00 silvioprog <silvioprog at gmail.com>:
>
>> But, unfortunatelly, even with this pros, Pascal programmers avoid to use
>> external libraries, that's a real fact. :-/
>>
>>
> This issue is not restricted to Pascal programmers, this problem is
> inherent in any development platform.
>

Well, I disagree. I'm working with other languagens (C - libs, Java -
3rdparty things, and NodeJS - compiled modules), I joined on their
communities, and I find many programmers adopting C libraries there.

The root problem of using an external library is: when you add an external
> dependency on your code, your code becomes constrained by the limitations
> of that external dependency. For example, let's suppose you are writing a
> code that handles an exotic file format. Your code are supposed to run on
> windows. Then you find an external library which solves your problem. Three
> months after, your project's requirements changes. The new requirement is
> that your code shall run on Linux. However, that external library runs only
> on windows. So, your code are constrained by this limitation. Now, you need
> to find an alternative solution. Sometimes, none of them are feasible and
> this fact can lead your project to fail.
>

As I said: "... But the one of the basic steps before chosing a library
(from any language) is read its specification, and know if it provides the
needed features, works in the expected SOs, and provides a good
documentation with a stable support. I need to make a device and it need a
microcontroller, so I found that the best choice is a PIC16F64A because its
datasheet shows all the features and the basic hardware that I need".

...

"... Well, the mostly C libraries work fine in many OSs. One that I use
works in the popular systems (currently I need it just for Windows and
Linux) like GNU/Linux, FreeBSD, OpenBSD, NetBSD, Android, OS X, Win32/64
and special systems like Symbian and z/OS, and it's already available in
some tools like apt, yum, npm, maven, pacman...".


> By other side, if you find a solution in pascal, your code are constrained
> only by the limitations of the compiler.
>

IMHO this isn't a reason, I also can find Pascal code that works only on a
specific SO, and hard to be implemented in other systems, so I prefer to
get some C library that already do it instead of spending a long time
trying to implement it just because "oh, I can't work with libraries". :-)

The main a real reason that I find is: mostly Pascal programmers can't
debug a C libraries. And many Pascal programmers can't use or don't know
how to use shared/static libraries by themselves and can't find time to
know it, but anyway they use external libraries implicitly, when they
declare Pascal units that uses them.

Imagine if Lazarus developers think this same way, they probably would not
have created Lazarus for GTK and Qt. :-)

-- 
Silvio Clécio
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20160126/6cda350a/attachment-0003.html>


More information about the Lazarus mailing list