From: Marcel K Haesok
Subject: Beating the dead horse again about VB
Date: 
Message-ID: <36F0030D.A59E6173@earthlink.net>
--------------26148400112ED8325F3A9485
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hi,
    I am a rookie powerbuilder programmer, and am enthused about
learning new languages.
    I do like OO like C++ and Java, like many people, those are my
favorites.
    One issue that hasn't been resolved in my mind after perusing
various language newsgroups is the overall status and assessment of MS
VB. A lot of unhelpful emotions flying around. One main objection about
VB was that it was not OO.
    1. My question is this:
    Lisp seems to be highly regarded language (though not very
marketable) and it is NOT, as I found out, a OO language. It is, as they
say, a FUNCTIONAL Programming language. If Lisp could be regarded with
high esteem without being OO, then can the same logic apply to VB?
    Incidentally, could VB regarded as a functional programming
language?

    Before my second question, I will say that I do not think that a
language can sustain its popularity by 'marketting' ALONE, as many seem
to suggest regarding VB. So,
    2. My second question is: What is the 'strength' of VB that is
sustaining its viability? As compared to, say, Cobol, which indeed seems
to be dying?

    3. My thrid question is: How different is VB of today than VB of
five years ago? There seems to be a drastic difference but I am not
sure.

    Thanks. Marcel



--------------26148400112ED8325F3A9485
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit

<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<font face="Courier New,Courier">Hi,</font>
<br><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; I am a rookie powerbuilder
programmer, and am enthused about learning new languages.</font>
<br><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; I do like OO like
C++ and Java, like many people, those are my favorites.</font>
<br><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; One issue that
hasn't been resolved in my mind after perusing various language newsgroups
is the overall status and assessment of MS VB. A lot of unhelpful emotions
flying around. One main objection about VB was that it was not OO.</font>
<br><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; <b>1. My question</b>
<b>is this</b>:</font>
<br><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; Lisp seems to be
highly regarded language (though not very marketable) and it is NOT, as
I found out, a OO language. It is, as they say, a FUNCTIONAL Programming
language. If Lisp could be regarded with high esteem without being OO,
then can the same logic apply to VB?</font>
<br><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; Incidentally, could
VB regarded as a functional programming language?</font><font face="Courier New,Courier"></font>
<p><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; Before my second
question, I will say that I do not think that a language can sustain its
popularity by 'marketting' ALONE, as many seem to suggest regarding VB.
So,</font>
<br><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; <b>2.</b> <b>My
second question</b> <b>is</b>: What is the 'strength' of VB that is sustaining
its viability? As compared to, say, Cobol, which indeed seems to be dying?</font><font face="Courier New,Courier"></font>
<p><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; <b>3. My thrid question
is</b>: How different is VB of today than VB of five years ago? There seems
to be a drastic difference but I am not sure.</font><font face="Courier New,Courier"></font>
<p><font face="Courier New,Courier">&nbsp;&nbsp;&nbsp; Thanks. Marcel</font>
<br><font face="Courier New,Courier">&nbsp;</font>
<br><font face="Courier New,Courier">&nbsp;</font></html>

--------------26148400112ED8325F3A9485--

From: Gareth McCaughan
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <86hfrjswfo.fsf@g.pet.cam.ac.uk>
Marcel Haesok wrote:

>     One issue that hasn't been resolved in my mind after perusing
> various language newsgroups is the overall status and assessment of MS
> VB. A lot of unhelpful emotions flying around. One main objection about
> VB was that it was not OO.
>     1. My question is this:
>     Lisp seems to be highly regarded language (though not very
> marketable) and it is NOT, as I found out, a OO language. It is, as they
> say, a FUNCTIONAL Programming language. If Lisp could be regarded with
> high esteem without being OO, then can the same logic apply to VB?

Common Lisp is as OO as you want it to be (more or less). It has
a perfectly good (and indeed rather sophisticated) object system.

>     Incidentally, could VB regarded as a functional programming
> language?

No, not at all.

>     Before my second question, I will say that I do not think that a
> language can sustain its popularity by 'marketting' ALONE, as many seem
> to suggest regarding VB. So,
>     2. My second question is: What is the 'strength' of VB that is
> sustaining its viability? As compared to, say, Cobol, which indeed seems
> to be dying?

It's easy to build things that look pretty in VB without much effort.
Therefore, it attracts people who think that if VB can do easily
something that's a bit painful in other languages, it must be really
good.

Plus, isn't it closely related to the macro languages used by
things like MSWord these days? If so, the learning curve is effectively
made shallower by that.

-- 
Gareth McCaughan       Dept. of Pure Mathematics & Mathematical Statistics,
·····@dpmms.cam.ac.uk  Cambridge University, England.
From: Tim Slattery
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36f01be0.4471885@blsnews.bls.gov>
Gareth McCaughan <·····@dpmms.cam.ac.uk> wrote:

>Marcel Haesok wrote:
>
>>     One issue that hasn't been resolved in my mind after perusing
>> various language newsgroups is the overall status and assessment of MS
>> VB. A lot of unhelpful emotions flying around. One main objection about
>> VB was that it was not OO.
>>     1. My question is this:
>>     Lisp seems to be highly regarded language (though not very
>> marketable) and it is NOT, as I found out, a OO language. It is, as they
>> say, a FUNCTIONAL Programming language. If Lisp could be regarded with
>> high esteem without being OO, then can the same logic apply to VB?
>
>Common Lisp is as OO as you want it to be (more or less). It has
>a perfectly good (and indeed rather sophisticated) object system.
>
>>     Incidentally, could VB regarded as a functional programming
>> language?
>
>No, not at all.
>
>>     Before my second question, I will say that I do not think that a
>> language can sustain its popularity by 'marketting' ALONE, as many seem
>> to suggest regarding VB. So,
>>     2. My second question is: What is the 'strength' of VB that is
>> sustaining its viability? As compared to, say, Cobol, which indeed seems
>> to be dying?
>
>It's easy to build things that look pretty in VB without much effort.
>Therefore, it attracts people who think that if VB can do easily
>something that's a bit painful in other languages, it must be really
>good.
>
>Plus, isn't it closely related to the macro languages used by
>things like MSWord these days? If so, the learning curve is effectively
>made shallower by that.

Very much so! As of Office97, all the Office apps use VBA (Visual
Basic for Applications) as their scripting language. Internet Explorer
supports VBScript, which is another Basic variant. It also supports
JavaScript, but MS had to put something in there so that developers
could make web pages that would do nifty things in IE and not work at
all in Netscape.

One of the very first projects Microsoft undertook was to write a
Basic interpreter for the MITS/ALTAIR computer in the late seventies.
Gates still has an affinity for Basic, and tries to shoehorn it in
everywhere. Too bad he didn't feel that way about C instead!

--
Tim Slattery
··········@bls.gov
From: Gaurav Sareen
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <yzUH2.3304$1P.1476@news.rdc1.nj.home.com>
VB is the MS answer to Java. Java has C syntax which makes it look more
"serious" otherwise on the windows platform I would prefer VB anyday to Java
for anything I am doing. ( Of course C++ is preferred over anything). VB has
a more powerful faster "Virtual Machine"(The Sun name for Run-Time Library)
and much better support for COM/MTS which is the dominating programming
model on Windows.


For your questions:
1. Well how important and how powerful marketing is seen by the popularity
of Java.
    Comparing Lisp to VB is being unfair to both the languages.

2. Cobol is not a programming language. Forget about it.

3. VB of today is totally different from VB five years ago. Initially VB was
supposed to simplify GUI progarmming and that was it. Now its much more.


Marcel K Haesok wrote in message <·················@earthlink.net>...
    Hi,
        I am a rookie powerbuilder programmer, and am enthused about
learning new languages.
        I do like OO like C++ and Java, like many people, those are my
favorites.
        One issue that hasn't been resolved in my mind after perusing
various language newsgroups is the overall status and assessment of MS VB.
    A lot of unhelpful emotions flying around. One main objection about VB
was that it was not OO.
        1. My question is this:
        Lisp seems to be highly regarded language (though not very
marketable) and it is NOT, as I found out, a OO language. It is, as they
say, a FUNCTIONAL Programming language. If Lisp could be regarded with high
esteem without being OO, then can the same logic apply to VB?
        Incidentally, could VB regarded as a functional programming
language?
        Before my second question, I will say that I do not think that a
language can sustain its popularity by 'marketting' ALONE, as many seem to
suggest regarding VB. So,
        2. My second question is: What is the 'strength' of VB that is
sustaining its viability? As compared to, say, Cobol, which indeed seems to
be dying?

        3. My thrid question is: How different is VB of today than VB of
five years ago? There seems to be a drastic difference but I am not sure.

        Thanks. Marcel
From: Stephen McKeown
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7cpdrc$jro$1@newssvr03-int.news.prodigy.com>
Gaurav Sareen wrote in message ...
>VB is the MS answer to Java.

Nice theory, except that VB predates Java by at least 5 years, probably
closer to 8.

>For your questions:
>1. Well how important and how powerful marketing is seen by the popularity
>of Java.
>    Comparing Lisp to VB is being unfair to both the languages.
>
>2. Cobol is not a programming language. Forget about it.

It's done pretty well, then, considering it's not a programming language.
But the advice to forget about it is sound (IMHO).

>
>3. VB of today is totally different from VB five years ago. Initially VB
was
>supposed to simplify GUI progarmming and that was it. Now its much more.

True.

All the best,
Stephen McKeown

P.S. Can somebody enlighten me as to what this thread is doing on
comp.lang.c++? My dim brain can't quite grasp it..... Thanks.
From: Gerwin Brink
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7cqmd9$boa$1@nnrp1.dejanews.com>
Gaurav Sareen wrote in message ...

> >2. Cobol is not a programming language. Forget about it.


What do you mean not a programming language?
In enterprise application development it is by far the most used
programming language in the world.

Gerwin Brink
-COBOL rules-


