On Sun, February 26, 2012 12:24 pm, Don Guinn wrote: > But it's too big and too powerful to teach real programming. To fully > understand computers one must be forced to program at no higher than > machine language
My father did that on the MIT Whirlwind in 1951. But in fact, all of the programming was done on paper and then toggled in. > and have to handle the most basic level of hardware I/O, > optionally aided by an assembler. As on the EDSAC? Relocating assembler in 31 machine words using single-letter mnemonics. Or on external hardware? > Wouldn't hurt to have to do a little microcoding as well. So, then, only human-powered flight counts, not airplanes? If you are going to be like that, then it's Turing machines all the way down, as in my http://wiki.sugarlabs.org/go/Activities/TurtleArt/Tutorials/Turtle_Art_Turing_Machine However the real answer for programming to the bare metal is FORTH, including the built-in FORTH assembler for the host architecture. Consider my colleague Mitch Bradley, who wrote Open Firmware for Sun, and has since reworked it for Apple and for the One Laptop Per Child XO. No more BIOS! Every XO has FORTH in under Linux and the Sugar Education software. Unless, of course, you want to do finite-state machines, where the J ;: primitive is your friend. Also, the Sugar version of Turtle Art uses program blocks that lock together into parse trees, rather than requiring linear text programming. It also includes stack primitives suitable for teaching Forth-style programming. > FORTRAN and above are not really programming > computers, but programming virtual machines which hide most of the true > aspects of computers. It's the difference between an automobile driver and > an auto mechanic. And those who only build WEB pages are only riding the > bus. > > APL and J almost completely remove the physical characteristics of > computers and are more of mathematical virtual machines. As such I don't > think of writing J as programming a computer, but programming mathematics. > And maybe APL and J are riding the bus also, but a really fancy bus. This turns out not to be the case. Iverson developed the notation that turned into APL in order to describe computers and their activities in minute and utterly precise detail, as in A Formal Description of System\360, by Falkoff, Iverson, and Sussenguth. http://domino.watson.ibm.com/tchjr/journalindex.nsf/600cc5649e2871db852568150060213c/641aa395fee3dd2c85256bfa006859fc!OpenDocument See also Digital Systems: Hardware Organization and Design, by Frederick Hill, which describes the AHPL APL-to-wiring-lists hardware compiler, and shows how to design complete computer systems with it. > Oh! And who is going to be the first to put J on this little beasty? There should be no trouble compiling J for Linux and other operating systems on ARM processors. I have talked with the Raspberry Pi people, and they are delighted at the prospect of having Sugar education software and J running on their products. http://en.wikipedia.org/wiki/ARM_architecture#Operating_systems Acorn systems The very first ARM-based Acorn Archimedes personal computers ran an interim operating system called Arthur, which evolved into RISC OS, used on later ARM-based systems from Acorn and other vendors. Embedded operating systems The ARM architecture is supported by a large number of embedded and real-time operating systems, including Windows CE, .NET Micro Framework, Symbian, ChibiOS/RT, FreeRTOS, eCos, Integrity, Nucleus PLUS, MicroC/OS-II, QNX, RTEMS, BRTOS, RTXC Quadros, ThreadX, Unison Operating System, uTasker, VxWorks, MQX and OSE.[36] Unix-like The ARM architecture is supported by Unix and Unix-like operating systems such as: Android Bada BSD iOS Linux Plan 9 from Bell Labs Inferno Solaris webOS Linux The following Linux distributions support ARM processors: APEXAR PDK[37] Android[38] Arch Linux Arm[39] Ångström[40] CRUX ARM[41] BackTrack Chrome OS[42] DSLinux[citation needed] Debian[43] ELinOS[44] Fedora[45] Gentoo[46] GoboLinux[47] iPodLinux[citation needed] Maemo[citation needed] MeeGo[citation needed] Mer[48] MontaVista[49] Slackware[50] T2 SDE[51] TimeSys[52] Ubuntu[53][54] webOS[citation needed] Wind River Linux[55] BSD The following BSD derivatives support ARM processors: RISC iX (Acorn ARM2/ARM3-based systems only) FreeBSD[56] NetBSD[57] OpenBSD[58] iOS Solaris OpenSolaris[59] There is even an announced project for MS Windows on ARM. "Microsoft Says Faster ARM Chips Make Windows 8 'Natural Fit'". San Francisco Chronicle. 2 June 2011. Retrieved 2 June 2011. So J Software should be doing it right now. Eric, are you listening? The real question is who will package J in RPM (Red Hat) and deb (Debian, Ubuntu) formats for x86 and ARM so that it can get into all of the Linux distributions. > On Sun, Feb 26, 2012 at 9:04 AM, William Tanksley, Jr > <wtanksle...@gmail.com >> wrote: > >> Another critical point: it costs $25 and outputs 1080p. >> >> -Wm >> >> On Sun, Feb 26, 2012 at 1:29 AM, david alis <david.a...@gmail.com> >> wrote: >> >> > I noticed this today and thought it worthwhile to post it here: >> > http://www.raspberrypi.org/about >> > http://www.raspberrypi.org/faqs >> > >> > "What’s a Raspberry Pi? >> > >> > The Raspberry Pi is a credit-card sized computer that >> > plugs into your TV and a keyboard. It’s a capable >> > little PC which can be used for many of the things >> > that your desktop PC does, like spreadsheets, >> > word-processing and games. >> > It also plays high-definition video. >> > We want to see it being used by kids >> > all over the world to learn programming" >> > >> > regards >> > david >> > ---------------------------------------------------------------------- >> > For information about J forums see http://www.jsoftware.com/forums.htm >> > >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm >> > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm -- Edward Mokurai (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) Cherlin Silent Thunder is my name, and Children are my nation. The Cosmos is my dwelling place, the Truth my destination. http://wiki.sugarlabs.org/go/Replacing_Textbooks ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm