Minutes of the GEnie Forth RoundTable Guest Conference of July 7, 1988 The special guest was Mahlon Kelly, co-author of 'Forth: A Text and Reference' The Topic of Discussion was 'Forth as a Teaching Tool' Date: 07/07/88 Time: 22:06EDT Attendees: [[Gary] GARY-S] [[Kevin] APPERT] [[Len] NMORGENSTERN] [[Dave] DHWEINSTEIN] [D.STEVENS2] [[Cliff] C.MORAVETZ] [[jim] J.NELSON5] [[Mahlon] PRESS32] [[Ivan (jaxson] VESTA] [[Dennis] D.RUFFER] [[James] J.T.SAVIDGE] [M.SYLVANE1] [K.MERTZENICH] [[ mike ] M.LONG4] [[John] JDHALL] [[Jax himself] VESTA] [S.KUNZ] [S.MURIPH] Minutes: is here. <[Gary] GARY-S> Mahlon - so far it's just you and me - any questions ? yes. How do I set it so stuff doesn't scroll off my screen? <[Gary] GARY-S> you don't I mean, can I set my page length, not in the conference, but for reading mail, etc.? <[Gary] GARY-S> unless your software can control that you're stuck with scrolling No page length setting? <[Gary] GARY-S> absolutely on the BBS and in mail. <[Gary] GARY-S> on the BBS you simply type SCR (lines) How do I specify my name and not just press32? <[Gary] GARY-S> type /nam NEWNAME <[Mahlon] PRESS32> Let me know when to go ahead, or are you going to do an introduction? <[Gary] GARY-S> you can also go to setting for mail and other terminal settings <[Gary] GARY-S> I am definitely going to introduce you so just wait for that <[Mahlon] PRESS32> Ok, I'll stand by. is here. <[Gary] GARY-S> hi len <[Len] NMORGENSTERN> Greetings! <[Gary] GARY-S> so far you are the attendee <[Gary] GARY-S> anything you or Mahlon want to chat about is fine - no protocol <[Len] NMORGENSTERN> Mahlon, have you taught Forth to classes of beginners? is here. <[Mahlon] PRESS32> What happens if you have Yup, but I had to disguise it as Computers for scientists, so the comp. sci. people wouldn't object. <[Dave] DHWEINSTEIN> No Interleave! Gary!!!!!!!!!! <[Gary] GARY-S> not when we get REAL - no <[Gary] GARY-S> you can now, though <[Dave] DHWEINSTEIN> Arrggghhhhhhhh! <[Len] NMORGENSTERN> Whatare the things that they have the most difficulty with? <[Mahlon] PRESS32> REAL That's so hard to figure out. I'd like to wait on that one till we get going. It's one of the major questions I want to ask of ot hers. <[Gary] GARY-S> Leonard will be conducting our Novice FIGGY conferences, Mahlon <[Dave] DHWEINSTEIN> I had a twenty minute conversation with a CS student here.. who has unfortunately been conditioned into being a Software Engineering type. What are they trying to do...take the skill and craft out of programming and automating it into an "acceptable" median. <[Mahlon] PRESS32> And perhaps make programming so idiot proof that programs can onl do idiotic things. <[Gary] GARY-S> save the good stuff for the conference which will start before long, regardless is here. <[Mahlon] PRESS32> disconnected. <[Len] NMORGENSTERN> (Not /sta <[Gary] GARY-S> Mahlon said that might happebn - I will explain <[Dave] DHWEINSTEIN> We seem to have lost a guest. is here. <[Gary] GARY-S> He has been involved in a court case... <[Gary] GARY-S> and the lawyer was going to let him know how the case came out.. <[Gary] GARY-S> Guess who just got zapped by call waiting ??? Mahlon is who is here. is here. <[Gary] GARY-S> When Mahlon logs back on - we'll get going <[Dave] DHWEINSTEIN> Why no interleave? <[Cliff] C.MORAVETZ> Hi, Y'all <[Dave] DHWEINSTEIN> Hey Cliff <[Gary] GARY-S> as a courtesy to our guest and to control the flow of questions <[Dave] DHWEINSTEIN> Control? You are trying to control FORTHers? Why? and how? <[Gary] GARY-S> The guest in a formal conference needs to be able to follow and respond to questions in order - that's all Dave <[Kevin] APPERT> he has this button he presses which shuts us all off, Dave <[Kevin] APPERT> :) How many programmers have been absorbed by Forth Inc? <[Dave] DHWEINSTEIN> I know how? But why? It is a violation of our spirit. <[Gary] GARY-S> THAT'S TRUE is here. <[Gary] GARY-S> Our fearless leader, Dennis, for one AJ <[Kevin] APPERT> hi Jax <[Dave] DHWEINSTEIN> Hye Jax. <[Cliff] C.MORAVETZ> A violation of life, liberty, and the pursuit of Forth! hi <[Kevin] APPERT> thats purfuit! <[Dave] DHWEINSTEIN> I have a request. Could you please crosspost on comp.lang. forth, and comp.lang.c and flame C as you are wont to do...just to get things going. <[Gary] GARY-S> Mahlon got zapped by 'CALL WAITING' so we'll be rolling soon how'ya do that jax <[Dave] DHWEINSTEIN> (that is Jax) <[Dave] DHWEINSTEIN> Do a /nam <[Len] NMORGENSTERN> Use /nam Joe or similar <[jim] J.NELSON5> gotcha <[Gary] GARY-S> who is D.STEVEN2 <[Dave] DHWEINSTEIN> Well Jax...you game...you always seem willing to flame anything and everyone? <[Cliff] C.MORAVETZ> Dave - What's crossposting? <[jim] J.NELSON5> I have noticed a lot of isolated programmers moving to Forth Inc... <[Len] NMORGENSTERN> Jax, you didn't solve the MIRROR correctly <[jim] J.NELSON5> Any comments <[Ivan (jaxson] VESTA> Huh? What? Who? <[Dave] DHWEINSTEIN> Posting on miltiple Usenet newsgroups. <[Ivan (jaxson] VESTA> I don't post on USENET ... to expensive. <[Dave] DHWEINSTEIN> They haven't asked me. :-) <[Len] NMORGENSTERN> You were supposed to do it WITHOUT a loop <[jim] J.NELSON5> anything like multiple orgasms? <[Ivan (jaxson] VESTA> Without loop is lookup table. ugh. is here. DD,stevens.2:novice forth programmer, anaheim, etc. what do you want to know? <[Len] NMORGENSTERN> Welcome back! <[Ivan (jaxson] VESTA> My son will be at the keyboard for a while i have business. <[Gary] GARY-S> ok gang lets get going <[jim] J.NELSON5> good, no-one is talking to each other <[Dave] DHWEINSTEIN> No...don't lock us out! Please.... <[Dave] DHWEINSTEIN> not the /lis! <[Mahlon] PRESS32> Sorry about that, call interrupt kicked me off, then when I relogged there was so much noise I had to do it again <[Gary] GARY-S> Before I introduce Mahlon, I want to briefly explain the rules for a guest... conference. If you wish to speak, type !! ... I will keep track of those who wish to speak and will open the floor to ... each in turn by typing ga name ... When it is your turn, try to remember to respond with 'ok' or '.' ... first, so we will know you know it's your turn. ... Then type your question or comment, keeping your lines short (VERY SHORT)... <[Gary] GARY-S> and ending with three dots at the end of incomplete coments/questions.... and completing your turn with a 'ga' (go ahead) or '.' (dot) ... on a line by itself. .... - Do NOT interlace (interrupt) ... <[Gary] GARY-S> - Do NOT wait to respond if it is your turn. Type 'ga' if you no longer... wish to speak. I will put the room in listen only if I have to. .... <[Gary] GARY-S> The GEnie Forth RoundTable,sponsored by the Forth Interest Group,is pleased.. to have as our special guest for tonight's conference, Mahlon Kelly. ... Mahlon is a professor at the University of Virginia, and American editor...editor of Forth's only refereed periodical, Journal of Forth Applications and.. <[Gary] GARY-S> Research (JFAR). ... Mahlon is best known in the Forth community as author, along with Nicholas...Spies, of "Forth: A Text and Refe rence", published by Prentice Hall. ... Mahlon will be talking tonight about Forth as a teaching tool. This ...incidently dovetails perfectly with our plans here on the RoundTable. ... It is with real pleasure I give the floor to our guest, Mahlon Kelly. ...ga mahlon <[Mahlon] PRESS32> I would like to put forward the idea that Forth is an excellent language for teaching introductory courses in computers. In fact, that it is by far the best language available... is here. <[Mahlon] PRESS32> Most languages were developed for use on mainframes, and although the usual stated reason for their development is to make it easy for humans to use the machines, another is to protect the machines from humans.. <[Mahlon] PRESS32> Thus those languages are designed to preve/t users from being aware of the equipment itself. Thatt stands in the way of students re ally understanding how computers work... <[Mahlon] PRESS32> Forth does the opposite. The more you know about the machine, the better you can use Forth. Thus the student is encouraged to learn not only about the language, but about computers... <[Mahlon] PRESS32> And since Forth is interactive, Forth encourages the best type of learning, that is, learning from mistakes... <[Mahlon] PRESS32> Diurect memory and register access are both available, and perhaps more important is the use of any desired number base... <[Mahlon] PRESS32> It is vey easy to teach about binary, octal, decimal, and hex arithmetic. It is very easy to teach about logical operators. And it is even very easy to introduce assembly language... is here. <[Mahlon] PRESS32> Perhaps most importantly it is easy to teach about machine and assembly instructions, and to get across the differences among mach ine, assembler, and higher-level languages... <[Mahlon] PRESS32> In the first lecture of my course I te3uach how to define <[Mahlon] PRESS32> : SQUARE DUP * ; <[Mahlon] PRESS32> andthen I have them look at and disassemble DUP and * . Now when they program the know what they are doing to the machine. They do this while sitting at computers... <[Mahlon] PRESS32> I have been told y one M.S. student in comp. sci. thata after my Forth course (which he took to learn the language, not computers, obviously) he had the equivalent lvel of understanding of computers of a third year studen3ut in comp. sci. The course assumes no background... <[Mahlon] PRESS32> QUESTIONS: Are these ideas correct, or should we continue to teach intro*. Pascal, BASIC, FORTRAN, etc.?... <[Mahlon] PRESS32> 3uHow is Forth best taught? That is, is it best to teach how it works first, or bhow to use it first? <[Cliff] C.MORAVETZ> !! <[Mahlon] PRESS32> How can we convince comp. sci. departments of Forth's value, not only as a language but as a teaching tool? Go ahead. <[Gary] GARY-S> !! qualifies as a raised hand - questions ? <[Dave] DHWEINSTEIN> !! <[Gary] GARY-S> ga cliff <[Gary] GARY-S> type ok first <[Cliff] C.MORAVETZ> ok <[Cliff] C.MORAVETZ> How do you contrast this approach, compared to teaching Pascal? Pascal... <[jim] J.NELSON5> !! <[Cliff] C.MORAVETZ> was designed to teach good programming. <[Cliff] C.MORAVETZ> ga <[Gary] GARY-S> ga mahlon <[Mahlon] PRESS32> Every Pascal course I have seen teaches mostly about the languageOlEvery Pascal course I have seen teaches about programming in Pas cal, not about computers. <[Cliff] C.MORAVETZ> !! <[Gary] GARY-S> any more mahlon? <[Mahlon] PRESS32> Sorry, I forgot the ga. ga <[Gary] GARY-S> ga dave <[Dave] DHWEINSTEIN> ok <[Dave] DHWEINSTEIN> The current system of teaching students has its problems. <[Dave] DHWEINSTEIN> Here at the Universty of Texas, at the end of the "core" <[Dave] DHWEINSTEIN> courses a CS student has had two semesters of Pascal (the first two semesters), one semester <[Dave] DHWEINSTEIN> of PDP Assemnly language, and one semester of Modula II. <[Dave] DHWEINSTEIN> This has distinct problems. The emphasis is on "software engineering", rather than <[Dave] DHWEINSTEIN> on learning how the computer works. The students learn higher techniques without <[Dave] DHWEINSTEIN> learning what is under these strategies. <[Mahlon] PRESS32> &!! <[Ivan (jaxson] VESTA> [!! <[Dave] DHWEINSTEIN> Furthermore, it leads to Sophomore CS majors who are convinceed that PASCAL is the be all and end all of computer languages, and are <[Dave] DHWEINSTEIN> totally unprepared for the trade offs inherent in real-world programming. The courses emphasize learning as <[Dave] DHWEINSTEIN> many new algorythms as possible, and being told exactly how to do everything, rather than why to make trade offs for such things as code size, <[Dave] DHWEINSTEIN> speed, or resource usage. <[Dave] DHWEINSTEIN> The CS department appears to be as averse as possible to dealing <[Dave] DHWEINSTEIN> with problems faced by professional prograammers, and instead seems to spend its time isolating students from the machines <[Dave] DHWEINSTEIN> with which they work. <[Dave] DHWEINSTEIN> ga <[Gary] GARY-S> mdon't forget the three dots... for incomplete thoughts ga mahlon <[Gary] GARY-S> mahlon ? <[Mahlon] PRESS32> Dave, that is exactly what I am complaining about. Is Forth a possible solution? ga <[Dave] DHWEINSTEIN> !! <[Gary] GARY-S> ga jim: <[jim] J.NELSON5> i was going to say something about logo <[jim] J.NELSON5> as a learning tool is here. <[jim] J.NELSON5> I found tremendous freedom the first time I gave it a try <[jim] J.NELSON5> Although I use Forth professionally <[jim] J.NELSON5> I would have argued in contradiction to Dave <[jim] J.NELSON5> It seem that the universities are isolated and behind industry <[jim] J.NELSON5> since they don't really have to do any work or make anything <[jim] J.NELSON5> that is, achieve anything except as publishable results <[jim] J.NELSON5> I have been waiting so long I've lost my stream of thought, <[jim] J.NELSON5> but in conclusion would like to say that <[jim] J.NELSON5> of the continuous path linking extremely low level <[jim] J.NELSON5> but extensible languages like forth to the extremely abstract <[jim] J.NELSON5> and extensible languages like logo, <[Dave] DHWEINSTEIN> !! <[jim] J.NELSON5> there are many choices, and the compiled languages don't fit at all in learning environs <[jim] J.NELSON5> ga <[Gary] GARY-S> any comment mahlon ? <[Mahlon] PRESS32> ok <[Mahlon] PRESS32> I don't worry about universities being behind industry. I worry about them has left. <[Mahlon] PRESS32> not teaching the real fundamentals. They teach about languages but not computers, and they teach in a very pedantic way. What we te ll you is law... <[Mahlon] PRESS32> Also, I don't see Forth as a very low-level language. It can be used at all levels, and I think that is excellent for teaching. <[Mahlon] PRESS32> ga <[Gary] GARY-S> still there cliff - ga cliff (3 dots... guys) <[Cliff] C.MORAVETZ> ok <[jim] J.NELSON5> !! <[Cliff] C.MORAVETZ> Mahln, how do the students handle Forth's lack of protection?... <[Cliff] C.MORAVETZ> Forth allows you to shoot yourself in the foot easily, and I think this would create problems... <[Cliff] C.MORAVETZ> ga <[Gary] GARY-S> good questions cliff - ga mahlon <[Mahlon] PRESS32> ok <[Mahlon] PRESS32> Shoot yourself in your foot once, and you don't do it again. You make a mistake, and if it's fatal, reboot. That's the worst that c an happen. There's not the trmendous penalty with Forth that there is with compiled languages... <[Mahlon] PRESS32> I think the best way to learn is by trial and error (of} course along with good formal instruction). Forth allows that. Better yet, it forces one to learn not to shoot oneself in the foot. The discipline of programming becomes self discipline, not a discipline (and inflexibility) enforced by the language... <[Mahlon] PRESS32> Forth teaches careful programming. And it teaches how to think **carefully**. <[Mahlon] PRESS32> ga <[Gary] GARY-S> ga jax <[Ivan (jaxson] VESTA> ga <[Len] NMORGENSTERN> !! <[Gary] GARY-S> ga dave <[Dave] DHWEINSTEIN> ok <[Dave] DHWEINSTEIN> I have to admit, I'm biased. I taught myself structure <[Dave] DHWEINSTEIN> programming techniques in assembly language, because it was that or not be able to read my code. <[Dave] DHWEINSTEIN> And that is part of the problem. Again, here at UT, I was told by the man in charge of the first semester CS course (a grad stude nt) that, "I might be a better programmer than he is, but programming isn't the important part of Computer Science." <[Dave] DHWEINSTEIN> ... is here. <[Dave] DHWEINSTEIN> The students are taught techniques, not because they make sense, but is here. <[Dave] DHWEINSTEIN> because they are enforced, you will fail if you do not disconnected. <[Dave] DHWEINSTEIN> Not because you should. <[Dave] DHWEINSTEIN> And the students <[Dave] DHWEINSTEIN> are forced to avoid the issue. <[Dave] DHWEINSTEIN> The CS department does not teach the students why they should do so... <[Dave] DHWEINSTEIN> only that they should do so. <[Cliff] C.MORAVETZ> !! <[Dave] DHWEINSTEIN> In doing most of my "real" work (in C, not FORTH...FORTH jobs being hard to get), I do system expansion !! <[Dave] DHWEINSTEIN> and that requires I know what is going on...not that I be shielded from the system... <[Dave] DHWEINSTEIN> And the UT CS department has had nothing to do wiht my ability to detect such problems...or to recognize <[Dave] DHWEINSTEIN> low level problems, if anything they attempt to remove the issue from peoples minds. <[Dave] DHWEINSTEIN> ga <[Gary] GARY-S> any comment to that mahlon ? ga mahlon <[Mahlon] PRESS32> VKOnly comment is that I agree. But can Forth be the solution? <[Gary] GARY-S> ga jim <[jim] J.NELSON5> ok <[jim] J.NELSON5> I raised the spectre of LOGO <[jim] J.NELSON5> because I wonder if we should teach what is <[jim] J.NELSON5> ( Forth as virtual machine) or what could be: <[jim] J.NELSON5> (object logo as virtual machine) has left. <[jim] J.NELSON5> When I compare the effort <[jim] J.NELSON5> needed to build data structures, or worse <[jim] J.NELSON5> to invent data structures or virtual machines <[jim] J.NELSON5> in Forth vs that in traditional politically <[jim] J.NELSON5> acceptable university languages has left. <[jim] J.NELSON5> ga <[Gary] GARY-S> ga mahlon <[Mahlon] PRESS32> 3uok <[Mahlon] PRESS32> 1) What do you mean as object logo as virtual machine? 2) Seems to me Forth is very easy to define very flexible data structures in ... <[jim] J.NELSON5> !! <[Mahlon] PRESS32> 3) What does this really have to do with learning computers? In fact, having to define data structures seems to be in itself a good learning exercise. <[Mahlon] PRESS32> ga <[Gary] GARY-S> ga leonard <[Len] NMORGENSTERN> pass <[Gary] GARY-S> ga jax <[Ivan (jaxson] VESTA> ok <[Ivan (jaxson] VESTA> I'm 12 years old... <[Ivan (jaxson] VESTA> I'd like to know if they teach FORTH in MIDDLE or HIGH school...ga is here. <[Mahlon] PRESS32> !! <[Gary] GARY-S> ga mahlon (mahlon - you always get a shot you don't have to !!) <[Mahlon] PRESS32> ok <[Mahlon] PRESS32> Jax, I was going to say in my opening message that I have found hs. students, and some pre hs. students... <[Mahlon] PRESS32> seem better able to learn Forth than Univ. students. You've not learned some... <[Dave] DHWEINSTEIN> !! <[Mahlon] PRESS32> predefined bad habits (like algebraic notation) that hinders others... <[Len] NMORGENSTERN> has left. <[Mahlon] PRESS32> I doubt that you'll find Forth in hs, but I'll bet you could teach yourself pretty easily. ga <[Gary] GARY-S> ga cliff <[Cliff] C.MORAVETZ> ok <[Cliff] C.MORAVETZ> I'm a little curious...$Do your students find blocks easy to use? Or do you get crank phone calls, late a night.. <[Cliff] C.MORAVETZ> Threatening dire deeds if you don't teach them how to use files?... <[Cliff] C.MORAVETZ> Also, (speaking to Dave), My experience in getting a college education <[Cliff] C.MORAVETZ> did not seem like the one you keep referring to... <[Cliff] C.MORAVETZ> Most of the classes I took, the instructor allowed several different... <[Cliff] C.MORAVETZ> languages, as long as the program worked, full credit was given.... <[Kevin] APPERT> has left. <[Cliff] C.MORAVETZ> We were exposed to fortran, A{PL, and COBOL... <[Cliff] C.MORAVETZ> I exposed myself to Pascal, C and Forth... <[Cliff] C.MORAVETZ> ga <[Gary] GARY-S> ga mahlon <[Mahlon] PRESS32> V&ok <[Mahlon] PRESS32> We don't use blocks. We use HS/FORTH with files. HS/FORTH allows blocks, and I show about them, but I discourage their use. ga <[Gary] GARY-S> ga jiom <[Dave] DHWEINSTEIN> !! !! !! <[Gary] GARY-S> JIM <[Gary] GARY-S> ga dave <[Dave] DHWEINSTEIN> ok <[Dave] DHWEINSTEIN> That is absolutely not the case here. <[Dave] DHWEINSTEIN> The University not only specifies the language, it specifies the method, data <[Dave] DHWEINSTEIN> structures, and system. Furthermore, the learning of additional languages is <[Dave] DHWEINSTEIN> discouraged. The FORTRAN course is relegated to Fortran V on an aging Cyber. <[Dave] DHWEINSTEIN> And is *not* reccomended by the department. <[jim] J.NELSON5> !! <[Cliff] C.MORAVETZ> !! <[Dave] DHWEINSTEIN> Finally...to Jax-son... <[Dave] DHWEINSTEIN> If you are interested...teach yourself. Don't depend on the educational facilities. The vast majority interested <[Dave] DHWEINSTEIN> in CS are weeded out...they discover that siitting in front of a computer and being force fed <[Dave] DHWEINSTEIN> a language does not make you a wizard. Unfortunately...the introductory couirses do not weed fast enough...because they <[Dave] DHWEINSTEIN> are putting people in the situation of thinking that they *do* know how things will <[Dave] DHWEINSTEIN> end up, when all they have learned is how the CS department wants it. Most of the research wings of the <[Dave] DHWEINSTEIN> lab where I work would rather hire engineers or scientists, and teach them to program, rather than try to uncondition the CS stud ents. <[Dave] DHWEINSTEIN> ga <[Gary] GARY-S> Mahlon - I feel CS depts are afraid to teach a language with so much open space for free expression - comment on dave's and my postula tions <[Gary] GARY-S> ga mahlon <[Mahlon] PRESS32> &ok is here. is here. <[Mahlon] PRESS32> Here at U.Va}K. the situation is as Dave described. Cliff: when did you take your Univ. courses? Sounds like the situation 10 years ago, when thinkgs were freer... <[ mike ] M.LONG4> hi all <[Mahlon] PRESS32> I should mention that I am in the Environmental Sciences Dept. Also, to JAX,... <[Mahlon] PRESS32> probably the second best Forth programmer, Dean Sanderson, never finished college... <[Mahlon] PRESS32> Larry Forsley is now finishing, altho he ru}Kns the Rochester conferences... <[ mike ] M.LONG4> 10 0 do .( hi there!) loop <[Mahlon] PRESS32> Further, I know of several firms that prefer to hire EE grads rather than CS... <[Mahlon] PRESS32> grads because their minds are freer and because they know how computers work. ga <[Gary] GARY-S> mike long - we are in a semi formal guest conference this evening <[Gary] GARY-S> ga jax <[Jax himself] VESTA> ok <[Jax himself] VESTA> Mahlon, Ivan, my son, thanks you for your reply ... <[Jax himself] VESTA> He is indeed teaching himself, and you don't have to convince me, they ... <[Jax himself] VESTA> threw me out of college three times. last time it took. <[Jax himself] VESTA> ... <[Jax himself] VESTA> anyway ... <[Jax himself] VESTA> one thing you said concerned me ... <[Jax himself] VESTA> I hear a lot of people put down BLOCK ... is here. <[Jax himself] VESTA> It is true it is a kludgy sourcing tool ... <[Jax himself] VESTA> but it is EXCELLENT as a virtual mem interface for data. Simplest in the computer universe, from my experience. Thoughts? ga <[Gary] GARY-S> point raised mahlon - ga <[Mahlon] PRESS32> ok <[Mahlon] PRESS32> I agree that it is a good way to teach about vrtual memory interface, but it is awkward with large amounts of data. I think I cover that in our book. .. has left. <[Mahlon] PRESS32> I do teach about using blocks for data. But I think it is much better to load a file of data into a memory segment and use it direc tly from there, or to access the file sectors directly, rather than blocks, which are only 2 file sectors anyway... <[Mahlon] PRESS32> (at least in non-native, or os based Forths). ga <[Gary] GARY-S> jim is up -then cliff, then mike l - ga jim <[Gary] GARY-S> JIM <[Gary] GARY-S> ga cliff (we need to start wrapping it up) <[Cliff] C.MORAVETZ> ok <[Cliff] C.MORAVETZ> About my education... <[Dave] DHWEINSTEIN> has left. <[Cliff] C.MORAVETZ> There are several reason I can offer as to why mine was different... <[Cliff] C.MORAVETZ> 1. The CS chairmans opinion was that education.... <[Cliff] C.MORAVETZ> consisted of showing us how to learn for ourselves. has left. <[Cliff] C.MORAVETZ> 2. The university was a small private one... <[Cliff] C.MORAVETZ> less prone to popularism. <[Cliff] C.MORAVETZ> 3. The asst. prof. of the CS dept. thought that in you.... <[Cliff] C.MORAVETZ> should use the right language for the job, thus no language is best. <[Cliff] C.MORAVETZ> 4. I didn't get a degree in CS!! ... <[Cliff] C.MORAVETZ> I got a degree in Computer Technology... <[Cliff] C.MORAVETZ> A kind of half hardware and half software degree.... <[Cliff] C.MORAVETZ> 5. I have myself always been very independant. <[Cliff] C.MORAVETZ> ga <[Gary] GARY-S> There appear to be some hanging questions mahlon - will you consider another round ? mike l still has a question - ga mahlon <[Mahlon] PRESS32> ok <[Mahlon] PRESS32> Sure, be glad to. I would like to raise two final questions, however, that perhaps could be addressed later... <[Mahlon] PRESS32> And I think Cliff was luck in his education. Also, sorry, Jax, for confusing you with your son. Sounds as if he's on the right trac k, tho. ga <[Gary] GARY-S> ga mike l <[ mike ] M.LONG4> ok... <[Jax himself] VESTA> Thank *you* Mahlon for answering his question <[ mike ] M.LONG4> As a just-graduated High School student,.... <[ mike ] M.LONG4> I have not yet experienced what my school's CS department is like.... <[jim] J.NELSON5> !! back for real <[ mike ] M.LONG4> but that doesn't matter..... <[ mike ] M.LONG4> because I'm going the EE rokte anyway.... <[ mike ] M.LONG4> but if I have the time... <[ mike ] M.LONG4> I am thinking of taking a double major. <[ mike ] M.LONG4> If my school's CS department is straitlaced... <[James] J.T.SAVIDGE> has left. <[ mike ] M.LONG4> then I'll just stick to EE and self-educate myself... <[ mike ] M.LONG4> on the CS. <[ mike ] M.LONG4> enough on education, about BLOCK: <[ mike ] M.LONG4> what we really need is a standard OS interface... <[ mike ] M.LONG4> the forth I have... <[ mike ] M.LONG4> allows you to make Dos calls... <[ mike ] M.LONG4> as well as read data by byte... <[ mike ] M.LONG4> and line, ended by a user-defined newline... <[ mike ] M.LONG4> char. <[ mike ] M.LONG4> However, the interesting thig is... <[ mike ] M.LONG4> that the block number... <[ mike ] M.LONG4> is only an index into a text or data file... <[ mike ] M.LONG4> that you must OPEN first. <[ mike ] M.LONG4> I think that this is the method used in F83, and it is a good one. <[ mike ] M.LONG4> ga <[Gary] GARY-S> ga mahlon <[Mahlon] PRESS32> ok <[Mahlon] PRESS32> I just want to be sure I don't seem to be against a univ. education. What I am complaining about is that too ofwen... <[Mahlon] PRESS32> universities (and worse, students) forget the difference between educating and training... <[Mahlon] PRESS32> I think that universities should educate, which most importantly means teaching how to learn... <[Mahlon] PRESS32> Training is only learning how to perform certain jobs. An education should be much more. ga <[Gary] GARY-S> any last [short] questions for mahlon ? jim, your hand was raised again ? ga jim <[Mahlon] PRESS32> !! <[jim] J.NELSON5> ok <[jim] J.NELSON5> What I meant, but didn't finish. Forth allows extremely easy <[jim] J.NELSON5> construction of arbitrary data structures, while allowing the <[jim] J.NELSON5> programmer great access to the computer itself. Object Logo <[jim] J.NELSON5> on the mac allows an even greater degree of extensibility, but <[jim] J.NELSON5> limits access to the underlying machine. The extensibility <[jim] J.NELSON5> of both languages makes programmers capable of extremely high <[jim] J.NELSON5> levels of abstraction -- and capable of constructing virtual <[jim] J.NELSON5> machines which mirror the problems to be solved, rather than, <[jim] J.NELSON5> as in more accepted languages, forcing the programmer to spend <[jim] J.NELSON5> all his time bastardizing his solution to the fit the language. <[jim] J.NELSON5> By comparison, C is structured spaghetti. <[jim] J.NELSON5> My introductory programming courses left me with a mindset <[jim] J.NELSON5> which Forth took two years to clear. And it didn't really <[jim] J.NELSON5> clear until after I had read a lot of Rochester and FORML <[jim] J.NELSON5> conference papers ( and JFAR) - and the use of CREATE DOES> <[jim] J.NELSON5> and therefore Forth's extensibility and power became clear. <[jim] J.NELSON5> Mostly it took some non trivial examples - all I found in the <[jim] J.NELSON5> usual Forth texts were ARRAYs, etc. I wonder sometimes how <[jim] J.NELSON5> many programmers are crippled by their mindsets, and if this <[jim] J.NELSON5> is why they see only Forth's low level access aspects, and if <[jim] J.NELSON5> that is why it is considered a low level language. <[jim] J.NELSON5> yeah, I was typing <[jim] J.NELSON5> ga <[Gary] GARY-S> Mahlon, I want to sincerely thank you for a very informative conference - any last shots ? <[Mahlon] PRESS32> ok <[Mahlon] PRESS32> Can I leave this with two questions? ... <[Mahlon] PRESS32> 1) IS Forth a solution to the problems we seem to agree on in computer education?... <[Mahlon] PRESS32> 2) HOW CAN WE CONVINCE CS DEPTS. THAT THEY SHOULD USE FORTH AS A TEACHING TOOL? <[Mahlon] PRESS32> GA <[Jax himself] VESTA> at gunpoint? <[Cliff] C.MORAVETZ> !! <[Gary] GARY-S> Thats a wrap folks - thank you for your courtesy and attendence <[Jax himself] VESTA> by building parallel forth desktop mainframes. <[ mike ] M.LONG4> The only people who can learn forth are the ones who can <[ mike ] M.LONG4> really learn...the rest give up early <[Jax himself] VESTA> interlace on? <[Cliff] C.MORAVETZ> 1) Maybe.... 2) No. <[Gary] GARY-S> Thanks again Mahlon - didn't take long for the old interleave to come back !!!:-) <[ mike ] M.LONG4> bye <[Jax himself] VESTA> Jax and Ivan say goodnite all! <[Cliff] C.MORAVETZ> ANARCHY NOW!! ==========End of Steno Notes==========