-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    
From: Greg Menke
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <wkoglq52f2.fsf@erols.com>
And it has the advantage of being simple and well suited for its
purpose.  Its not a language for fancy user interfaces, but for
processing data files, it works very well.  As far as managing records
in a big accounting system- its a far sight more attractive than VB in
many ways.  Truly, arithmetic or complex conditionals are agony- but a
merge sort of tables is a breeze.

Even more significantly, its not a marketing driven standard, so its
also very stable- and for large scale mission-critical data processing
systems, that single virtue can outweigh a vast array of technical
"shortcomings".

Gregm


> Gaurav Sareen wrote in message ...
> 
> > >2. Cobol is not a programming language. Forget about it.
> 
> 
> What do you mean not a programming language?
> In enterprise application development it is by far the most used
> programming language in the world.
> 
> Gerwin Brink
> -COBOL rules-
> 
> 
> -----------== Posted via Deja News, The Discussion Network ==----------
> http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    
From: Schol-R-LEA
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36f28dc4.2994934@news.slip.net>
On Wed, 17 Mar 1999 20:49:34 GMT, "Gaurav Sareen" <······@savera.com>
wrote:

>VB is the MS answer to Java. Java has C syntax which makes it look more
>"serious" otherwise on the windows platform I would prefer VB anyday to Java
>for anything I am doing. 

