: >(This implies that object-oriented technology in the broader sense can : >impart a sense of joy and accomplishment, which beats bone-head : >programming in C, C++, or SmallTalk.)
: I understand the "sense of joy", but it is not isolated to OO. I have : experienced this "joy" when using other methods too. I have : experienced this "joy" when using no method at all. I have even : experienced this "joy" when writing bone-head programs in C, C++ and : Smalltalk. That "joy" is the reason that I am a software engineer. : (Would that that were true for more software engineers.) I love : designing and writing sofware. It is a good thing people pay me for : it, because if they didn't, I would pay them.
Actually, in many ways programming is close to poetry. Just as in poetry, good programmers feel joy and inspiration solving interesting problems. Reading a good program is no more boring than reading a good poem. Small programs can be just as funny as poetic jokes. I myself experience great pleasure writing code that I consider good. A great emotional attachment to programming languages and techniques cannot be explained by rational reasons.
Just as with poetry, there are true geniuses like Knuth, Stallman or Ritchie, and programming has its share of careless people, graphomaniacs and crooks. People who write programs for salary's sake only are just as universally despised as greedy poets. There are even "schools" in programming, mainstream and non-mainstream methods. There is even programming decadance (obfuscated C).
Good programming solutions live forever and are infinitely reused.
Programming is poetry for the right brain hemisphere. It is just as inspirational - remember programmers who work nights long. It spills it influence to other areas, such as mathematics. As Misha Verbitsky suggested, some works of programmers (GNU Manifesto) extend even to the heavens of philosophy.
Unfortunately, left-hemisphere ("normal") poets and programmers have hard times understanding and recognizing each other.
In article <45h5gt$...@taco.cc.ncsu.edu>, ichu...@galstar.com (Igor
Chudov) wrote:
[SNIP!]
> Programming is poetry for the right brain hemisphere. It is just > as inspirational - remember programmers who work nights long. It > spills it influence to other areas, such as mathematics. As Misha > Verbitsky suggested, some works of programmers (GNU Manifesto) > extend even to the heavens of philosophy.
Yes, I find the GNU manifesto rather beautiful as well. It infects friends of mine who care about programming with a shared sense of the possiblities of community among programmers. I remember it every time I feel the urge to hoard information rather than share it, and make the right choice.
Can we nominate Richard Stallman for a Nobel prize?
Chris
------------------------------------- -- Chris Morgan, BAeSEMA Limited -- chris.mor...@baesema.co.uk ------------------------------------- -- Team Ada -------------------------------------
: In article <45h5gt$...@taco.cc.ncsu.edu>, ichu...@galstar.com (Igor
: Chudov) wrote:
: [SNIP!] : > Programming is poetry for the right brain hemisphere. It is just : > as inspirational - remember programmers who work nights long. It : > spills it influence to other areas, such as mathematics. As Misha : > Verbitsky suggested, some works of programmers (GNU Manifesto) : > extend even to the heavens of philosophy.
: Yes, I find the GNU manifesto rather beautiful as well. It infects friends : of mine who care about programming with a shared sense of the possiblities : of community among programmers. I remember it every time I feel the urge : to hoard information rather than share it, and make the right choice.
: Can we nominate Richard Stallman for a Nobel prize?
Well I am not sure that any Nobel prize really applies to the cause of free software. Nobel was rather specific on the fields to which the prize should be given (there is for example no Nobel prize in mathematics, supposedly because his wife ran off with a mathematician)
Note that Stallman did receive a McArthur "genius" award, which was a well-deserved acknowledgement of his contributions.
| The first two first rate scholars; Don Knuth is a first rate | educator. | | Stallman is not a scholar, or an educator. Stallman is an avowed | humanist, placing man at the center of the universe, not God.
a religious fanatic at work. how quaint.
| Stallman has had absolutely no effect whatsoever on the development of | Eiffel, as far as I know, and no Eiffel compiler vendor has bought into | the lame gnu license copywrong.
this may be why Eiffel is not much used.
| Your argument is invalid, and your ethics reek of subterfuge.
before anyone replies to "the retired reverend", note that his attitude to responding to those who reply to him is as follows:
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ Colin James III (The Rt Rev'd) does not read electronic mail which is unsolicited, as was the post above, but may be reached by US Mail at:
ignore him. there are always people who will work against anything great. typically, they hide behind some religion to denigrate good men to please their own fantasies.
RMS has certainly changed my mind over the past decade, from ardent believer in the right to control software, but this is like refusing students of the theater to read plays unless they pay for the right to perform it, to ardent believer in the benefits of reading source code. like in all other written art, one learns by studying the masters. RMS has made this possible and now also popular in the art of software. if anything, the lasting effect of his work will be improved skills among programmers, a true historic effect on the art. considering the quality of commercial software, we should be thankful that someone is workign to give students of programming access to the great lore of their predecessors, instead of reinventing wheels over and over again.
I'd nominate RMS for a Nobel Prize in Literature, for bringing the art of writing computer software into the realm of the literate.
#<Erik 3023193775> -- a good picture may well be worth a thousand words, but on the WWW, even bad imagemaps cost tens of thousands of words.
Colin James III allegedly wrote with possible deletions:
: Stallman is not a scholar, or an educator. Stallman is an avowed : humanist, placing man at the center of the universe, not God.
The religious views of Stallman, or Colin have nothing to do with the topics of these groups, and have no place here.
: Stallman has had absolutely no effect whatsoever on the development of : Eiffel, as far as I know, and no Eiffel compiler vendor has bought : into the lame gnu license copywrong.
Why are you discussing Eiffel in your post to comp.software-eng,comp.object, comp.lang.ada,comp.lang.lisp? You didn't even include comp.lang.eiffel.
: Your argument is invalid, and your ethics reek of subterfuge.
These ad hominem attacks are not worthy of someone who claims religious righteousness. I can only assume that some nut is impersonating the "Rt. Rev'd" Colin James III.
Discussion subject changed to "Ethics in programming (was Re: Poetry in programming (Was: Re: Comparing OO against Structured Methodologies))" by Jay Martin
chris.mor...@baesema.co.uk (Chris Morgan) writes: >In article <4662m6$...@caleddon.dircon.co.uk>, Simon Brooke ><si...@rheged.dircon.co.uk> wrote: >[SNIP] > programmers first. There are some people -- a very few -- who through their >> contribution have changed the nature of the task and thus of our lives.
>> To name my particular heroes (one could name others) >> Alan Turing set the intellectual framework for programming; >> Donald Knuth contributed greatly to the aesthetic framework; >> Richard Stallman has contributed greatly to the ethical framework. >[SNIP] >In addition to the GNU manifesto and project (especially emacs and GCC) >which most here know and appreciate, I think his insight into the GNAT >library model (no library, reparse on the fly) was a major breakthrough. >With enough memory around, GNAT demolishes all other known compilers. When >I go back to any old compiler I just don't like it (maybe that's >irrational but it's true).
I think the GNAT library design is trash, not some miracle of Computer Science. My objection is that it makes a connection between file names and library units that shouldn't be there. Treating Ada files like ".h" include files is not my idea of brilliant. There is no reason in my mind why the classical library approach could not be same or faster than the ".h" include approach. I am not impressed with GNU software since it is written in (or compiles) C which in my view just degrades and stops progress in the programming community. I use GCC and emacs but I am not really impressed with the design of emacs. I think Stallmans leftist free-software philosophy/movement is great.
On to Knuth, his contribution to the field of Algorithms and CS Math is unquestionable. I question more the genis "programming" side. - His Algorithm books used (bleh) assembly. - Defended the use of GOTO's in the 70's. - I am not impressed with "Literate Programming" which basically just shoved typeset comments in the code. Even worse the system took over the structuring of programs: subroutines, abstract data structures, objects, etc and replaced them with some silly paragraph structure and super macro pre-processor.
I think more of: Ichbiah, Stroustrup and Meyers in the programming area.
Colin James III (The Rt Rev'd) (cja...@cec-services.com) wrote: * The first two first rate scholars; Don Knuth is a first rate * educator. * Stallman is not a scholar, or an educator. Stallman is an avowed * humanist, placing man at the center of the universe, not God.
:)
* Stallman has had absolutely no effect whatsoever on the development of * Eiffel, as far as I know, and no Eiffel compiler vendor has bought * into the lame gnu license copywrong.
Which is one of the main reasons why Eiffel has little popularity.
You know you have achieved perfection in design, not when you have nothing more to add, but what you have nothing more to take away. - Antoine de Saint Exupery.
Discussion subject changed to "Ethics in programming (was Re: Poetry in programming (Was: Re: Comparing OO against Structured Methodologies))" by Chris Morgan
programmers first. There are some people -- a very few -- who through their
> contribution have changed the nature of the task and thus of our lives.
> To name my particular heroes (one could name others) > Alan Turing set the intellectual framework for programming; > Donald Knuth contributed greatly to the aesthetic framework; > Richard Stallman has contributed greatly to the ethical framework.
[SNIP]
In addition to the GNU manifesto and project (especially emacs and GCC) which most here know and appreciate, I think his insight into the GNAT library model (no library, reparse on the fly) was a major breakthrough. With enough memory around, GNAT demolishes all other known compilers. When I go back to any old compiler I just don't like it (maybe that's irrational but it's true).
Anyway, what I believe Richard wants more than gongs is contributions, which is why I got my company to buy a box full of manuals for GCC and emacs from them. This helps the FSF and so furthers the GNU ideal. The fact that they are well-produced and exceptionally well written, and emacs is boosting productivity all around me is, or course, very welcome as well. You buy manuals from Sun if you buy their software, so you should consider buying manuals from FSF if you use their software to ensure it continues to develop.
e-mail responses are more likely to reach me.
Chris
------------------------------------- -- Chris Morgan, BAeSEMA Limited -- chris.mor...@baesema.co.uk ------------------------------------- -- Team Ada -------------------------------------
In article <468q9m$...@saba.info.ucla.edu>, jmar...@cs.ucla.edu (Jay
Martin) wrote:
[SNIP]
> I think the GNAT library design is trash, not some miracle of Computer > Science. My objection is that it makes a connection between file > names and library units that shouldn't be there. Treating Ada files > like ".h" include files is not my idea of brilliant. There is no > reason in my mind why the classical library approach could not be same > or faster than the ".h" include approach. I am not impressed with GNU > software since it is written in (or compiles) C which in my view just > degrades and stops progress in the programming community. I use GCC > and emacs but I am not really impressed with the design of emacs. > I think Stallmans leftist free-software philosophy/movement is great.
[SNIP] I dont think its a "miracle" either. However it's a big step forward compared to other Ada compilers that I have used. There is an extremely important distinction between the GNAT library model and C or C++. For example, I don't recall having to put hash defines in Ada specs to stop the compiler doing them twice as you have to in the C++ I use. As to the filename limitation, well I'm sure someone will eventually do the tool that hides this from you if you want. I personally don't see a problem.
As for GNU being poor because of C, well that is just prejudice! How many other people do you think would criticize the writers of an operating system for using C? The phrase portable assembler describes C perfectly. Emacs is mostly written in elisp, and now with GNAT you could contribute software in Ada95 if you so chose.
At least we can agree on the GNU ideal anyway.
Regards,
Chris
------------------------------------- -- Chris Morgan, BAeSEMA Limited -- chris.mor...@baesema.co.uk ------------------------------------- -- Team Ada -------------------------------------
In article <dewar.814248052@schonberg>, de...@cs.nyu.edu (Robert Dewar) writes: >Jay thinks that the library design is trash, but actually his objection seems >rather slight, he just does not like the fact that file names are connected >to unit names.
[Snip]
>So far, Jay's note is the only strong vote I have seen for moving in >this direction. For myself, having used many Ada compilers, I much >prefer the GNAT approach. I don't mind having to name my files >canonically, it seems like a good idea in any case, and the advantages >of having absolutely NO centralized data structures, and a compilation >model that is similar to the rest of the world and very light, seems >a real advantage.
>So, is Jay a lone voice or a small minority, or is it worth adding >this extra level of optional complexity to GNAT (it would not be a big >implementation effort by any means -- I am more concerned with the >extra complexity of use and description than in the implementation >effort).
I wouldn't put it quite as strong as Jay, I don't think the approach is complete trash. However, after having used many Ada compilers over the last 10 years, I happen to very much like the DEC approach of library management.
"or faster than the ".h" include approach. I am not impressed with GNU software since it is written in (or compiles) C which in my view just"
That's a common misconception with respect to GNAT. It is completely False. The GNAT front end is written in Ada 95, not in C. It does not in any sense compile C or compile into C.
Jay thinks that the library design is trash, but actually his objection seems rather slight, he just does not like the fact that file names are connected to unit names.
Fair enough, but let's look at this issue in a little calmer manner. First, if you want a system with a central library, where there is no connection between file names and unit names, this is easily achievable with a simple set of shell scripts. Jean Pierre Rosen has for instance written such a system as a set of simple REXX scripts for OS/2. Of course if you adopt this approach then you get all the problems (maybe Jay thinks they are advantages in his view) of having to follow a specific order of compilation.
It would also be quite easy to optionally have a mechanism of using a centralized file which did file name translations. Indeed this was part of the original design.
The advantage is that you break the need for a connection between the names. The disavdnatgae is that you now have a centralized data structure, which existing configuration management systems don't know about, and which has to handle common access from parallel compilations. Also, if this file is yupdated by compilation, you also have introduced an order of compilation requirement.
We discussed this a couple of times before, once on the old gnatchat mailing list and once on comp.lang.ada. The consensus in these discussions was that it was not worth the trouble, and extra complexity. It is certainly something that can be revisited.
Right now, my impression is that most GNAT users are either quite happy with the naming convention (it actually has some definite advantages, you know immediately what file to look in from the name of the unit). Others find that gnatchop meets their needs.
But we can certainly revisit the file name mapping option sometime. I believe that the Intermetrics compiler, while pretty similar to the GNAT approach in its source orientation, except that it has such a centralized name translation file.
So far, Jay's note is the only strong vote I have seen for moving in this direction. For myself, having used many Ada compilers, I much prefer the GNAT approach. I don't mind having to name my files canonically, it seems like a good idea in any case, and the advantages of having absolutely NO centralized data structures, and a compilation model that is similar to the rest of the world and very light, seems a real advantage.
So, is Jay a lone voice or a small minority, or is it worth adding this extra level of optional complexity to GNAT (it would not be a big implementation effort by any means -- I am more concerned with the extra complexity of use and description than in the implementation effort).
Discussion subject changed to "Re C as portable assemble (was Re: Ethics in programming (was Re: Poetry in programming (Was: Re: Comparing OO against Structured Methodologies)))" by mfin...@inmind.com
Subject: Re C as portable assemble (was Re: Ethics in programming (was Re: Poetry in programming (Was: Re: Comparing OO against Structured Methodologies)))
In <chris.morgan-2110951325550...@baesema4.demon.co.uk>, chris.mor...@baesema.co.uk (Chris Morgan) writes:
>The phrase portable assembler describes C perfectly.
I have to take exception to this. I have seen people state this over and over and it is flat wrong. C is no more a portable assembler than PASCAL is. It is simply richer. It contains all of the traditional "high level" control structures. It contains the expected primitive data elements. And it just happens to contain a few additional operations on those primitive data elements -- but far from the entire set that you might expect in an assembler.
What it does NOT contain that assembler languages contain, as a rule of thumb, are...
1. Registers. The "register" keyword doesn't count because it isn't really specifying a register. It is just giving the compiler an optimization hint.
2. Many operators. Where are the arithmetic right shifts? Certainly (as per the standard) not in C. The vendor may or may not choose to provide them. Where are the rotates? Where is the ability to have label variables -- so that you can directly implement things like the switch control structure at a low level.
3. Where is the processor information such as carry flags? Such as result flags from comparisons?
4. Where are the assembler "statements" which correspond to two or three address expressions. The C expression is too high level to be considered a candidate because you cannot control the precise statements generated and their order of generation.
What would a portable assembler language look like? It would probably have an infinite number of registers, each of a specific length. It would have the missing operations. It would have the carry flag or some other way to directly access the results of comparisions and shifts/rotates. The carry flag is esential to many assembler algorithms because it is the basic mechanism used to (efficiently) combine operations to obtain similar operations on larger operands. It would have available the ability to explictly sign or zero extend values. It would have the X * X -> XX (single precision input to double precision output using two registers) type of multiplication which is essential to efficient implementation of unbounded arithmetic precision packages.
I am interested in defining a portable assembler language that captures most of the assembler facilities used by application programming (ignoring the operating system part of the hardware.) C is a far cry from what is needed. It is simply a high level language (no less so that PASCAL which nobody has ever described as a portable assembler language) with a few more operations than most languages and not as many as some.
Discussion subject changed to "Ethics in programming (was Re: Poetry in programming (Was: Re: Comparing OO against Structured Methodologies))" by Job Honig
>I think the GNAT library design is trash, not some miracle of Computer >Science. My objection is that it makes a connection between file >names and library units that shouldn't be there. Treating Ada files
This has been discussed several times now... If you look at the full set of Gnat tools, there is no such connection AT ALL. If you use gnatchop, you may choose the file names you want; gnatchop will generate the "intermediate" source files that gnat requires.
"I wouldn't put it quite as strong as Jay, I don't think the approach is complete trash. However, after having used many Ada compilers over the last 10 years, I happen to very much like the DEC approach of library management."
One thing to investigate here is what it is that you liked about the DEC approach. Any or all of it can be simply duplicated with GNAT. As far as I know, only Jean Pierre Rosen has actually done the work of duplicating a conventional Ada library system. Since the amount of work is trivial, the fact that no one has done it says something already!
Things I do NOT like about the conventional library system are:
o Required order of compilation o One compilation affects others o Meaning of program depends on order of compilation o Conventional tools don't understand Ada library
Now if you find these advantages, you can certainly rig up a little script to give identical effects with GNAT. Here is an outline of how it would work:
Establish a directory to be used as the Ada library. This is a black box as far as the user of the system is concerned, like a traditional Ada library. Into this directory will go source, ali, and o files, but the source files are not the input source files that the programmer deals with.
To compile a new file:
gnatchop the file into a temporary directory (not the Ada library directory).
In the order that the files were gnatchopped, copy them into the Ada library directory and compile them.
Note: use the -r switch on the gnatchop so that error messages and the debugger refer back to the original files.
When you are ready to build a program, use gnatmake to build the main program from the library directory.
That's all there is to it. This scheme will exactly duplicate the behavior of a conventional library system, including enforcing an order of compilation, meaning of program depends on order of compilation, parallel compilation has to be very careful of the shared data base etc.
I certainly wold not take this approach, because it seems to work hjard to establish a set of dsadvantages, but one persons' disadvantage is another persons desirable feature, so if you want this you can have it.
However, when I have talked further with people syaing that they like for example the DEC library system, it is not so much that they are after the fundamental semantics of a centralized library system. Instead what they often are asking for is a nice interface for managing their library.
In normal use of GNAT, your library is your set of sources. You absolutely need tools for managing this set of sources that are analogous to the kind of commands used to manage a DEC library.
If that is what you are after, then I think it is better to concentrate on building these tools with respect to the working set of sources. Certainly I have dozens of command files (shell scripts) around in my OS/2 environment to provide this kind of management.
Creating these tools is basically trivial, because there is no mystery here -- GNAT source files are just ASCII files. For example, you might want to use CONTINUOUS to manage your source files for you if you like that moel.
What we need to build up is a standard set of such tools. One trivial example that has been around for a while is gnatk8, the little utility that gives the file name given the unit name. Obviously you need the inverse of this, that gives the unit name, given the file name. The SGI version has the latter utility in the distribution, and we should certainly add it -- it is on the list of things to do! These are of course building blocks for other scripts.
By the way, the mapping of unit names to file names is entirely concentrated in one unit of the compiler, Fname, so it is easy to play with alternative schemes, including for eample a centralized directory.
A nice scheme would be to have a name server that is separate from the compiler. The default server would just do the alogorithmic translation that is done now, but alternative servers could provide more general directory based, or even configuration manager based, approaches to the mapping from unit names to file names.
This actually seems quite attractive. I wonder how much extra overhead it would introduce, and how much extra complexity. The server would need to be some DLL, or DLL equivalent -- interesting, worth looking into!
Anyway, what is helpful in this discussion is to try to be as specific as you can about what you would like to be able to do, and what features you would like to see. GNAT is really simply a building block used to assemble an Ada compilaion system. The approach it takes israther low level, which has the advantage that it can fit into almost any scheme that you have in mind.
In some cases, this is achieved simply with a set of scripts (for example, I never type a gcc command, I use one of my higher level scripts). In other cases, quite small changes to the compiler may enable solutions that meet currently unmet needs.
Discussion subject changed to "Re C as portable assemble (was Re: Ethics in programming (was Re: Poetry in programming (Was: Re: Comparing OO against Structured Methodologies)))" by Chris Morgan
Subject: Re: Re C as portable assemble (was Re: Ethics in programming (was Re: Poetry in programming (Was: Re: Comparing OO against Structured Methodologies)))
In article <46bc28$...@mujibur.inmind.com>, mfin...@inmind.com wrote: > In <chris.morgan-2110951325550...@baesema4.demon.co.uk>, chris.mor...@baesema.co.uk (Chris Morgan) writes:
> >The phrase portable assembler describes C perfectly.
> I have to take exception to this. I have seen people state > this over and over and it is flat wrong. C is no more a portable
Unix was the first portable operating system because it was rewritten in C in 1973. WindowsNT is also largely written in C and is hosted on several leading architectures. This fact is often quoted as one of the reason these large powerful and successful operating systems exist. No one ever means to suggest you can do without direct access to assembly language for certain tasks. Anyway, if I drop the offending phrase and try to explain what I meant, C is beneficial to use for some low-level functionality which might otherwise be expressed in (less-portable) assembler. If a 'real' portable assembler were made, it might be vastly superior. However in the situation we have currently, it makes no sense to attack C or GNU software because Ada is better, since they're not really addressing the same problem.
Cheers,
Chris
------------------------------------- -- Chris Morgan, BAeSEMA Limited -- chris.mor...@baesema.co.uk ------------------------------------- -- Team Ada -------------------------------------
[re: sharing sources, etc] RMS has made this possible and now also popular in the art of software.
I'm sorry, but RMS has done no such thing. The sharing of source code has always been popular amongst Real Computers. All RMS has done is encourage it in the eunuchs world. In fact, it used to be normal that when you bought a computer, you got the monitor sources with it.
RMS was an extremely brilliant person. His contribution to the computer world -before- 1980 was exceptional. But somewhere between 1980-83 something seems to have happened to him: he was forced to cram a 36-bit brain into a 32-bit world load; it seems to be turning him into cream cheese.
RMS' ITS EMACS was amazing and a Great Leap Forward; RMS' GNU Emacs pales in comparison to what other people have done--Symbolics Zmacs, Twenex EMACS, Multics Emacs, etc. This I believe is primarily because of the difficulty of writing decent software on a eunuchs platform. I admit GNU Emacs comes closer to winning than anything else that exists on eunuchs, but in the end it is dead on the game grid.
I think RMS' problem -is- eunuchs, in fact: the decay of his brain is well coordinated with his eunuchification.
I disagree that RMS should have a nobel prize--it wouldn't do him any good. What I think would do him the most good is for someone to give him a KL10 and a TV terminal, and incinerate all his current losing machines.
You know, eunuchs really is a damn good name for such a dickless operating system.
Discussion subject changed to "Gnat and Library (was Re: Ethics in programming (was Re: Poetry in programming (Was: Re: Comparing OO against Structured Methodologies)))" by Albert F. Niessner III
In article <dewar.814288174@schonberg> de...@cs.nyu.edu (Robert Dewar) writes:
. . . SNIP
Establish a directory to be used as the Ada library. This is a black box as far as the user of the system is concerned, like a traditional Ada library. Into this directory will go source, ali, and o files, but the source files are not the input source files that the programmer deals with.
To compile a new file:
gnatchop the file into a temporary directory (not the Ada library directory).
In the order that the files were gnatchopped, copy them into the Ada library directory and compile them.
Note: use the -r switch on the gnatchop so that error messages and the debugger refer back to the original files.
When you are ready to build a program, use gnatmake to build the main program from the library directory.
. . . SNIP
This is what I tried to do with the original "librarian" that I posted a while back. However, the -r on gnatchop does not retain the path that the source is located in. If I do a gnatchop -r hello_world I get a pragma Source_Reference (000001, "hello_world.ada"); This does not have the source path, so if I then go and move the .ad[bs], .o, and .ali files I loose the correct referencing to the source -- I tried it with the full path name on the gnatchop and found it and got the same pragma. So the above steps are really not complete if you want to use the fully integrated emacs and gnat (gdb is really the one who has a problem finding the source).
What I would like to see for "librarian" support is switch added to gnatbl and gcc that would allow me to define how to map a unit name to a file name. If the option is not used, then use the current method. It seems this would solve most everyone's complaint about the naming convention of the source because they could do it their way instead of living with someone elses standard.
I don't know much about debuggers -- other than how to use them -- but when source is compiled is the complete path and file name of the source saved in the object code as debugging info? So given the above wish were to come true, would gcc use the full path and file name of the source being used in the object file allowing gdb to always find the source file correctly? Or do you always have to use directory and path commands in gdb? Either is fine I'm just curious, and it seems it would be better for the debugger if I always used the directory and path commands.
Even when I use the gnatchop -r, gdb still looks for the .adb files instead of the original. Want proof:
afniii@hades : more hello_world.adb pragma Source_Reference (000001, "hello_world.ada");
. . .
afniii@hades : gcc -c -ggdb hello_world.adb afniii@hades : gnatbl hello_world.ali afniii@hades : rm hello_world.adb afniii@hades : gdb hello_world GDB is free software and you are welcome to distribute copies of it under certain conditions; type "show copying" to see the conditions. There is absolutely no warranty for GDB; type "show warranty" for details. GDB 4.14 (sparc-sun-solaris2.3), Copyright 1995 Free Software Foundation, Inc... (gdb) break _ada_hello_world Breakpoint 1 at 0x1e4cc: file hello_world.adb, line 12. (gdb) run Starting program: /home/afniii/Temporary_Space/Ada_Temp/hello_world
Breakpoint 1, _ada_hello_world () at hello_world.adb:12 hello_world.adb:12: No such file or directory. (gdb)
It still looks for the .adb file -- I deleted .adb so that the error would be obvious. This is the generic version of gdb NOT the Ada aware version -- because it supported only with SunOS 4.1.3 (when I last checked several weeks ago).
| some of us think eunuchs is _better_ than the (d)ossified crap that is | sold to the masses.
[Daniel Finster]
| I wouldn't know. I havn't used an MS-DOS system in over 3 years. | MS-DOS is hideous, but there are ways in which eunuchs is worse.
you missed the point. by emphasising "better", I intended to prepare for the point that was coming up later, about marketing. we use "better" tools, not "good" tools. at the very least, we focus on the better sides, not on the worst possible aspects. otherwise, going nuts fast is inevitable.
| He's still a flake though. Here's a piece of some mail I got in | response to my original post:
really? we discussing the psychology of RMS, now? you're taking us on a field trip of your strongest dislikes, aren't you, Daniel? what for?
| I just wanted you to know that you are not at all off-base in | your assessment. Surely, a huge load of weird derelict disciples | of Stallman will send you reams of hate mail accusing you of hate | crimes and all sorts of lunatic ravings. Just ignore them. Most | of the flakes are also homeless bums who call themselves ``GNU | volunteers''.
I wonder what's wrong with whoever wrote this. I've seen a lot of people express the most intense hatred for RMS, with an accompanying deep interest in vilifying those who work on GNU projects or with him. frankly, whatever it is that might be true in what they say, why should anybody listen to them when _they_ don't want others to listen to someone that _they_ think is mad? it doesn't make much sense, does it?
I think I shall never see... someone able to criticize RMS or GNU without going into patently silly attacks of rampant emotionalism. just because one thinks something that someone does is good, deserves applause, and should be widely recognized, doesn't mean that one is in love with the guy, is willing to swallow his every utterance, is a "weird derelict disciple" (nor an ordinary disciple), nor will defend him on every count, but it does, of course, mean that those who attack him on the basis of irrelevant feelings or issues should be countered simply because they do not present the whole truth, only the part of it that they self-servingly want to be perceived as the whole truth in order to be relieved of the duty to present actual arguments. a clear case of "argumentum ad hominem".
_any_ sense of fairness and justice demands that both sides be heard, and the kind of one-sided prejudice that we see in attacking and judging RMS can only be to the discredit of the attackers.
I mean, Louis Farrakhan managed to lead this half-million man march, and although he is the most despicable black man that walks the surface of the North American land, people _still_ could discuss the purpose of the march without getting all worked up and getting fanatically myopic about the issue of his racism, anti-semittism, and sexism. how? the man is clearly sick and sick men who manage to command half a million men is a clear and present danger to any society. but it's RMS that needs to be attacked. pity the small minds that can see no further than their nose.
furthermore, normal people lead normal lives. those individuals who cross the prevalent views in society will be branded as mad and shunned by their contemporaries, but may be hailed as forerunners by a future society and by those who are less fearful of change and novelty. being a pioneer in any field is always a sign of unwillingness to succumb to what currently passes for "normalcy". given this, what point is there in ranting and raving with those silly "he's a basket case" labels? it can but unite those who _are_ weird derelict disciples. it can also only nuture any latent or present paranoia: it is a matter of fact that people _are_ out to get RMS, right?
I think "irrational fear of RMS" should be a recognized phobia.
#<Erik 3023632684> -- a good picture may well be worth a thousand words, but on the WWW, even bad imagemaps cost tens of thousands of words.
Discussion subject changed to "Ethics in programming (was Re: Poetry in programming (Was: Re: Comparing OO against Structured Methodologies))" by Robert I. Eachus
In article <dewar.814248052@schonberg> de...@cs.nyu.edu (Robert Dewar) writes:
> Fair enough, but let's look at this issue in a little calmer > manner. First, if you want a system with a central library, where > there is no connection between file names and unit names, this is > easily achievable with a simple set of shell scripts. Jean Pierre > Rosen has for instance written such a system as a set of simple > REXX scripts for OS/2. Of course if you adopt this approach then > you get all the problems (maybe Jay thinks they are advantages in > his view) of having to follow a specific order of compilation.
> It would also be quite easy to optionally have a mechanism of > using a centralized file which did file name translations. Indeed > this was part of the original design.
> The advantage is that you break the need for a connection between > the names. The disavdnatgae is that you now have a centralized > data structure, which existing configuration management systems > don't know about, and which has to handle common access from > parallel compilations. Also, if this file is updated by > compilation, you also have introduced an order of compilation > requirement.
I think, Robert, that you have indicated a third solution which may be the preferred one. Don't lose the current mode of operation, but provide an additional mode where you use a library file which contains a file to unit mapping BUT NO OTHER INFORMATION. In this mode you want to be able to say "ada *.spec.a -lib MY_LIB" or whatever. Translated that should mean "if adding all the files with names of the form *.spec.a from this directory into the Ada library MY_LIB produces a consistant library do so. Otherwise provide error messages and do nothing. This would be a huge help in building large systems, eliminate (actually replace) the .ali files and not take much implementation work at all. You just have another way (table-lookup) for converting between unit names and file names, and code to update (write) the library after a successful compilation.
The chief advantage of this on large projects is that versioning is much easier: each version corresponds to a different library file.
--
Robert I. Eachus
with Standard_Disclaimer; use Standard_Disclaimer; function Message (Text: in Clever_Ideas) return Better_Ideas is...
In article <19951025T1758...@naggum.no>, Erik Naggum <e...@naggum.no> wrote:
[SNIP]
Hello,
I seem to remember this thread starting off with praise for the GNU manifesto and leading to discussions of GNU software and a suggestion of a Nobel prize nomination for RMS. Now I pick up the thread again to find it's been dragged down to personal attacks. Erik you're dealing with someone with a major chip on their shoulder, how do you remain calm?
All that stuff about RMS as a student, RMS in 1982 is totally irrelevant. GNU project is a success, I and many other people use their software every day. GCC gave GNAT a headstart without a doubt. Emacs is a powerful multi-function editor/development environment if that's what you want (some people prefer pretty but limited editors (textedit) or minimal Unix editors (vi)). These are all facts which influence me in my view (which I repeat) that the GNU manifesto is rather beautiful. When I read about the activities of Microsoft which appears to me to be attempting the biggest vendor lock-in in history, I start to feel paranoid myself...
Anyway, having very briefly corresponded with the great man himself, I would like to report his message that the best profit margin is obtained by the FSF from CD-ROMS, so although buying manuals helps, buying the CD-ROMS helps even more.
Chris
------------------------------------- -- Chris Morgan, BAeSEMA Limited -- chris.mor...@baesema.co.uk ------------------------------------- -- Team Ada -------------------------------------
we use "better" tools, not "good" tools. at the very least, we focus on the better sides, not on the worst possible aspects. otherwise, going nuts fast is inevitable.
That may be true for you; I use -good- tools, like Symbolics Genera. I choose to avoid tools that are anything less than the best.
I wonder what's wrong with whoever wrote this.
I wonder what's wrong with the cretins that want to give him a nobel prize.
I've seen a lot of people express the most intense hatred for RMS, with an accompanying deep interest in vilifying those who work on GNU projects or with him.
I said it in my original post and I'll say it again: RMS -used to be- (before 1980 or so) an -extremely brilliant person-, who made a lot of important contributions to the design of tools I use every day. I do not vilify or despise the people who write GNU software. GNU software and GNU.AI.MIT.EDU machines have been very valuable to me at times that I've been forced to wade through the slime of eunuchs. I don't even really -hate- RMS; I just think he has gone totally off into lossage, and I really get sick of people thinking he's some kind of god, or genius, or messiah, or whatever.
I'm not opposed to the concepts of free flow of information, and sharing programs with others. I -AM- opposed to the particular communist overtones of RMS' philosophy, expressed in the GNU Manifesto.
does, of course, mean that those who attack him on the basis of irrelevant feelings or issues should be countered simply because they do not present the whole truth, only the part of it that they self-servingly want to be perceived as the whole truth in order to be relieved of the duty to present actual arguments.
The same is true of those that are seriously enthralled by the guy: they do not present the whole truth, only the part of it that they self-servingly want to be perceived as the whole truth. They do not present actual arguments, reverting instead to "RMS is such a cool stud, and he provides all this nifty software for free, so how dare you possibly say anything bad about him?"
It goes both ways, sir. But, in the spirit of fairness, I am trying to present a more on-track viewpoint. You have to realize that I'm not slamming the guy.
I think he needs to be dumped in the cold-load stream with a bar of soap. Leave him there for a few hours to clean up, cut his frigging jesus beard and hippie hair off, and lock him out of the AI Lab for a few months or so to let people disinfect the building.
Then maybe they can let him back in, after they have replaced his eunuchs workstation with a SHOWER.
In article <DHCEtF....@SDF.LONESTAR.ORG>, Daniel Finster <DF at SDF.LONESTAR.ORG> wrote:
>I'm not opposed to the concepts of free flow of information, and >sharing programs with others. I -AM- opposed to the particular >communist overtones of RMS' philosophy, expressed in the GNU >Manifesto.
I bet you didn't know that RMS possesses a piece of paper with the names of forty-seven card-carrying atheist programmers written on it.
>I think he needs to be dumped in the cold-load stream with a bar of >soap. Leave him there for a few hours to clean up, cut his frigging >jesus beard and hippie hair off, and lock him out of the AI Lab for a >few months or so to let people disinfect the building.
Yup. I bet you didn't know that.
-- By sending unsolicited commercially-oriented e-mail to this address, the sender agrees to pay a $100 flat fee to the recipient for proofreading services.