[author : Robert Burt, Judith Wasserman, Ramon Zamora] #Listing #BASIC #Graphics #Mathematics #Astronomy
Extract : « Many years ago, the British savant C. P. Snow, in his book The Two Cultures, warned of the danger of separating art from science. Snow, a scientist turned writer, decried this tendency toward polarization. Only through the constant mingling of ideas and perspective, he felt, could a brilliant creativity survive in the world.
It's probably true that there are those in both science and the arts who deny viability of expression to the opposite culture. We’ve all known artists who dismiss technology as boring and life-annihilating; or the technology buff who’s never read a work of fiction or studied a painting. They miss a lot: at the very least a greater appreciation for the world around them and a heightened perspective. I am reminded of my undergraduate days at Stanford when the physicist Wolfgang Panovsky addressed a class of mine. He said if he didn’t play his violin at least an hour a day, his creativity would dry up.
What’s particularly remarkable about this article is that all three contributors combine technological expertise and artistic knowhow.
The artist, Judith Wasserman, has a B.A. in Physics from Cornell University. For the last several years, she has devoted her time to artwork, particularly etching. She is President of the Board of Directors of Palo Alto’s successful art cooperative, Gallery House. Judy does layout work for PCC; in fact, she has done most of the layout for this article
The pilot, Robert Burt, has an M.S. in Physics from NYU and an M.A. in Music from Columbia. Bob is a Research Specialist at Lockheed’s Satellite Systems Division. He has a grand piano in his living room and is addicted to classical music. He is also an imbiber of fine California wines
The critic, Ramon Zamora, has a B.A. from the Florida Institute of Technology. He has a total of fifteen years experience with computers. Currently, Ramon is one of three editors of Recreational Computing magazine. Ramon is also an artist, with particular emphasis on silkcreening and sculpture.
One note of caution before you proceed with the article. Bob Burt developed his ByByBaybee Program on an HP 9830, but he gives enough information to get the small computer user underway. Unlike most DDJ articles, then, this one does not give you all the answers: it is meant to excite your creative palate, to get you up and running. Have fun with this one, and good luck! [...] »
[author : H. T. Gordon] #Listing #Assembly #Mathematics
Extract : « Many computer programs can generate a sequence of pseudorandom 8-bit binary numbers. Ideally, such a sequence requires that any number in the sequence have an equal probability of being followed by an other number (including itself). The ideal of perfect unpredictability of the next number may be unattainable, since this can always be predicted with complete certainty if both the generator algorithm and the numerical “keys” it will use are known. However, some algorithms can produce long sequences that satisfy statistical tests of randomness.
The goal of my work was to devise logic that would create the illusion of randomness, using a minimum of code and execution time. The starting point was my reading of the (13N + 1) algorithm by Daniel Greiser in the Nov 1977 BYTE, my first encounter with simple, fast algorithms of this kind. Since then, my conception of the problem has undergone many sea-changes. I have come to the point where I can no longer see how more could be done with less. It is time for fresher, keener minds to look at the problem! [...]
Copyrights
I am copyrighting the listed modules (and their combinations) with the same “free-diffusion” clause used for my program EDITHA (DDJ #25). Note that the f-d-c allows totally unrestricted use in association with all f-d-c software, but does not forbid its use in programs protected by the usual copyright. However, in such programs, f-d-c software is entitled to protection equal to that of the associated software (use only by prior permission). I am aware that a lot of unacknowledged use of software is going on. As an advocate of diffusion, I do not disapprove of this. I would object to a “double-standard” in which “borrowers” incorporated f-d-c software into their programs without permission, then made waves if someone else “borrowed” their work. This raises the question: what about coding of these algorithms for other micros than the 650X? You cannot copyright an algorithm. Thousands of people could easily code them for the 8080 etc.—who, if anyone, can then claim an exclusive copyright? »
[author : G. Gaugler] #Electronic #Listing #Assembly #Audio
Extract : « Having wrestled with several unyielding programs and having talked to my computer at great length, I decided it was time for it to talk back. Telesensory Systems, Inc. has produced a speech synthesis board which, when properly interfaced, can give your computer an ASCII voice of its own. Interfacing this board to a SWTPC 6800 is not a particularly difficult task. The hardware and software necessary to perform several different functions will be described. [...] »
[author : David Chapman] #Anticipation #ComputerPortable #Networks #Audio #Graphics #OnlineService #Book
Extract : « A lot of the ideas in this article are largely speculative, although I have generally used the present tense in describing GENIE. Nevertheless, none of the things I have mentioned (with a few possible exceptions, like animated holographies) are technically impossible in 1978. All that’s needed is a little development to make the technology reliable and inexpensive. How long might this take?
One of the most important components of the system, the pocket computer, will probably be available very soon. In fact, at the time I am writing this, several pocket computers for dedicated applications like teletype emulation and navigation are available; I expect that general purpose units will be available by the time you read this or soon thereafter.
The main development problem is in building the network—a sort of bootstrap operation insofar as it won’t be much use to the first few subscribers and demand will probably depend on usefulness. My guess is that if there is sufficient interest (shown by articles of this sort and the readers’ response to them) there will be a GENIE-like system available by 1982 or thereabouts. This system probably won’t have some of the fancy extras I discuss, like an EFTS or voice input; while these are technically feasible, they are difficult enough to program so they probably will be delayed until 1985 or thereabouts. If it catches on as I think it will, there will probably be a GENIE in every pocket by 1990 or so; the complete transition to computer screens will take longer, but my guess is that by 1995 or the millenium, paper will be of interest to historians only. [...]
GLOSSARY [...]
Document. any “lump” of information; a single, unified work. A document could be a “book,” an article, a piece of music, a picture, a game program, or almost anything else that has informational content. [...]
EFTS. Electronic Funds Transfer System, an extension of credit cards that eliminates paper and metal money. [...]
Hypertext (a term stolen from Theodore Nelson) is nonlinear and can really only be implemented on a computer, though such non-linear constructions as footnotes approximate it. [...]
The other type of hypertext that is important is collateration. This seems to have been developed independently by Nelson and others, notably Alan Kay’s Dynabook project at the Xerox Palo Alto Research Center and Doug Englebart’s NLS project at the Stanford Research Institute. The basic idea is that the computer screen is divided up into several text “windows” in which there appear the documents to be collaterated. Text can be copied between windows, different parts or verisons of one work viewed simultaneously, and, in Nelson’s version, links generated between them. Text within the windows can be edited and made to scroll, preferably smoothly, and not jumpily as with present video displays. [...]
References
1. Fylstra, Dave. "Personal Computing Network." BYTE, September, 1977, pp. 59-61; and Wilber, Mike. "CIE Net: A Design fora Network of Community Information Exchanges." published as a three part series in BYTE: part 1, February 1978, pp. 14, 138- 145; part 2, March 1978, pp. 152-164; part 3, April 1978, pp. 168-176.
2. Nelson, Theodore. Dream Machines. Publisher not apparent (bound with author's Computer Lib), 1974.
3. Chapman, David. "The Pocket Computer." Interface Age, December 1977, pp. 72-74.
4. Ahern, Richard A. "The Pocket Computer is (Almost) Here." Creative Computing, September-October 1977, pp. 88-89.
5. Steinwedel, Jeff. "Personal Computers in a Distributed Communications Network." BYTE , February 1978, pp. 80-82, 94-101.
6. "Business: Thinking Small." Time, February 20, 1978, p. 53.
7. Bush, Vannevar. "As We May Think." Atlantic Monthly, July 1945; cited in Nelson, Dream Machines.
8. Chapman, David. "Linearity, Hierarchy, and Complexity [sic]." To be written sometime in the next couple of years.
9. A good example of what not to do is found in Kenny, Donald. "Man/Machine Interface." Creative Computing, January-February 1977, pp. 60-61.
10. Winograd, Terry. "The Reactive Engine Paper." Creative Computing, November-December 1976, pp. 58-59.
11. Nelson, Theodore. "A Dream For Irving Snerd." Creative Computing, May-June 1977, pp. 79-81.
12. Creative Computing, September-October 1977, has a set of articles on computer conferencing: Turoff, Murray. "Computer Conferencing: Present and Future." pp. 54-57; Vallee, Jacques, Johansen, Robert, and Spangler, Kathleen. "The Computer Conference: An Altered State of Communication?" pp. 58-60; and North, Steve. "Computer Conferencing: A Personal View." p. 60.
13. Brown, James Cooke. Loglan 1: A Logical Language, and other publications. Available from The Loglan Institute Inc., 2261 Soledad Rancho Road, San Diego, California 92109. »
[author : Mike Gabrielson] #Pascal #Book
Alagic, Suad and Arbib, Michael A, The Design of Well-Structured and Correct Programs, Springer-Verlag, 1978.
Alpert, Stephen R, "Pascal: A Structurally Strong Language", Byte, 3, 8, August 1978, p 78.
Apt, K R and de Bakker, J W, "Semantics and Proof Theory of Pascal Procedures", Automata, Languages and Programming, Springer-Verlag, 1977.
Ammann, Urs, "On Code Generation in a Pascal Compiler", Software - Practice and Experlence, 7, 3, June-July 1977, p 391.
Bates, D and Cailliau, R, "Experience with Pascal Compilers on Mini-Computers", ACM SIGPLAN Notices, 12, 11, November 1977, p 10.
Biedl, Albrecht, "An Extension of Programming Languages For Numerical Computation in Science and Engineering With Special Reference to Pascal", ACM SIGPLAN Notices, 12, 4, April 1977, p 31.
Bowles, Kenneth L, Microcomputer Problem Solving Using Pascal, Springer-Verlag, 1977.
Bowles, Kenneth L, "Pascal versus COBOL: Where Pascal Gets Down to Business", Byte, 3, 8, August 1978, p 122.
Bowles, Kenneth L, "Status of the UCSD Pascal Project", Dr. Dobb's, 3, 3, (23), March 1978, p 16.
Brinch Hansen, Per, The Architecture of Concurrent Programs, Prentice-Hall, 1977.
Brinch Hansen, Per, "A Comparison of Two Synchronizing Concepts", Acta Informatica, 1, 3, 1972, p 190.
Brinch Hansen, Per, "Concurrent Programming Concepts", Assoc Comp Mach Computing Surveys, 5, 4, December 1973, p 223.
Brinch Hansen, Per, "Disk Scheduling at Compile Time", Software - Practice and Experience, 6, 2, April-June 1976, p 201.
Brinch Hansen, Per, "Experience with Modular Concurrent Programming", IEEE Trans Software Engineering, March 1977, p 156.
Brinch Hansen, Per, "The Solo Operating System: A Concurrent Pascal Program", Software - Practice and Experience, 6, 2, April-June 1976, p 141.
Brinch Hansen, Per, "The Solo Operating System: Job Interface", Software - Practice and Experience, 6, 2, April-June 1976, p 151.
Brinch Hansen, Per, "The Solo Operating System: Processes, Monitors, and Classes", Software - Practice and Experience, 6, 2, April-June 1976, p 165.
Brinch Hansen, Per, Operating System Principles, Prentice-Hall, 1973.
Brinch Hansen, Per, "The Programming Language Concurrent Pascal", IEEE Transactions on Software Engineering, 1, 2, June 1975, p 199.
Brinch Hansen, Per, "Structured Multiprogramming", Comm ACM, 15, 7, July 1972, p 574.
Brinch Hansen, Per, "Universal Types in Concurrent Pascal", Information Processing Letters, 3, 6, July 1975, p 165.
Bron, C and DeVries, W, "A Pascal Compiler for PDP 11 Minicomputers", Software - Practice and Experience, 6, 1, January-March 1976, p 109.
Chung, Kin-Man and Yuen, Herbert, "A 'Tiny' Pascal Compiler, Part 1: The P-Code Interpreter", Byte, 3, 9, September 1978, p 58.
Chung, Kin-Man and Yuen, Herbert, "A 'Tiny' Pascal Compiler, Part 2: The P-Compiler", Byte, 3, 10, October 1978, p 34.
Chung, Kin-Man and Yuen, Herbert, "A 'Tiny' Pascal Compiler, Part 3: P-Coae to 8080 Conversion", Byte, 3, 11, November 1978, p 182.
Condict, Michael N, "The Pascal Dynamic Array Controversy and a Method for Enforcing Global Assertions", ACM SIGPLAN Notices, 12, 11, November 1977, p 23.
Conradi, Reidar, "Further Critical Comments on Pascal, Particularly as a Systems Programming Language", ACM SIGPLAN Notices, 11, 11, November 1976, p 8.
Conway, Richard, Gries, David and Zimmerman, E Carl, A Primer on Pascal, Winthrop, 1976.
Desjardins, Pierre, "A Pascal Compiler for the Xerox Sigma 6", SIGPLAN Notices, 8, 6, June 1973, p 34.
Edwards, Roy, "Is Pascal a Logical Subset of ALGOL 68 or Not?", ACM SIGPLAN Notices, 12, 6, June 1977, p 184.
Feiereisen, Lucien, "Implementation of Pascal on the PDP 11/45", Proceedings of the DECUS, 1, 1, September 1974, p 259.
Fischer, Charles N and LeBlanc, Richard J, "Efficient Implementation and Optimization of Run-Time ChecKing in Pascal", ACM SIGPLAN Notices, 12, 3, March 1977, p 19.
Forsyth, Charles H and Howard, Randall J, "Compilation and Pascal on the New Microprocessors", Byte, 3, 8, August 1978, p 50.
Friesland, G, Grosse-Lindemann, C O, Lorenz, P W, Nagel, H H and Stirl, P J, "A Pascal Compiler Bootstrapped on a DECSystem-10", Lecture Notes in Computer Science, 7, Springer-Verlag, 1974, p 101.
Grogono, Peter, Programming in Pascal, Addison-Wesley, 1978.
Gross-Lindemann, C O and Nagel, H H, "Postlude to a Pascal-Compiler Bootstrap on a DECSystem-10", Software - Practice and Experience, 6, 1, January-March 1976, p 29.
Habermann, A N, "Critical Comments on the Programming Language Pascal", Acta Informatica, 3, 1973, p 47.
Hartmann, Alfred C, "A Concurrent Pascal Compiler for Minicomputers", Lecture Notes in Computer Science, 50, Springer-Verlag, 1977.
Heimbigner, Dennis, "Writing Device Drivers in Concurrent Pascal", ACM Operating Systems Review, 12, 4, October 1978, p 16.
Helmers, Carl, "Is Pascal the Next BASIC?", Byte, 2, 12, December 1977, p 6.
Hoare, C A R, "Monitors: An Operating System Structuring Concept", Comm ACM, 17, 10, October 1974, p 549.
Hoare, C A R and Wirth, Niklaus, "An Axiomatic Definition of the Programming Language Pascal", Acta Informatica, 2, 1973, p 335.
Hueras, Jon and Ledgard, Henry, "An Automatic Formatting Program tor Pascal", ACM SIGPLAN Notices, 12, 7, July 1977, p 82.
Iglewski, M, Madey, J and Matwin, S, "A Contribution to an Improvement of Pascal", ACM SIGPLAN Notices, 13, 1, January 1978, p 48.
Jensen, Kathleen, and Wirth, Niklaus, Pascal User Manual and Report, second edition, Springer-Verlag, 1975.
Kittlitz, Edward N, "Another Proposal for Variable Size Arrays in Pascal", ACM SIGPLAN Notices, 12, 1, January 1977, p 82.
Kittlitz, Edward N, "Block Statements and Synonyms tor Pascal", ACM SIGPLAN Notices, 11, 10, October 1976, p 32.
Knobe, B and Yuval, G, "Some Steps Towards Better Pascal", Journal of Computer Languages, 1976.
Lampson, B W, "An Operating System for a Single-User Machine", Lecture Notes in Computer Science, 16, Springer-Verlag, 1974, p 208.
LeBlanc, Richard J, "Extensions to Pascal for Separate Compilation", ACM SIGPLAN Notices, 13, 9, Septemoer 1978, p 30.
Lecarme, Olivier, "An Experience in Structured Programming and Transferability", ACM SIGPLAN Notices, 8, 9, 1973.
Lecarme, Olivier, "Structured Programming, Programming Teaching, and the Language Pascal", ACM SIGCSE Bulletin, 6, 1, February 1974, ACM SIGPLAN Notices, 9, 7, July 1974, p 15.
Lecarme, Olivier and Desjardins, Pierre, "More Comments on the Programming Language Pascal", Acta Informatica, 4, 1975, p 231.
Lecarme, Olivier and Desjardins, Pierre, "Reply to a Paper by A N Habermann on the Programming Language Pascal", SIGPLAN Notices, 9, October 1974, p 21.
Ledgard, Henry, Singer, Andrew and Hueras, Jon, "A Basis tor Executing Pascal Programmers", ACM SIGPLAN Notices, 12, 7, July 1977, p 101.
MacLennan, B J, "A Note on Dynamic Arrays in Pascal", ACM SIGPLAN Notices, 10, 9, September 1975, p 39.
Matwin, S and Missala, M, "A Simple, Machine Independent Tool tor Obtaining Rough Measures of Pascal Programs", ACM SIGPLAN Notices, 11, 8, August 1976, p 42.
Merritt, Jim, "Pascal: BEGINning to END", Creative Computing, 4, 5, September-October 1978, p 149.
Mickel, Andy, Pascal Newsletter, University of Minnesota Computer Center.
Mohilner, Patricia R, "Prettyprinting Pascal Programs", ACM SIGPLAN Notices, 13, 7, July 1978, p 34.
Mohilner, Patricia R, "Using Pascal in a FORTRAN Environment", Software - Practice and Experlence, 7, 3, June-July 1977, p 357.
Mundie, David A, "In Praise of Pascal", Byte, 3, 8, August 1978, p 110.
Nutt, Gary J, "A Comparison of Pascal ana Fortran as Introductory Programming Languages", ACM SIGPLAN Notices, 13, 2, February 1978, p 57.
Peterson, James L, "On the Formatting of Pascal Programs", ACM SIGPLAN Notices, 12, 12, December 1977, p 83.
Pokrovsky, Sergei, "Formal Types and Their Application to Dynamic Arrays in Pascal", ACM SIGPLAN Notices, 11, 10, October 1976, p 36.
Russell, David L and Sue, Jeffrey Y, "Implementation of a Pascal Compiler tor the IBM 360", Software - Practice and Experlence, 6, 3, July-September 1976, p 371.
Schmidt, J W, "Some High Level Language Constructs for Data of Type Relation", ACM Trans Database Systems, 2, September 1977, p 247.
Schneider, G M, Weingart, S and Perlman, D, An Introduction to Programming and Problem Solving With Pascal, Wiley, 1973.
Schwartz, Allan M, "Pascal versus BASIC: An Exercise", Byte, 3, 8, August 1978, p 168.
Silberschatz, A, Kieburtz, R B and Bernstein, A J, "Extending Concurrent Pascal to Allow Dynamic Resource Management", IEEE Trans Software Engineering, May 1977, p 210.
Solntseff, N and Wood, D, "Pyramids: A Data Type for Matrix Representation in Pascal", BIT, 17, 3, 1977, p 344.
Steensgaard-Madsen, J, "More on Dynamic Arrays in Pascal", ACM SIGPLAN Notices, 11, 5, May 1976, p 63.
Stein, Herbert, "A Homebrew Pascal Compiler", Byte, 3, 8, August 1978, p 46.
Tennent, R D, "Another Look at Type Compatibility in Pascal", Software - Practice and Experience, 8, 4, July-August 1978, p 429.
Tennent, R D, "A Note on Files in Pascal", BIT, 17, 3, 1977, p 362.
Thibault, D and Mancel, P, "Implementation of a Pascal Compiler for the CII Iris 80 Computer", ACM SIGPLAN Notices, 8, 6, 1973.
Travis, Larry, Masahiro, Honda, LeBlanc, Richard and Zeigler, Stephen, "Design Rationale for TELOS, a Pascal-Based AI Language", SIGPLAN Notices, 12, 8, August 1977, p 67.
Venema, Ted and des Rivieras, Jim, "Euclid and Pascal", ACM SIGPLAN Notices, 13, 3, March 1978, p 57.
Webster, C A G, Introduction to Pascal, Heyden, 1976.
Welsh, J and Quinn, C, "A Pascal Compiler for ICL 1900 Series Computers", Software - Practice and Experience, 2, 1, January-March 1972, p 73.
Welsh, J, Sneeringer, W J and Hoare, C A R, "Ambiguities and Insecurities in Pascal", Sofware - Practice and Experlence, 7, 6, November-December 1977, p 685.
Wirth, Niklaus, Algorithms + Data Structures * Programs, Prentice-Hall, 1976.
Wirth, Niklaus, "An Assessment of the Programming Language Pascal", IEEE Transactions on Software Engineering, 1, 2, June 1975, p 192.
Wirth, Niklaus, "Comment on a Note on Dynamic Arrays in Pascal", ACM SIGPLAN Notices, 11, 1, January 1976, p 37.
Wirth, Niklaus, "The Design of a Pascal Compiler", Software - Practice and Experience, 1, 4, October-December 1971, p 309.
Wirth, Niklaus, "The Programming Language Pascal", Acta Informatica, 1, 1, 1971, p 35.
Wirth, Niklaus, Systematic Programming - An Introduction, Prentice-Hall, 1973.
Yuen, Herbert and Chung, Kin-Man, "A Proposed Pascal Compiler", Byte, 3, 8, August 1978, p 117.
[author : R. J. Long] #Listing #Assembly #Programming
Extract : « The TDL editor can be used to produce source code for the assembler, or the ‘raw text’ to be processed by the Text Output Processor (a word processor). The programs as provided by TDL (now Xitan) expect that the assembler and text output processor (TOP) read their source code from a ‘controlled reader,’ i.e., one which can supply characters as demanded by the programs. Unfortunately the ordinary cassette recorder which is used for storage does not satisfy this requirement.
My solution to this problem was to make the assembler and TOP read from memory.
As a further convenience, the routines allow the appropriate pair of programs to reside together in memory—the editor and assembler, or the editor and TOP. This means that if an error is detected in either the assembly process or in the word processing, corrections can be made without reloading the text from tape. [...] »
[author : E. Insam] #Listing #Assembly #Memory #Storage
Extract : « Here is a simple 2708 programmer for the 6800. It operates from a single 6820 device and obtains the 26 volts or so required for programming from an inbuilt oscillator using a 555 timer. [...] »
[author : Charles Wetherell] #Listing #ALGOL #Algorithm
Extract : « [...]
The Table Search Problem [...]
Binary Search Algorithm [...]
Linear Interpolation Search [...] »
[author : Curt Noll] #Mathematics
Extract : « 2**23209 - 1 [...]
ON 2/9/79, CURT NOLL. OF CAL STATE HAYWARD FOUND THIS NUMBER TO BE PRIME USING AN IMPLEMENTATION OF THE LUCAS-LEHMER TEST ON A CBC CYBER 174. THE PROOF OF PRIMALITY TOOK 8 HOURS, 40 MINUTE. »