While I agree that the C style syntax is obscure (intentionally so,
IMHO, which makes it all the worse), the VB syntax, beyond the most
basic level, is just as bad or worse. The language was built up over
time by accretion, and there is no overall structure to it; While it
is much easier to use for simple tasks, you can easily get bogged down
after only a short time. Also, its support for OO is very poor indeed,
partly because of Microsoft's insistence on redefining the term to
mean COM. The lack of polymorphism (as opposed to properties, which
aren't the same thing) and inheritance is keenly felt.
'Component-oriented' would be a better way of describing VB.

>( Of course C++ is preferred over anything). 
>VB has a more powerful faster "Virtual Machine"(The Sun name for Run-Time Library)

Actually, the term has been canonical in the industry for decades, and
goes back to (at the latest) the UCSD Pascal p-machine in 1972.
Strictly speaking, the JVM works quite differently from the RTL. VB
runs as a mix of compiled x86 code and interpreted vb-code; the RTL is
the interpreter for the vb-code. Java, OTOH, compiles entirely into a
bytecode which is interpreted by the virtual machine. This is a
tradeoff favoring portability and simplicity over performance. To get
the extra performance they introduced the JIT 'compiler', which is a
bytecode-to-machine language translator. After the JIT runs, the Java
code runs similarly to the VB RTL, with most of the code running on
the CPU and the more complex parts running interpreted.

>and much better support for COM/MTS which is the dominating programming
>model on Windows.

This says more about Windows, and the political manuevering of M$ and
Sun against each other, than anything else. 

>For your questions:
>1. Well how important and how powerful marketing is seen by the popularity
>of Java.
>    Comparing Lisp to VB is being unfair to both the languages.

I agree. Comparing LISP to another language usually is unfair to the
other language.

Seriously, if it weren't for the fact that you almost have to use one
of those two languages to get a job these days, I'd tell you to stay
away from either Java or VB. Using a language that is defined by a
single company leaves you at that company's mercy, and in the end,
there a lot of languages out there that are as good or better than
either one. Finding a job using them, however, is another matter; the
demand for VB, Java, C++ et al is growing so fast that there really
isn't much choice in the matter, you'lll end up using at least one of
them somewhere along the line.

--
Schol-R-LEA;2 ELF JAM LCF BiWM MGT GS (http://www.slip.net/~scholr/)
First Speaker, Last Eristic Church of Finagle and Holy Bisexuality
i with the soul of a hamlet	 ** Ye shall know the Truth, and 
doomed always to wallow in farce ** The Truth shall drive you mad. 
From: Johan Kullstam
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <m24snhf5b5.fsf@sophia.axel.nom>
·@s.net (Schol-R-LEA) writes:

> I agree. Comparing LISP to another language usually is unfair to the
> other language.
> 
> Seriously, if it weren't for the fact that you almost have to use one
> of those two languages to get a job these days, I'd tell you to stay
> away from either Java or VB. 

really?  people around me are mostly using fortran (some 77 and some
90).  i usually use octave (like matlab) and some C.  i do get really
strange looks when i mention that i am dabbling in lisp.  i have never
used java nor done any serious visual basic (i did enough vb to
clobber the awful `float over text' figure default in the most recent
word by slavishly following the recipe laid out in word 97 annoyances
but that is it).  furthermore, i don't know anyone around me who does
either java or visual basic.

also if you're into cobol, you can land a job - especially with the
whole y2k hoopla.

-- 
                                           J o h a n  K u l l s t a m
                                           [········@ne.mediaone.net]
                                              Don't Fear the Penguin!
From: Jack Strangio
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <F8vwoE.3s3@camtech.net.au>
"Gaurav Sareen" <······@savera.com> writes:
> 
> 2. Cobol is not a programming language. Forget about it.

You mean I could have used some other language than COBOL to write
my Intel 8080 Disassembler in?

Damn! Why didn't someone tell me?

:-)


Jack
-- 
Jack Strangio (···@camtech.net.au)
  Web Site at   http://www.adelaide.net.au/~jvs/index.html

"We will never have another delay like Windows" -Steve Ballmer, 1985
From: dbd
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <01be72e1$1fbc6140$8d29e6cf@dbdsystem>
COBOL???? Intel 8080??? What landfill do you work for???
Sorry Couldn't pass it up....<grin> 
-- 
Have a good day.
Don

Jack Strangio <···@camtech.net.au> wrote in article <··········@camtech.net.au>...
> "Gaurav Sareen" <······@savera.com> writes:
> > 
> > 2. Cobol is not a programming language. Forget about it.
> 
> You mean I could have used some other language than COBOL to write
> my Intel 8080 Disassembler in?
> 
> Damn! Why didn't someone tell me?
> 
> :-)
> 
> 
> Jack
> -- 
> Jack Strangio (···@camtech.net.au)
>   Web Site at   http://www.adelaide.net.au/~jvs/index.html
> 
> "We will never have another delay like Windows" -Steve Ballmer, 1985
> 
From: Jack Strangio
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <F8xBr2.8L0@camtech.net.au>
"dbd" <····@_i1.net> writes:
> COBOL???? Intel 8080??? What landfill do you work for???
> Sorry Couldn't pass it up....<grin> 
> -- 
> Have a good day.
> Don

Well, it *was* somewhere in the mid-80's, and the only high-level languages
I had available at that particular time were COBOL and Billy-boy's GWBASIC.

*Obviously* I had to use COBOL. 

<bigger grin>

Jack
-- 
Jack Strangio (···@camtech.net.au)
  Web Site at   http://www.adelaide.net.au/~jvs/index.html

"We will never have another delay like Windows" -Steve Ballmer, 1985
From: Robert Claeson
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <slrn7f9mo9.f8q.robert@mystic.brightid.se>
Jack Strangio wrote:

> Well, it *was* somewhere in the mid-80's, and the only high-level languages
> I had available at that particular time were COBOL and Billy-boy's GWBASIC.
> 
> *Obviously* I had to use COBOL. 

What about Assembler?
From: Jack Strangio
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <F91vCB.LpL@camtech.net.au>
······@brightid.se (Robert Claeson) writes:
> Jack Strangio wrote:
> 
> > Well, it *was* somewhere in the mid-80's, and the only high-level languages
> > I had available at that particular time were COBOL and Billy-boy's GWBASIC.
> > 
> > *Obviously* I had to use COBOL. 
> 
> What about Assembler?

I'm just too LAZY.  

(That's not quite true. I quite enjoy working with assembly language, but I wanted
 something completed fairly quickly. )


Actually just did a quick grep around the system and I'll be damned, look what I found,
tucked away in a set of subdirectories archived from a PC some years ago:

0010* ****** This program is written in NEVADA COBOL ******.
0020
0030 IDENTIFICATION DIVISION.
0040
0050 PROGRAM-ID.
0060**************************************
0070       JACKS-DISASSEMBLER.
0080*       ** Version Number 1.0
0090**************************************
0100
0110*  AUTHOR. Jack Strangio.
0120
0130*  INSTALLATION.   Giacomo Software, P.O. Box 584, Hamilton, 3300
0140
0150 DATE-WRITTEN.    29 MARCH 1984.
0160
0170*****************************************************************
0180*           THIS PROGRAM PREPARES                               *
0190*           AND   DISASSEMBLES INTERMEDIATE PSEUDO-CODE FILES   *
0200*           INTO 8080 ASSEMBLY LANGUAGE.                        *
0210*                                                               *
0220*****************************************************************
0230
0240 ENVIRONMENT DIVISION.
0250
0260 CONFIGURATION SECTION.
0270 SOURCE-COMPUTER.
0280     CPZ-48000 SBC.
0290 OBJECT-COMPUTER.
0300     CPZ-48000 SBC.
0310
0320
0330 INPUT-OUTPUT SECTION.
0340
0350 FILE-CONTROL.
0360     SELECT MACHINE-CODE-FILE ASSIGN TO DISK
0370     ACCESS MODE IS SEQUENTIAL.
0380
0390     SELECT PSEUDO-CODE-FILE ASSIGN TO DISK
0400     ACCESS MODE IS SEQUENTIAL.
0410
0420     SELECT OPCODE-FILE ASSIGN TO DISK

 
Frightening isn't it? 1984. That's almost exactly 15 years ago, in a week or
so. And by the configuration section, still in 8-bit days, before my IBM-XT.
And therefore I wrote in COBOL to escape not Billy-boy's GWBASIC but his
MBASIC which was almost as bad.


Jack
-- 
Jack Strangio (···@camtech.net.au)
  Web Site at   http://www.adelaide.net.au/~jvs/index.html

"We will never have another delay like Windows" -Steve Ballmer, 1985
From: Jon Strayer
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36F6FBAB.78B35EC6@strayer.net>
Jack Strangio wrote:
> 
> "Gaurav Sareen" <······@savera.com> writes:
> >
> > 2. Cobol is not a programming language. Forget about it.
> 
> You mean I could have used some other language than COBOL to write
> my Intel 8080 Disassembler in?
> 
> Damn! Why didn't someone tell me?

You used COBOL to write a disassembler?  Do you wear a catchers mit when
you play the piano?  :-)
From: Lars Marius Garshol
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <wk1zinyh4a.fsf@ifi.uio.no>
* Marcel K. Haesok
| 
| I do like OO like C++ and Java, like many people, those are my
| favorites.

I'll refrain from posting my opinion of C++ as I don't wish to ignite
a flamewar. Java has many nice things about it, but is still awkward
to program in, I think.

| One issue that hasn't been resolved in my mind after perusing
| various language newsgroups is the overall status and assessment of
| MS VB. A lot of unhelpful emotions flying around. One main objection
| about VB was that it was not OO.

That's just scraping the surface.  VB has bad support for building
data structures, bad performance, bad control structures, no
portability and in general bad design.

At least, that was the case around VB 3.0 when I last used it. It's
simply an awkward language to program in for most things you want to
do.

|     1. My question is this:
|     Lisp seems to be highly regarded language (though not very
| marketable)

Not very market_ed_, no.

| and it is NOT, as I found out, a OO language. 

There are today two main Lisps: Scheme and Common Lisp. Both allow you
to program in an OO style if you so wish, and the Common Lisp Object
System (CLOS) has many features that do not exist in C++ or Java.

Lisp also has numerous features that are missing from both C++ and
Java, such as really powerful macros.

In general, be very skeptical about believing what non-Lispers say
about Lisp. In many cases you'll get a description of the state of
affairs in the late 1960s. To put it mildly, things have happened
since then.

A superlative article on the state of affairs in 1991 (with a comparison
to C) is <URL:http://www.naggum.no/worse-is-better.html>

| It is, as they say, a FUNCTIONAL Programming language. 

This is incorrect.  Neither Scheme nor CL enforces a functional style,
although both allow it, and some existing Scheme literature tends to
encourage it.

| If Lisp could be regarded with high esteem without being OO, then
| can the same logic apply to VB? 

There are other measures of goodness in programming languages than
just being OO or not. :)

| Incidentally, could VB regarded as a functional programming
| language?

No. You could do functional programming in it, although most of the
features that make this approach a convenient programming style are
missing from VB.
 
A separate issue is the fact that it's not very productive to think of
functional programming as a family of languages rather than as a style
of programming.

| Before my second question, I will say that I do not think that a
| language can sustain its popularity by 'marketting' ALONE, as many
| seem to suggest regarding VB.

I agree with this, although it sure helps.

| 2. My second question is: What is the 'strength' of VB that is
| sustaining its viability? As compared to, say, Cobol, which indeed
| seems to be dying?

Two main things:

 - it's marketed by Microsoft, which means that books, information,
 propaganda, intro CDs, reviews, articles etc etc etc keep cropping up
 wherever you turn
 
 - a good implementation exists, which has good integration with its
 environment and good support for building GUIs, which means that
 although the language is poor it is certainly usable to do real work
 in
 
| 3. My thrid question is: How different is VB of today than VB of
| five years ago? There seems to be a drastic difference but I am not
| sure.

Relatively different. Some modicum of OO has been added, and several
other things besides. You really should ask in a VB group for this
information, though.

Followups set to cl.lisp.

--Lars M.
From: Roger Lindsj|
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7cqgql$6cg$1@nyheter.chalmers.se>
I would think it is very hard to regard VB as a functional language.
Neither Java or c/c++ are functional either. For functional languages
try Haskell or ML.

How would you in any non-functional language like Java, VB etc write higher
order functions? Concider my function double, it return a twice the result
of the input. Then I have a function primes (returns all primes).

If I now apply double to primes I have a new function, t`lets call it 2primes.
this function will now retunrn somthing like 4, 6, 10 ... and so on.

For an introduction to functional languages download Haskell (hugs) on the net
and do a search on functional languages for some examples.

My personal view of functional languages are that they are not very usefull for
manu real applications (pleas, no flames, this is just my experience), but
for some applications they are great. A lot of phone companies use functional
languages for their switches. And once you have learned a functional language
and started thinking in a functional way it is a lot easier to solv problems
even with regular imperative languages.

My personal view,
   Roger Lindsj�
From: Marcel K Haesok
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36F1C9C7.839BC5DF@earthlink.net>
hm, very interesting insight, couldn't have come from other than first hand
experience. Thanks for sharing your insight. Marcel

Roger Lindsj| wrote:

> I would think it is very hard to regard VB as a functional language.
> Neither Java or c/c++ are functional either. For functional languages
> try Haskell or ML.
>
> How would you in any non-functional language like Java, VB etc write higher
> order functions? Concider my function double, it return a twice the result
> of the input. Then I have a function primes (returns all primes).
>
> If I now apply double to primes I have a new function, t`lets call it 2primes.
> this function will now retunrn somthing like 4, 6, 10 ... and so on.
>
> For an introduction to functional languages download Haskell (hugs) on the net
> and do a search on functional languages for some examples.
>
> My personal view of functional languages are that they are not very usefull for
> manu real applications (pleas, no flames, this is just my experience), but
> for some applications they are great. A lot of phone companies use functional
> languages for their switches. And once you have learned a functional language
> and started thinking in a functional way it is a lot easier to solv problems
> even with regular imperative languages.
>
> My personal view,
>    Roger Lindsj�
>
From: Vassil Nikolov
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7cq56u$ttm$1@nnrp1.dejanews.com>
In article <·················@earthlink.net>,
  Marcel K Haesok <······@earthlink.net> wrote:
(...)
>     Lisp seems to be highly regarded language (though not very
> marketable) and it is NOT, as I found out, a OO language. It is, as
> they say, a FUNCTIONAL Programming language. If Lisp could be
> regarded with high esteem without being OO, then can the same logic
> apply to VB?
(...)

First of all, Lisp is not a single language but a family of languages
(Common Lisp, Scheme, Emacs Lisp, etc.), but let's pretend it is a
single language for the moment.

One must distinguish between what a language _is_ and what a language
is commonly _said_to_be_.

Lisp _is_ an OO language even if it is rarely said to be such,
especially outside the circle of people who do know about it.

Now, about functional programming languages.  In the *strict* sense
of the word, programs in these languages are collections of
`equations' defining functions and have as one of their important
characteristics the absence of side effects.  (If one wonders why
this might be a good thing, it helps immensely when making and
optimising parallel programs.)  If you are interested in functional
programming languages in the strict sense of the word, explore FP,
ML, Eiffel, etc.  (And consult a more detailed description---this
paragraph is very brief and thus not fully adequate.)  In the
strict sense of the word, Lisp is not a functional programming
language *but* it has a _usable_ subset which is; on the other hand,
if one takes a subset of BASIC or C which is strictly functional,
I dare say its usability would be minimal.  (Let others say about
C++.)

In the *broad* sense of the word, a functional programming language
is characterised by things like:
* lists, by which I really mean here good built-in support for
  dynamic data aggregates whose size is not fixed at the moment
  they are created (or any other moment later);
* all language constructs producing results, and hence wide use of
  functional composition (very simply speaking, doing things like
  ``f(g(x))'' instead of being forced to do ``y=f(x); g(y)''), i.e.
  a typical tendency to combine things into expressions rather than
  writing series of statements each of which has a side effect that
  is used up by the next one.  (So assignments, even if they are
  allowed in a functional programming language in the broad sense,
  are used sparingly.)
In this sense, Lisp _is_ a functional language (and when it is said
to be one, this is what people should mean, although I am not sure
they always know it...), and I think it is fairly clear that BASIC
(visual or not visual) and C again are not.

Anyway, do not by any means consider the above as the only source of
knowledge about OO or functional languages.

As to the regard languages get, for every language there are people
that regard it highly and people that despise it (and among each of
these two groups of people, some are knowledgeable and most aren't).
If there is a market for flame wars, one could make a pretty penny
out of this...

Also, every language has labels attached to its reputation at large
(like Lisp being labelled `functional' or C being labelled `machine
independent assembly language'); I don't usually find these labels
very informative about the essence of the language.

Finally, each programming language and implementation thereof is a
tool, and a tool is best with respect to a certain job, i.e. a
certain objective.  If one has the objective of making money, then
VB may well be the best tool.  However, if one has the objective
of making large, flexible, maintainable, portable systems, then it
is a different matter.

Have a nice day,
Vassil.

Vassil Nikolov <········@poboxes.com> www.poboxes.com/vnikolov
(You may want to cc your posting to me if I _have_ to see it.)
   LEGEMANVALEMFVTVTVM  (Ancient Roman programmers' adage.)

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    
From: Marcel K Haesok
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36F1D916.DA3DFDF3@earthlink.net>
Hey Vassil! Je vous tres remercie Monssieur! for you enlightenment. I
appreciate it! Marcel

Vassil Nikolov wrote:

> In article <·················@earthlink.net>,
>   Marcel K Haesok <······@earthlink.net> wrote:
> (...)
> >     Lisp seems to be highly regarded language (though not very
> > marketable) and it is NOT, as I found out, a OO language. It is, as
> > they say, a FUNCTIONAL Programming language. If Lisp could be
> > regarded with high esteem without being OO, then can the same logic
> > apply to VB?
> (...)
>
> First of all, Lisp is not a single language but a family of languages
> (Common Lisp, Scheme, Emacs Lisp, etc.), but let's pretend it is a
> single language for the moment.
>
> One must distinguish between what a language _is_ and what a language
> is commonly _said_to_be_.
>
> Lisp _is_ an OO language even if it is rarely said to be such,
> especially outside the circle of people who do know about it.
>
> Now, about functional programming languages.  In the *strict* sense
> of the word, programs in these languages are collections of
> `equations' defining functions and have as one of their important
> characteristics the absence of side effects.  (If one wonders why
> this might be a good thing, it helps immensely when making and
> optimising parallel programs.)  If you are interested in functional
> programming languages in the strict sense of the word, explore FP,
> ML, Eiffel, etc.  (And consult a more detailed description---this
> paragraph is very brief and thus not fully adequate.)  In the
> strict sense of the word, Lisp is not a functional programming
> language *but* it has a _usable_ subset which is; on the other hand,
> if one takes a subset of BASIC or C which is strictly functional,
> I dare say its usability would be minimal.  (Let others say about
> C++.)
>
> In the *broad* sense of the word, a functional programming language
> is characterised by things like:
> * lists, by which I really mean here good built-in support for
>   dynamic data aggregates whose size is not fixed at the moment
>   they are created (or any other moment later);
> * all language constructs producing results, and hence wide use of
>   functional composition (very simply speaking, doing things like
>   ``f(g(x))'' instead of being forced to do ``y=f(x); g(y)''), i.e.
>   a typical tendency to combine things into expressions rather than
>   writing series of statements each of which has a side effect that
>   is used up by the next one.  (So assignments, even if they are
>   allowed in a functional programming language in the broad sense,
>   are used sparingly.)
> In this sense, Lisp _is_ a functional language (and when it is said
> to be one, this is what people should mean, although I am not sure
> they always know it...), and I think it is fairly clear that BASIC
> (visual or not visual) and C again are not.
>
> Anyway, do not by any means consider the above as the only source of
> knowledge about OO or functional languages.
>
> As to the regard languages get, for every language there are people
> that regard it highly and people that despise it (and among each of
> these two groups of people, some are knowledgeable and most aren't).
> If there is a market for flame wars, one could make a pretty penny
> out of this...
>
> Also, every language has labels attached to its reputation at large
> (like Lisp being labelled `functional' or C being labelled `machine
> independent assembly language'); I don't usually find these labels
> very informative about the essence of the language.
>
> Finally, each programming language and implementation thereof is a
> tool, and a tool is best with respect to a certain job, i.e. a
> certain objective.  If one has the objective of making money, then
> VB may well be the best tool.  However, if one has the objective
> of making large, flexible, maintainable, portable systems, then it
> is a different matter.
>
> Have a nice day,
> Vassil.
>
> Vassil Nikolov <········@poboxes.com> www.poboxes.com/vnikolov
> (You may want to cc your posting to me if I _have_ to see it.)
>    LEGEMANVALEMFVTVTVM  (Ancient Roman programmers' adage.)
>
> -----------== Posted via Deja News, The Discussion Network ==----------
> http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own
From: Christopher R. Barry
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <877lsdfk4t.fsf@2xtreme.net>
Marcel K Haesok <······@earthlink.net> writes:
[About 10 thank-you notes]

Marcel,

There's nothing wrong with thanking people for providing you with
useful information, but do it via _private email_. Some people pay for
their bandwidth by-the-minute (not me), and having to download many
articles you have before only quoted with 2 lines isn't cool, whether
you're paying by-the-minute or not.

That's one reason, but there are others.

Christopher

[Please don't feel obligated to reply this.]
From: Erik Naggum
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <3130916627109573@naggum.no>
* ······@2xtreme.net (Christopher R. Barry)
| Marcel,
| 
| There's nothing wrong with thanking people for providing you with
| useful information, but do it via _private email_. Some people pay for
| their bandwidth by-the-minute (not me), and having to download many
| articles you have before only quoted with 2 lines isn't cool, whether
| you're paying by-the-minute or not.
| 
| That's one reason, but there are others.

  coincidentally, this is why the Net is seen as hostile and some people
  think it's only for people who argue all the time.  whereas the old
  etiquette rule was "reprimand in private, compliment in public" may work
  well for social interaction, the exact opposite works on USENET.  just
  like Christopher, I get _real_ tired of seeing people agree with or thank
  or applaud eachother.  the archetypical newbie USENET articles says no
  more than "me too!", and it's a reason we don't want them: people agree
  on a _tremendous_ amount of issues.  thanks to the absence of thank you
  notes, every single reader of an article may get _something_ out of it.
  if they were to publish their thanks, chances are that none of _those_
  articles would bring anything new to the world.  however, directed at the
  author, it _is_ very valuable.

    Naggum's rule of optimal electronic communication:
    be harsh and critical in public, and kind and rewarding in private

  (I don't know whether I first formulated this or not, but people have
  given me credit for it so I guess I can, too.)

#:Erik
From: Kent M Pitman
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <sfwr9qkhula.fsf@world.std.com>
Erik Naggum <····@naggum.no> writes:

>     Naggum's rule of optimal electronic communication:
>     be harsh and critical in public, and kind and rewarding in private

So a corollary is that we don't have to actually put text in anything
we send you (or anyone) we disagree with.  We can just send null mail
knowing that ill feelings will be the default content?  Hmm...

Good observation about the bias in reply style, btw.  I've observed
this as well.  There are many ways to disagree and there is only one
way to agree, so the disagreers always seem to outnumber the agreers.
(This will be the death of tv news shows.  They always find someone to
balance any bizarre claim and then have one person argue pro and one
person argue con as if the truth were always halfway between any
arbitrary claim and "the other side".  It seems unlikely this can
really implement fair, but many news organizations have taken to
defining this as being fair by definition...)

Personally, I sometimes willfully defy the posting guidelines on "me, too"
because I think the information content is often not what it seems.
As someone pointed out to me recently, a "bit" is a "surprise".
"me, too" is not worth sending perhaps in the case where it conveys
no new bits of information.  But it is worth sending if it conveys
bits of information.

Besides, if you have an anti-"me, too" rule sometimes you just end up with
people finding more verbose and dull ways to say "me, too".
From: Erik Naggum
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <3131000294717172@naggum.no>
* Erik Naggum <····@naggum.no>
|   Naggum's rule of optimal electronic communication:
|   be harsh and critical in public, and kind and rewarding in private

* Kent M Pitman <······@world.std.com>
| So a corollary is that we don't have to actually put text in anything
| we send you (or anyone) we disagree with.  We can just send null mail
| knowing that ill feelings will be the default content?  Hmm...

  heh.  a more important corollary is that good articles have much fewer
  followups than bad articles, and zero followups may mean it's very good.
  (even those devoid of contents get followups criticizing them for their
  lack of contents.)  this is not how people ordinarily view communication
  and the way people get their feedback, so it's worth pointing out.

| Besides, if you have an anti-"me, too" rule sometimes you just end up
| with people finding more verbose and dull ways to say "me, too".

  yeah, I agree.  however abstractly you define the rule, someone will
  treat it like those silly games where the players aren't allowed to say
  certain words.  </example>  :)

#:Erik
From: Fernando D. Mato Mira
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36F0CEEB.D1A653DA@iname.com>
Vassil Nikolov wrote:

> optimising parallel programs.)  If you are interested in functional
> programming languages in the strict sense of the word, explore FP,
> ML, Eiffel, etc.  (And consult a more detailed description---this

Eiffel a functional language??

BTW, regarding the strengths of VB, I'm sorry to say Windows
is the (really living) thing closest to a LispM these days.

A `Visual Basic Machine'. That's Bill's vision. Yuck.

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Vassil Nikolov
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7cslp5$2lh$1@nnrp1.dejanews.com>
In article <·················@iname.com>,
  "Fernando D. Mato Mira" <········@iname.com> wrote:
>
>
> Vassil Nikolov wrote:
>
> > optimising parallel programs.)  If you are interested in functional
> > programming languages in the strict sense of the word, explore FP,
> > ML, Eiffel, etc.  (And consult a more detailed description---this
>
> Eiffel a functional language??

Sorry, my brain circuits sort of crosstalked.  I was thinking of
Haskell.  And Miranda belongs to that list too.

By the way, I also support those who believe that functional
languages are good for the first-year course in programming in
computer science.

Vassil Nikolov <········@poboxes.com> www.poboxes.com/vnikolov
(You may want to cc your posting to me if I _have_ to see it.)
   LEGEMANVALEMFVTVTVM  (Ancient Roman programmers' adage.)

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    
From: Claudius Proculus
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7cpjho$ce2$2@ash.prod.itd.earthlink.net>
In article <·················@earthlink.net>, Marcel K Haesok <······@earthlink.net> wrote:
>    I am a rookie powerbuilder programmer, and am enthused about
>learning new languages.
>    I do like OO like C++ and Java, like many people, those are my
>favorites.
>    One issue that hasn't been resolved in my mind after perusing
>various language newsgroups is the overall status and assessment of MS
>VB. A lot of unhelpful emotions flying around. One main objection about
>VB was that it was not OO.
>    1. My question is this:
>    Lisp seems to be highly regarded language (though not very
>marketable) and it is NOT, as I found out, a OO language. It is, as they
>say, a FUNCTIONAL Programming language. If Lisp could be regarded with
>high esteem without being OO, then can the same logic apply to VB?
>    Incidentally, could VB regarded as a functional programming
>language?

This question makes no sense. Your logic appears to read.

Lisp is highly regarded : Lisp is not an OO language (ignoring CLOS for the 
moment)

VB is not an OO language Therefore VB should be highly regarded.

I would check the logical fallicies web site on that one.


>    Before my second question, I will say that I do not think that a
>language can sustain its popularity by 'marketting' ALONE, as many seem
>to suggest regarding VB. So,
>    2. My second question is: What is the 'strength' of VB that is
>sustaining its viability? As compared to, say, Cobol, which indeed seems
>to be dying?

First of all, you are mistaken about COBOL dying. Use of COBOL, if anything, 
is growing. As a percentage of all programming, yes, it is declining. However, 
the death of COBOL has been greatly exagerated.

If a languages could not sustain its popularity through marketing alone, how 
do you explain Java?

The strengths of VB include

A. It was the first development tool for windows that allowed you to do 
serious development with ease.

B. It created the commercial component market.

C. There is a large body of programmers who know it.

D. There is a huge 3rd party support for it.

E. There are many books available on it.

F. It is easy enough for idiots to use.

G. Many companies use VB simply because Microsoft tells them to.

>    3. My thrid question is: How different is VB of today than VB of
>five years ago? There seems to be a drastic difference but I am not
>sure.

Not much. The most significant differences are OCX's have replaced VBX's and 
VB now has become "object-based", a marketing term that means it has things 
sort of like you find in object oriented languages, but not really.

John - N8086N 
Wise man says "Never use a bank with the initials F. U."
-------------------------------------------
Are you interested in a professional society or
guild for programmers?

See www.programmersguild.org/american.htm
Newsgroup: us.issues.occupations.computer-programmers

EMail Address:
···········@_c_o_l_o_s_s_e_u_m_b_u_i_l_d_e_r_s._c_o_m_
From: Marcel K Haesok
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36F1D352.FA7C50B5@earthlink.net>
your point taken. Marcel

Claudius Proculus wrote:

> In article <·················@earthlink.net>, Marcel K Haesok <······@earthlink.net> wrote:
> >    I am a rookie powerbuilder programmer, and am enthused about
> >learning new languages.
> >    I do like OO like C++ and Java, like many people, those are my
> >favorites.
> >    One issue that hasn't been resolved in my mind after perusing
> >various language newsgroups is the overall status and assessment of MS
> >VB. A lot of unhelpful emotions flying around. One main objection about
> >VB was that it was not OO.
> >    1. My question is this:
> >    Lisp seems to be highly regarded language (though not very
> >marketable) and it is NOT, as I found out, a OO language. It is, as they
> >say, a FUNCTIONAL Programming language. If Lisp could be regarded with
> >high esteem without being OO, then can the same logic apply to VB?
> >    Incidentally, could VB regarded as a functional programming
> >language?
>
> This question makes no sense. Your logic appears to read.
>
> Lisp is highly regarded : Lisp is not an OO language (ignoring CLOS for the
> moment)
>
> VB is not an OO language Therefore VB should be highly regarded.
>
> I would check the logical fallicies web site on that one.
>
> >    Before my second question, I will say that I do not think that a
> >language can sustain its popularity by 'marketting' ALONE, as many seem
> >to suggest regarding VB. So,
> >    2. My second question is: What is the 'strength' of VB that is
> >sustaining its viability? As compared to, say, Cobol, which indeed seems
> >to be dying?
>
> First of all, you are mistaken about COBOL dying. Use of COBOL, if anything,
> is growing. As a percentage of all programming, yes, it is declining. However,
> the death of COBOL has been greatly exagerated.
>
> If a languages could not sustain its popularity through marketing alone, how
> do you explain Java?
>
> The strengths of VB include
>
> A. It was the first development tool for windows that allowed you to do
> serious development with ease.
>
> B. It created the commercial component market.
>
> C. There is a large body of programmers who know it.
>
> D. There is a huge 3rd party support for it.
>
> E. There are many books available on it.
>
> F. It is easy enough for idiots to use.
>
> G. Many companies use VB simply because Microsoft tells them to.
>
> >    3. My thrid question is: How different is VB of today than VB of
> >five years ago? There seems to be a drastic difference but I am not
> >sure.
>
> Not much. The most significant differences are OCX's have replaced VBX's and
> VB now has become "object-based", a marketing term that means it has things
> sort of like you find in object oriented languages, but not really.
>
> John - N8086N
> Wise man says "Never use a bank with the initials F. U."
> -------------------------------------------
> Are you interested in a professional society or
> guild for programmers?
>
> See www.programmersguild.org/american.htm
> Newsgroup: us.issues.occupations.computer-programmers
>
> EMail Address:
> ···········@_c_o_l_o_s_s_e_u_m_b_u_i_l_d_e_r_s._c_o_m_
From: Howard R. Stearns
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36F12995.3D221952@elwood.com>
Marcel K Haesok wrote:
> ...    Lisp seems to be highly regarded language (though not very
> marketable) and it is NOT, as I found out, a OO language. It is, as they say, a FUNCTIONAL Programming language. 

You have by now been flooded with mail telling you why you are "wrong."
(My own views on the OO and functional nature of Lisp are at
http://www.elwood.com/alu/table/objects.htm if you want even more
descriptions.)

I am curious HOW you got your impression.  For example, was it something
a teacher or a PC magazine pundit said?  Was it something from someone
espousing a particular OO methodology tailored to some particular
language?  What was it that lead you to conclude that Lisp was not OO?
From: David Thornley
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <adbI2.16$rP1.80@ptah.visi.com>
In article <·················@earthlink.net>,
Marcel K Haesok  <······@earthlink.net> wrote:
>
>Hi,
>    I am a rookie powerbuilder programmer, and am enthused about
>learning new languages.

I haven't seen anybody encourage this on this thread, yet, so:
Good.  Go for it.  Learn something new!

>    I do like OO like C++ and Java, like many people, those are my
>favorites.

OO is nice, although I'm not all that fond of Java personally.
There are other ways to program.  I tend to suggest that somebody
who wants to learn them should try OO, procedural, functional, and
imperative languages.   If you're learning C++ or Java, we'll
consider OO and procedural done.  Prolog is a good and easily
available imperative language, and Scheme is a good and easily
available language for functional programming.

One interesting possibility is a programming style based on something
like C++ templates or Common Lisp macros.  I've seen it called
"generic".

>    1. My question is this:
>    Lisp seems to be highly regarded language (though not very
>marketable) and it is NOT, as I found out, a OO language. It is, as they
>say, a FUNCTIONAL Programming language.

Where are you getting these opinions from?  Common Lisp is just as
much an object-oriented language as a functional programming language.
I believe it was the first OO language with an ANSI-recognized
standard, beating C++ by four or five years.

You can certainly do functional programming in Lisp, although I tend
not to.  I usually use a more object-oriented and generic style.

 If Lisp could be regarded with
>high esteem without being OO, then can the same logic apply to VB?

If the question is, does the Lisp community approve of Visual Basic,
I believe the answer is no.  If the question is, since Lisp is
highly regarded and is not O-O, could VB be too, then it is moot,
since Common Lisp is O-O, and has been for a long time, both by
the more modern CLOS (which is part of the language spec) and by
various systems written in Common Lisp (yes, CL is that versatile)
for some time before that.

>    Incidentally, could VB regarded as a functional programming
>language?
>
At a bare minimum, I'd say that a functional programming language
has to let you compose two functions to come up with a fully
usable third.  You can do that in Lisp, but I don't think
Visual Basic.

--
David H. Thornley                        | If you want my opinion, ask.
·····@thornley.net                       | If you don't, flee.
http://www.thornley.net/~thornley/david/ | O-
From: Frank A. Adrian
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7cri8f$k7e$1@client2.news.psi.net>
David Thornley wrote in message ...
>In article <·················@earthlink.net>,
>Marcel K Haesok  <······@earthlink.net> wrote:
>>
>>Hi,
>>    I am a rookie powerbuilder programmer, and am enthused about
>>learning new languages.
>
>I haven't seen anybody encourage this on this thread, yet, so:
>Good.  Go for it.  Learn something new!

Absolutely.  A man who only knows how to use a hammer can hardly call
himself a carpenter...

>>    I do like OO like C++ and Java, like many people, those are my
>>favorites.
>
>OO is nice, although I'm not all that fond of Java personally.
>There are other ways to program.  I tend to suggest that somebody
>who wants to learn them should try OO, procedural, functional, and
>imperative languages.   If you're learning C++ or Java, we'll
>consider OO and procedural done.  Prolog is a good and easily
>available imperative language, and Scheme is a good and easily
>available language for functional programming.

The only other thing I'd add is that you should also check out a statically
typed functional language like ML or Haskell, too.  There's really a much
different flavor when programming in that type of system than you get with
the dynamically typed functional languages.

>One interesting possibility is a programming style based on something
>like C++ templates or Common Lisp macros.  I've seen it called
>"generic".

Definitely check out Common Lisp enough to understand use of the macro
system, especially with respect to how well it integrates with the
minimalist syntax of the language and how powerful such a simple feature can
be.  You'll never be satisfied with templates again.  Scheme, with its
hygenic macros, is OK, too, but I like CL's better.  Why?  Most Schemers
stay away from fancy macrology, and I like some of the wierdities that true
CL'ers can twist the macro capabilities to do.
From: Vassil Nikolov
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7csolg$4vs$1@nnrp1.dejanews.com>
In article <···············@ptah.visi.com>,
  ········@visi.com (David Thornley) wrote:
(...)
> I tend to suggest that somebody
> who wants to learn them should try OO, procedural, functional, and
> imperative languages.   If you're learning C++ or Java, we'll
> consider OO and procedural done.  Prolog is a good and easily
> available imperative language, and Scheme is a good and easily
> available language for functional programming.
(...)

Prolog imperative?  Shouldn't we substitute `declarative' for
`imperative' above?

I have always thought that:
* Prolog is a logic programming language, and `logic' is-a `declarative';
* `procedural' is-a `imperative';
* `functional' (in the strict sense) is-a `declarative' too.

And for functional programming in the strict sense using Scheme,
restrict yourself to the proper subset (rule of thumb: if it ends in
an exclamation mark, forget it).

Besides, if you limit your knowledge of OO to what C++ or Java offer,
you might miss a few important things, so don't forget Common Lisp
(more specifically CLOS) and Smalltalk.

Also CLU, which taught me a lot of important things, including how
OO is not just class hierarchies.

Vassil Nikolov <········@poboxes.com> www.poboxes.com/vnikolov
(You may want to cc your posting to me if I _have_ to see it.)
   LEGEMANVALEMFVTVTVM  (Ancient Roman programmers' adage.)

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    
From: Fernando D. Mato Mira
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36F21608.496CDD55@iname.com>
Vassil Nikolov wrote:

> Prolog imperative?  Shouldn't we substitute `declarative' for
> `imperative' above?

Declarative .. and imperative (assert, !)

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Kent M Pitman
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <sfwww0d5x2o.fsf@world.std.com>
[Warning: Contains implicit stray references to another recent thread on
 this newsgroup.  If this message is confusing and doesn't seem "in context",
 just ignore it.]

"Fernando D. Mato Mira" <········@iname.com> writes:

> Vassil Nikolov wrote:
> 
> > Prolog imperative?  Shouldn't we substitute `declarative' for
> > `imperative' above?
> 
> Declarative .. and imperative (assert, !)

I just assumed it was being done by special binding without those pesky
*'s.  (let ((imperative 'declarative)) (eval what-was-said-before))

(See?  Sometimes the joke just wouldn't work if you had to put the *'s in.)
From: Vassil Nikolov
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7cvrke$tc$1@nnrp1.dejanews.com>
In article <···············@world.std.com>,
  Kent M Pitman <······@world.std.com> wrote:
> [Warning: Contains implicit stray references to another recent thread on
>  this newsgroup.  If this message is confusing and doesn't seem "in context",
>  just ignore it.]
>
> "Fernando D. Mato Mira" <········@iname.com> writes:
>
> > Vassil Nikolov wrote:
> >
> > > Prolog imperative?  Shouldn't we substitute `declarative' for
> > > `imperative' above?
> >
> > Declarative .. and imperative (assert, !)
>
> I just assumed it was being done by special binding without those pesky
> *'s.  (let ((imperative 'declarative)) (eval what-was-said-before))
>
> (See?  Sometimes the joke just wouldn't work if you had to put the *'s in.)
>

If we have a special variable with a starred name, e.g. *FOO*, doesn't
this actually mean `FOO' in boldface, i.e. the asterisks are not
conceptually part of the name?  I am not sure if I can formulate it
in the Right Way.  But if I wrote Lisp with pencil and paper (which
I find better than a keyboard, ceteris paribus which they rarely are),
I could just press the pencil harder instead of putting the asterisks.
(Though I am not sure if I would.  See _Through_the_Looking-glass_ about
`you would if you could.')

Vassil Nikolov <········@poboxes.com> www.poboxes.com/vnikolov
(You may want to cc your posting to me if I _have_ to see it.)
   LEGEMANVALEMFVTVTVM  (Ancient Roman programmers' adage.)

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    
From: Scott Ellsworth
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7crg59$cdv@journal.concentric.net>
groups trimmed - 2 is still too many, but they both are mentioned.

In article <·················@earthlink.net>, Marcel K Haesok 
<······@earthlink.net> wrote:
>    Lisp seems to be highly regarded language (though not very
>marketable) and it is NOT, as I found out, a OO language. It is, as they
>say, a FUNCTIONAL Programming language. If Lisp could be regarded with
>high esteem without being OO, then can the same logic apply to VB?

LISP brings other benefits to the table, and earns its high regard
that way.  As best as I can tell, VB is similar to Java and C++, and
so will be compared directly.  From where I sit, it is just not as
good a tool for the tasks I do.

>    Incidentally, could VB regarded as a functional programming
>language?

Not at all - functional languages, as oppossed to procedural ones,
must fit a fairly rigorous definition not far from the mathematics.
ISTR that all functions need to be stateless. though I may be
misremembering.  LISP is, as is the Mathematica language.

>    Before my second question, I will say that I do not think that a
>language can sustain its popularity by 'marketting' ALONE, as many seem
>to suggest regarding VB. So,
>    2. My second question is: What is the 'strength' of VB that is
>sustaining its viability? As compared to, say, Cobol, which indeed seems
>to be dying?

When the biggest player in the game makes it the language of choice,
it is going to have some staying power.

Scott

Scott Ellsworth          ·····@eviews.com
"When a great many people are unable to find work, unemployment 
results" - Calvin Coolidge, (Stanley Walker, City Editor, p. 131 (1934))
"The barbarian is thwarted at the moat." - Scott Adams
From: Marcel K Haesok
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36F1CAAD.96B020B@earthlink.net>
(singing),I am just a rookie, I am learning a lot, thanks for your insight.
Lalala. Marcel. Really, it's great! Thanks again.

Scott Ellsworth wrote:

> groups trimmed - 2 is still too many, but they both are mentioned.
>
> In article <·················@earthlink.net>, Marcel K Haesok
> <······@earthlink.net> wrote:
> >    Lisp seems to be highly regarded language (though not very
> >marketable) and it is NOT, as I found out, a OO language. It is, as they
> >say, a FUNCTIONAL Programming language. If Lisp could be regarded with
> >high esteem without being OO, then can the same logic apply to VB?
>
> LISP brings other benefits to the table, and earns its high regard
> that way.  As best as I can tell, VB is similar to Java and C++, and
> so will be compared directly.  From where I sit, it is just not as
> good a tool for the tasks I do.
>
> >    Incidentally, could VB regarded as a functional programming
> >language?
>
> Not at all - functional languages, as oppossed to procedural ones,
> must fit a fairly rigorous definition not far from the mathematics.
> ISTR that all functions need to be stateless. though I may be
> misremembering.  LISP is, as is the Mathematica language.
>
> >    Before my second question, I will say that I do not think that a
> >language can sustain its popularity by 'marketting' ALONE, as many seem
> >to suggest regarding VB. So,
> >    2. My second question is: What is the 'strength' of VB that is
> >sustaining its viability? As compared to, say, Cobol, which indeed seems
> >to be dying?
>
> When the biggest player in the game makes it the language of choice,
> it is going to have some staying power.
>
> Scott
>
> Scott Ellsworth          ·····@eviews.com
> "When a great many people are unable to find work, unemployment
> results" - Calvin Coolidge, (Stanley Walker, City Editor, p. 131 (1934))
> "The barbarian is thwarted at the moat." - Scott Adams
From: Marcel K Haesok
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36F1CF4C.F528E5DD@earthlink.net>
Scott Ellsworth wrote:

>
> LISP brings other benefits to the table, and earns its high regard
> that way.  As best as I can tell, VB is similar to Java and C++, and
> so will be compared directly.  From where I sit, it is just not as
> good a tool for the tasks I do.

Hi Scott,
    1. I was curious. What task are you involved? Must be a really
interesting project.
    2. Do you not think that Java's 'platform independence' is something
momentous in light of
        increasing usage of 'networking' and 'internet'? Do you think it is
much commercial hype?
Marcel
From: Marcel K Haesok
Subject: Re: Design Patterns by Gamma, Helm, Jonson and Blissides,
Date: 
Message-ID: <36FBC0DC.23690A80@earthlink.net>
Hi, 
	I was reading the following passage in the book:
	1. Program to an interface, not to an implementation. 
		Don't declare variables to be instances of particular concrete
classes. Instead, commit only to an interface defined by an abstract
class. You will 						find this to be a common theme of the design
patterns in this book.

	And I said to myself, holy Moses, what a radical statement!
	But then I realized that as ideal and radical as it may sound, if I
followed that advice, the program will be totally flexible and reusable.
What I would 				love to hear from experienced developers are two
things:

	1. How 'practical' is this advice? Is this sort of radical approach
'actually' practiced? 
	2. If 'interface' is preferrable to 'inheritance' in oo design,
wouldn't it follow that Java is much superior to C++? In the sense that
using interface is so 						much easier in Java than in C++? 
	
	Thanks. Marcel
From: Fernando D. Mato Mira
Subject: Re: Design Patterns by Gamma, Helm, Jonson and Blissides,
Date: 
Message-ID: <36FBDCB5.DF315872@iname.com>
Marcel K Haesok wrote:

>         I was reading the following passage in the book:
>         1. Program to an interface, not to an implementation.
>                 Don't declare variables to be instances of particular concrete
> classes. Instead, commit only to an interface defined by an abstract
> class. You will                                                 find this to be a common theme of the design
> patterns in this book.
>
>         And I said to myself, holy Moses, what a radical statement!
>         But then I realized that as ideal and radical as it may sound, if I
> followed that advice, the program will be totally flexible and reusable.
> What I would                            love to hear from experienced developers are two
> things:
>
>         1. How 'practical' is this advice? Is this sort of radical approach
> 'actually' practiced?
>         2. If 'interface' is preferrable to 'inheritance' in oo design,
> wouldn't it follow that Java is much superior to C++? In the sense that
> using interface is so                                           much easier in Java than in C++?

Well, I've been doing that in C++ for a couple of years now. The STL source was a real eye
opener (did not read that book until last year). Basically it involves setting up a convention
and discipline and writing a lot of typedefs in your classes. Using templates too. So this is something
more general than inheritance, although inheritance can be used, too.
It also means your redundant type declarations for variables and so on typical of C(++) [thank
you for the lack of type inference] become longer too, so here it goes more time wasted to typing
(but not _re_typing fortunately).

Isn't there something missing in Lisp here? I mean, I can't use some MOP wizardry inside a DECLARE, right?
Oh, I see. I have to define my own MY-DEFINE-CLASS macro..

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Darren Webb
Subject: Re: Design Patterns by Gamma, Helm, Jonson and Blissides,
Date: 
Message-ID: <36FC64D0.34804F6B@cs.adelaide.edu.au>
I would say that design by contract (the contract being the interface) is _the_
most effective OO design method.  Encapsulation is one of the great benefits of
an OO language such as Java and should be practiced all the time.  That said, I
believe many programmers are still too procedure-oriented such that 
encapsulation often isn't used.

On point 2, pure virtual functions in C++ are basically abstract classes.  I
think you'll find that the design patterns outlined are applicable to most 
OO languages - however, interfaces and abstract classes may be named 
differently.

BTW, I think what GoF are trying to say is program to the most general class, 
not the most specific.  Your programs will be be far more flexible the more
general you program to... again, there is the draw-back of how general you
get.

Just my thoughts...
Darren

Marcel K Haesok wrote:
> 
> Hi,
>         I was reading the following passage in the book:
>         1. Program to an interface, not to an implementation.
>                 Don't declare variables to be instances of particular concrete
> classes. Instead, commit only to an interface defined by an abstract
> class. You will                                                 find this to be a common theme of the design
> patterns in this book.
> 
>         And I said to myself, holy Moses, what a radical statement!
>         But then I realized that as ideal and radical as it may sound, if I
> followed that advice, the program will be totally flexible and reusable.
> What I would                            love to hear from experienced developers are two
> things:
> 
>         1. How 'practical' is this advice? Is this sort of radical approach
> 'actually' practiced?
>         2. If 'interface' is preferrable to 'inheritance' in oo design,
> wouldn't it follow that Java is much superior to C++? In the sense that
> using interface is so                                           much easier in Java than in C++?
> 
>         Thanks. Marcel

--
        Darren Webb                     Department of Computer Science,
      Research Student                  The University of Adelaide
                                        South Australia 5005
······@cs.adelaide.edu.au               Tel: +61 8 8303 6170
http://www.cs.adelaide.edu.au/~darren   Fax: +61 8 8303 4366
From: Didier H. Besset
Subject: Re: Design Patterns by Gamma, Helm, Jonson and Blissides,
Date: 
Message-ID: <7dn86l$bkd$2@news.swissonline.ch>
> 1. How 'practical' is this advice? Is this sort of radical approach
>'actually' practiced?
This is the way I have been programming for years and I found it VERY
practical.

> 2. If 'interface' is preferrable to 'inheritance' in oo design,
>wouldn't it follow that Java is much superior to C++? In the sense that
>using interface is so much easier in Java than in C++?
As was discussed in another thread, static typing gets in the way quickly
once you start extending the scope of the interface. In Java, you'd end up
rewriting the same code using different declarations.

A simple example:
Take a family of Beans which are essentially a TextField and Number format
working together: IntegerField, LongField, FloatField, DoubleField,
DateField, TimeField, TimeStampField.  In Smalltalk, there is a single
hierarchy in  which one one method is specific for each field, namely the
method decodeContents. In Java, you'a end up copying several other method
for the only reason that the declarations must be adapted to each case.

Didier
From: Fernando D. Mato Mira
Subject: Re: Design Patterns by Gamma, Helm, Jonson and Blissides,
Date: 
Message-ID: <36FF4992.10B1CBFA@iname.com>
"Didier H. Besset" wrote:

>
> method decodeContents. In Java, you'a end up copying several other method
> for the only reason that the declarations must be adapted to each case.

No macros. No templates. No parameterized interfaces/classes.
Java is not ready yet in the reuse department.

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Marco Antoniotti
Subject: Re: Design Patterns by Gamma, Helm, Jonson and Blissides,
Date: 
Message-ID: <lwlngga8om.fsf@copernico.parades.rm.cnr.it>
"Fernando D. Mato Mira" <········@iname.com> writes:

> "Didier H. Besset" wrote:
> 
> >
> > method decodeContents. In Java, you'a end up copying several other method
> > for the only reason that the declarations must be adapted to each case.
> 
> No macros. No templates. No parameterized interfaces/classes.
> Java is not ready yet in the reuse department.

I beg to differ. Apart from macros (which partitions languages into
the [CL], [Scheme-Dylan] and [everything else] equivalence classes,
with [CL] being the most (too much?!?) flexible), I'd say that the
top 'Object' inheritance scheme pretty much serves your (my) needs.

The only missing piece in earlier Java SDK's (< 1.2) was the lack of
the 'Comparable' interface implemented, say, by Integer et
similia. Sun fixed that, so now you can write parameterized priority
queues, trees and binary comparison based data structures rather
easily.

As per the "pattern" stuff, reading Gabriel's"Patterns of software"
was enlightining (though I came away with the idea that patterns are
neither a panacea nor an easy thing to set up).

Cheers


-- 
Marco Antoniotti ===========================================
PARADES, Via San Pantaleo 66, I-00186 Rome, ITALY
tel. +39 - 06 68 10 03 17, fax. +39 - 06 68 80 79 26
http://www.parades.rm.cnr.it/~marcoxa
From: Fernando D. Mato Mira
Subject: Re: Design Patterns by Gamma, Helm, Jonson and Blissides,
Date: 
Message-ID: <36FF6667.67817E43@iname.com>
Marco Antoniotti wrote:

> > No macros. No templates. No parameterized interfaces/classes.
> > Java is not ready yet in the reuse department.
>
> I beg to differ. Apart from macros (which partitions languages into
> the [CL], [Scheme-Dylan] and [everything else] equivalence classes,
> with [CL] being the most (too much?!?) flexible), I'd say that the
> top 'Object' inheritance scheme pretty much serves your (my) needs.

I like precise, concise, reified, non-fascist typing.

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Jim White
Subject: Re: Design Patterns by Gamma, Helm, Jonson and Blissides,
Date: 
Message-ID: <PVlM2.11963$qt5.2344@news.rdc2.occa.home.com>
Fernando D. Mato Mira wrote in message <·················@iname.com>...
>"Didier H. Besset" wrote:
>> method decodeContents. In Java, you'a end up copying several other
method
>> for the only reason that the declarations must be adapted to each
case.
>
>No macros. No templates. No parameterized interfaces/classes.
>Java is not ready yet in the reuse department.


Try Generic Java:
<http://www.math.luc.edu/pizza/gj/>

jim
------------------------------------------------------------
James P. White             Netscape DevEdge Champion for IFC
IFC Exchange  -  Insanely great Java  -  http://www.ifcx.org
From: Fernando D. Mato Mira
Subject: Generic Java (was: Design Patterns by Gamma, Helm, Jonson and Blissides)
Date: 
Message-ID: <37021CF1.4768A841@iname.com>
Jim White wrote:

> Fernando D. Mato Mira wrote in message <·················@iname.com>...
>
> >No macros. No templates. No parameterized interfaces/classes.
> >Java is not ready yet in the reuse department.
>
> Try Generic Java:
> <http://www.math.luc.edu/pizza/gj/>
>

But I read somewhere that there are several proposals in this area.
No standard => not ready .

BTW, Marco, I think the real problem I have is in how to translate heavily
template-dependent C++ code into Java, which is another kind of reuse.

[Strategy: move existing C++ code to Java, then use Kawa, for
Java-compatible/enabled/extensible
Lisp application. Should we talk about `CL on Scheme again'?].

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Marco Antoniotti
Subject: Re: Generic Java (was: Design Patterns by Gamma, Helm, Jonson and Blissides)
Date: 
Message-ID: <lwpv5plnxu.fsf@copernico.parades.rm.cnr.it>
"Fernando D. Mato Mira" <········@iname.com> writes:

> Jim White wrote:
> 
> > Fernando D. Mato Mira wrote in message <·················@iname.com>...
> >
> > >No macros. No templates. No parameterized interfaces/classes.
> > >Java is not ready yet in the reuse department.
> >
> > Try Generic Java:
> > <http://www.math.luc.edu/pizza/gj/>
> >
> 
> But I read somewhere that there are several proposals in this area.
> No standard => not ready .
> 
> BTW, Marco, I think the real problem I have is in how to translate heavily
> template-dependent C++ code into Java, which is another kind of reuse.

As they say in Italy: did you want the bicycle? :)

BTW. Am I mistaken, or do I really remember some thread where STLed C++
code ran "orders of magnitude" slower than pure C++? :)

> [Strategy: move existing C++ code to Java, then use Kawa, for
> Java-compatible/enabled/extensible
> Lisp application. Should we talk about `CL on Scheme again'?].

Much easier Scheme on CL. Or, CL on ... nothing. :)

Cheers

-- 
Marco Antoniotti ===========================================
PARADES, Via San Pantaleo 66, I-00186 Rome, ITALY
tel. +39 - 06 68 10 03 17, fax. +39 - 06 68 80 79 26
http://www.parades.rm.cnr.it/~marcoxa
From: Fernando D. Mato Mira
Subject: Re: Generic Java (was: Design Patterns by Gamma, Helm, Jonson and  Blissides)
Date: 
Message-ID: <37037442.CDCD6E2@iname.com>
Marco Antoniotti wrote:

> > BTW, Marco, I think the real problem I have is in how to translate heavily
> > template-dependent C++ code into Java, which is another kind of reuse.
>
> As they say in Italy: did you want the bicycle? :)

??

> BTW. Am I mistaken, or do I really remember some thread where STLed C++
> code ran "orders of magnitude" slower than pure C++? :)

Some cache effect? This would be good news for me, then I would not have to
worry
that in CL you can't `inline' structure/object components..

> > [Strategy: move existing C++ code to Java, then use Kawa, for
> > Java-compatible/enabled/extensible
> > Lisp application. Should we talk about `CL on Scheme again'?].
>
> Much easier Scheme on CL. Or, CL on ... nothing. :)

Yeah. But most people write _Scheme_ compilers :-(

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Paolo Amoroso
Subject: Re: Generic Java (was: Design Patterns by Gamma, Helm, Jonson and   Blissides)
Date: 
Message-ID: <370763e1.3878155@news.mclink.it>
On Thu, 01 Apr 1999 15:27:30 +0200, "Fernando D. Mato Mira"
<········@iname.com> wrote:

> Marco Antoniotti wrote:
[...]
> > As they say in Italy: did you want the bicycle? :)
> 
> ??

It's "Hai voluto la bicicletta? Adesso pedala!" in Italian, which is more
or less equivalent (I use an unoptimizing English compiler :-) to "Did you
want the bicycle? Then pedal!". In other words, if one takes a decision, he
must also accept the burden of all its consequences, both the good ones and
the bad ones.


Paolo
-- 
Paolo Amoroso <·······@mclink.it>
From: Fernando D. Mato Mira
Subject: Re: Generic Java (was: Design Patterns by Gamma, Helm, Jonson and    Blissides)
Date: 
Message-ID: <3709C1D1.1CCB5CB2@iname.com>
Paolo Amoroso wrote:

> On Thu, 01 Apr 1999 15:27:30 +0200, "Fernando D. Mato Mira"
> <········@iname.com> wrote:
>
> > Marco Antoniotti wrote:
> [...]
> > > As they say in Italy: did you want the bicycle? :)
> >
> > ??
>
> It's "Hai voluto la bicicletta? Adesso pedala!" in Italian, which is more
> or less equivalent (I use an unoptimizing English compiler :-) to "Did you
> want the bicycle? Then pedal!". In other words, if one takes a decision, he
> must also accept the burden of all its consequences, both the good ones and
> the bad ones.

But I didn't want the bicycle! I was forced to ride it because the SGI roads
were
too small for cars, and neither `Vector' nor `Lotus' seemed to care much about
other than driving down the same old highways (well, Lotus did try, but the
axle broke).

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Marco Antoniotti
Subject: Re: Generic Java (was: Design Patterns by Gamma, Helm, Jonson and   Blissides)
Date: 
Message-ID: <lwn20kk8oh.fsf@copernico.parades.rm.cnr.it>
"Fernando D. Mato Mira" <········@iname.com> writes:

> Marco Antoniotti wrote:
> 
> > > BTW, Marco, I think the real problem I have is in how to translate heavily
> > > template-dependent C++ code into Java, which is another kind of reuse.
> >
> > As they say in Italy: did you want the bicycle? :)
> 
> ??
> 
> > BTW. Am I mistaken, or do I really remember some thread where STLed C++
> > code ran "orders of magnitude" slower than pure C++? :)
> 
> Some cache effect? This would be good news for me, then I would not have to
> worry
> that in CL you can't `inline' structure/object components..
> 
> > > [Strategy: move existing C++ code to Java, then use Kawa, for
> > > Java-compatible/enabled/extensible
> > > Lisp application. Should we talk about `CL on Scheme again'?].
> >
> > Much easier Scheme on CL. Or, CL on ... nothing. :)
> 
> Yeah. But most people write _Scheme_ compilers :-(
> 

AFAIK. *most* people (J. Siskind apart) write Scheme *interpreters*
and/or Scheme->C translators.

Cheers


-- 
Marco Antoniotti ===========================================
PARADES, Via San Pantaleo 66, I-00186 Rome, ITALY
tel. +39 - 06 68 10 03 17, fax. +39 - 06 68 80 79 26
http://www.parades.rm.cnr.it/~marcoxa
From: Jim White
Subject: Re: Generic Java (was: Design Patterns by Gamma, Helm, Jonson and Blissides)
Date: 
Message-ID: <zwFM2.12404$qt5.2962@news.rdc2.occa.home.com>
Fernando D. Mato Mira wrote in message <·················@iname.com>...
>Jim White wrote:
>
>> Fernando D. Mato Mira wrote in message
<·················@iname.com>...
>>
>> >No macros. No templates. No parameterized interfaces/classes.
>> >Java is not ready yet in the reuse department.
>>
>> Try Generic Java:
>> <http://www.math.luc.edu/pizza/gj/>
>>
>
>But I read somewhere that there are several proposals in this area.
>No standard => not ready .


Well, considering that a language must be used before a truly good and
useful standard can be created, it seems you are in a rather vicious
catch-22.

The important standard in Java (which brings up the interesting point
that Sun has done absolutely nothing to introduce the ISO standard after
they got approval as the PAS for Java) is the Java Platform, which is
the JVM and API, the Java language is at best of secondary concern.

Class files compiled by Generic Java (as well as the more than 60 other
publically available languages for the JVM[1]) are every bit as useful,
reliable, compatible, distributable, testable, etc as any compiled from
Java source.  One of the terrific things about the Java Platform is that
interlanguage linking is usually quite trivial to the point of being
transparent.  The growing ubiquity and power of the Java Platform
supports a great renaisance in language development and deployment and
significantly adjusts the weights in the equation that determines what
language(s) is the best for a given application.

jim

[1] <http://grunge.cs.tu-berlin.de/~tolk/vmlanguages.html>

------------------------------------------------------------
James P. White             Netscape DevEdge Champion for IFC
IFC Exchange  -  Insanely great Java  -  http://www.ifcx.org
From: Fernando D. Mato Mira
Subject: Re: Generic Java (was: Design Patterns by Gamma, Helm, Jonson and  Blissides)
Date: 
Message-ID: <37037205.CA8B4079@iname.com>
Jim White wrote:

> The important standard in Java (which brings up the interesting point
> that Sun has done absolutely nothing to introduce the ISO standard after
> they got approval as the PAS for Java) is the Java Platform, which is
> the JVM and API, the Java language is at best of secondary concern.

I agree with this

> Class files compiled by Generic Java (as well as the more than 60 other
> publically available languages for the JVM[1]) are every bit as useful,
> reliable, compatible, distributable, testable, etc as any compiled from
> Java source.

But I don't care enough about the Java language to have to go fiddling
with several dialects, or having to translate the code again if the
particular
one I chose turns up to be a dead end. I'd rather spend some more effort
redesigning/reimplementing those 200K lines of C++ in something _standard_
that I really believe in, that is also portable, that does not forbid a JVM
implementation,
and is faster today: ANSI CL.

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Damon Feldman
Subject: Re: Design Patterns by Gamma, Helm, Jonson and Blissides,
Date: 
Message-ID: <7e0unc$800$1@camel0.mindspring.com>
Marcel K Haesok <······@earthlink.net> wrote:
>        1. Program to an interface, not to an implementation. 
>                Don't declare variables to be instances of particular concrete
>classes. Instead, commit only to an interface defined by an abstract
>class. 

>        And I said to myself, holy Moses, what a radical statement!
I think it is powerful, but not radical.  I read it as advocating 
polymorphism, one of the three pillars of OO programming.  (by abstracting 
away from the concrete class you put the decision making in the class 
heirarchy instead of explicit code.)

>        2. If 'interface' is preferrable to 'inheritance' in oo design,
>wouldn't it follow that Java is much superior to C++? In the sense that
>using interface is so  much easier in  Java than in C++? 

Interfaces are explicit in Java (there is an 'interface' keyword), but that is 
just to provide an alternative to mulitple inheritence.  The concept is in all 
OO languages (interfaces are easiest to use in Smalltalk, which has no type 
declarations at all).

d.
From: Marcel K Haesok
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <36FBC414.6D506276@earthlink.net>
Hi, 
	I am a relative rookie, but after perusing the language ngs, I came to
the following conlusion:
	<<<The "near/medium term future of computing" involves several keywords
and they are-- among others---'networking', 'internet', 'OO',
'portability', 'AI' and 'marketting power'>>>;
	To my mind, JAVA scores highest in that six criteria, thus promises to
be the dominant power. 
	Smalltalk and Lisp score highest in OO and AI perhaps, but not much in
the other four areas. Tell me where my argument is flawed. Thanks
	Marcel
From: Fernando D. Mato Mira
Subject: Lisp futurology, devination, dellusion et al. (was: Beating the dead  horse again about VB)
Date: 
Message-ID: <36FBD911.49DEDCA3@iname.com>
Marcel K Haesok wrote:

>         I am a relative rookie, but after perusing the language ngs, I came to
> the following conlusion:
>         <<<The "near/medium term future of computing" involves several keywords
> and they are-- among others---'networking', 'internet', 'OO',
> 'portability', 'AI' and 'marketting power'>>>;
>         To my mind, JAVA scores highest in that six criteria, thus promises to
> be the dominant power.
>         Smalltalk and Lisp score highest in OO and AI perhaps, but not much in
> the other four areas. Tell me where my argument is flawed. Thanks

You forgot at least: `multimedia', `3D',`IT workforce shortage', `adaptability'

Java does not score very high in the first two yet (it probably will).
The third means increasing programming in 4GL (in a more general sense,
not just for DB apps) languages and AI (developing 5GL tools),
and less 3GL-level programming.
I can imagine Lisp losing ground everywhere (don't forget
the ML/Haskell/etc. generation).

Fortunately for Lisp, it easily extends to 4GL anf 5GL.
Eventually, when Java falls out of favor, Smalltalk should too (if it has not
before).
Unless they have fixed the `adaptability' thing, which would come
in the form of a complex macro system `a la Dylan', or an easy one based
on an alternative simpler syntax.
Whichever of the two, they just keep getting closer.

For 3GL, Lisp is the `computer language space attractor'. Hm. I said `losing
ground' ?

PS: Why isn't there a `popular' purely functional language with nice parenthesis
and macros?

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html
From: Vassil Nikolov
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <7dgrh5$dd4$1@nnrp1.dejanews.com>
In article <·················@earthlink.net>,
  Marcel K Haesok <······@earthlink.net> wrote:
> Hi,
> 	I am a relative rookie, but after perusing the language ngs, I came to
> the following conlusion:
> 	<<<The "near/medium term future of computing" involves several keywords
> and they are-- among others---'networking', 'internet', 'OO',
> 'portability', 'AI' and 'marketting power'>>>;
> 	To my mind, JAVA scores highest in that six criteria, thus promises to
> be the dominant power.
> 	Smalltalk and Lisp score highest in OO and AI perhaps, but not much in
> the other four areas. Tell me where my argument is flawed. Thanks

(A) I see no argument here, just conclusions.
(B) I disagree with them.  (Don't ask me why, this is just FYI.)
This makes it too hard for me to try to recreate the argument to look
for flaws.

By the way, a keyword is not a criterion.

Vassil Nikolov <········@poboxes.com> www.poboxes.com/vnikolov
(You may want to cc your posting to me if I _have_ to see it.)
   LEGEMANVALEMFVTVTVM  (Ancient Roman programmers' adage.)

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    
From: Erik Naggum
Subject: Re: Beating the dead horse again about VB
Date: 
Message-ID: <3131534674877050@naggum.no>
* Marcel K Haesok <······@earthlink.net>
| I am a relative rookie, but after perusing the language ngs, I came to
| the following conlusion:

| <<<The "near/medium term future of computing" involves several keywords
| and they are-- among others---'networking', 'internet', 'OO',
| 'portability', 'AI' and 'marketting power'>>>;

  this isn't a statement of a conclusion of an argument.

| Tell me where my argument is flawed.

  easy: there is no argument, just a marketingese catch-phrase.  and all we
  can say about such is that the future is believed to be made out of them,
  but the present is not.

#:Erik