Fred K Ollinger on Thu, 11 Jul 2002 02:26:46 -0400


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: [PLUG] Pascal?


> Having different tools is a good thing. Having different languages is a good
> thing. Being able to express solutions in different ways to meet different
> requirements IMHO is a good thing.

Usually, I would agree, but now I'm thinking no. True, I would want more
options, but I wouldn't want to maintain a codebase which is a hodgepodge
of a million languages. We are not at that point yet, but we do have a
problem in my current job w/ some scripts b/c they are in python and
nobody knew that language. Python my very well best perl, but it was a
hassle to find someone to fix it.

I'm thinking the same should hold true in a language. TIMTOWTDI might be
good when you are composing a beautiful section of code, but I'd rather
you did it as closely as how I (and others) would do it. I'll take
readablilty over elegence on most days.

> It doesn't seem like 2 is a plethora of functions to me. Actually, I find that
> one of the many benefits of OO is fewer function names that accomplish the
> same thing, sometimes due to overloading, sometimes due to inheritance. So,
> in the example given, rather than printf, vprintf, etc. you replace that with
> cout, or more generally streams. Now, you have one concept to learn that
> applies in many different instances. That way, you don't have to memorize a
> lot of function names that all do similar things.

Right, but in the initial case, pascal had one way, not two and not the
other few that were listed. I'd take one over two anyday.

> > I think the c-isms that have been taken out makes it easier. Plus it's
> > syntax looks more like english. I think that c code can be frightening
> > which is why I want to learn it, but I don't think that this is the most
> > efficient way to go.
>
> This seems a little strange at first glance. You are frightened by something,
> which makes you want to learn it. I guess that's encouraging in a sense. I'd

Right b/c I like arcane things. And I have heard the power of c, but never
felt it myself. Mostly for me, I feel like I'm in the stone age w/ just
pain c. I know that's mostly lack of skill, so I'm not discouraged.

> > I think we agree. I think that was the point that Noah was making as well.
> > cout and printf are the same in pascal and objective pascal, can't
> > remember what they are, though.
>
> Well, abandoning concepts and languages is a little different than creating a
> new language mechanism that offers much more flexibility (with one keyword)
> than a bunch of function calls previously available.

And this is different than keeping old, crusty things along-side new
things.

> > B/c as you said above, you shouldn't mix and match language concepts. Wrap
> > a c-function in a struct if you want oo.
>
> Noooooo.... Sorry, that's not at all what I meant to say. I have one word for
> you: Inheritance. Without inheritance, you are missing out on a great deal of
> the benefits of OO. Then, you've got to virtual functions and abstract base
> classes, and.... Hey, the work has already been done for you. It's called
> C++.

OK, I see the point.

> > I'd rather have a better printf, only.
>
> You can always write your own:)

This would probably come out the same way my cp did. I'll just use cout.

> In short, Java does have a notion of "pointers", but not pointer arithmetic. I
> would say that this is definitely safer for the general programmer.

I have heard that pointers are like playing w/ fire. I have had segfaults
all over the place for some random reasons. Pointers must be going every
which way, but they look ok to me. I usually get it fixed w/ trial and
error and all the segfaults go away. I know that if this isn't
straightened out sometime it'll all come back to bite me, but so far it's
one segfault bug at a time until I clear it then there are no problems.

> > I might have skimmed it. Shows how much I remember. The main point that no
> > matter what he says, I don't like the word 'evolved' in this context. I
> > prefer 'bolted on' :) or 'modified'.
>
> I would suggest 'extended', but I don't think that completely covers it.
> Perhaps 'modified and extended'. How does that sound?

Much better.

> > I really don't wish to make a lib now. I am using qt to make an installer
> > and I couldn't find a cp function in QFile (where I would put it). It is
> > in QUrl, though. What the hey? But yea, I did find it and I'll replace my
> > crappy implementation w/ this code shortly. It will make things easier on
> > me.
>
> Easier is generally a good thing. If things seem too difficult, it's usually
> because you just aren't familiar with an easier approach, or you just haven't
> thought of it yet.

I meant easier b/c
1. this should be easy as there are many well-trod idioms
2. why the hell isn't this a library fuction? I spent at least half an
hour looking for cp somewhere. They have rename(), but they hey? I almost
wanted to grab code for rename and try to shoe-horn that into cp.
3. cp is not that complicated, it should be write once function instead of
a never ending mess that really didn't work right
4. there really should be a library function--I know I said this before

> > I thought he meant suboptimal. We all know that c++ works in every
> > possible way, sw can be written that's highly maintainable and
> > reliable. I don't know anyone who would argue this. Most people would
> > say that
>
> I know some people that would argue this. Nice to hear.

That would be agravating as mostly everything is c/c++. I'd love to see an
os in something else, though. I heard that beos was c++, which is odd for
a kernel. I could be wrong here. I would like to see a native java machine
that runs an os in java.

I'd also like to see a whole os in eiffel just to see if that advocate was
right about library hell. Let's make some water that isn't wet! :)

> One more time, anybody can write really crappy code in any language. IMHO,
> that includes ObjectPascal, C++, and Java. I know some people that are really
> good at writing crappy code.

If anyone is still listening, let's see some really crappy ObjectPascal.
We saw bad c++ a few weeks ago. :)

> I'll take this at face value and say glad to hear it.
>
> Here's hoping that any code we write is as enjoyable and full of "intelligent
> remarks, copious respect, and total lack of animosity and bad attitude".

There was no irony meant here by me.

My code has lots of animosity, but I'll make it respect me. :)

Fred


______________________________________________________________________
Philadelphia Linux Users Group       -      http://www.phillylinux.org
Announcements-http://lists.phillylinux.org/mail/listinfo/plug-announce
General Discussion  -  http://lists.phillylinux.org/mail/listinfo/plug