OT: Computer Programming
san_jose_guy
money was invented for handing to women, but buying dances is a chump's game
Want to talk about the languages, the books, and also compliers and run-time environments, editors, debuggers, and other utilities.
This stuff moves so fast, that it is hard to keep up. First I want to start with established stuff going back decades:
C, C++
FORTRAN
Forth
PASCAL
ADA
and of course the O'reilly book publishers
http://shop.oreilly.com/
Want to talk about operating systems as well, and including real time.
This stuff moves so fast, that it is hard to keep up. First I want to start with established stuff going back decades:
C, C++
FORTRAN
Forth
PASCAL
ADA
and of course the O'reilly book publishers
http://shop.oreilly.com/
Want to talk about operating systems as well, and including real time.
337 comments
Will be looking for good books on Python and SQL.
SJG
https://www.urbandictionary.com/define.p…
C Programming Language, 2nd Edition 2nd Edition
by Brian W. Kernighan (Author), Dennis M. Ritchie (Author)
https://www.amazon.com/Programming-Langu…
Now some like C++. Some do not, they prefer to use their own object orientation methods with pointer to function in C. C++ gives standardized ways to do this. But I also point out that most of the extreme susceptibility to virus programs found in things like the old versions of Microsoft Windows is from the use of pointer to function, or swaping data with executable code. Most attack routes could be closed of if this were not allowed. But most advanced sorts of programming do require it.
The C++ Programming Language, 4th Edition 4th Edition
by Bjarne Stroustrup
https://www.amazon.com/C-Programming-Lan…
There are mountains of other books about these languages, going beyond the basics, and into stylistic matters. Many are extremely good.
There is also C#, coming from Microsoft, and I still have not figured out what the intended purpose of that is.
Not seen this before, but looks most interesting:
C Language Algorithms for Digital Signal Processing (1991)
https://www.amazon.com/Language-Algorith…
And now this too:
C++ Algorithms for Digital Signal Processing
https://www.amazon.com/Algorithms-Digita…
And this:
Designing Audio Effect Plug-Ins in C++: With Digital Audio Signal Processing Theory
https://www.amazon.com/Designing-Audio-E…
and of course this:
Numerical Recipes in C++: The Art of Scientific Computing
https://www.amazon.com/Numerical-Recipes…
And dozens and dozens of more. Only way to evaluate them is to read them, or to be part of a team that reads and reviews them. :) :) :)
SJG
https://www.urbandictionary.com/define.p…
How about C#, I have never figured out what it is supposed to be for.
https://en.wikipedia.org/wiki/C_Sharp_%2…
I can see why one would want a language with these properties, but why this one? Other than to be able to put the Microsoft copyright on it, I have not been able to figure out any reason for it.
********************************************
https://en.wikipedia.org/wiki/SAS_(softw…
************************************************
https://en.wikipedia.org/wiki/SQL
widely known to have been developed at IBM
**************************************
https://en.wikipedia.org/wiki/R_(program…
**************************************
https://en.wikipedia.org/wiki/Python_(pr…
Yes, well things like C and HTML for example, are often not very readable.
*********************************************
I am familiar to a greater or lesser degree with all of the above, but I do not have specific books which I can endorse.
SJG
https://www.urbandictionary.com/define.p…
https://en.wikipedia.org/wiki/Forth_(pro…
I have not used this and I do not have any books to endorse. But for so long this was considered to be the most forward looking of languages. Does anyone use it today? Is there something else which has taken its place?
I guess also I can ask about LISP, and there was a newer AI language.
Then COBOL and ALGOL, how much are these used today?
And about LISP and AI, some feel that special AI languages are a hindrance and that it is actually just as easy to set up your own ways to do the same in the terseness of C. At least from my limited vantage point, I am inclined to agree.
SJG
PASCAL is strongly typed and I do not object to this. In using C, I am very careful to avoid weird stuff which will make unfounded assumptions about compilers and various machines. C works for me because I impose my own strict discipline.
I have used primary source PASCAL books, but I do not remember the names of the authors. How much is it used today, need different languages for different purposes.
Not sure that PASCAL allows pointer to function and arrays of pointers to function, like C does, and most object orientation approaches depend upon this. It is treacherous if you screw up. But one learns not to screw up.
ADA, told that this was derived from PASCAL, but never used it.
FORTRAN, used extensively, never liked it. But the new versions are better. One problem was not being able to do dynamic memory allocations, unless you fudge it and just make a huge array. I believe though that the newest versions have fixed this. Don't know who uses this today, but I am told that use is still strong.
O'Reilly entered the market with some of the best books, no nonsense, but complete and understandable.
I look at their website and I see lots of boosting stuff. I hope they have not changed.
And then compiler and other programming tools for all this, things have changed.
SJG
And Rick999, yes, good point, the old character screen dos, running with that 640k memory limit was hard to work with. In part a legacy of the 20bit addressing system of the 8086 processors.
And you talk about configuration. Remember that DOS used a config.sys file. You try to make everything work with just one, but this is not always possible.
So I made a reboot program, using the Assembler. Of course this starts the CPU at its original start up address. But this alone is not enough. I think DOS and the BIOS were designed to prevent accidental reboots. So I had to one by one set all the CPU registers back to 0000. This included the 4x segment registers too. So it had to be done in the right order. Then finally, the IP register, and the machine reboot would occur. The .bat file never got to finish.
So this was on an automation system. We had .bat files to copy new files to config.sys and autoexec.bat. They they would run my reboot.exe.
It worked.
Now the CPU had other states than the software accessible registers. It was not a chip reset. But it still worked. There were lots of co-processors too, and these were not getting reset, but it still worked.
This was all before they started building software shutdown and restart into the boards, like with a capacitor time constant, and into windows.
But my way still worked, and was a work around for the 640k limitation.
When that was not enough, I just ported the code to a Sun 3 or Sun 4, with lots more memory and a virtual memory system. But funny thing, if it was a large Sun server system, unless you logged on to the system console as root and set the job priority so that almost nothing else could happen, the Sun was not that much faster than say a 20Mhz 386 PC.
SJG
Yardbirds
https://www.youtube.com/watch?v=N9ULMxxl…
https://en.wikipedia.org/wiki/Niklaus_Wi…
And yes, I even recognize the cover of this book. This was the one I was using, along with of course the manuals from the compiler provider.
Pascal User Manual and Report: ISO Pascal Standard
https://www.amazon.com/Pascal-User-Manua…
This was for Pascal what Kernighan and Ritchie would become for C.
Wirth has other books, and there are books about him. Well stocked libraries like the one's my group will build, will have all such books, plus a comparable number of new ones.
PASCAL is very rigid in typing, and it also complies in runtime bounds checkings. This slows it down.
I still did like it though. I think most microcomputer people found it to be the alternative to BASIC. And then I don't see how anyone would want to use FORTRAN unless they had to, though I certainly have made ample use of it, and I believe people still do.
I believe that C was a reaction against PASCAL, very terse, zero training wheels. If you screw anything up, the program crashes.
It would be very hard though to teach beginners to use it, too many concepts that they assume you already fully understand. I used it, for one thing, because UNIX was completely based on it.
I am told that ADA is based on PASCAL, but I do not have any first hand feel for this, or for the efficacy of ADA.
SJG
Mister Bond - A Jazzy Cocktail Of Ice Cold Themes
https://www.youtube.com/watch?v=XVQ8lpPu…
Hubert Dreyfus
https://www.amazon.com/What-Computers-St…
This is a brilliant critique of the entire AI project, especially as it first started at MIT with Marvin Minsky, in the late 50's. Dreyfus actually left MIT and came to UC Berkeley because of his difference in views.
Suffice to say, I agree with it, and see the 'expert system's' or natural language, or rules inference approach to AI as idiotic. And this still applies today.
I must add though, that I do still see rules inference as a good way to write certain types of programs.
Dreyfus and his brother Stuart have other books about AI and Computer Issues. Hubert was a leading authority on Martin Heidegger's :Being In Time".
SJG
Mister Bond - A Jazzy Cocktail Of Ice Cold Themes
https://www.youtube.com/watch?v=XVQ8lpPu…
So with the above caveat, I can endorse:
AI and expert systems : a comprehensive guide, C language / Robert I. Levine, Diane E. Drang, Barry Edelson. (1990 )
Levine believes that Lisp and Prolog are hindrances to use of AI techniques.
So again, not going along with AI or expert systems, still rules inference can be a useful technique, especially for when you want to make a computer keep watch on something autonomously.
SJG
SJG
Just saw this book:
Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5 (Learning Php, Mysql, Javascript, Css & Html5) 4th Edition
by Robin Nixon
https://www.amazon.com/Learning-PHP-MySQ…
Yes, lots of handy copies of this and Nixon's other books in libraries. And O'Reilly is outstanding.
The organization I am building will build fantastic libraries with all of these book, plus comparable numbers of new ones. To be well grounded in a field you need access to books both old and new.
SJG
Pink Floyd - Animals, full album
https://www.youtube.com/watch?v=u8puJpOQ…
I think it was made by the same company that made the legendary BIOSes.
Unlike the Microsoft Linker, the Phoenix Linker gave you a very high degree of control over the code overlays, making it so parts were swapped out as you desired.
You could use less of the 640k for your program, and have more for its data, using the Phoenix Linker.
But, the Phoenix Linker would not let you call from object module to object module via pointer to function. So this had to be worked around.
But of course this was all before everything went to Windows and its System Development Kit, and the Microsoft Dynamic Link Library approach. So I doubt there are any remaining traces of this Phoenix Linker. Getting harder and harder for little guys to write programs anymore, or for anyone to use a PC to make anything which is reliable enough for real time.
SJG
Donald E. Knuth
https://www.amazon.com/Computer-Programm…
Years ago, Keplers in Menlo Park was selling copies signed by the author.
Real good if you need to do something which starts at ground zero, like your own ways of representing floating point numbers and doing arithmetic on them. Stuff like that, starting from scratch in an environment.
SJG
Embedded systems building blocks : complete and ready-to-use modules in C / Jean J. Labrosse (2000)
The following books I just found via catalog searching for above.
Embedded C programming and the Atmel AVR / Richard Barnett, Larry O'Cull, Sarah Cox (2003)
Fundamentals of embedded software : where C and assembly meet / Daniel W. Lewis. (2002)
C programming for embedded systems / Kirk Zurell (2000)
Programming embedded systems in C and C++ / Michael Barr. (1999 O'Reilly )
Reusable software components : object-oriented embedded systems programming in C / Ted Van Sickle (1997)
FWIW, I do like the C language, object oriented programming techniques, and use of pointer to function. But I am also sensitive to the fact that some feel that all of these methods lower the safety and reliability, and make programs grossly over size, like say for example MS Windows. So I still want to learn more.
Anyone else have feelings about this?
OT: Book Publishing Industry
https://www.tuscl.net/?page=post&id=5072…
SJG
Pink Floyd - Animals
https://www.youtube.com/watch?v=GfRWTg61…
https://www.amazon.com/Compilers-Princip…
SJG
SJG Chronicles
https://www.tuscl.net/?page=post&id=4163…
For the rest of us, there is a huge need for embedded and real time systems, and they cannot use some of these huge and unreliable software environments of the last 25 years.
SJG
I never liked these because they seemed like beginner's toys, not things for professional use.
They had interpreters. Interesting, but that is how the languages are intended to work.
So what became of Borland?
Well, Borland had purchased Ashton Tate
https://en.wikipedia.org/wiki/Borland
now part of Micro Focus
https://www.microfocus.com/borland/?utm_…
https://www.microfocus.com/
They also talk about COBOL. Do people still use COBOL?
SJG
Above was where I first learned of ECO, and open source hard core real time scalable open source operating system. As I see it, that is 100% cool!
If it does not still exist or has serious problems, I'll write the new one myself
https://en.wikipedia.org/wiki/ECos
Micro Computers were supposed to be open and flexible. And before Bill Gates and Steve Jobs they were. Now they are not, basically just appliances, more than being tools.
. If you know C++ you can pick up anything else quickly.
It is just that there are some applications which don't require that degree of low level control, and where the speed does not have much to do with the language, but with the things it is implicitly calling.
Maybe this is what is know as functional programming?
https://en.wikipedia.org/wiki/Functional…
And as far as Dougster, this world needs people who have depth of perspective. I believe there are people who still use Fortran and Cobol, and there likely is some legacy of Borland.
For MS to have gone to Windows only, not running under a command line interpreter, is a big big loss, and one which for many applications needs to be reversed.
Yes, newest version of Fortran planed for 2018. So someone must use it.
https://en.wikipedia.org/wiki/Fortran
Cobal
https://en.wikipedia.org/wiki/COBOL#Lega…
Yes, still heavily utilized and a 2014 version.
Anyone use C# or .NET? Not clear to me what the efficacy of those are.
Lots of things use C like syntax, but there are not fully compiled or running on Operating System only.
SJG
https://www.amazon.com/Learning-PHP-MySQ…
I want to see what their is on Cobol and Fortran, books wise.
Advanced Finite Element Simulation with MSC Marc [electronic resource] : Application of User Subroutines / by Zia Javanbakht, Andreas ©ئchsner. (2017), USES FORTRAN
Modern Fortran in practice / Arjen Markus ; with foreword by Michael Metcalf. (2012)
Lots of post 2010 books about Fortran, seeming to be about finite element analysis.
Cobol
COBOL software modernization : from principles to iplementation with the BLU AGE ® method / Franck Barbier, Jean-Luc Recoussine. (2015).
Other new books relating Cobol to Java
An introduction to object COBOL / E. Reed Doke, Bill C. Hardgrave (1998)
COBOL programmer's notebook / Jim Keogh. (1998)
COBOL for dummies, 1997
Structured COBOL programming / Nancy Stern, Robert A. Stern. 1997
Now while at it, how about ADA?
Ada's legacy / Robin Hammerman, Andrew L. Russell., 2016
Analysable real-time systems : programmed in Ada / Alan Burns and Andy Wellings. 2016
Programming in Ada 2012 / John Barnes.
Building parallel, embedded, and real-time applications with Ada / John W. McCormick, Frank Singhoff [and] Jérôme Hugues 2011
Now, how about the language R, which GACA mentioned?
R for Microsoft Excel users : making the transition for statistical analysis / Conrad Carlberg. 2017
Beginning data science in R : data analysis, visualization, and modelling for the data scientist / Thomas Mailund 2017
Using the R commander : a point-and-click interface for R / John Fox 2017
And GACA also mentioned Python
Python without fear : a beginner's guide that makes you feel smart / Brian Overland. 2018
Here also, check out this:
https://www.microsoft.com/en-us/language
/Programming_languages_used_in_most_popular_websites
https://en.wikipedia.org/wiki/Programmin…
ASP.NET
https://en.wikipedia.org/wiki/ASP.NET
and finally, new books about PASCAL?
Practical compiling with Pascal-S / Michael Rees, Dave Robson 1988
Less staying power than Fortran or Cobol, probably because more hobby oriented, not IBM Mainframe oriented.
Written at CSU San Luis Obispo, and in Pascal, for MS-DOS, now for Lynux
http://www.its.caltech.edu/~mmic/puffind…
Probably good:
Refactoring SQL applications / Stéphane Faroult with Pascal L'Hermite 2008, O'Reilly
SJG
Intelligent embedded systems / Louis L. Odette 1991, talks about C, prolog,and Forth
Pocket guide to FORTH / Linda Baker [and] Mitch Derick ( 1983 )
FORTH on the Atari : learning by using / E. Floegel ( 1983 )
So no, I'm not seeing much recent action, but I still believe there could be much to learn from it.
SJG
But all still worth learning more about.
Now, how about UNIX Shells?
https://en.wikipedia.org/wiki/Unix_shell
So I've used borne, korn, and the C-Shell. This later they way was written by Bill Joy at UC Berkely.
And then there are both older and newer shells.
As I see it, this kind of pipe lining is one of the most important aspects of Unix.
And damn it, MS-DOS, running on smaller and less costly machines, was getting like that, from DOS 3.0 forwards!
And I had bought this disk full of the source code for a whole bunch of Unix like utilties, like GREP, but for MS-DOS. Things were cool.
But then there was Windows, and in the wake of the OS-2 failure, Windows taking over.
Windows is very good for some types of apps, even necessary. But it should not take over and destroy that shell type environ.
So the rise of Unix, in my mind, is inseparable from UC Berkeley, the rise of Sun Microsystems and Bill Joy. And then there was this "SPRINT", a faster Unix variant?
So does this Python compile to machine code and run on the operating system, or is it kind of like an expanded C-Shell?
Used to be an Apple Unix. Still continuing? Maybe not.
And then of course Linux.
And then the Nicholas Wirth OS, and then there was this Be OS. And then loads and loads of Embedded and Real Time OS's
A decade ago they were saying that Linux had a huge share of the WWW server installations. And it tended to be LAMP ( Linux, Apache, MySQL, and PHP ), but then they were also using client side scripting ( like JavaScript and other HTML extensions ).
Still like above?
File name extensions:
https://en.wikipedia.org/wiki/Filename_e…
List:
https://en.wikipedia.org/wiki/List_of_fi…
says ASP and ASPX are:
ActiveX Server Pages of Microsoft.Net
Has Chairman Bill again been able to take over?
SJG
Don't have much in terms of new books on PASCAL programming, so I will review the Niklaus Wirth standard book.
Don't know anything about this visual Oberon, its special programming language, or its visual interface. Need to learn. I know it is not used, all the more reason I need to learn.
https://en.wikipedia.org/wiki/Oberon_(op…
FWIW, I am becoming ever more painfully aware that most people, including myself do not have access to adequate libraries. Even large universities do not necessarily have such. So they use more book sharing. UC and CSU do this.
In the organization I am working to build, this deficit will be corrected for our people.
SJG
youtube terminates exploitive kids channel
https://techcrunch.com/2017/11/17/youtub…
Stones, awesome long playlist
https://www.youtube.com/watch?v=vC0Qt1lv…
http://www.projectoberon.com/
SJG
https://www.inf.ethz.ch/personal/wirth/
Finite Elements For Electrical Engineers, Peter P. Silvester and Ronald L. Ferrari.
1996 third edition, but originally 1983.
Says to use Fortran, Pascal, or C.
But the examples in the book, dated 1995, are in Fortran.
So my question is, would a younger person already highly fluent in C/C++ have any reason to want to start something new in Fortran? How about PASCAL, as that seems to have now less of a legacy than Fortran or Cobol?
Quite a hard core book, computing things like magnetic saturation and the operation of antennae.
Lots of extensive mathematical runtimes for Fortran and for C, maybe even for Pascal, like complex numbers, roots of polynomial, rational polynomials, and matrices of rational polynomials. Lots of signal processing stuff too, even simulation while in the middle of real time control.
This book is cataloged as Electrical Engineering TK, not as Systems Theory Q, Math QA, or Physics QC.
I have had lots of stuff where the older portions or the connection to something commercial is in PASCAL, but the new work was in C. Once you figure out how to do it, no big deal, except that you have to have both runtime libraries in the .exe.
Of the run time bounds checking which is in Fortran and Pascal, but not C, it should be possible to make those instead into things which can be turned on or off at will.
But I believe that only C has pointer to function, and then formalized in C++. For some stuff, that is the fastest way, mattering if it is at the core of some intense computations. Otherwise the speed not mattering.
Only way I can really develop a feel for this is to read the old books. Access to info via Internet and old books is better now than decades back. And this is important.
Nikalus Wirth, a programming language for PIC Microcontrollers. Now that is tiny!
https://www.inf.ethz.ch/personal/wirth/P…
2013 edition!
And the Oberon operating system, tiles instead of windows. MS Windows 1.0 was like that. I used to call it "Tiles".
For process control you really don't want overlapping windows or scroll bars. You want all important data to be on the screen at all times, and this to be so no matter who the operator is. And you won't be expecting the computer to be doing anything else while it is controlling. You take over the machine and have your own protocols for mutitasking and overlay swapping and data file creation, and for all communications.
Mac-OS and MS-Windows have their advantages in highly user interactive and screen oriented things. But otherwise no. And to be copying and pasting text from window to window, I have always found that making it like tiles is much better.
Anyone remember that 'Brief' text editor for DOS. It was awesome. Tiles only. No scroll bars.
http://briefeditor.com/
You need something like this for C, because with large programs always having multiple source files and all the header files and include files, and the lengthy variable and function names, its all cutting and pasting.
For process control, you want a screen more like Brief, but set up by the application, so it is fixed, not set up by the human operator.
Everything changed with Chairman Bill and the move to .DLL. Arguably the right way, more efficient. But I tell you, most Windows stuff is slug slow, compared to say that Brief Editor for DOS.
SJG
Joni Mitchell - Amelia (Live 1979)
https://www.youtube.com/watch?v=nxMwGTQ1…
Mastering C++ : an introduction to C++ and object-oriented programming for C and Pascal programmers / Cay S. Horstmann. ( 1991 )
Object-oriented programming in Turbo Pascal 5.5 / Ben Ezzell ( 1989 )
The above 3 books look interesting, as recent as 1995, because they advocate a lesser followed way, PASCAL for object oriented programming. Though not what in intend to do, still could be most illuminative.
SJG
Foreigner: i just died in your arms tonight
https://www.youtube.com/watch?v=UxcFZTa-…
I want to know what love is
https://www.youtube.com/watch?v=raNGeq3_…
Ubuntu Linux, some have called this a "low latency linux", and some in the DIY audio community use Ubuntu Linux for digital audio. Of course they turn as much stuff, like the Internet, off as possible. But to me, this still seems just the wrong way to approach real time. You want a hard core real time OS, and Linux / Unix was never designed for such.
People have talked about Hardening Linux
http://www.apress.com/us/book/9781590594…
Some years back, when MS-Windows was such a humiliating spectacle, people became very aware of virus attacks. Some OS's really are made to be hard to attack.
And then Monta Vista, Hard Hat Linux
https://en.wikipedia.org/wiki/MontaVista
I am sure this has legitimate uses, but I still don't see it as good for close loop real time. But I know that some others resist this view.
https://en.wikipedia.org/wiki/MontaVista
Looks like Caldera does not exit anymore. Concern, as they had bought ECOS.
https://en.wikipedia.org/wiki/Caldera_Op…
SCO? Chairman Bill's Santa Cruz Operation, for UNIX?
https://en.wikipedia.org/wiki/SCO/Linux_…
https://en.wikipedia.org/wiki/SCO_Group
http://www.linuxdevcenter.com/pub/ldist/…
Well, Red Hat still seems to run
https://www.redhat.com/en
100 E. Davie Street
Raleigh, NC 27601
but other locations too, lots of them:
150 Mathilda PlaceSuite: 500Sunnyvale, CA 94086United States
All products
https://www.redhat.com/en/technologies/a…
https://en.wikipedia.org/wiki/ECos
http://ecos.sourceware.org/
ecos seems to be real, but seemingly cut lose from Red Hat. Red Boot had been derived from the red hat name.
Most recent web site additions, 2015.
says, "We acknowledge the support of Red Hat to the open source community in providing the computing resources at ecos.sourceware.org."
wikipedia criticism of ecos:
"
The FreeBSD TCP/IP network stack included with eCos is out of date (circa 2001) and exposes systems to numerous security and stability vulnerabilities (FreeBSD RELENG 4 4 0 RELEASE for IPv4 and FreeBSD's origin KAME for IPv6). Official eCos maintainers do not appear to monitor FreeBSD or KAME for security or stability updates, but rather rely on minimal and insufficient bug reports from users of eCos.[citation needed]
The SNMP package is rudimentary at best, once again, apparently due to its age.[
"
Lots and lots of Real Time OS's. Of course almost all C / C++ based
https://en.wikipedia.org/wiki/Comparison…
SJG
https://www.gnu.org/
SJG
SJG
Originally 1974, latest version 1991. I'm getting that latest version.
I have read the above mostly, long ago. I used to use PASCAL all the time and had some big programs in it. But my main source book was just the Microsoft manual.
Niklaus Wirth DOB 1934
https://en.wikipedia.org/wiki/Niklaus_Wi…
Wirth was the chief designer of the programming languages Euler, Algol W, Pascal, Modula, Modula-2, Oberon, Oberon-2, and Oberon-07. He was also a major part of the design and implementation team for the Lilith and Oberon operating systems, and for the Lola digital hardware design and simulation system.
So if he was involved in these other languages, does this mean that he was renouncing PASCAL?
Martin Rieser
https://en.wikipedia.org/wiki/Martin_Rie…
http://www.martinrieser.com/
So we also have:
Programming in Oberon : steps beyond Pascal and Modula / Martin Reiser and Niklaus Wirth. (1992)
Does this mean that Wirth was renouncing PASCAL? And why?
C was the first time that the specialized and limited audience developers could be using what the OS and major pro application developers were using.
Before getting to Object Oriented Programming in C++, want to look at it in C.
Like this, old book:
Objective-C : object-oriented programming techniques / Lewis J. Pinson, Richard S. Wiener ( 1991 )
ALso have this programming language, Eiffel
https://en.wikipedia.org/wiki/Eiffel_(pr…
Says ideas from it made it into Java and Ada
Integrated development environment ( usually that means it is shit )
https://en.wikipedia.org/wiki/EiffelStud…
Seems to be its own company too.
Anyway, people learn for if they can have the old books besides the new books, as they can learn to see the history of how the ideas developed.
Here, about C and Eiffel:
Object technology for scientific computing : object-oriented numerical software in Eiffel and C / Paul F. Dubois ( 1997 )
We also have Ruby, and it borrowed from Lisp and SmallTalk
https://en.wikibooks.org/wiki/Ruby_Progr…
SmallTalk
https://en.wikipedia.org/wiki/Smalltalk
Seems to me that with C there were basically two period, you could call the Old C, when it was kind of an insider thing, and then ANSI C. With the latter they did try to put some training wheels on it. With the former, pretty much anything went, did not have to have header files or anything.
But then with ANSI, they seemed to want to leave the power in it, but stop making it so easy to screw up. They wanted you to use "cast" we addressing variables and structures of variables as though they were something else. You could do what you wanted, but they seemed to want to put a stop to senseless showing off.
They first though tried to prohibit NULL pointers, which had always been used as the signal for an uninitialized pointer. That prohibition standard only last a few hours.
SJG
Yardbirds Tangerine
https://www.youtube.com/watch?v=R4p7q_2g…
Led Zeppelin - For Your Love - rare live tape
https://www.youtube.com/watch?v=-wg-9fHY…
Yardbirds, Train Kept A Rolling, 1968 French TV
https://www.youtube.com/watch?v=0y078n95…
Dazed and Confused
https://www.youtube.com/watch?v=hRq7j-BS…
And after NaturalSelection gets pushed out the last shift register, its the bit bucket for him:
http://mecox.com/images/uploads/pets/380…
https://en.wikipedia.org/wiki/Comparison…
This FreeRTOS looks good, for some things, and then also this Free DOS. Seems like you need a progression from hard RTOS, back to maybe this Free DOS, then to hardened low latency Linux ( ubuntu? ), and then a more typical full muti-user Linux, and then finally back to the garbage realm of MS-Windows.
So then about FreeRTOS
https://en.wikipedia.org/wiki/FreeRTOS
Atmel ARM MCU's
http://www.atmel.com/products/microcontr…
Atmel, ARM 11
http://www.datasheetarchive.com/ARM11%20…
???????
ARM Cores
https://en.wikipedia.org/wiki/List_of_AR…
Free RTOS .org
http://www.freertos.org/
Real Time Engineers Ltd.
Suite 36
71-75 Shelton Street
Covent Garden
London
WC2H 9JQ
FreeRTOS books and manuals
http://www.freertos.org/Documentation/RT…
SJG
New Indian made large motorcycle:
http://www.msn.com/en-us/money/companies…
CSNY Live, 1970
https://www.youtube.com/watch?v=LoHKV3Ar…
Crosby Stills Nash & Young - VH1 Legends Documentary
https://www.youtube.com/watch?v=PeEWMnRc…
Neil Young & Crazy Horse, Austin City Limits, 1/13/2012
https://www.youtube.com/watch?v=pJge17ks…
MicroC/OS-II : the real-time kernel / Jean J. Labrosse ( 1999 ) skimmed through years ago, has C based RTOS in the book and on its CD.
SJG
LOL! Doesn't really seem able to learn either.
SJG
Serious Shooting In Cleveland
https://www.yahoo.com/gma/12-old-boy-sho…
https://www.amazon.com/Circuit-Design-Us…
Sounds like a silly book, but actually very rigorous, and highly relevant today! He has a second book as well.
SJG
Serious Shooting In Cleveland
https://www.yahoo.com/gma/12-old-boy-sho…
This seems to address the scope of the subject:
https://en.wikipedia.org/wiki/Manufactur…
Anyone know of a good book about such things, and more about the full scope of this subject.
Applying manufacturing execution systems / Michael McClellan (1997), not that new
SJG
Peter Frampton - Do you feel like we do
https://www.youtube.com/watch?v=V9Yq5m9e…
Good: The Communist Manifesto: An Analysis
https://www.youtube.com/watch?v=y_2hNngV…
https://en.wikipedia.org/wiki/RS-485
In my opinion this is greatly underused.
RS-232 is too limited, and by the specs, it requires both + and - 12 volts.
RS-485 requires only +5, full duplex, and with addressing. Could use it for an enhanced MIDI, and for all manner of industrial controls and home automation.
Lots of stuff using USB, but cabling too expensive, too hard to put connectors on. Speed not needed for most things.
MIDI Man uses USB on their keyboards, but not necessary.
For so many things, RS-485 great.
Not for digital media. Other ways to do that, best not to use any TCP-IP, though many refuse to understand this.
For so many things, RS-485 great!
consider this book
Handbook of serial communications interfaces : a comprehensive compendium of serial digital input/output (I/o) standards / Louis E. Frenzel Jr. ( 2016 )
Newnes books are always good.
SJG
It appears as you are the only contributor to this topic.
SJG
https://en.wikipedia.org/wiki/Timeline_o…
Phoenix Technologies, HQ in Massachusetts and Campbell CA
https://en.wikipedia.org/wiki/Phoenix_Te…
There other products, especially that overlay linker:
"Phoenix also developed C language libraries, called PForCe, along with Plink-86/Plink-86plus, overlay linkers, and Pfix-86, a windowed Debugger for DOS."
Any call for this today? No more tight memory constraints, but also I think Microsoft's Dynamic Link Library approach gets around the problem anyway.
SJG
appears to be about Phoenix BIOS
https://web.archive.org/web/*/http://www…
So Phoenix Technologies is still running!
https://www.phoenix.com/
Not sure what this is:
https://docs.chaosgroup.com/display/PHX3…
Data Visualization, Edward Tufte
https://en.wikipedia.org/wiki/Edward_Tuf…
Yes, this is a famous book:
The Visual Display of Quantitative InformationJan 2001
by Edward R. Tufte
https://www.amazon.com/Visual-Display-Qu…
Gantt and Pert Charts
https://en.wikipedia.org/wiki/Gantt_char…
Software, books about this field? I have used such software. But, one temptation is to set it all up as Pert, trying to define all the dependencies. And the let the computer construct the Gantt.
I have found that this does not work well. There are always other unstated constraints and expectations, like preliminary results, which influence how you want it done. And then the more you keep breaking up the tasks, the more the influence of the dependencies is broken up.
So what I have found works is just to forget about Pert Charts, and must manually make Gantt Charts, just do it the way you want to, the way that seems right.
And with groups I have managed, it has worked well just to have eveyone make their own Gantt Charts, using what every graphical tools they want, but without a computer really constructing it. This has always worked well for me, it keeps the people able to work on things in the short term, while keeping the longer range objectives in view. If only other departments were being run that way. And of course I won't hire people that aren't capable of thinking this way.
The Gantt chart : a working tool of management
Clark, Wallace, 1880-1948
London : Pitman, [1952]
The Gantt Chart: A Working Tool of Management (Classic Reprint)Apr 22, 2017
by Wallace Clark
Project Management For DummiesApr 22, 2013
by Stanley E. Portny, looks quite good
https://www.amazon.com/Project-Managemen…
open source software:
Mastering the Gantt Chart: Understand and use the "Gantt Project" open source software efficiently! (eGuide Education Book 1)Jan 30, 2017
by Olivier Rebière and Cristina Rebière
https://www.amazon.com/Mastering-Gantt-C…
SJG
The older I get the more open-minded I get and the less hardcore on any given language or tool . . . like a musical instrument, the skill of the performer may be more important than the limits and/or features of the instrument itself?
I learned a bit of F# and Scala. I find these interesting. But, Microsoft tacked on so many of the features of F# onto C# recently that I find less of a need for F#. I think of it like C# without the curly braces. But, functional programming may also have a niche fit for heavily mathematical applications, I suppose? I could see using it here and there in small places . . .
What's funny to me is Powershell which could have been C# Script, if Microsoft had merely maintained the same syntax in this new language.
Best application for functional languages seems to be compilers and interpreters.
Anyone ever use RBASE?
https://en.wikipedia.org/wiki/R:Base
SJG
No, C is not for beginners, they had been learning from PASCAL. But today I know that they use other things.
PASCAL makes light use of dynamic memory allocation. Instead memory is allocated in the most common way, by throwing things onto the stack. Doesn't seem to have pointer to function, and as I see it, you need that.
SJG
Marxism 101: How Capitalism is Killing Itself with Dr. Richard Wolff
https://www.youtube.com/watch?v=6P97r9Ci…
How Class Works In The US
https://www.youtube.com/watch?v=euH3pAuL…
Suspect in 35 yo mass murder on Alaska fishing boat breaks silence:
http://www.msn.com/en-us/news/crime/exon…
Book about cult leaders that I have long wanted to read:
https://www.amazon.com/Feet-Clay-Anthony…
Runs from Gurdjieff and Ignatius of Loyola, thorough to Rajneesh.
https://www.buzzfeed.com/alanamohamed/13…
Australian wives furious over proposal to send sex workers to troops - Sounds Awesome! Strip club style front room, brothel style back room, always the best because it is the most flexible and conducive to GFE auditions.
https://nypost.com/2017/12/07/military-w…
https://www.amazon.com/Myth-Mental-Illne…
SJG
As I see it, this is what "Object Oriented" means, taking down the strict wall between data and function.
So you will want Object Oriented and Pointer to Function.
But, as I know this is complicated, I am reading all of these books, historical books, to see how the ideas developed, not just new books.
SJG
How Capitalism is Destroying Itself
https://www.youtube.com/watch?v=euH3pAuL…
https://en.wikipedia.org/wiki/R:Base
Seems like it still exists, though I know there will be other things too. They claim it is SQL compliant. I found much value in it, but also short comings. Too slow because it kept all the data on hard disc, so if you tried to PROJECT ( relating two tables ) it could easily take hours. We had to work around this.
But the idea always impressed me. And we had a library for C programs to directly access the data base. Should have used this more, and done stuff in core memory. Probably very fast.
4th Generation Programming Languages
https://en.wikipedia.org/wiki/Fourth-gen…
To refresh my memory, and as help in giving me currency and greater depth of understanding, I am going to get:
R:Base solutions : applications and resources / Microrim, [Jayne Vitulli, editor] 1988
http://www.rbase.com/
Murrysville, Pennsylvania, 15 miles east of Pittsburg, continuing on would take you to Altoona, where Penn State has its rail transit engineering program, for those of you who like me prefer your toys to be 12" to the foot.
Is there any relation to the GNU R programming language?
https://en.wikipedia.org/wiki/R_(program…
Articles about R:BASE
http://www.razzak.com/fte/
http://www.razzak.com/strengths/
R:BASE versus the others:
http://www.razzak.com/fte/pdf/rbasevsthe…
"R:BASE is slow and others are faster"
Sounds like they are very confident with their new versions. They offer this evaluation edition:
http://www.rbase.com/evaluation/32
The reason it was slow was that if you were to PROJECT two tables, say 30 records, and 4000 records, then that meant 120,000 independent hard disk accesses. It could take hours and hours. Made no difference how large your new table would be. PROJECT is the main way you use relational databases, as I know. What was needed was just that they tried to load as much as possible into core memory, and do it that way.
We worked around it by radically cutting up the data into multiple databases. We did have to lower our expectations of having data at your finger tips, to making paper printouts and running overnight. We even bought this 64k printer buffer and a very fast printer, and had RBASE generate reports in cycles. The printer buffer gave close to a 2x speed improvement.
But writing our own C language application would have also done the job even better. As far as the basic logic and structure of R:BASE, I was always impressed by it.
SJG
https://www.amazon.com/Strange-Woman-Pow…
http://ecx.images-amazon.com/images/I/41…
Las Chavelas Bar Gallery
http://www.laschavelasbar.com/gallery/
password: 28chavelas10
What is Marxism?
https://www.youtube.com/watch?v=Vz3eOb6Y…
BART Through Downtown San Jose, A Tunnel? Cost, Time? That area has a very high water table.
https://www.nbcbayarea.com/news/local/BA…
Everyone says that the computer field changes so fast that there is no need for the old books. Not true, old books are the best ways to learn how the ideas have developed. As I see, I will be wanting to collect them for my organization.
In reading about Fortran and Pascal I want to see if there is any reason to be ever starting a new project using them? Of this, I do not know. But people do still use them.
Wirth says that Algol, PL/1, and Fortran have been expanded to become more like Pascal.
SJG
Marxism 101
https://www.youtube.com/watch?v=Vz3eOb6Y…
Yardbirds
https://www.youtube.com/watch?v=N9ULMxxl…
https://www.youtube.com/watch?v=vbC2Z74q…
Stones, Tempe, 1981, Under My Thumb, awesome well known performance
https://www.youtube.com/watch?v=03TYbIma…
by Ben Ezzell
https://www.amazon.com/Object-Oriented-P…
An interesting book,an old book. Ezzell has written other books too, and they look good. Old computer books are important, as otherwise you cannot follow how the ideas developed.
For myself I always declined Borland Pascal, as it seemed like it was too bundled, likely intended for students and hobbyists. But so it looks like with this rev 5.5, they started to call it Object Pascal. They made additions to it. They added Global Variables. I don't think you really need this, you just make a big structure ( record in Pascal ) and pass a pointer to it. I can't really see yet what changes they made.
In my mind, you must have pointer to function. But I am not seeing it. Certainly it helps to be able to have it.
They reference Simula 67 as the original object oriented language. And they talk about SmallTalk and C++ and mention Bjarne Stroustrup. But they claim that SmallTalk and C++ did not take hold.
Simula 67
https://en.wikipedia.org/wiki/Simula
As I see it, as programs get larger and more complex, you develop very symmetrical and modularized ways of writing them. Central to this is keeping the internals isolated from module to module, and focusing the interaction to certain functions which are externally called, and then to some large data structures the program revolves around. So creating, and loading these structures will always be handled by dedicated function, with names using the same words. This then tends to support pointer to function use.
And then sometimes you have to write your own command and control languages, and process each of their reserved words. This also tends towards pointer to function.
And then with these graphical interfaces and wanting to make things multi threaded, and wanting to reuse modules, it is always push in the object oriented direction. Likewise with rules inference methods being used.
So the book says what I have read many places, going back decades,
The books says, Inheritance, Encapsulation, and Polymorphism.
Encapsulation is what I have been describing.
Inheritance is something completely formalized in C++, but it is about how these structures and the ways of handling them can be nested. I take it to mean like complex numbers, but made into polynomials, but then into rational polynomials, and then in to matrices, but the computer always keeps it all straightened out.
Polymorphism is that each object has an entire hierarchy of functions which include the same words in their naming, along with the data it self, that are dedicated to working together, but may be totally different from how other built objects are handled.
This book looks much better than what I had expected. There is GNU Pascal now, not sure if Borland Pascal still exists, but I guess they were trying to push the envelop. They had libraries of functions for making mouse driven and graphical applications, all pre-windows.
The book does not talk about MS-Windows, but it talks about OS-2 Presentation Manager. That makes me laugh. I feel that that would have been better than windows. A more mixed environment, command line and graphical, like another UNIX, developed from the ground up. I got burned by Chairman Bill dropping OS-2 and severing ties with IBM. A very negative development if you ask me.
SJG
Jeff Beck
https://www.youtube.com/watch?v=rXJQb7aI…
https://en.wikipedia.org/wiki/FreeRTOS
https://www.freertos.org/
Books and Manuals
https://www.freertos.org/Documentation/R…
Reference Manual pdf
https://www.freertos.org/Documentation/F…
Mastering the FreeRTOS™ pdf
Real Time Kernel pdf
https://www.freertos.org/Documentation/1…
Source Forge
https://sourceforge.net/projects/freerto…
SJG
https://www.freertos.org/Documentation/1…
Is this the new ECOS?
Reading this. It is good. I though am not going to read it carefully enough to learn how to use Borland's "Object Pascal", I just want to understand the thinking involved.
They have added "objects" and "methods", but I don't see pointer to function. So I guess they were making it more like C++, than like C.
In my view, if you go their way, you will still be wanting pointer to function. But you will also eventually be wanting Dynamic Linking, Chairman Bill's .dll.
You would want this in order to be able to use data input to a program to draw in other objects / functions, by name, without recompiling or relinking. No way to do this without a .dll approach.
Borland Object Pascal does not lock you into officially declared and compiled in "methods", but the idea is that you are supposed to use them.
As I know, in that early 90's era, there was a huge market for "Class Libraries", the C++ version of the same thing. But better still to have the actual source code. It may be this Source Forge and the Free Software movement which today fills this need. Not sure.
Ezzell talks about Simula 67 preceding SmallTalk. Want to read about both those.
This Borland Object Pascal comes with an extensive library allowing you to make full graphically driven programs, like a precursor to Windows. Highly admirable, and especially since it was always $49.95.
Borland was trying to keep computers as tools, where you program them to make them do what you want. This is how they should be!
My objection to Chairman Bill is that though originally he supported this, as time went on he has turned them into fixed function appliances, where software is written by professional developers, and everyone else is just a Consumer-User.
Borland was fighting back. Needless to say, the organization I am developing, working in conjuction with others, will also be fighting back.
I am only planning on reading one more Pascal only book. It was to be,
Advanced Turbo Pascal version 4 : now includes Borland's Turbo Pascal Database Toolbox and Turbo Pascal Graphix Toolbox / Herbert Schildt ( 1988 )
I wanted to read about Borland and the Pascal to Database connection.
And this Herbert Schildt has written dozens of computer programming books. Right up to the present, C++ and Java. I will be reading his later stuff.
But my last purely Pascal book will be, one of the latest of the Borland Pascal books, just to look for how much they packed in, Object, Database.
Using Turbo Pascal 6.0 / Ben Ezzell ( 1991 )
SJG
All About Politicians Sexually Harassing Women, DJT, Roy Moore
https://www.democracynow.org/shows/2017/…
https://www.freertos.org/Documentation/1…
Reading the above is highly recommended!
SJG
I see now that they allow you to define a 'procedure' ( function in C) via something like 'circle.construct'.
What this means is you have a 'record' ( struct in C ) which has as one of its elements a 'procedure' ( function in C ). The idea is you have this object circle, and then this method construct, and this is an example of polymorphism as there is an entire class of things like circle and you have the methods to act upon them.
So while this is not exactly the overt creation of a pointer to function, this is how you would use pointer to function.
This is the first I have seen of this.
Now in C there are ways you could cross over pointer to function and pointer to data. I believe that that allows severe errors and security weaknesses, and especially if continued in Bill's .dll system which Windows runs on.
Nevertheless, this is all starting to make sense now. Just don't know who still uses Pascal, and let alone this 'Object Pascal'.
Also need to read about ADA, to see how Pascal inspired it really is, and what its continuing legacy is. Does it offer advantages in security and reliability over C/C++.
SJG
Led Zeppelin
https://www.youtube.com/watch?v=NfwZfGAK…
Object-oriented programming in Turbo Pascal 5.5 / Ben Ezzell ( 1989 )
This is really getting interesting now, talking about "virtual object methods", and distinguishing these virtual objects from static objects which are resolved in compiling and linking.
And then so there is this VMT ( virtual methods table ). So you see, this is now getting into the dynamic linking of which I spoke.
Now I don't really know how this worked, how your .exe could get stuff at run time out of some other file.
As Ezzell writes, page 168, "In the end, one of the points of object-oriented programming is extensibility, allowing the extension of existing code without recompiling the source code..."
So of course now we can see why Chairman Bill would want Borland exterminated. They were getting around DOS. They would have their own graphical interface which operated any time an application started it, they would have their own .dll system. Soon they would be getting around the 640k memory limit, and relegating dos to just a loader.
This would have been much better than the way Chairman Bill finally made it, with Windows completely taking over. The Borland approach would have been very open to amateur developers, and remaining more like Unix in how it allowed both command line and graphical interfaces. PC's would have remained tools. But Bill insisted that they be made into appliances.
I don't know how much of the code of this immediate pre-Windows 3 era is still available. FreeDOS was written by a private party. And Chairman Bill, no matter that it was over 20 years ago, he would never allow redistribution or release source.
DOS was based on isolated .exe's. And as I know, much of the .obj convention was coming from Intel's Intelec development systems and their Isis operating system. Early MS-DOS was inferior to CPM, and most of the additions were just being taken from Unix. Always Bill does stuff, so that he can gain control.
Still not sure what of Borland is left, or if there is any reason to go their way based on Pascal, instead of C.
Will be reading Ezzell's book about Borland Turbo Pascal 6 next. Not sure how much that general book will go into these Object Oriented issues. But that should be the last Pascal only book for me, for now.
Also, I still feel that this move from isolated .exe, to a system based on .dll, and these virtual objects, is why Windows was for well over a decade extremely prone to virus attacks, really defenseless. I have not read this anywhere though.
And, we need to keep the old books, if we are to understand how the ideas developed. And in this case we also need them to see the history of how Chairman Bill was able to convert PC's from very open tools, and make them instead into appliances.
SJG
King Crimson, live in Japan
https://www.youtube.com/watch?v=uYE7XCVA…
Yardbirds
https://www.youtube.com/watch?v=4QcTgPyI…
Oh well, at least I know that R:Base still exists, and there should be much to read online, and also about SQL.
So I am ready now to shift to Fortran books.
Modern Fortran in practice / Arjen Markus ; with foreword by Michael Metcalf. (2012)
Not the newest grade of Fortran, but it deals with all the issues which would determine its contemporary relevance.
SJG
Yardbirds
https://www.youtube.com/watch?v=vbC2Z74q…
Object-oriented programming in Turbo Pascal 5.5 / Ben Ezzell ( 1989 )
Object Pascal and their VMT ( Virtual Method's Table ), very impressive. They also have a compiler switch $R, to compile in all times of runtime bounds checking.
Not sure how many people used this, or if there is any legacy of it today.
I see why Bill had to use windows to displace DOS, make everyone use his .dll based Window's SDK ( System Development Kit ), otherwise people would have gotten around DOS entirely. So Bill had to take over.
Because of how well Borland did that, I need to also be reading their C books, see if they used the same stuff.
Still not sure why one would want to start something new with Pascal instead of C.
Now to read:
Ezzell's book about Borland Turbo Pascal 6
And that will be my last Pascal only book, for now.
Soon will have:
Modern Fortran in practice / Arjen Markus ; with foreword by Michael Metcalf. (2012)
SJG
If people are going to make good strategic decisions about how to write new languages and programming environments, one needs access to these old books.
SJG
Modern Fortran in practice / Arjen Markus ; with foreword by Michael Metcalf ( 2012 )
and
COBOL : a guide to structured, portable, maintainable, and efficient program design / Eric Garrigue Vesely ( 1989 )
Whether or not there would be any reason to use either of these two languages in future projects I do not know. But I am certain that there is still much to learn from them, and then also that it is important to preserve access to the old books.
SJG
Ford Class
http://www.thefordclass.com/cvn78/index.…
Huffy
http://www.divinesecretsofadomesticdiva.…
Here is a hilarious movie about a Rev. Ike sort of a character:
http://www.imdb.com/title/tt0065579/
They show some of it here, watch how he drives into town in a Rolls followed by an armored car to hold the money.
https://www.youtube.com/watch?v=Vq5wk9Lx…
https://www.pleaserusa.com/ProductDetail…
https://www.pleaserusa.com/ProductDetail…
Sophisticated Lady - Duke Ellington
https://www.youtube.com/watch?v=brqxEdws…
https://www.youtube.com/watch?v=aJVACQHI…
This has a really interesting melody and harmony. There are fusion jazz versions of this, and they are instantly recognizable, even without the lyrics. This version makes a pleasant change to the lyrics. To my ear, they must have some sort of pickup and amplification on the wood bass, order to get more sustain.
https://www.youtube.com/watch?v=-wc957do…
Just finished with above, last Pascal book for now. Borland, I think they used some sort of TSR ( Terminate and Stay Resident ), remember those? That would be how their dynamic objects stuff would work. They really were pushing the object.
DOS had by then become an extreme hindrance. Bill stomped on Borland by making Windows not just run under DOS, but replace it.
SJG
So if you had a program which used a mathematical library, you would have been able to update the mathematical library even if you did not have the source to the main program.
Dynamic linking would have all sorts of advantages.
MS-Windows 1 was a joke, I called it "Tiles".
Windows 2 was enough to see what people really wanted. Again, all just to scare off competition.
Windows 3 was an attempt to get the graphical environment. But Borland was already there.
So fixing it so you had to use Windows stopped that.
I don't think many people understand how negative of a player Chairman Bill has been.
Do FreeDos or Linux solve these problems? Anyway to get the Borland system?
The goal of the Free Software Movement is to let users take over, by maintaining the stuff they want to keep using. This is how it should be.
Historically no way to offer another program access to runtime variables. Dynamic Linking changes this.
But I still suspect that Dynamic Linking is why Windows 3 was so prone to virus attacks.
Have my first Cobol book soon, and I have no experience at all with Cobol.
SJG
Borland had 5 types! 2 byte, 4byte, 6byte, two different types of 8byte, and then 10byte. I think this 10byte was inspired by Seymour Cray and his 80 bits machines.
All awesome!
SJG
There is one guy who would always play it differently:
https://www.youtube.com/watch?v=RsJEkl5G…
More:
https://www.youtube.com/watch?v=RsJEkl5G…
SJG
They show a punch card request. I think it is a paper hand filled out and given to those who operate the key punches. My goodness. But it looks like a punch card.
Say it came from IBM San Jose 95150. I think this is a long ago closed facility.
https://www.google.com/maps/place/San+Jo…
So COBOL originally used GOTO statements, and there was an ALTER GOTO, just like the computed GOTO in Fortran. And they call this what I have heard it called, 'spaghetti code'.
So in the 1985 version IBM had it so you could nix certain reserved words to make people code better. We have Structured COBOL, just like Structured FORTRAN.
They say COBOL is more business oriented than FORTRAN. Still don't know what they mean.
To me a business language would be more about databases and reports, and accounting conventions and taxation, and the curious complexities posed by the calendar.
But to me, you would deal with this by a large runtime library, and with good data encapsulation, so that it is very easy to use.
Some are confident that Cobol has as great future, as of 1989. And there are newer books relating it to Java and to other developments.
In the 1989 book they list over 50 vendors of Cobol related software products and they say it is still the most widely used computer language.
Today I would think that everything is client server and on microcomputers, and more distributed to the people who actually do the work, instead of in a central Data Processing Dept. So I would think they use other stuff.
Some say that Data Base Query Languages will replace Cobol. This is what I would think. It looks like what I know of from R:Base, and especially with all the reserved words capitalized.
And to me, dealing with databases and disk drives is real slow. So you could just make it interpretive, and even interactive interpretive.
This was not how computers were, especially not with the slow CPU's and the punch cards.
Just starting to read, and I will read other Cobol books, like about OBJECT COBOL.
I still believe there is a great deal to learn by looking at this.
SJG
Ginger Baker's Air Force, an example of how life should be.
https://www.youtube.com/watch?v=oe9DA8pO…
Karl Marx
https://www.youtube.com/watch?v=Joql2JbD…
COBOL for dummies / by Arthur Griffith
My experience with these Dummies books is that they actually are quite good.
Then say:
1998
An introduction to object COBOL / E. Reed Doke, Bill C. Hardgrave
Drat, some of the other books I thought I could get are not actually available. So that sould be it for COBOL, 3 books only. But others in Java and on SQL, and on R.
SJG
"Modern Fortran In Practice, by Arjen Markus, 2012. Deals with Fortran 2008, but there is a still newer version
Markus writes for the ACM newsletter 'Fortran Forum', and the 'comp.lang.fortran' news group
Dynamic Libraries,
In Windows its 'DLL'.
In MacOSX its 'dylib'.
For Linux its 'shared object'
DISLIN, owned by the Max Planck INstitute, for Solar System Research
MySQL 'MySQL.com'
Perl 'perl.org'
Python 'python.org'
PLplot 'http://plplot.sf.net'
GNU, gcc, gfortran, gnuplot, of Free Software Foundation
SQLite 'SQLite.org'
Tcl, Tk, 'tcl.tk'
SJG
This book is awesome, deals with some very sophisticated things, shows how C and Fortran would get different results from very similar code.
But these are guys who have been using Fortran continuously for decades. Updates in '77, '90, '95, '03, '08, '17.
So I won't be starting anything new in Fortran or Cobal anytime soon. But on the other hand if I do find myself involved where those old languages would be better, it is to be considered.
Fully object oriented, vast provisions for multi-processor, and always designed to execute as fast as possible.
And as the author points out, today most projects are not single language anymore. My own experience too.
SJG
TJ Steet
https://farm6.staticflickr.com/5488/9620…
This book is awesome, deals with some very sophisticated things, shows how C and Fortran would get different results from very similar code.
But these are guys who have been using Fortran continuously for decades. Updates in '77, '90, '95, '03, '08, '17.
So I won't be starting anything new in Fortran or Cobal anytime soon. But on the other hand if I do find myself involved where those old languages would be better, it is to be considered.
Fully object oriented, vast provisions for multi-processor, and always designed to execute as fast as possible.
And as the author points out, today most projects are not single language anymore. My own experience too.
Let me here try to record the key references and links
ACM newsletter Fortran Forum
'comp.lang.fortran' newsgroup
Michael Metcalf, author very involved with Fortran.
SQLite, written in C. For Fortran there is fsqlite, developed by Markus.
SQLite developed by D. Richard Hipp, March 2012, 'http://www.sqlite.org'
PLplot, collection of libraries for plotting technical and scientific data
Tcl/Tk
Tklib, library of Tk extensions, 'http://tcllib.sf.net'
^^^^ works with GUI.
Gabriele Jost, Chapman, Ruud van der Pas, Using OpenMP: Portable Shared Memory Parallel Programming 2008.
Lusk, Gropp, Skjellum. Using MPI: portable parallel programming with message passing, 1999.
OpenMP and MPI are the two ways of doing parallel processing in Fortran.
Unit Testing, Junit is for java
For Fortran we have Funit, pfunit, FRUIT, and Ftnunit. All for Fortran or Fortran and Ruby.
Les Hatton, 'Safer C, Developing software for High-Integrity and Safety-critical systems' 1994
https://www.amazon.com/Safer-High-Integr…
also:
Code complete : [a practical handbook of software construction] / Steve McConnell
Redmond, Wash. : Microsoft Press, [2004]
https://www.amazon.com/Code-Complete-Pra…
XML Files, a very practical kind of compromise idea in my opinion.
used extensively in docbook.
Making TEX work / Norman Walsh (1994)
DocBook 5: The Definitive Guide: The Official Documentation for DocBook, by Walsh Norman
https://www.amazon.com/s/ref=nb_sb_noss?…
https://en.wikipedia.org/wiki/XML
You can adapt this to your uses, very easy to parse. Discourages casual tinkering and haphazard changes, but still allows expansion in terms of tags used.
SJG
Yardbirds Mr. Your A Better Man Than I - Heart Full Of Soul live (NOT OFFICIAL RELEASE)
https://www.youtube.com/watch?v=4QcTgPyI…
Ann Wilson - Beware Of Darkness @ George Fest 2014
https://www.youtube.com/watch?v=6pphBiAY…
TJ Street
https://farm6.staticflickr.com/5488/9620…
Beyond Objectivism and Relativism: Science, Hermeneutics, and Praxis First Edition Edition
by Richard J. Bernstein 1983, very good book
Circuit Design Using Personal Computers, by Thomas Cuthbert, 1983
COBOL for dummies / by Arthur Griffith
That should do me for now for Fortran, Cobol, and Pascal books.
Then I want to get:
Programming in Modula-2 / Niklaus Wirth (1985)
My question is why did the inventor of PASCAL seem to abandon it?
As this is looking to me, its rather like and hour glass. C/C++ is at the center. So with those before it, why use them? And of those after, why use them?
So I am moving though those before, including Simula-67, Forth, SmallTalk, and ADA.
SJG
Krugman
https://www.youtube.com/watch?v=QzQYA9Qj…
Pikette, Krugman, Stiglitz
https://www.youtube.com/watch?v=Si4iyyJD…
https://www.amazon.com/COBOL-Dummies-Art…
Very good book. I will learn a great deal from it.
Should be the last of the Fortran or Cobol books for now. Not clear that I would ever want to start anything new in either of these languages. But I still want to understand them. I could someday end up connected to the maintenance of one of them.
SJG
These query languages which are used for databases today, they owe a huge debt to Cobol.
Often with large computer projects, you do need to write a sort of language of your own. Knowing the history of Cobol is very important.
Don't think I will ever be starting anything new with Cobol or Fortran, but still important to know more about them.
I will get one more Cobol book because I want to see more of how Cobol became structured, and then object oriented.
SJG
by Niklaus Wirth
He sounds like a very nice guy.
https://en.wikipedia.org/wiki/Modula-2
Yes, so Modula-2 is an extension of Modula. And they both contain all of Pascal. The extension is in 'modules' which helps with multi-processing, separating initialization from execution. FWIW, I have done plenty of this, and in C. Letting computers catch up on things while other external events are happening.
And then Modula is really designed for con-current processing.
This is what I wanted to know about it, how it was different from PASCAL. So I am nearly done with it.
Need to learn about these ideas when they originally developed.
Still need one more Cobol book, and then on to the others. Looking at everything pre-C. C/C++ is the waist of the hour glass, dividing the past from the present.
SJG
I think C/C++ just one upped them.
Done with Modula-2
SJG
Jack Parsons: Space Exploration & the O.T.O.
https://www.youtube.com/watch?v=OYCfo_YS…
I am opposed to everything about Scientology
Bare-Faced Messiah : A Biography of L. Ron Hubbard Hardcover – 1988
https://www.amazon.com/Bare-Faced-Messia…
Bare-faced messiah : the true story of L. Ron Hubbard / Russell Miller (1987)
For the new languages I'll try to go in order. So let me see if I can set up a base timeline.
Java, James Gosling, Sun Microsystems, 1995, compiled, but runs under Java Virtual Machine. So object code is portable.
JavaScript, Brendan Eich, 1995, Client side initially, but now also server side.
https://en.wikipedia.org/wiki/JavaScript
PHP, Rasmus Lerdorf, 1994, Server Side
https://en.wikipedia.org/wiki/PHP
Perl, 1987, Larry Wall, seems to be scripting. "The Duct Tape Which Holds Then Internet Together"
https://en.wikipedia.org/wiki/Perl
AWK, text processing, scripting, 1970's
https://en.wikipedia.org/wiki/AWK
Python, Guido van Rossum, 1991, good code readability, interpreted
https://en.wikipedia.org/wiki/Python_(pr…
SJG
SJG
Learning to code Javascript for browsers as they were in 1995 is probably not going to be very helpful, everyone is running away from Java as fast as they can, and Perl and awk are really niche.
Python has supplanted Java as a common teaching language, so it's probably the most useful.
R being for statistical analysis would require learning statistical analysis.
SJG
https://www.reuters.com/article/us-java-…
Its future overall looks uncertain since Oracle appears to be losing interest in it:
https://www.infoworld.com/article/308200…
The trend is for web browser apps to be redone as HTML5 to move away from Java and Flash.
Likely Java with its 'virtual machine' approach introduced additional vulnerabilities.
Thanks for that heads up. I'll try to find out more. Only Java, or also JavaScript?
SJG
https://en.wikipedia.org/wiki/Java_%28pr…
I'll have to keep my eyes open. Old books might not deal with these problems.
SJG
Re: Java
It's possible to be careless and mess up any implementation, which I think was more the problem with Java than the virtual machine part of its design. The idea that it was sandboxed did give a people false sense of security. My take on the real problem is that so many competing interests were trying to push it in one direction or the other, subvert it, supplant it, make it universal, etc., that the implementation details kind of got lost in the shuffle.
Thanks for that info.
SJG
Freemasons
https://www.youtube.com/watch?v=fKRnxZR1…
Says Templars joined forces with Knights from Malta who had turned to piracy. Used Skull and Crossbones, but also relates to how they buried people.
Also believed to come from the Osirian Mummy Pose.
An introduction to object COBOL / E. Reed Doke, Bill C. Hardgrave (1998)
I believe that these database languages of today owe a huge debt to Cobol.
Currently finished reading about Fortran, Pascal, and Modula-2. Unless you read the old books about these langauges, then you won't understand that ideas behind them, and these ideas are still highly relevant today.
This E. Reed Doke has written other books which would be worth looking at as well, much newer books.
SJG
Glen Gould plays Alban Berg
https://www.youtube.com/watch?v=QNk_A4Zo…
Programming in Oberon : steps beyond Pascal and Modula / Martin Reiser and Niklaus Wirth. (1992)
SJG
http://www.cheap-lingerie.com/images/che…
https://image.tmdb.org/t/p/w1280/mdWUIGh…
Ticket To Ride
https://www.youtube.com/watch?v=70-WSgZn…
https://azchords.com/b/beatles-tabs-410/…
https://tabs.ultimate-guitar.com/tab/the…
Myth Of Osiris
https://www.youtube.com/watch?v=gwQ9iMJ3…
https://en.wikipedia.org/wiki/Perl
Bourne Shell, Korn Shell, C Shell, and others
https://en.wikipedia.org/wiki/Shell_scri…
Can you use Perl as your shell? Probably, but I bet it takes more memory. Even C Shell takes more memory.
SJG
In China they have a book known as the Art of War, written by Tun Szu.
https://en.wikipedia.org/wiki/The_Art_of…
and Three Boxes Of Life
https://www.amazon.com/Three-Boxes-Life-…
Jefferson Airplane, Rooftop
https://www.youtube.com/watch?v=rx_08cam…
Fat Angel
https://www.youtube.com/watch?v=9A7jM-7b…
Rev William Barber, and on Christian Hate, used to maintain White Supremacy
https://www.democracynow.org/2018/1/9/re…
https://www.democracynow.org/2018/1/9/re…
Sed & awk / Dale Dougherty and Arnold Robbins (1997)
I had once bought via Doctor Dobb's Journal with a disk of all the main Unix utilities, source code for DOS. I was going to port them all to OS-2.
This brings up a point though. The C language is extremely powerful, and I liked it from the first time I looked at it. But if you had to ask, where does it really excel, what is it really the best at? I would say that it is text string processing.
This is always tedious, as you have to anticipate any and all ways something could possibly be screwed up, and then intercept it first.
Okay, well that makes sense because Unix seems to have been designed as a completely text string driven environment.
Now DOS 3 copied some of this. But Unix is where it started.
So you have C, C-shell, older shells, Grep, Awk, Sed, all about text strings. And then Perl.
Computers should be text driven because you want computers driving computers, not people being expected to drive them.
So I have never liked the Macintosh, and I have never liked when Microsoft had Windows take the place of DOS, instead of running under it.
Computers should be text driven and save graphical interfaces for applications which need them. They are very slow, they slow down user input, and they are much harder to automate the input to.
Now this newer area of Dynamic Linking, what is the best way to do that? Graphical environs can have it. You have things like MATLAB which might have something like that under it. Hard to say.
SJG
Three Dog Night - An Old Fashioned Love Song
https://www.youtube.com/watch?v=BkkgYjaz…
Never Been To Spain
https://www.youtube.com/watch?v=dm6qw_ye…
Joy To The World
https://www.youtube.com/watch?v=pMHZh5Xl…
The Fifth Dimension - Aquarius - Let The Sunshine In
https://www.youtube.com/watch?v=oPK7ZF6j…
Love Grows (Where My Rosemary Goes) - Edison Lighthouse (1970)
https://www.youtube.com/watch?v=y1EpaboC…
LuLu (To Sir With Love)
https://www.youtube.com/watch?v=yTapoA5R…
Righteous Brothers - Unchained Melody [Live - Best Quality] (1965)
https://www.youtube.com/watch?v=IYj2hex9…
Heart
https://www.youtube.com/watch?v=XJBNfCEh…
Stairway to Heaven
https://www.youtube.com/watch?v=2u-PjvRy…
Aerosmith - Sweet Emotion - Phone Sex
https://www.youtube.com/watch?v=82cJgPXU…
https://research.hackerrank.com/develope…
In the "Developer Tools at Work" section, Python is by far the most preferred, and second only to Go for the language developers want to learn next (probably too many have already learned python for it to rank higher in that category)
Awk/sed aren't really designed to be programming languagues, they're more along the lines of SQL. Basically filtering languages that can do some data transformations.
Technically awk is a programming language, being Turing-complete, though:
"While AWK has a limited intended application domain and was especially designed to support one-liner programs, the language is Turing-complete, and even the early Bell Labs users of AWK often wrote well-structured large AWK programs"
On the other hand, you technically can write awk-style one-liners in Perl, but it's not generally used that way outside of a few perl one-liner recipes that can be found on the web. The in-place recursive editing it can do on multiple files is the only thing I really have found that useful for, though.
But thanks for that link and all the info. Your view of AWK jibes with mine.
SJG
An introduction to object COBOL / E. Reed Doke, Bill C. Hardgrave 1998
Then on to the Nikluas Wirth books, and then books about Lisp, Prolog, Small Talk, Forth, and Ada
SJG
Lisp, 1958, as I had thought, very old
https://en.wikipedia.org/wiki/Lisp_(prog…
Prolog, 1972
https://en.wikipedia.org/wiki/Prolog
Smalltalk, 1972
https://en.wikipedia.org/wiki/Smalltalk
Forth 1970
https://en.wikipedia.org/wiki/Forth_(pro…
Ada, 1980, but not stable until many years later
https://en.wikipedia.org/wiki/Ada_(progr…
Anyway, so I will finish with Cobal and the N. Wirth books, and then read about the above in the order developed.
This is all pre-C, as C is the waist of an hourglass.
SJG
https://en.wikipedia.org/wiki/SETL
SJG
http://image.nola.com/home/nola-media/wi…
Most computer langauges offer 4 byte and 8 byte reals. But Borland Turbo Pascal offered 2 byte, 4 byte, 6 byte, 8 byte, and 10 byte, and several versions of some of them.
I think it was Seymour Cray who pioneered 10 byte.
How does it work in the Intel Floating Point Co-Processors?
8087
https://en.wikipedia.org/wiki/Intel_8087
Had 4 byte and 8 byte and an extended 80 bit format.
eventually led to IEEE 754-1985
https://en.wikipedia.org/wiki/IEEE_754-1…
has 4 byte and 8 byte, and lots of clever things. But no 10 byte.
Extended precision
https://en.wikipedia.org/wiki/Extended_p…
Never the less, seems like the intel hardware does no support 80bits. Need to look further into this though.
SJG
https://www.democracynow.org/2018/2/1/jo…
This guy is only scratching the surface, but still worth reading.
https://www.amazon.com/Lost-Connections-…
Year of the Dog, Feb. 16th, 2018
https://www.asia-home.com/china/newyear/…
looks good
Embedded software development with C / Kai Qian, David den Haring, Li Cao. (2009)
known to be good, skimmed through this many years ago. They give you an embedded operating system for any use you want, in the book, and on the disk
Embedded systems building blocks : complete and ready-to-use modules in C / Jean J. Labrosse (2000)
SJG
Bro Topia, Emily Chang
http://www.sfchronicle.com/style/article…
https://www.bizjournals.com/sanjose/news…
https://www.recode.net/2018/2/5/16972152…
Brotopia: Breaking Up the Boys' Club of Silicon Valley, Emily Chang
Heinrich Cornelius Agrippa
https://en.wikipedia.org/wiki/Heinrich_C…
Three Books Of Occult Philosophy
https://en.wikipedia.org/wiki/Three_Book…
http://www.esotericarchives.com/agrippa/
https://www.amazon.com/Three-Occult-Phil…
Taliesin McKnight, Tyler Texas
Secrecy & the Occult: Is it Important?
https://www.youtube.com/watch?v=Vhna8kQ1…
Spirit Summoning Procedures & Advise - Ceremonial Magick 101
https://www.youtube.com/watch?v=Px39VpND…
Musing On Adulting, Dominic77's thread
https://www.tuscl.net/?page=post&id=5480…
A programmer's guide to COMMON LISP / Deborah G. Tatar (1987)
COMMON LISP : the language / Guy L. Steele, Jr. ; with contributions by Scott E. Fahlman ... [et al.] and with contributions to the 2nd ed. by Daniel G. Bobrow ... [et al.] (1990)
Object-oriented common LISP / Stephen Slade (1998)
SJG
Yardbirds Mr. Your A Better Man Than I - Heart Full Of Soul live (NOT OFFICIAL RELEASE)
https://www.youtube.com/watch?v=4QcTgPyI…
Spirit Summoning Procedures & Advise - Ceremonial Magick 101
https://www.youtube.com/watch?v=Px39VpND…
Programming in Prolog / W.F. Clocksin, C.S. Mellish 1981
Prolog programming for artificial intelligence / Ivan Bratko. 1986
The power of Turbo Prolog : the natural language of artificial intelligence / Ralph Roberts. 1987
An introduction to language processing with Perl and Prolog : an outline of theories, implementation, and application with special consideration of English, French, and German / Pierre M. Nugues 2006
SJG
https://en.wikipedia.org/wiki/SETL
books? Well that I can get:
Programming with sets : an introduction to SETL / J.T. Schwartz ... [et al.] (1986)
SJG
http://setl.org/setl/
Anyway, this all tells me what order to read the books in. And SETL will be an open source soon.
SJG
https://en.wikipedia.org/wiki/Alan_Kay
yes, don't forget Simula-67, from Sweden
Connection Machine, by Danny Hillis, yes I have read much about this long ago and was very impressed
https://en.wikipedia.org/wiki/Connection…
As I remember it had 64k of processors. But I don't think it was floating point, not intended as scientific array processor super computer. Talk about using it with LISP for AI.
Introduction to SIMULA 67 / Günther Lamprecht (1983) later books too.
None of this stuff is really dead, rather it lives on in the new languages and in the programming techniques used with them.
SJG
Old programming languages never die....they hang around just to keep old programmers constantly P.O.'d.
Today I attempt to stay current on the following:
JavaScript.
Java.
Python.
Elixir.
Rust.
Never heard of Elixir or Rust. Thanks for the info.
Modern Fortran is almost like Pascal, and totally screen editor based.
SJG
https://en.wikipedia.org/wiki/Elixir_(pr…
Rust (2010)
https://en.wikipedia.org/wiki/Rust_(prog…
The Rust Programming Language, by Steve Klabnick, a new book
Introducing Elixir : getting started in functional programming / Simon St. Laurent and J. David Eisenberg (2017)
The above are new languages, so they will be at the end of my investigations.
Thanks for the info.
SJG
Patrick Dunn
https://www.amazon.com/Postmodern-Magic-…
The Uplifters
https://www.youtube.com/watch?v=-zzXYPJA…
"demonstrates how crime, moral puritanism, and conflicts between ruthless capitalists and striking workers help ruin the lives of marginal Americans."
https://en.wikipedia.org/wiki/Intoleranc…
But not all feminism is like this:
https://www.guerrillagirls.com/
Feminist artists, pro-sex, pro-prostitution. On the whole quite similar to the Russian girls, Pussy Riot.
"According to the authors, before agriculture, sex was relatively promiscuous, and paternity was not a concern, in a similar way to the mating system of Bonobos. "
https://en.wikipedia.org/wiki/Sex_at_Daw…
https://www.amazon.com/Sex-Dawn-Stray-Mo…
Crisis and Openings: Introduction to Marxism - Richard D Wolff
https://www.youtube.com/watch?v=T9Whccun…
Led Zeppelin 1969 Danish TV
https://www.youtube.com/watch?v=k-WSbMW7…
Led Zeppelin II
https://www.youtube.com/watch?v=0bcIjILq…
Should be my last Cobol, Fortran, or Pascal book, but I will read the rest of the Niklaus Wirth books, then continuing with the rest of the pre-C languages, then C, then Unix, then all the post C stuff.
SJG
https://www.amazon.com/Introduction-Obje…
Starts with careful exposition of Object Oriented concepts, explains that they are needed for for a crisis in software engineering.
Then talks about Cobol, still widely used, second only to C.
Those who in 1997 offered Object Cobol compilers:
Hitachi, IBM, MIcro Focus (whatever is left of Borland), Netron, Computer Associates ( used to make some great stuff ), TechBridge Technology
Also gets into the group that developed Object Modelling Language
https://en.wikipedia.org/wiki/Object-mod…
https://en.wikipedia.org/wiki/Rational_S…
And of course this all connects with Ada, which I will be reading about.
SJG
Truck Stop Honeys
https://www.tuscl.net/discussion.php?id=…
Video
https://www.youtube.com/watch?v=C0B5aTzK…
https://www.youtube.com/watch?v=1M2NCpgE…
Italy is better
https://www.youtube.com/watch?v=JOKm7naA…
Would they let me bring my motor home into the truck stop?
Object oriented design with applications / Grady Booch (1991)
An introduction to object-oriented analysis : objects and UML in plain English / David William Brown (2002)
Object models : strategies, patterns, and applications / Peter Coad with David North and Mark Mayfield (1997)
Object-oriented analysis and design / James Martin and James J. Odell (1992)
Object-oriented modeling and design with UML / Michael Blaha, James Rumbaugh (2005)
SJG
So reading Doke and Hardgrave, An Introduction To Object COBOL.
They, in 1997, see a huge future for COBOL. Seconded maybe only by C.
People write about COBOL being 'business oriented', where as FORTRAN is not.
Well, as I see it, that would mean working with relational databases, which did not exist when COBOL was developed.
But they say that COBOL-85 was made to work with SQL and DB2.
Of object oriented, they trace that to Simula and SmallTalk. But to compare they invoke SmallTalk and C++. Seems that Object Cobol, ANSI 98? is a bit more fully object oriented than any of them.
Anyway, not everyone likes C++. But I could make a C program which does anything you could do in any of these languages. And I could write compilers and interpreters for them too., I could make modules that make doing almost anything very simple.
So I will continue to read, much to learn.
When COBOL was developed, the late 50's, a big part of the push was coming from the Pentagon, who wanted platform compatibility. Okay.
But then computers were very slow. Compiling was the only way to get speed.
Today not necessary. You can use Interpreters for things which are mainly about databases or external devices. Plenty fast enough.
But compilers have another function, they discourage casual tinkering and the creation of unauthorized versions. Anyone using light encryption of source code, when it is to be interpreted?
I can see why people wanted Java. But it is not fully compiled, just to a Virtual Machine Code. But there are security problems? Too bad.
For myself, C is the language of the gods. It does everything. But what it seems to be the very best at is string manipulation. And this makes sense as it came with Unix, and that is totally command line and text driven.
As I see it this is how computers should be. Never really liked McIntosh and when Windows no longer ran under DOS, but replaced it.
GUI's are for when really needed only. Otherwise they are a speed and batching hinderance.
Anyway, these authors see Object Cobol as perfectly meeting the need for OO, GUI, and Client Server. I see this likely being in something else.
Both authors are in the CIS departments of colleges of Business Administration at State Universities, Arkansas and Missouri.
SJG
Very high salaries, but homes still hard to afford. In my opinion this must hamstring those businesses too. High salaries make it hard. Unavailability also makes it hard.
https://www.mercurynews.com/2018/02/14/b…
Inducting women into my group:
https://www.tuscl.net/discussion.php?id=…
California Dreamin' - Royal Gigolos
https://www.youtube.com/watch?v=buT2gdKx…
san_jose_guy
https://www.urbandictionary.com/define.p…
Mostly it assumes that you know COBOL, which I do not, and then it is about the OO adaptation of it.
So they compare with SmallTalk and C++
6 OO properties
Inheritance, Encapsulation, Polymorphism, Classes as Objects, Persistent Objects, Dynamic Binding
So as they rate it:
Inheritance-> SmallTalk single C++ multiple Object Cobol multiple
Encapsulation-> ST total C++ limited OC total
Polymorphism-> Yes Yes Yes
Classes as Objects-> Yes No Yes
Persistent Objects-> Yes No Yes
Dynamic Binding-> Yes No Yes
SJG
https://www.amazon.com/Introduction-Obje…
This is the newest Cobol book I can easily get hold of. They feel that Cobol has a bright future. I am skeptical.
they talk of a Cobol website, but it is down.
https://en.wikipedia.org/wiki/COBOL
Here on SourceForge we have GNU Cobol, and Cobol has advanced to Cobol 2014
https://curlie.org/Computers/Programming…
And the book mainly is based on Micro Focus Personal Object Cobol for windows.
https://www.microfocus.com/
COBOL
https://www.microfocus.com/solutions/cob…
Micro Focus would have whatever is left of Borland.
"More than 65% of enterprise software and 70% of business transaction processing is powered by applications written in the COBOL language. For banking, insurance, manufacturing, government, and many other industries, these mission-critical applications deliver a unique competitive advantage."
Interesting. We have books talking about Cobol people going to Java:
https://www.amazon.com/COBOL-Programmers…
https://www.amazon.com/Beginning-COBOL-P…
https://www.amazon.com/Java-COBOL-Progra…
And here, Micro Focus Visual Object Cobol, carried on Amazon since 2005
https://www.amazon.com/Micro-Focus-Visua…
So people say that Java has problems, security problems.
TBC
SJG
And then maybe a 4th gen being Object Oriented Databases, but then others saying that that has been abandoned. I don't know much about it, but I am sure that the ideas will be interesting to me.
Now Relational Databases can be intolerably slow, so they have to be carefully designed and used with discretion. Not every data request can go to the relational database, some will just draw up pre-prepared reports. Some requests will be handled in ways which don't use the full 'PROJECT' to flatten out related tables. Such is extremely time consuming. How indexing is used makes a big difference. And if you write your own program, you can pull all of a small table into core memory, and then relate it to a larger table as you pull it in in the biggest blocks that you can. And you also favor using the OS to make copies of the database and then dump everything you don't need to get the report you want. Trying to keep the speed up to an acceptable level.
But Cobol was started long before there was anything like a Relational Data Base, or Client-Server Computing either.
And then there is GUI ( Graphical User Interfaces, like Windows ). To me GUI is not that important, don't need to have windows with scroll bars, but in any event, Cobol is supposedly modified to do all of this. In 1985 it was made to work with SQL and DB2 ( both IBM standards as I know ).
They say that Cobol was liked because it was more 'business oriented'. Presumably they mean compared to Fortran.
Well back then what they had were corporate Data Processing Departments, so it was not interactive, and not client server. And they had nothing like Relational Databases. ( and I really like the concepts behind relational databases ) So I think it was hand trucks with boxed reports on fan fold tractor feed paper. Been involved in such myself, just turned out that way. Not really intending that from the start.
So my terminology is probably out of date. But to me, if you want a business oriented computing system, you want what is called a Management Information System, and this may include all payroll and accounting, and all customer orders and service tickets, and all scheduling and forecasting, maybe long term project and construction schedules, and all Production Inventory Control and Manufacturing Execution and Automatic Test and Distribution and Statistical Quality Control. It is a huge knows everything kind of application. It does whatever that business needs, and it is also able to maintain the proper levels of security and privacy protection, and tamper resistance.
So the two most important things are that it is built on a relational database, and that it is of an interactive, video screen centered, client server model. The old Data Processing Department model is gone.
Now Cobol has been modified many times and it would seem to do all of this. But I look at it, and I do not see it as being like the modern applications which are built on top of relational databases. And also, besides being client server, modern computer systems are networked, and with RDB's being so slow, it really helps to have access to servers to do the regular house keeping updates.
So I am still very skeptical that anyone would want to start anything new using Cobol, even these supposedly very modernized versions.
I've talked before about using MicroRim's RBASE, having their own interpretive language, and then also having something I liked very much, a C-Language interface module, by which it looked like you could do most anything. Many difficulties with all of this, but I still think it more promising than updates to COBOL.
Also I believe that today most people would want a web browser based output. Making a relational database's reports be written in HTML-CSS-PHP-JavaScript should be no problem at all. And then if you want to print it you do it via the browser, or have the machine just make an alternative print version. Could also have a special dot matrix, tractor feed, fanfold version of the report. And anyone could print it, not just the DP department. Could select reports via an interactive web page. Mostly you want the computers to do the work. So you could have updated screen reports which show you all quality and customer service compliance statistics, as well as the most central scheduling factors.
Again, I still have much more to learn. So I am continuing to read. Many things have really changed, but not everything.
Planning to learn more about Relational Databases, Object Oriented Databases, and of course mysql and this sqlite, and as well as Management Information Systems and Manufacturing Execution Systems.
SJG
Yardbirds Mr. Your A Better Man Than I - Heart Full Of Soul live (NOT OFFICIAL RELEASE)
https://www.youtube.com/watch?v=4QcTgPyI…
Led Zeppelin, 1969, Danish TV
https://www.youtube.com/watch?v=k-WSbMW7…
Just seeing, look like Perl can run through CGI ( Common Gateway Interface, same way Server Side Include works in web pages? )
https://en.wikipedia.org/wiki/Common_Gat…
SJG
Seems like if you wanted a Relational Database to power a ;Management Information System, that web pages using this CGI would be the way to get your reports and views, and to do your house keeping operations.
https://en.wikipedia.org/wiki/Common_Gat…
SJG
The Young Karl Marx, interview with director Raoul Peck
https://www.democracynow.org/2018/2/23/t…
IRON BUTTERFLY IN- A-GADDA-DA-VIDA
https://www.youtube.com/watch?v=ZCkHanF4…
SJG
SJG
SJG
Anyone used this stuff?
https://www.microsoft.com/en-us/
SJG
https://developer.microsoft.com/en-us/wi…
They use to have Windows SDK ( System Developer Kit ) This is part of why I don't like their 'visual' languages, as they seem like toys, likely introduced to try and destroy Borland.
So they call it Visual Studio 2017
The latest Windows Standalone SDK (ver. 10.0.16299.91)
They say its everything you need to develop for Windows 10. I just downloaded a .exe. If you don't hear from me, then you can know that my computer must have melted.
Never says anything about any cost. Didn't used to be free. Anyone else ever done this?
SJG
https://products.office.com/en-us/compar…
books, C# num 7
C# 7.0 in a Nutshell : the definitive reference / Joseph Albahari and Ben Albahari
serverless computing
Beginning serverless computing : developing with Amazon web services, Microsoft Azure, and Google Cloud / Maddie Stigler (2018)
Microsoft Access
Microsoft Access 2016 programming by example with VBA, XML, and ASP / Julitta, Korol. (2017)
Windows PowerShell cookbook : the complete guide to scripting Microsoft's command shell / by Lee Holmes. (2013)
ssential Office 2016 / Kevin Wilson.(2017)
https://en.wikipedia.org/wiki/Microsoft_…
Windows 10 SDK
https://developer.microsoft.com/en-us/wi…
Documentation about Windows 8 SDK
https://msdn.microsoft.com/en-us/library…
SJG
I have not read this book. I might agree with much of the sexism it talks about. I read a lengthy newpaper article about it.
But there is also much I already know I will be irritated by. Used to mean that tech sector was things considered engineering.
Today "tech" mostly means consumer media, and this is what most of the 'tech' economy is, stuff I don't go along with at all.
For me, computers are tools, and you use them to do things, and the way you do this is by writing programs for them.
So there will be real time control and communications, and there will be mathematical analysis and simulation.
Without this, I am not interested.
and programming is not a special skill, it is just a type of literacy.
So we have this book:
https://www.amazon.com/Lean-Out-Struggle…
and written by this Elissa Shevinsky
https://en.wikipedia.org/wiki/Elissa_She…
And she is considered a 'Tech Entrepreneur', and she starts companies like this:
JDATE
https://www.youtube.com/watch?v=LnhvNjqZ…
And she is even the star of one of their videos. I think they tried it for general audience dating, but it didn't fly. So they changed it to Jewish. Then it worked.
And they say it screens out "douchbags". And the whole thing is completely neurotic.
They say it is for meeting people, but really it is for screening people out. Women have far more attractive ability f2f, than they do online. You find one who prefers onilne, I say stay away from her.
So they go for online as they can put people through lots of screening.
If they really wanted to meet guys, just get some stripper heels and audition.
So I have not read Shevinsky, but she is all over. About the sexism I likely agree. But about this being 'tech entrepreneurship", I am sure that I do not agree. I say it is all just bullshit.
And I would never want to talk to such a woman, except maybe to tell her off.
Elissa Shevinsky
https://www.youtube.com/channel/UCCi-L5E…
SJG
And here is Elissa Shevinsky staring in one of their videos:
https://www.youtube.com/watch?v=bvDw74HS…
Is this 'tech entrepreneurship"
And then here more Shevinsky talking about her book
https://www.youtube.com/watch?v=ypRrKTDz…
SJG
And is Manufacturing Execution System ( MES ) still accurate? And is that considered included in the above? I had tried to find books and I did not come up with much recent.
MES
https://en.wikipedia.org/wiki/Manufactur…
MIS
https://en.wikipedia.org/wiki/Management…
Essentials of management information systems / Kenneth C. Laudon, New York University, Jane P. Laudon, Azimuth Information Systems. (2017), and published by Pearson, as major text book publishing company
Table Of Contents:
Preface xvi
I Information Systems in the Digital Age 1 (148)
1 Business Information Systems in Your Career
2 (36)
Chapter-Opening Case: The San Francisco Giants Keep Winning with Information Technology
39
1-1 Why are information systems so essential for running and managing a business today?
5 (4)
How Information Systems Are Transforming Business
5 (1)
What's New in Management Information Systems?
6 (2)
Globalization Challenges and Opportunities: A Flattened World
8 (1)
Interactive Session: People, The Mobile Pocket Office
9 (10)
Business Drivers of Information Systems
11 (2)
1-2 What exactly is an information system? How does it work? What are its people, organizational, and technology components?
13 (6)
What Is an Information System?
13 (2)
It Isn't Simply Technology: The Role of People and Organizations
15 (1)
Dimensions of Information Systems
16 (3)
Interactive Session: Technology UPS Competes Globally with Information Technology
19 (11)
1-3 How will a four-step method for business problem solving help you solve information system—related problems?
21 (4)
The Problem-Solving Approach
21 (1)
A Model of the Problem-Solving Process
21 (3)
The Role of Critical Thinking in Problem Solving
24 (1)
The Connection Between Business Objectives, Problems, and Solutions
24 (1)
1-4 How will information systems affect business careers, and what information systems skills and knowledge are essential?
25 (7)
How Information Systems Will Affect Business Careers
25 (3)
Information Systems and Your Career. Wrap-Up
28 (1)
How This Book Prepares You For the Future
29 (1)
Review Summary
30 (1)
Key Terms
30 (1)
Review Questions
31 (1)
Discussion Questions
31 (1)
Hands-On MIS Projects
32 (1)
Management Decision Problems
32 (1)
Improving Decision Making: Using Databases to Analyze Sales Trends
32 (1)
Improving Decision Making: Using the Internet to Locate Jobs Requiring Information Systems Knowledge
33 (1)
Collaboration and Teamwork Project
33 (1)
Business Problem-Solving Case: Home Depot Renovates Itself with New Systems and Ways of Working
34 (4)
2 Global E-Business and Collaboration
38 (38)
Chapter-Opening Case: Enterprise Social Networking Helps ABB Innovate and Grow
39 (13)
2-1 What major features of a business are important for understanding the role of information systems?
41 (5)
Organizing a Business: Basic Business Functions
41 (1)
Business Processes
42 (2)
Managing a Business and Firm Hierarchies
44 (1)
The Business Environment
45 (1)
The Role of Information Systems in a Business
46 (1)
2-2 How do systems serve different management groups in a business and how do systems that link the enterprise improve organizational performance?
46 (6)
Systems for Different Management Groups
47 (4)
Systems for Linking the Enterprise
51 (1)
Interactive Session: Organizations, New Systems Help Plan International Manage Its Human Resources
52 (12)
E-Business, E-Commerce, and E-Government
55 (1)
2-3 Why are systems for collaboration and social business so important and what technologies do they use?
56 (8)
What Is Collaboration?
56 (1)
What Is Social Business?
57 (1)
Business Benefits of Collaboration and Social Business
58 (2)
Building a Collaborative Culture and Business Processes
60 (1)
Tools and Technologies for Collaboration and Social Business
60 (4)
Interactive Session: People, Is Social Business Working Out?
64 (4)
2-4 What is the role of the information systems function in a business?
66 (4)
The Information Systems Department
66 (1)
Information Systems Services
67 (1)
Review Summary
68 (1)
Key Terms
69 (1)
Review Questions
69 (1)
Discussion Questions
70 (1)
Hands-On MIS Projects
70 (1)
Management Decision Problems
70 (1)
Improving Decision Making: Using a Spreadsheet to Select Suppliers 71 Achieving Operational Excellence: Using Internet Software to Plan Efficient Transportation Routes
71 (1)
Collaboration and Teamwork Project
71 (1)
Business Problem-Solving Case, How Much Does Data-Driven Planting Help Farmers?
72 (4)
3 Achieving Competitive Advantage with Information Systems
76 (34)
Chapter-Opening Case: Should T.J. Maxx Sell Online?
77 (6)
3-1 How do Porter's competitive forces model, the value chain model, synergies, core competencies, and network-based strategies help companies use information systems for competitive advantage?
79 (4)
Porter's Competitive Forces Model
79 (2)
Information System Strategies for Dealing with Competitive Forces
81 (2)
Interactive Session: Technology, Nike Becomes a Technology Company
83 (18)
The Internet's Impact on Competitive Advantage
86 (1)
The Business Value Chain Model
87 (2)
Synergies, Core Competencies, and Network-Based Strategies
89 (2)
Disruptive Technologies: Riding the Wave
91 (1)
3-2 How do information systems help businesses compete globally?
92 (3)
The Internet and Globalization
93 (1)
Global Business and System Strategies
93 (1)
Global System Configuration
94 (1)
3-3 How do information systems help businesses compete using quality and design?
95 (2)
What Is Quality?
95 (1)
How Information Systems Improve Quality
96 (1)
3-4 What is the role of business process management (BPM) in enhancing competitiveness?
97 (7)
What is Business Process Management?
98 (3)
Interactive Session: Organizations Datacard Group Redesigns the Way It Works
101 (1)
Review Summary
102 (1)
Key Terms
103 (1)
Review Questions
103 (1)
Discussion Questions
104 (1)
Hands-On MIS Projects
104 (1)
Management Decision Problems
104 (1)
Improving Decision Making: Using a Database to Clarify Business Strategy
105 (1)
Improving Decision Making: Using Web Tools to Configure and Price an Automobile
105 (1)
Collaboration and Teamwork Project
105 (1)
Business Problem-Solving Case, Will Technology Save Sears?
106 (4)
4 Ethical and Social Issues in Information Systems
110 (39)
Chapter-Opening Case: The Dark Side of Big Data
111 (8)
4-1 What ethical, social, and political issues are raised by information systems?
113 (5)
A Model for Thinking About Ethical, Social, and Political Issues
114 (1)
Five Moral Dimensions of the Information Age
115 (1)
Key Technology Trends That Raise Ethical Issues
116 (2)
4-2 What specific principles for conduct can be used to guide ethical decisions?
118 (1)
Basic Concepts: Responsibility, Accountability, and Liability
118 (1)
Interactive Session: Organizations Edward Snowden: Traitor or Protector of Privacy?
119 (19)
Ethical Analysis
120 (1)
Candidate Ethical Principles
121 (1)
Professional Codes of Conduct
122 (1)
Some Real-World Ethical Dilemmas
122 (1)
4-3 Why do contemporary information systems technology and the Internet pose challenges to the protection of individual privacy and intellectual property?
122 (10)
Information Rights: Privacy and Freedom in the Internet Age
122 (7)
Property Rights: Intellectual Property
129 (3)
4-4 How have information systems affected laws for establishing accountability and liability and the quality of everyday life?
132 (10)
Computer-Related Liability Problems
132 (1)
System Quality: Data Quality and System Errors
133 (1)
Quality of Life: Equity, Access, and Boundaries
134 (3)
Health Risks: RSI, CVS, and Cognitive Decline
137 (1)
Interactive Session: People, Are We Relying Too Much on Computers to Think for Us?
138 (2)
Review Summary
140 (1)
Key Terms
141 (1)
Review Questions
141 (1)
Discussion Questions
142 (1)
Hands-On MIS Projects
142 (1)
Management Decision Problems
142 (1)
Achieving Operational Excellence: Creating a Simple Blog
143 (1)
Improving Decision Making: Analyzing Web Browser Privacy
143 (1)
Collaboration and Teamwork Project
143 (1)
Business Problem-Solving Case, Facebook Privacy: What Privacy?
144 (5)
II Information Technology Infrastructure 149 (158)
5 IT Infrastructure: Hardware and Software
150 (40)
Chapter-Opening Case: EasyJet Flies High with Cloud Computing
151 (9)
5-1 What are the components of IT infrastructure?
153 (2)
Infrastructure Components
153 (2)
5-2 What are the major computer hardware, data storage, input, and output technologies used in business and the major hardware trends?
155 (10)
Types of Computers
155 (2)
Storage, Input, and Output Technology
157 (1)
Contemporary Hardware Trends
158 (2)
Interactive Session: Technology, Wearable Computers Go to Work
160 (5)
Interactive Session: Organizations Cloud Computing Takes Off
165 (15)
5-3 What are the major types of computer software used in business and the major software trends?
169 (8)
Operating System Software
169 (2)
Application Software and Desktop Productivity Tools
171 (2)
HTML and HTML5
173 (1)
Web Services
174 (1)
Software Trends
175 (2)
5-4 What are the principal issues in managing hardware and software technology?
177 (6)
Capacity Planning and Scalability
177 (1)
Total Cost of Ownership (TCO) of Technology Assets
177 (1)
Using Technology Service Providers
178 (1)
Managing Mobile Platforms
179 (1)
Managing Software Localization for Global Business
180 (1)
Review Summary
180 (2)
Key Terms
182 (1)
Review Questions
182 (1)
Discussion Questions
183 (1)
Hands-On MIS Projects
183 (2)
Management Decision Problems
183 (1)
Improving Decision Making: Using a Spreadsheet to Evaluate Hardware and Software Options
184 (1)
Improving Decision Making: Using Web Research to Budget for a Sales Conference
184 (1)
Collaboration and Teamwork Project
185 (1)
Business Problem-Solving Case, BYOD: Business Opportunity or Big Headache?
186 (4)
6 Foundations of Business Intelligence: Databases and Information Management
190 (36)
Chapter-Opening Case: Better Data Management Helps the US Postal Service Rebound
191 (15)
6-1 What is a database and how does a relational database organize data?
193 (6)
Entities and Attributes
194 (1)
Organizing Data in a Relational Database
194 (2)
Establishing Relationships
196 (3)
6-2 What are the principles of a database management system?
199 (5)
Operations of a Relational DBMS
200 (2)
Capabilities of Database Management Systems
202 (1)
Nonrelational Databases and Databases in the Cloud
203 (1)
6-3 What are the principal tools and technologies for accessing information from databases to improve business performance and decision making?
204 (5)
The Challenge of Big Data
204 (1)
Business Intelligence Infrastructure
205 (1)
Interactive Session: People New York City Embraces Data-Driven Crime Fighting
206 (3)
Interactive Session: Technology Driving ARI Fleet Management with Real-Time Analytics
209 (7)
Analytical Tools: Relationships, Patterns, Trends
210 (4)
Databases and the Web
214 (1)
6-4 Why are information policy, data administration, and data quality assurance essential for managing the firm's data resources?
215 (4)
Establishing an Information Policy
215 (1)
Ensuring Data Quality
215 (1)
Review Summary
216 (1)
Key Terms
217 (1)
Review Questions
218 (1)
Discussion Questions
219 (1)
Hands-On MIS Projects
219 (2)
Management Decision Problems
219 (1)
Achieving, Operational Excellence: Building a Relational Database for Inventory Management
220 (1)
Improving Decision Making: Searching Online Databases For Overseas Business Resources
220 (1)
Collaboration and Teamwork Project
221 (1)
Business Problem-Solving Case, Can We Trust Big Data?
222 (4)
7 Telecommunications, the Internet, and Wireless Technology
226 (42)
Chapter-Opening Case: Wireless Technology Makes Dundee Precious Metals Good as Gold
227 (13)
7-1 What are the principal components of telecommunications networks and key networking technologies?
229 (5)
Networking and Communication Trends
229 (1)
What is a Computer Network?
230 (1)
Key Digital Networking Technologies
231 (3)
7-2 What are the different types of networks?
234 (2)
Signals: Digital vs. Analog
234 (1)
Types of Networks
235 (1)
Transmission Media and Transmission Speed
236 (1)
7-3 How do the Internet and Internet technology work and how do they support communication and e-business?
236 (8)
What Is the Internet?
236 (1)
Internet Addressing and Architecture
237 (3)
Interactive Session: Organizations, The Battle over Net Neutrality
240 (4)
Internet Services and Communication Tools
241 (3)
Interactive Session: People, Monitoring Employees on Networks: Unethical or Good Business?
244 (15)
The Web
246 (7)
7-4 What are the principal technologies and standards for wireless networking, communication, and Internet access?
253 (8)
Cellular Systems
253 (1)
Wireless Computer Networks and Internet Access
254 (2)
RFID and Wireless Sensor Networks
256 (3)
Review Summary
259 (1)
Key Terms
260 (1)
Review Questions
261 (1)
Discussion Questions
261 (1)
Hands-On MIS Projects
261 (2)
Management Decision Problems
262 (1)
Improving Decision Making: Using Spreadsheet Software to Evaluate Wireless Services
262 (1)
Achieving Operational Excellence: Using Web Search Engines for Business Research
262 (1)
Collaboration and Teamwork Project
263 (1)
Business Problem-Solving Case, Google, Apple, and Facebook Struggle for Your Internet Experience
264 (4)
8 Securing Information Systems
268 (39)
Chapter-Opening Case: Target Becomes the Target for Massive Data Theft
269 (16)
8-1 Why are information systems vulnerable to destruction, error, and abuse?
271 (10)
Why Systems Are Vulnerable
271 (3)
Malicious Software: Viruses, Worms, Trojan Horses, and Spyware
274 (2)
Hackers and Computer Crime
276 (4)
Internal Threats: Employees
280 (1)
Software Vulnerability
280 (1)
8-2 What is the business value of security and control?
281 (2)
Legal and Regulatory Requirements for Electronic Records Management
282 (1)
Electronic Evidence and Computer Forensics
283 (1)
8-3 What are the components of an organizational framework for security and control?
283 (2)
Information Systems Controls
283 (1)
Risk Assessment
284 (1)
Interactive Session: People, The Flash Crash: A New Culprit
285 (12)
Security Policy
287 (1)
Disaster Recovery Planning and Business Continuity Planning
288 (1)
The Role of Auditing
289 (1)
8-4 What are the most important tools and technologies for safeguarding information resources?
289 (12)
Identity Management and Authentication
290 (1)
Firewalls, Intrusion Detection Systems, and Antivirus Software
291 (2)
Securing Wireless Networks
293 (1)
Encryption and Public Key Infrastructure
293 (2)
Ensuring System Availability
295 (1)
Security Issues for Cloud Computing and the Mobile Digital Platform
295 (1)
Ensuring Software Quality
296 (1)
Interactive Session: Technology, BYOD: A Security Nightmare?
297 (2)
Review Summary
299 (1)
Key Terms
300 (1)
Review Questions
300 (1)
Discussion Questions
301 (1)
Hands-On MIS Projects 301 4IS
Management Decision Problems
301 (1)
Improving Decision Making: Using Spreadsheet Software to Perform a Security Risk Assessment
302 (1)
Improving Decision Making: Evaluating Security Outsourcing Services
302 (1)
Collaboration and Teamwork Project
302 (1)
Business Problem-Solving Case, Sony Hacked Again: Bigger Than Ever
303 (4)
III Key System Applications for the Digital Age 307 (114)
9 Achieving Operational Excellence and Customer Intimacy: Enterprise Applications
308 (32)
Chapter-Opening Case: ACH Food Companies Transforms Its Business with Enterprise Systems
309 (10)
9-1 How do enterprise systems help businesses achieve operational excellence?
311 (3)
What are Enterprise Systems?
311 (1)
Enterprise Software
312 (1)
Business Value of Enterprise Systems
313 (1)
9-2 How do supply chain management systems coordinate planning, production, and logistics with suppliers?
314 (5)
The Supply Chain
314 (2)
Information Systems and Supply Chain Management
316 (1)
Supply Chain Management Software
317 (2)
Interactive Session: Organizations Scotts Miracle-Gro Cultivates Supply Chain Proficiency
319 (11)
Global Supply Chains and the Internet
320 (1)
Business Value of Supply Chain Management Systems
321 (1)
9-3 How do customer relationship management systems help firms achieve customer intimacy?
322 (5)
What Is Customer Relationship Management?
322 (1)
Customer Relationship Management Software
323 (2)
Operational and Analytical CRM
325 (2)
Business Value of Customer Relationship Management Systems
327 (1)
9-4 What are the challenges that enterprise applications pose and how are enterprise applications taking advantage of new technologies?
327 (7)
Enterprise Application Challenges
327 (1)
Next-Generation Enterprise Applications
328 (2)
Interactive Session: Technology, Unilever Unifies Globally with Enhanced ERP
330 (1)
Review Summary
331 (1)
Key Terms
332 (1)
Review Questions
333 (1)
Discussion Questions
333 (1)
Hands-On MIS Projects
334 (1)
Management Decision Problems
334 (1)
Improving Decision Making: Using Database Software to Manage Customer Service Requests
334 (1)
Achieving Operational Excellence: Evaluating Supply Chain Management Services
335 (1)
Collaboration and Teamwork Project
335 (1)
Business Problem-Solving Case, Customer Relationship Management Helps Celcom Become Number One
336 (4)
10 E-Commerce: Digital Markets, Digital Goods
340 (42)
Chapter-Opening Case: Uber Digitally Disrupts the Taxi Industry
341 (22)
10-1 What are the unique features of e-commerce, digital markets, and digital goods?
343 (10)
E-Commerce Today
344 (1)
The New E-Commerce: Social, Mobile, Local
345 (2)
Why E-commerce is Different
347 (2)
Key Concepts in E-commerce: Digital Markets and Digital Goods in a Global Marketplace
349 (4)
10-2 What are the principal e-commerce business and revenue models?
353 (5)
Types of E-Commerce
353 (1)
E-Commerce Business Models
353 (3)
E-Commerce Revenue Models
356 (2)
10-3 How has e-commerce transformed marketing?
358 (5)
Behavioral Targeting
358 (3)
Social E-commerce and Social Network Marketing
361 (2)
Interactive Session: People, Getting Social with Customers
363 (7)
10-4 How has e-commerce affected Business-to-Business transactions?
365 (3)
Electronic Data Interchange ( EDI)
366 (1)
New Ways of B2 B Buying and Selling
366 (2)
10-5 What is the role of m-commerce in business, and what are the most important m-commerce applications?
368 (2)
Location-Based Services and Applications
369 (1)
Interactive Session: Organizations Can Instacart Deliver?
370 (4)
Other Mobile Commerce Services
371 (1)
10-6 What issues must be addressed when building an e-commerce presence?
372 (4)
Develop an E-commerce Presence Map
372 (1)
Develop a Timeline: Milestones
373 (1)
Review Summary
374 (1)
Key Terms
375 (1)
Review Questions
375 (1)
Discussion Questions
376 (1)
Hands-On MIS Projects
376 (1)
Management Decision Problems
376 (1)
Improving Decision Making: Using Spreadsheet Software to Analyze a Dot-Com Business
376 (1)
Achieving Operational Excellence: Evaluating E-Commerce Hosting Services
377 (1)
Collaboration and Teamwork Project
377 (1)
Business Problem-Solving Case, Walmart and Amazon Duke It Out for E-Commerce Supremacy
378 (4)
11 Improving Decision Making and Managing Knowledge
382 (39)
Chapter-Opening Case: Germany Wins the World Cup with Big Data at Its Side
383 (11)
11-1 What are the different types of decisions, and how does the decision-making process work?
385 (3)
Business Value of Improved Decision Making
385 (1)
Types of Decisions
386 (1)
The Decision-Making Process
387 (1)
High-Velocity Automated Decision Making
387 (1)
Quality of Decisions and Decision Making
388 (1)
11-2 How do business intelligence and business analytics support decision making?
388 (6)
What is Business Intelligence?
389 (1)
The Business Intelligence Environment
389 (1)
Business Intelligence and Analytics Capabilities
390 (4)
Interactive Session: Technology, America's Cup: The Tension Between Technology and Human Decision Makers
394 (11)
Business Intelligence Users
396 (3)
Group Decision-Support Systems
399 (1)
11-3 What are the business benefits of using intelligent techniques in decision making and knowledge management?
400 (5)
Expert Systems
400 (1)
Case-Based Reasoning
401 (1)
Fuzzy Logic Systems
402 (1)
Neural Networks
403 (1)
Genetic Algorithms
404 (1)
Interactive Session: People Facial Recognition Systems: Another Threat to Privacy?
405 (7)
Intelligent Agents
407 (1)
11-4 What types of systems are used for enterprise-wide knowledge management and knowledge work, and how do they provide value for businesses?
408 (7)
Enterprise-Wide Knowledge Management Systems
408 (2)
Knowledge Work Systems
410 (2)
Review Summary
412 (2)
Key Terms
414 (1)
Review Questions
414 (1)
Discussion Questions
415 (1)
Hands-On MIS Projects
415 (1)
Management Decision Problems
415 (1)
Improving Decision Making: Using Pivot Tables to Analyze Sales Data
416 (1)
Improving Decision Making: Using Intelligent Agents for Comparison Shopping
416 (1)
Collaboration and Teamwork Project
416 (1)
Business Problem-Solving Case, What's Up with IBM's Watson?
416 (5)
IV Building and Managing Systems 421 (41)
12 Building Information Systems and Managing Projects
422 (40)
Chapter-Opening Case: Girl Scout Cookie Sales Go Digital
423 (14)
12-1 What are the core problem-solving steps for developing new information systems?
425 (6)
Defining and Understanding the Problem
425 (2)
Developing Alternative Solutions
427 (1)
Evaluating and Choosing Solutions
427 (1)
Implementing the Solution
428 (3)
12-2 What are the alternative methods for building information systems?
431 (6)
Traditional Systems Development Life Cycle
431 (1)
Prototyping
432 (1)
End-User Development
433 (1)
Purchasing Solutions: Application Software Packages and Outsourcing
433 (2)
Mobile Application Development: Designing for a Multi-Screen World
435 (1)
Rapid Application Development for E-Business
436 (1)
Interactive Session: Technology, The Challenge of Mobile Application Development
437 (6)
12-3 What are the principal methodologies for modeling and designing systems?
438 (4)
Structured Methodologies
438 (2)
Object-Oriented Development
440 (2)
Computer-Aided Software Engineering (CASE)
442 (1)
12-4 How should information systems projects be selected and managed?
442 (13)
Project Management Objectives
442 (1)
Interactive Session: Organizations Britain's National Health Service Jettisons Choose and Book System
443 (9)
Selecting Projects: Making the Business Case for a New System
445 (3)
Managing Project Risk and System-Related Change
448 (4)
Review Summary
452 (2)
Key Terms
454 (1)
Review Questions
454 (1)
Discussion Questions
455 (1)
Hands-On MIS Projects
455 (1)
Management Decision Problems
455 (1)
Improving Decision Making: Using Database Software to Design a Customer System for Auto Sales
456 (1)
Achieving Operational Excellence: Analyzing Web Site Design and Information Requirements
456 (1)
Collaboration and Teamwork Project
456 (1)
Business Problem-Solving Case A Shaky Start for Healthcare.gov
457 (5)
Glossary 462 (17)
Index
Designing management information systems / Hans van der Heijden 2009
Operations management / William J. Stevenson, Saunders College of Business, Rochester Institute of Technology. (2018) 13th edition
Preface vii
1 Introduction to Operations Management
2 (38)
Introduction
4 (4)
Production of Goods Versus Providing Services
8 (2)
Why Learn About Operations Management?
10 (2)
Career Opportunities and Professional Societies
12 (1)
Process Management
13 (1)
The Scope of Operations Management
14 (4)
Reading: Why Manufacturing Matters
17 (1)
Operations Management and Decision Making
18 (3)
Reading: Analytics
20 (1)
The Historical Evolution of Operations Management
21 (3)
Operations Today
24 (3)
Reading: Agility Creates a Competitive Edge
26 (1)
Key issues for Today's Business Operations
27 (9)
Readings: Universities Embrace Sustainability
28 (1)
Diet and the Environment: Vegetarian vs. Nonvegetarian
29 (4)
Operations Tour: Wegmans Food Markets
33 (3)
Summary
36 (1)
Key Points
36 (1)
Key Terms
36 (1)
Discussion and Review Questions
36 (1)
Taking Stock
37 (1)
Critical Thinking Exercises
37 (1)
Case: Hazel
38 (1)
Selected Bibliography & Further Readings
38 (1)
Problem-Solving Guide
39 (1)
2 Competitiveness, Strategy, and Productivity
40 (34)
Introduction
41 (1)
Competitiveness
42 (2)
Mission and Strategies
44 (7)
Reading: Amazon Tops in Customer Service
45 (6)
Operations Strategy
51 (3)
Implications of Organization Strategy for Operations Management
54 (1)
Transforming Strategy into Action: The Balanced Scorecard
54 (2)
Productivity
56 (4)
Readings: Why Productivity Matters
59 (1)
Dutch Tomato Growers' Productivity Advantage
60 (2)
Productivity Improvement
62 (1)
Summary
62 (1)
Key Points
63 (1)
Key Terms
63 (1)
Solved Problems
63 (1)
Discussion and Review Questions
64 (1)
Taking Stock
64 (1)
Critical Thinking Exercises
65 (1)
Problems
65 (8)
Case
An American Tragedy: How a Good Company Died
67 (1)
Home-Style Cookies
68 (1)
Hazel Revisited
69 (1)
"Your Garden Gloves"
70 (1)
Operations Tour: The U.S. Postal Service
70 (3)
Selected Bibliography and Further Readings
73 (1)
3 Forecasting
74 (62)
Introduction
76 (1)
Features Common to All Forecasts
77 (1)
Elements of a Good Forecast
78 (1)
Forecasting and the Supply Chain
78 (1)
Steps in the Forecasting Process
79 (1)
Forecast Accuracy
79 (3)
Reading: High Forecasts Can Be Bad News
80 (2)
Approaches to Forecasting
82 (1)
Qualitative Forecasts
82 (2)
Forecasts Based on Time-Series Data
84 (17)
Associative Forecasting Techniques
101 (5)
Monitoring Forecast Error
106 (4)
Choosing a Forecasting Technique
110 (1)
Using Forecast Information
111 (1)
Computer Software in Forecasting
112 (1)
Operations Strategy
112 (2)
Reading: Gazing at the Crystal Ball
113 (1)
Summary
114 (2)
Key Points
116 (1)
Key Terms
117 (1)
Solved Problems
117 (6)
Discussion and Review Questions
123 (1)
Taking Stock
124 (1)
Critical Thinking Exercises
124 (1)
Problems
124 (11)
Case
M&L Manufacturing
134 (1)
Highline Financial Services, Ltd
135 (1)
Selected Bibliography and Further Readings
135 (1)
4 Product and Service Design
136 (52)
Reading: Design as a Business Strategy
138 (1)
Introduction
138 (2)
Readings: Product Redesign, Not Offshoring, Holds Cost Advantage for U.S. Manufacturers
139 (1)
Dutch Boy Brushes up Its Paints
140 (1)
Idea Generation
140 (3)
Reading: Vlasic on a Roll with Huge Pickle Slices
142 (1)
Legal and Ethical Considerations
143 (1)
Human Factors
144 (1)
Reading: Do You Want Pickled Beets with That?
145 (1)
Cultural Factors
145 (1)
Global Product and Service Design
145 (1)
Environmental Factors: Sustainability
146 (5)
Readings: Best Buy Wants Your Junk
147 (1)
Kraft Foods' Recipe for Sustainability
148 (1)
Xerox Diverts 2 Billion Pounds of Waste From Landfills Through Green Initiatives
149 (1)
Recycle City: Maria's Market
149 (2)
Other Design Considerations
151 (10)
Readings: Lego A/S in the Pink
152 (3)
Fast-Food Chains Adopt Mass Customization
155 (6)
Phases in Product Design and Development
161 (1)
Designing for Production
162 (3)
Service Design
165 (4)
Operations Strategy
169 (1)
Reading: The Challenges of Managing Services
169 (1)
Summary
170 (1)
Key Points
170 (1)
Key Terms
170 (1)
Discussion and Review Questions
170 (1)
Taking Stock
171 (1)
Critical Thinking Exercises
171 (1)
Problems
172 (1)
Operations Tour: High Acres Landfill
173 (1)
Selected Bibliography and Further Readings
173 (15)
Supplement to Chapter 4 Reliability
174 (14)
5 Strategic Capacity Planning for Products and Services
188 (54)
Introduction
189 (2)
Reading: Excess Capacity Can Be Bad News!
190 (1)
Capacity Decisions are Strategic
191 (1)
Defining and Measuring Capacity
192 (1)
Determinants of Effective Capacity
193 (2)
Strategy Formulation
195 (1)
Forecasting Capacity Requirements
196 (2)
Additional Challenges of Planning Service Capacity
198 (1)
Do it in-House or Outsource it?
199 (1)
Reading: My Compliments to the Chef, er, Buyer
200 (1)
Developing Capacity Strategies
200 (5)
Constraint Management
205 (1)
Evaluating Alternatives
205 (6)
Operations Strategy
211 (1)
Summary
211 (1)
Key Points
212 (1)
Key Terms
212 (1)
Solved Problems
212 (3)
Discussion and Review Questions
215 (1)
Taking Stock
215 (1)
Critical Thinking Exercises
215 (1)
Problems
216 (3)
Case
Outsourcing of Hospital Services
219 (1)
Selected Bibliography and Further Readings
219 (23)
Supplement to Chapter 5 Decision Theory
220 (22)
6 Process Selection and Facility Layout
242 (54)
Introduction
243 (1)
Process Selection
244 (6)
Operations Tour: Morton Salt
248 (2)
Technology
250 (7)
Readings: Foxconn Shifts its Focus to Automation
252 (5)
Self-Driving Vehicles are on the Horizon
257 (1)
Process Strategy
257 (1)
Strategic Resource Organization: Facilities Layout
257 (12)
Reading: A Safe Hospital Room of the Future
267 (2)
Designing Product Layouts: Line Balancing
269 (9)
Reading: BMW's Strategy: Flexibility
278 (1)
Designing Process Layouts
278 (5)
Summary
283 (1)
Key Points
283 (1)
Key Terms
283 (1)
Solved Problems
283 (4)
Discussion and Review Questions
287 (1)
Taking Stock
288 (1)
Critical Thinking Exercises
288 (1)
Problems
288 (7)
Selected Bibliography and Further Readings
295 (1)
7 Work Design and Measurement
296 (46)
Introduction
297 (1)
Job Design
297 (4)
Quality of Work Life
301 (5)
Methods Analysis
306 (4)
Motion Study
310 (1)
Work Measurement
311 (11)
Operations Strategy
322 (1)
Summary
323 (1)
Key Points
323 (1)
Key Terms
324 (1)
Solved Problems
324 (1)
Discussion and Review Questions
325 (1)
Taking Stock
326 (1)
Critical Thinking Exercises
326 (1)
Problems
326 (3)
Selected Bibliography and Further Readings
329 (13)
Supplement to Chapter 7 Learning Curves
330 (12)
8 Location Planning and Analysis
342 (30)
The Need for Location Decisions
343 (1)
The Nature of Location Decisions
344 (2)
Global Locations
346 (2)
General Procedure for Making Location Decisions
348 (1)
Identifying a Country, Region, Community, and Site
349 (7)
Service and Retail Locations
356 (2)
Reading: Site Selection Grows Up: Improved Tech Tools Make the Process Faster, Better
357 (1)
Evaluating Location Alternatives
358 (6)
Summary
364 (1)
Key Points
364 (1)
Key Terms
364 (1)
Solved Problems
364 (2)
Discussion and Review Questions
366 (1)
Taking Stock
366 (1)
Critical Thinking Exercises
366 (1)
Problems
367 (3)
Case
Hello, Walmart?
370 (1)
Selected Bibliography and Further Readings
370 (2)
9 Management of Quality
372 (44)
Introduction
373 (1)
Reading: Whatever Happened to Quality?
374 (1)
The Evolution of Quality Management
374 (1)
The Foundations of Modern Quality Management: The Gurus
375 (3)
Insights on Quality Management
378 (6)
Readings: The Sounds of Quality
380 (4)
Hyundai: Kissing Clunkers Goodbye
384 (2)
Re work and Morale
386 (1)
Quality Awards
386 (1)
Quality Certification
387 (2)
Quality and the Supply Chain
389 (1)
Reading: Improving Quality and Reducing Risk in Offshoring
390 (1)
Total Quality Management
390 (4)
Problem Solving and Process Improvement
394 (4)
Reading: What Keeps Six Sigma Practitioners up at Night?
397 (1)
Quality Tools
398 (8)
Reading: Benchmarking Corporate Websites of Fortune 500 Companies
406 (1)
Operations Strategy
406 (1)
Summary
406 (1)
Key Points
407 (1)
Key Terms
407 (1)
Solved Problem
407 (1)
Discussion and Review Questions
408 (1)
Taking Stock
409 (1)
Critical Thinking Exercises
409 (1)
Problems
409 (3)
Case
Chick-N-Gravy Dinner Line
411 (1)
Tip Top Markets
412 (2)
Selected Bibliography and Further Readings
414 (2)
10 Quality Control
416 (46)
Introduction
417 (1)
Inspection
418 (5)
Reading: Making Potato Chips
422 (1)
Statistical Process Control
423 (18)
Process Capability
441 (5)
Operations Strategy
446 (1)
Reading: Bar Codes Might Cut Drug Errors in Hospitals
447 (1)
Summary
447 (1)
Key Points
447 (2)
Key Terms
449 (1)
Solved Problems
449 (4)
Discussion and Review Questions
453 (1)
Taking Stock
454 (1)
Critical Thinking Exercises
454 (1)
Problems
454 (6)
Case
Toys, Inc.
460 (1)
Tiger Tools
460 (1)
Selected Bibliography and Further Readings
461 (1)
11 Aggregate Planning and Master Scheduling
462 (38)
Introduction
464 (7)
Reading: Duplicate Orders Can Lead to Excess Capacity
468 (3)
Basic Strategies for Meeting Uneven Demand
471 (3)
Techniques for Aggregate Planning
474 (7)
Aggregate Planning in Services
481 (2)
Disaggregating the Aggregate Plan
483 (1)
Master Scheduling
483 (1)
The Master Scheduling Process
484 (5)
Summary
489 (1)
Key Points
489 (1)
Key Terms
490 (1)
Solved Problems
490 (3)
Discussion and Review Questions
493 (1)
Taking Stock
493 (1)
Critical Thinking Exercises
493 (1)
Problems
493 (5)
Case
Eight Glasses a Day (EGAD)
498 (1)
Selected Bibliography and Further Readings
498 (2)
12 MRP and ERP
500 (50)
Introduction
501 (1)
An Overview of MRP
501 (1)
MRP Inputs
502 (4)
MRP Processing
506 (7)
MRP Outputs
513 (1)
Other Considerations
514 (2)
MRP in Services
516 (1)
Benefits and Requirements of MRP
516 (1)
MRP II
517 (2)
Capacity Requirements Planning
519 (2)
ERP
521 (6)
Readings: The ABCs of ERP
523 (4)
The Top 10 ERP Mistakes
527 (2)
Operations Strategy
529 (1)
Summary
529 (1)
Key Points
529 (1)
Key Terms
530 (1)
Solved Problems
530 (9)
Discussion and Review Questions
539 (1)
Taking Stock
539 (1)
Critical Thinking Exercises
540 (1)
Problems
540 (6)
Case
Promotional Novelties
545 (1)
Dmd Enterprises
546 (3)
Operations Tour: Stickley Furniture
546 (3)
Selected Bibliography and Further Readings
549 (1)
13 Inventory Management
550 (58)
Introduction
551 (1)
Reading: $$$
552 (1)
The Nature and Importance of Inventories
552 (3)
Requirements for Effective Inventory Management
555 (6)
Reading: Radio Frequency Identification (RFID) Tags
557 (4)
Inventory Ordering Policies
561 (1)
How Much to Order: Economic Order Quantity Models
561 (12)
Reorder Point Ordering
573 (4)
How Much to Order: Fixed-Order-interval Model
577 (3)
The Single-Period Model
580 (5)
Operations Strategy
585 (1)
Summary
585 (1)
Key Points
586 (1)
Key Terms
587 (1)
Solved Problem
587 (5)
Discussion and Review Questions
592 (1)
Taking Stock
592 (1)
Critical Thinking Exercises
592 (1)
Problems
593 (8)
Case
UPD Manufacturing
600 (1)
Harvey Industries
601 (1)
Grill Rite
602 (1)
Farmers Restaurant
603 (2)
Operations Tour: Bruegger's Bagel Bakery
604 (1)
PSC, Inc.
605 (2)
Selected Bibliography and Further Readings
607 (1)
14 JIT and Lean Operations
608 (44)
Introduction
610 (3)
Reading: Toyota Recalls
612 (1)
Supporting Goals
613 (1)
Building Blocks
614 (17)
Readings: General Mills Turns to Nascar to Reduce Changeover Time
617 (4)
"People" Firms Boost Profits, Study Shows
621 (10)
Lean Tools
631 (2)
Reading: Nearby Suppliers Match Ford's Mix
633 (1)
Transitioning to a Lean System
633 (1)
Lean Services
634 (3)
Reading: To Build a Better Hospital, Virginia Mason Takes Lessons from Toyota Plants
636 (1)
JIT II
637 (1)
Operations Strategy
637 (1)
Summary
638 (1)
Key Points
639 (1)
Key Terms
639 (1)
Solved Problems
639 (1)
Discussion and Review Questions
640 (1)
Taking Stock
640 (1)
Critical Thinking Exercises
640 (1)
Problems
640 (3)
Case
Level Operations
641 (1)
Operations Tour: Boeing
642 (1)
Selected Bibliography and Further Readings
643 (1)
Supplement to Chapter 14
Maintenance
644 (8)
15 Supply Chain Management
652 (38)
Introduction
654 (1)
Trends in Supply Chain Management
655 (4)
Reading: At 3M, a Long Road Became a Shorter Road
658 (1)
Global Supply Chains
659 (1)
ERP and Supply Chain Management
659 (1)
Ethics and the Supply Chain
660 (1)
Small Businesses
660 (1)
Management Responsibilities
661 (1)
Procurement
662 (4)
Reading: IBMs Supply Chain Social Responsibility
665 (1)
E-Business
666 (3)
Reading: E-Procurement at IBM
668 (1)
Supplier Management
669 (3)
Reading: NestleUSA and Ocean Spray Form Strategic Operations Alliance
671 (1)
Inventory Management
672 (1)
Order Fulfillment
673 (1)
Logistics
674 (4)
Operations Tour: Wegmans' Shipping System
675 (2)
Readings: Springdale Farm
677 (1)
RFID Tags: Keeping the Shelves Stocked
678 (1)
Active RFID vs. Passive RFID
678 (2)
Creating An Effective Supply Chain
680 (4)
Reading: Clicks or Bricks, or Both?
681 (3)
Strategy
684 (1)
Summary
685 (1)
Key Points
685 (1)
Key Terms
685 (1)
Discussion and Review Questions
685 (1)
Taking Stock
686 (1)
Critical Thinking Exercises
686 (1)
Problems
686 (2)
Case
Master Tag
687 (1)
Selected Bibliography and Further Readings
688 (2)
16 Scheduling
690 (40)
Scheduling Operations
692 (3)
Scheduling in Low-Volume Systems
695 (18)
Scheduling Services
713 (4)
Operations Strategy
717 (1)
Summary
717 (1)
Key Points
717 (1)
Key Terms
718 (1)
Solved Problems
718 (4)
Discussion and Review Questions
722 (1)
Taking Stock
722 (1)
Critical Thinking Exercises
722 (1)
Problems
723 (6)
Case
Hi--Ho, Yo--Yo, Inc.
729 (1)
Selected Bibliography and Further Readings
729 (1)
17 Project Management
730 (52)
Introduction
732 (1)
Project Life Cycle
732 (1)
Behavioral Aspects of Project Management
733 (6)
Reading: Project Managers Have Never Been More Critical
738 (1)
Work Breakdown Structure
739 (1)
Planning and Scheduling with Gantt Charts
739 (1)
PERT and CPM
740 (3)
Deterministic Time Estimates
743 (1)
A Computing Algorithm
744 (7)
Probabilistic Time Estimates
751 (3)
Determining Path Probabilities
754 (2)
Simulation
756 (1)
Budget Control
757 (1)
Time-Cost Trade-offs: Crashing
757 (3)
Advantages of Using PERT and Potential Sources of Error
760 (1)
Critical Chain Project Management
761 (1)
Other Topics in Project Management
761 (1)
Project Management Software
762 (1)
Operations Strategy
763 (1)
Risk Management
763 (1)
Summary
764 (1)
Key Points
765 (1)
Key Terms
765 (1)
Solved Problems
765 (7)
Discussion and Review Questions
772 (1)
Taking Stock
772 (1)
Critical Thinking Exercises
772 (1)
Problems
772 (9)
Case
The Case of the Mexican Crazy Quilt
779 (2)
Time, Please
781 (1)
Selected Bibliography and Further Readings
781 (1)
18 Management of Waiting Lines
782 (40)
Why is There Waiting?
784 (1)
Managerial Implications of Waiting Lines
785 (1)
Reading: New Yorkers Do Not Like Waiting in Line
785 (1)
Goal of Waiting-Line Management
785 (1)
Characteristics of Waiting Lines
786 (4)
Measures of Waiting-Line Performance
790 (1)
Queuing Models: Infinite-Source
790 (15)
Queuing Model: Finite-Source
805 (6)
Constraint Management
811 (1)
The Psychology of Waiting
811 (1)
Reading: David H. Maister on the Psychology of Waiting
812 (1)
Operations Strategy
812 (1)
Reading: Managing Waiting Lines at Disney World
813 (1)
Summary
813 (1)
Key Points
814 (1)
Key Terms
814 (1)
Solved Problems
814 (2)
Discussion and Review Questions
816 (1)
Taking Stock
816 (1)
Critical Thinking Exercises
816 (1)
Problems
816 (4)
Case
Big Bank
820 (1)
Selected Bibliography and Further Readings
820 (2)
19 Linear Programming
822 (32)
Introduction
823 (1)
Linear Programming Models
824 (2)
Graphical Linear Programming
826 (12)
The Simplex Method
838 (1)
Computer Solutions
838 (3)
Sensitivity Analysis
841 (3)
Summary
844 (1)
Key Points
844 (1)
Key Terms
844 (1)
Solved Problems
844 (3)
Discussion and Review Questions
847 (1)
Problems
847 (6)
Case
Son, Ltd.
851 (1)
Custom Cabinets, Inc.©
852 (1)
Selected Bibliography and Further Readings
853 (1)
Appendix A Answers to Selected Problems 854 (12)
Appendix B Tables 866 (6)
Appendix C Working with the Normal Distribution 872 (5)
Company Index 877 (2)
Subject Index
https://en.wikipedia.org/wiki/Manufactur…
MRP and MRP 2
Manufacturing Resource planning
https://en.wikipedia.org/wiki/Manufactur…
Operations management. Processes and supply chains / Lee J. Krajewski, Larry P. Ritzman, Manoj K. Malhotra. ( Pearson 2013 ) 10th edition
I am seeing a paucity of such books though, like maybe my terminology is still out of date?
SJG
Sexiest Ladies of Jazz
https://www.youtube.com/watch?v=CsJs_hEC…
https://www.softwareadvice.com/manufactu…
https://www.epicor.com/offers/mes.aspx?u…
https://www.ptc.com/en/thingworx/manufac…
https://www.capterra.com/manufacturing-e…
SJG
Gustav Holst, Planets, Organ
https://www.youtube.com/watch?v=CwZkAgGu…
https://mail.google.com/mail/#sent?compo…
www.epicor.com
https://www.epicor.com/manufacturing/man…
www.ptc.com
wide range of product types
https://www.ptc.com/en/industries/manufa…
I used to use the MathCad long ago, before it was PTC. Most like a blackboard than a programing or calculation environment
https://www.ptc.com/en/products/mathcad
SJG
https://www.ptc.com/en/ptc-offices
https://www.ptc.com/en/products/all
Still not getting detailed info about MIS or MES systems
https://www.fsf.org/campaigns/priority-p…
https://directory.fsf.org/wiki/Main_Page
Project Management:
https://directory.fsf.org/wiki/Category/…
SJG
Chicago
https://www.youtube.com/watch?v=cBGyFrHF…
http://cowbellsongs.com/the-list-cowbell…
Aerosmith Walk This Way
https://www.youtube.com/watch?v=5UFFa1Hb…
Booker T and the MG's
https://www.youtube.com/watch?v=nVAFjvRB…
Hank and Cupcakes, paint only
https://www.youtube.com/watch?v=m8bIZ5P8…
The Vietnam War PBS Episode 3: The River Styx (January 1964-December 1965)
https://www.youtube.com/watch?v=O-cxYWy1…
The Battle For Puerto Rico
https://www.democracynow.org/2018/3/21/t…
Scholten, Bianca (2009). MES guide for executives: why and how to select, implement, and maintain a manufacturing execution system
https://www.amazon.com/MES-Guide-Executi…
https://www.overdrive.com/media/1186888/…
http://bestlibrary.co/download/mes-guide…
I can get this:
Supply chain and logistics management made easy : methods and applications for planning, operations, integration, control and improvement, and network design / Paul A. Myerson. ( 2015 Pearson )
SJG
Proview, open source process control
http://www.proview.se/v3/
Embedded PLC guide
http://plccompare.com/embedded-plc-guide…
SJG
SJG
https://en.wikipedia.org/wiki/Manufactur…
Almost every MRP II system is modular in construction. Characteristic basic modules in an MRP II system are:
Master production schedule (MPS)
Item master data (technical data)
Bill of materials (BOM) (technical data)
Production resources data (manufacturing technical data)
Inventories and orders (inventory control)
Purchasing management
Material requirements planning (MRP)
Shop floor control (SFC)
Capacity planning or capacity requirements planning (CRP)
Standard costing (cost control) and frequently also Actual or FIFO costing, and Weighted Average costing.
Cost reporting / management (cost control)
together with auxiliary systems such as:
Business planning
Lot traceability
Contract management
Tool management
Engineering change control
Configuration management
Shop floor data collection
Sales analysis and forecasting
Finite capacity scheduling (FCS)
and related systems such as:
General ledger
Accounts payable (purchase ledger)
Accounts receivable (sales ledger)
Sales order management
Distribution resource planning (DRP)
Automated warehouse management
Project management
Technical records
Estimating
Computer-aided design/computer-aided manufacturing (CAD/CAM)
CAPP
https://www.webandmacros.net/excel-mrp-m…
https://www.sheetmetalworld.com/sheet-me…
https://www.demanddriveninstitute.com/
SJG
https://content.shoptech.com/manufacturi…
lots of info on page, but to download brochure need to register with them.
This industry has really expanded into a cloud computing and service based model. I have reservations about some of that.
SJG
Directing the Erp Implementation A Best Practice Guide to Avoiding Program Failure Traps While Tuning System Performance (2015)
Effective PM and BA role collaboration : delivering business value through projects and programs successfully / Ori Schibi, Cheryl Lee. (2015)
Business driven technology / Paige Baltzan, Daniels College of Business, University of Denver. (2015)
SJG
SJG
http://www.proview.se/v3/
Today, the major development of Proview is made by SSAB Oxelösund, believed to be in Sweden.
http://www.proview.se/doc/en_us/index.ht…
Object Reference Manual
http://www.proview.se/doc/en_us/orm_f.ht…
Programmer's Reference Manual
http://www.proview.se/doc/en_us/prm_f.ht…
********************
Lean MES, and open source MES
*****************************
SJG
My Pentecostal Daughter Molestor's Appeals case, after some years of grandstanding, died in a fizzle, last month. He is going to be a guest of the state for quite some time. :) :) :)
But his church still runs and it is full of familial child abuse of all types.
ex-Doors, Moscow 2011
https://www.youtube.com/watch?v=lj8QX80O…
The Vietnam War Season 1 Episode 03 The River Styx (January 1964December 1965)
https://www.youtube.com/watch?v=O-cxYWy1…
I like these two girls:
http://www.imagefap.com/photo/2011889571…
http://leanmes.net/
SJG
Copyright (C) 2011 Agile Automation Technology LLC
So publications they include:
http://leanmes.net/publications.html
http://leanmes.net/images/Collecting_Sto…
http://leanmes.net/images/Configuring_ve…
http://leanmes.net/images/Using_RSMACC_v…
http://leanmes.net/images/Practical_Guid…
SJG
I like these two girls
http://www.imagefap.com/photo/2011889571…
Tried to download Lean MES source code. Their site for this did not work. Never really know how current some of this stuff is.
Here I do find some MES stuff on Source Forge. Thank heaving for Source Forge and FSF.
https://sourceforge.net/directory/os:win…
They say this can run totally web based, and ready to comply with complex fiscal laws like they have in Germany.
https://sourceforge.net/projects/openz/?…
includes all of the following:
•Sales and Purchasing
•Customer Relationship Management (CRM)
•Inventory Management
•Project Management
•Finance and accounting
•Manufacturing Execution System (MES)
•Individuality / Customizing on the fly
•Supply Chain Management
•SOAP connectivity Ecommerce, EBusiness, Webshops, CMS
Reviews: https://sourceforge.net/projects/openz/r…
Discussions: https://sourceforge.net/p/openz/discussi…
downloading one file now. 261 Mbytes file is zipped with something .gz
okay, down loading from this:
https://sourceforge.net/projects/openz/f…
still .gz
try to open with Internet Explorer
still fiddling.
SJG
SJG
Steely Dan live at Shoreline Amphitheater, Mountain View, CA 1993
https://www.youtube.com/watch?v=mGt8RebO…
Steely Dan Plush TV Jazz Rock Party 2000 - has Walter Becker playing guitar
https://www.youtube.com/watch?v=KhITNSSD…
this is with Larry Carlton
https://www.youtube.com/watch?v=J53Ej7jw…
https://sourceforge.net/projects/d-facto…
maybe this is not actually ready to down load.
Try this one.
https://sourceforge.net/projects/qcadoo/…
told it to download and open with Internet explorer
well, stuff definitely downloaded.
Better if I could have a book where they give you the program on CD, with the book.
Here, talk about Open Source MES
http://www.apriso.com/blog/2015/08/open-…
http://www.apriso.com/solutions/manufact…
http://www.apriso.com/solutions/manufact…
6 factors
http://www.apriso.com/blog/2015/06/6-fac…
http://www.apriso.com/solutions/manufact…
Watch this video to learn why a plant-based Manufacturing Execution System (MES) is not enough.
Datasheets list
http://www.apriso.com/library/data_sheet…
very complex, hard to choose. But some of this stuff is for non-programmers, and in my experience that just makes stuff worse. One of the systems was claimed to be done using PHP.
SJG
https://en.wikibooks.org/wiki/Delphi_Pro…
SJG
https://en.wikipedia.org/wiki/Manufactur…
PTC
https://www.ptc.com/en/thingworx/manufac…
ibaset
http://www.ibaset.com/solutions/manufact…
supposedly you just give them an email address and they send you the software
http://www.manufacturing-execution-softw…
Orange Connecticut. Not sure if anything they give out is source code.
http://www.manufacturing-execution-softw…
Here another firm.
Really I want to write my own.
Some explanation
https://www.techopedia.com/definition/11…
ERP, this seems to be the biggest scale version, where the computer has the most info:
https://www.techopedia.com/definition/15…
more about MES
http://searcherp.techtarget.com/definiti…
SJG
https://en.wikipedia.org/wiki/Enterprise…
Gartner
https://en.wikipedia.org/wiki/Gartner
Stamford Connecticut
https://www.gartner.com/en
ERP Software, including free and open source
https://en.wikipedia.org/wiki/List_of_ER…
Concepts in enterprise resource planning / Ellen Monk, Bret Wagner. (2012)
Concepts in enterprise resource planning / Ellen F. Monk, Bret J. Wagner (2009)
Enterprise resource planning : a transitional approach from the classroom to the business world / Jill O'Sullivan, Gene Ciaola. (2009)
I really want to write my own, or rather I want my organization to write it for all the things we do. Then we can also productize it.
SJG
https://en.wikipedia.org/wiki/Dolibarr
looks to have what I have been looking for, great online info and a use community and addons
SJG
JavaScript, PHP, MySQL or PostgreSQL
and it is:
Web application (LAMP based system) to manage small and medium entities
https://en.wikipedia.org/wiki/List_of_ER…
PostgreSQL
https://en.wikipedia.org/wiki/PostgreSQL
MySQL
https://en.wikipedia.org/wiki/MySQL
Does PostgreSQL do more than MySQL, more object oriented?
PostgreSQL: up and running : a practical guide to the advanced open source database / Regina O. Obe and Leo S. Hsu. (2017)
Dolibar addons store. THis stuff they sell for money, Euro's, but it is not many.
https://www.dolistore.com/en/
https://www.dolibarr.org/
So here I go to the area to download stable versions
https://sourceforge.net/projects/dolibar…
so I try to download, 61.1 Mbytes
So yes, I have the latest version, a giant file.
SJG
Tarot: A Rosicrucian Perspective ( AMORC )
https://www.youtube.com/watch?v=oo6iLolQ…
"Worlds Most Advanced Open Source Database"
https://www.postgresql.org/
PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness. It runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, macOS, Solaris), and Windows. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL:2008 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation.
Says it is written in C.
https://www.postgresql.org/docs/current/…
https://www.postgresql.org/docs/current/…
Coming out of UC Berkeley, from something in 1982. This is also the origins of Sun and its Unix.
Object relational database is a middle ground between relational and object databases.
https://en.wikipedia.org/wiki/Object-rel…
Object Databases, some still working on this, interesting applications
https://en.wikipedia.org/wiki/Object_dat…
MySQL
https://en.wikipedia.org/wiki/MySQL
had been owned by a Swedish firm which is now owned by Oracle.
written in C and C++
Lots of free website hosts offer MySQL, installed on that server, ready to go.
SJG
NOLO, Chartres - Iberville, doesn't the black girl in purple look good? I think this picture originally came from Google Street View
https://s.hdnux.com/photos/42/00/35/8914…
Chelsea Manning, running for the US Senate from Maryland, quite interesting
https://www.democracynow.org/
Steely Dan - Katy Lied (1975, Studio Album) 09 Any World (That I'm Welcome To)
https://www.youtube.com/watch?v=S7XQGB-k…
Let it rain- Eric Clapton
https://www.youtube.com/watch?v=mi3Wxjnj…
Live, with some friends, and with his women
https://www.youtube.com/watch?v=jvN6zRNl…
Live, Royal Albert Hall, 2015
https://www.youtube.com/watch?v=OqXrTDtD…
Derek and the Dominos live at the Fillmore
https://www.youtube.com/watch?v=jnDSN_XK…
Bring It On!
An Inflated Stock Market Is Evidence of Spiritual Sickness, And It Is The Death Of Creativity And Innovation
http://www.msn.com/en-us/money/markets/d…
Algorithms + Data Structures = Programs
by Niklaus Wirth
1976
Like I said, I want to understand how the ideas originally developed.
Now, I am done with Pascal and Modula-2, but Wirth has been such an influence, I'm going to read all of his available book. Then after I go on to LISP, and then Object LISP.
I have read many Dummies books, over the years. Most of them are actually very good, in my view.
Trigonometry For Dummies Paperback – February 24, 2014
by
Mary Jane Sterling
Maybe you think you already know it all. But unless you have recently gone through a book like this, you probably don't.
https://www.amazon.com/Trigonometry-Dumm…
Business Statistics for Dummies
https://www.amazon.com/Business-Statisti…
Now thanks to GACA for bringing R into the discussion. And does this replace SAS? I had not been thinking of reading about SAS, but if R replaces it, I want to know why. So I will read about SAS first, and then R.
The Book of R, by Tilman M. Davies
https://www.amazon.com/Book-First-Course…
and then Statistical Analysis with R, for dummies
https://www.amazon.com/Statistical-Analy…
SJG
by Niklaus Wirth
1976
So this is starting off good. Wirth writes in a very formalized way, seeking to develop a generalized theory for computer languages. And he was after all a guy who developed languages and wrote compilers.
So I am making my way through it, considering everything he is saying.
1976 is a long time ago. But Wirth has had a huge influence, and if I were not reading this I would not come to understand how the ideas developed.
SJG
SJG
This is why I'm interested in reading about:
https://en.wikipedia.org/wiki/SETL
I don't know if a special programming language is needed, or if just some good modules and conventions, using object oriented methods, in C or C++
I also wonder now, given that all the Grady Booch etal work is based on Ada, is Ada the logical successor to all the Object Oriented improvement made by Borland to their Pascal?
I had raised the issue, does object orientation and especially pointer to function, reduce program reliability and security? Well seemingly no, as Ada was developed to provide this.
So since Booch went so far in laying out a formal theory for the planning of oo programs, and he used Ada, I must learn all about Ada.
Does dynamic linking weaken software security? Not sure.
SJG
Algorithms + Data Structures = Programs
by Niklaus Wirth
1976
I might spend more time with it some other day. It mostly gets into problem solving, and things which depend on set logic. Done lots and lots of that.
https://en.wikipedia.org/wiki/Eight_quee…
More interested now in moving forward in time. But still two more Wirth books to read.
SJG
By the time you need this, this post will be gone:
http://testosteronelifeboat.freeforums.n…
X - blue spark
https://www.youtube.com/watch?v=NAicrYOC…
X - White Girl (Studio Version), L.A. Punk
https://www.youtube.com/watch?v=emY12SGd…
FORTRAN
Forth
PASCAL
ADA
and of course the O'reilly book publishers
C Programming Language, 2nd Edition 2nd Edition
by Brian W. Kernighan (Author), Dennis M. Ritchie (Author)
The C++ Programming Language, 4th Edition 4th Edition
by Bjarne Stroustrup
C Language Algorithms for Digital Signal Processing (1991)
C++ Algorithms for Digital Signal Processing
Designing Audio Effect Plug-Ins in C++: With Digital Audio Signal Processing Theory
Numerical Recipes in C++: The Art of Scientific Computing
good books on Python and SQL
There is also C#, coming from Microsoft, and I still have not figured out what the intended purpose of that is.
Hate to say it but SQL is just not enough anymore (if it ever was) if you don't know R and Python
Ruby and R, Python, Perl, PHP, Java, JavaScript, Mysql, PostgreSQL, AWK and SED
Forth, ADA, SmallTalk, SETL, Lisp, Prolog
Object Modelling Language
Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5 (Learning Php, Mysql, Javascript, Css & Html5) 4th Edition
by Robin Nixon
XML ( use for various things, extend it ) xplot? Splot? Things like that. old MS-DOS, Windows, FreeDos, FreeRTOS, Ubantu Linux.
The Art of Computer Programming, Volumes 1-4A Boxed Set
Donald E. Knuth
they give you a full RTOS in this:
Embedded systems building blocks : complete and ready-to-use modules in C / Jean J. Labrosse (2000)
Embedded C programming and the Atmel AVR / Richard Barnett, Larry O'Cull, Sarah Cox (2003)
Fundamentals of embedded software : where C and assembly meet / Daniel W. Lewis. (2002)
C programming for embedded systems / Kirk Zurell (2000)
Programming embedded systems in C and C++ / Michael Barr. (1999 O'Reilly )
Reusable software components : object-oriented embedded systems programming in C / Ted Van Sickle (1997)
Compilers: Principles, Techniques, and Tools, old book, but many more new ones now. This one, as I know, often used at Stanford 1986
now part of Micro Focus
www.microfocus.com
Opensources : voices from the open source revolution / edited by Chris DiBona, Sam Ockman & Mark Stone. 1999
Above was where I first learned of ECO, and open source hard core real time scalable open source operating system.
Anyone use C# or .NET? Not clear to me what the efficacy of those are.
Advanced Finite Element Simulation with MSC Marc [electronic resource] : Application of User Subroutines / by Zia Javanbakht, Andreas ©ئchsner. (2017), USES FORTRAN
ADA
Ada's legacy / Robin Hammerman, Andrew L. Russell., 2016
Analysable real-time systems : programmed in Ada / Alan Burns and Andy Wellings. 2016
Programming in Ada 2012 / John Barnes.
Building parallel, embedded, and real-time applications with Ada / John W. McCormick, Frank Singhoff [and] Jérôme Hugues 2011
R
R for Microsoft Excel users : making the transition for statistical analysis / Conrad Carlberg. 2017
Beginning data science in R : data analysis, visualization, and modelling for the data scientist / Thomas Mailund 2017
Using the R commander : a point-and-click interface for R / John Fox 2017
PYTHON
Python without fear : a beginner's guide that makes you feel smart / Brian Overland. 2018
SQL
Refactoring SQL applications / Stéphane Faroult with Pascal L'Hermite 2008, O'Reilly
FORTH
Intelligent embedded systems / Louis L. Odette 1991, talks about C, prolog,and Forth
Pocket guide to FORTH / Linda Baker [and] Mitch Derick ( 1983 )
FORTH on the Atari : learning by using / E. Floegel ( 1983 )
says ASP and ASPX are:
ActiveX Server Pages of Microsoft.Net
and then the Unix Shells, is Perl just an extension of these?
www.projectoberon.com, and then also Wirths work for PIC's
www.inf.ethz.ch
Brief Editor
briefeditor.com
AI and expert systems : a comprehensive guide, C language / Robert I. Levine, Diane E. Drang, Barry Edelson. (1990 )
Levine believes that Lisp and Prolog are hindrances to use of AI techniques.
Mastering C++ : an introduction to C++ and object-oriented programming for C and Pascal programmers / Cay S. Horstmann. ( 1991 )
Ben Ezzell, very smart guy writes very good books
www.ubuntu.com
Ubuntu Linux, some have called this a "low latency linux"
I have maximum respect for this:
www.gnu.org
Objective-C : object-oriented programming techniques / Lewis J. Pinson, Richard S. Wiener ( 1991 )
Object technology for scientific computing : object-oriented numerical software in Eiffel and C / Paul F. Dubois ( 1997 )
We also have Ruby, and it borrowed from Lisp and SmallTalk
FreeRTOS books and manuals
www.freertos.org
Real-time embedded components and systems : with Linux and RTOS / Sam Siewart, John Pratt. (2016)
MicroC/OS-II : the real-time kernel / Jean J. Labrosse ( 1999 ) skimmed through years ago, has C based RTOS in the book and on its CD.
Circuit Design Using Personal Computers, by Thomas Cuthbert, 1983
Applying manufacturing execution systems / Michael McClellan (1997), not that new
The Gantt chart : a working tool of management
Clark, Wallace, 1880-1948
London : Pitman, [1952]
The Gantt Chart: A Working Tool of Management (Classic Reprint)Apr 22, 2017
by Wallace Clark
Project Management For DummiesApr 22, 2013
by Stanley E. Portny, looks quite good
Mastering the Gantt Chart: Understand and use the "Gantt Project" open source software efficiently! (eGuide Education Book 1)Jan 30, 2017
by Olivier Rebière and Cristina Rebière
R:Base solutions : applications and resources / Microrim, [Jayne Vitulli, editor] 1988 ( can't really get this very easily now )
Simula 67 as the original object oriented language
Borland: VMT ( virtual methods table ). So you see, this is now getting into the dynamic linking of which I spoke.
Modern Fortran in practice / Arjen Markus ; with foreword by Michael Metcalf. (2012)
Dynamic Libraries,
In Windows its 'DLL'.
In MacOSX its 'dylib'.
For Linux its 'shared object'
PLplot 'plplot.sf.net'
GNU, gcc, gfortran, gnuplot, of Free Software Foundation
SQLite 'SQLite.org'
Tcl, Tk, 'tcl.tk'
QLite, written in C. For Fortran there is fsqlite, developed by Markus.
SQLite developed by D. Richard Hipp, March 2012, 'www.sqlite.org'
PLplot, collection of libraries for plotting technical and scientific data
Tcl/Tk
Tklib, library of Tk extensions, 'tcllib.sf.net'
Gabriele Jost, Chapman, Ruud van der Pas, Using OpenMP: Portable Shared Memory Parallel Programming 2008.
Lusk, Gropp, Skjellum. Using MPI: portable parallel programming with message passing, 1999.
OpenMP and MPI are the two ways of doing parallel processing in Fortran.
Unit Testing, Junit is for java
For Fortran we have Funit, pfunit, FRUIT, and Ftnunit. All for Fortran or Fortran and Ruby.
Les Hatton, 'Safer C, Developing software for High-Integrity and Safety-critical systems' 1994
Code complete : [a practical handbook of software construction] / Steve McConnell
Redmond, Wash. : Microsoft Press, [2004]
XML Files, a very practical kind of compromise idea in my opinion.
used extensively in docbook.
Making TEX work / Norman Walsh (1994)
DocBook 5: The Definitive Guide: The Official Documentation for DocBook, by Walsh Norman
Embedded software development with C / Kai Qian, David den Haring, Li Cao. (2009)
So LISP Books available back to 1987
A programmer's guide to COMMON LISP / Deborah G. Tatar (1987)
COMMON LISP : the language / Guy L. Steele, Jr. ; with contributions by Scott E. Fahlman ... [et al.] and with contributions to the 2nd ed. by Daniel G. Bobrow ... [et al.] (1990)
Object-oriented common LISP / Stephen Slade (1998)
Prolog back to 1981
Programming in Prolog / W.F. Clocksin, C.S. Mellish 1981
Prolog programming for artificial intelligence / Ivan Bratko. 1986
The power of Turbo Prolog : the natural language of artificial intelligence / Ralph Roberts. 1987
An introduction to language processing with Perl and Prolog : an outline of theories, implementation, and application with special consideration of English, French, and German / Pierre M. Nugues 2006
SETL back to 1986, and SETL was influenced by Ada
Programming with sets : an introduction to SETL / J.T. Schwartz ... [et al.] (1986)
Simula 67, back to 1983
Introduction to SIMULA 67 / Günther Lamprecht (1983) later books too.
Elixir and Rust
The Rust Programming Language, by Steve Klabnick, a new book
Introducing Elixir : getting started in functional programming / Simon St. Laurent and J. David Eisenberg (2017)
Object oriented design with applications / Grady Booch (1991)
An introduction to object-oriented analysis : objects and UML in plain English / David William Brown (2002)
Object models : strategies, patterns, and applications / Peter Coad with David North and Mark Mayfield (1997)
Object-oriented analysis and design / James Martin and James J. Odell (1992)
Object-oriented modeling and design with UML / Michael Blaha, James Rumbaugh (2005)
So Talking About Object Cobol
6 OO properties
Inheritance, Encapsulation, Polymorphism, Classes as Objects, Persistent Objects, Dynamic Binding
So as they rate it:
Inheritance-> SmallTalk single C++ multiple Object Cobol multiple
Encapsulation-> ST total C++ limited OC total
Polymorphism-> Yes Yes Yes
Classes as Objects-> Yes No Yes
Persistent Objects-> Yes No Yes
Dynamic Binding-> Yes No Yes
Perl can run through CGI ( Common Gateway Interface, same way Server Side Include works in web pages? )
Java : the complete reference / Herbert Schildt. (2014)
Microsoft Access
Microsoft Access 2016 programming by example with VBA, XML, and ASP / Julitta, Korol. (2017)
Windows PowerShell cookbook : the complete guide to scripting Microsoft's command shell / by Lee Holmes. (2013)
ssential Office 2016 / Kevin Wilson.(2017)
Essentials of management information systems / Kenneth C. Laudon, New York University, Jane P. Laudon, Azimuth Information Systems. (2017), and published by Pearson, as major text book publishing company
Scholten, Bianca (2009). MES guide for executives: why and how to select, implement, and maintain a manufacturing execution system
Supply chain and logistics management made easy : methods and applications for planning, operations, integration, control and improvement, and network design / Paul A. Myerson. ( 2015 Pearson )
Directing the Erp Implementation A Best Practice Guide to Avoiding Program Failure Traps While Tuning System Performance (2015)
Effective PM and BA role collaboration : delivering business value through projects and programs successfully / Ori Schibi, Cheryl Lee. (2015)
Business driven technology / Paige Baltzan, Daniels College of Business, University of Denver. (2015)
The AMA handbook of project management / edited by Paul C. Dinsmore, PMP. Jeannette Cabanis-Brewin. (2014), but availability problem.
Mention of Delphi, programming language and environment. Used today or not, I still want to read about it.
Concepts in enterprise resource planning / Ellen Monk, Bret Wagner. (2012)
Concepts in enterprise resource planning / Ellen F. Monk, Bret J. Wagner (2009)
Enterprise resource planning : a transitional approach from the classroom to the business world / Jill O'Sullivan, Gene Ciaola. (2009)
Handbook of serial communications interfaces : a comprehensive compendium of serial digital input/output (I/o) standards / Louis E. Frenzel Jr. ( 2016 ) includes RS-485, a personal favorite of mine.
Newnes books are always good.
SJG
ELP - Full Concert - Live in Zurich 1970
https://www.youtube.com/watch?v=jc3cNfn9…
Mike Oldfield 'Tubular Bells' Live at the BBC 1973 (high quality / remastered)
https://www.youtube.com/watch?v=l7MY_cdU…
SJG
So this Oberon, is rather like a programming langauge and a run time environment. Except that the run time environment is also the operating system.
So the language is like an extended version of Pascal.
The real issue seems to be dynamic linking. So you can have all sorts of procedures and modules of procedures already there, and your stuff will be able to run and call upon it.
I think everyone wants something like this, its just that what the best way to achieve it is still illusive. Wirth was able to do this by extending Pascal, and by writing a new operating system for this.
I would not know this unless I had been willing to spend a few hours with this old 1992 book.
SJG
Emerson, Lake & Palmer - Knife Edge - Live in Switzerland, 1970
https://www.youtube.com/watch?v=G7_XkndC…
And so I need to find books I can get on LISP. Start with the oldest.
A programmer's guide to COMMON LISP / Deborah G. Tatar (1987)
COMMON LISP : the language / Guy L. Steele, Jr. ; with contributions by Scott E. Fahlman ... [et al.] and with contributions to the 2nd ed. by Daniel G. Bobrow ... [et al.] (1990)
Object-oriented common LISP / Stephen Slade (1998)
SJG
So it is interpreted. It can make lots of graphs.
Thats okay.
It can do all kinds of regressions. Not a real big deal, just auto-correlations, like convolutions and reverse convolutions, double integration, double summation.
What language is it written in? Do you get the source code?
Can it retrieve from and manipulate relational databases, without having to pass data thru text files? This is the real issue.
SJG
Good to see you back.
I am not really a seeker. I just want to understand for myself, and only way to do that is to read he old books. There are already some things which have occurred which might qualify as epiphanies.
SJG
SJG
Humble Pie, Catfish Blues
https://www.youtube.com/watch?v=Ryf08xeP…
https://i.ytimg.com/vi/Bwkst8Xg9AY/maxre…
Technically even data in relational databases are text files until you to define the columns/fields data type. Which can be done in R as well. Not sure importing data as text is a deal breaker at all.
As I see it, what ever program is used with this must be able to find data for itself in the tables. Otherwise I'll just write something else to do the job.
Reading a bit of this:
https://www.amazon.com/PostgreSQL-Runnin…
PostgreSQL sounds great!
There are bridges for Python, Perl, R, and something for C programs.
But I am getting out of order here.
In the old computer books I am quite sure that I understand exactly what they mean in every sentence and every reference. That is why I am doing this reading project, because the same cannot be said when I read the new books. I need to build my understanding from things and times more basic.
Much of the issue is just that Dynamic Linking is not the norm. And maybe it is not going to be, and shouldn't be. So it is hard to make programs which deal with after the fact routines.
But using R:BASE with MS-DOS long ago, we had the R:BASE interpretive language which did most everything we needed, though too slow.
But we also had a C Library, by which we could do anything. We used it to put data in. But we also could have written a C/C++ program which got data out, did statistics, did graphs, and also created and manipulated data base structures.
To have something new today to interact with a database from user programs, it should be able to do all this.
If you write something to read in a text file, you need to do lots of error checking on it, so that it is impossible for the file to make the program crash. So once it is in run time variables, or a very structured binary format disk file, it should stay that way.
If you have to take text format data, just do it once only.
This is how I see how.
Hope things are going well for you, and with whatever came of the girl you were seeing.
SJG
Awesome Book:
https://www.amazon.com/PostgreSQL-Runnin…
So there seem to be 4x administration utilities
1. psql, command line driven ( better in my view ), can also run queries and make reports
2. pgAdmin a GUI thing, well worth exploring
3. pgPgAdmin web based admin tool
4. Adminer works for all the standard database types
PostgreSQL sounds great. Closest thing to it is Oracle. These are object-relational.
Anyone use object-relational databases? Anyone use full object oriented databases?
Not sure if people ever go along with that idea anymore. Someone told me no.
Object-oriented databases / J.G. Hughes. (1991)
https://en.wikipedia.org/wiki/Object_dat…
https://en.wikipedia.org/wiki/Object-rel…
https://en.wikipedia.org/wiki/Comparison…
SJG
Chicago Club
https://www.youtube.com/watch?v=BuUSPcmq…
https://www.youtube.com/watch?v=BuUSPcmq…
https://www.youtube.com/watch?v=aUeYtWPE…
HK Bar
https://www.youtube.com/watch?v=gGdaWjCN…
https://www.youtube.com/watch?v=XARgc5Um…
https://www.youtube.com/watch?v=7AOrtMIK…
https://www.youtube.com/watch?v=Ea3_CMDa…
Best Blues Rock Songs Ever
https://www.youtube.com/watch?v=tVSMABmT…
Vanilla Fudge - Full Concert - Live at Rockpalast - 2004
https://www.youtube.com/watch?v=q9DLtoBX…
uses SQLite, Swift, iOS, and objective-C
SJG
http://farm4.static.flickr.com/3680/9633…
https://farm6.staticflickr.com/5449/9632…
https://c1.staticflickr.com/8/7290/96201…
http://www.adelitasbartijuanamexico.com/…
https://farm6.staticflickr.com/5488/9620…
https://en.wikipedia.org/wiki/Swift_(pro…
iOS, the mobile operating system ( as I am sure people can tell, I am not a mobile devices guy )
https://en.wikipedia.org/wiki/IOS
Objective-C ( seems connected to Next, Apple, and Swift )
https://en.wikipedia.org/wiki/Objective-…
SQLite ( can be in C runtime library, not client-server, but ends up in your application program. Remember I was reading about it pertaining to modern uses of Fortran. More like what I am used to. But seemingly a database for smaller scale things, not with serious multi-user security )
https://en.wikipedia.org/wiki/SQLite
https://en.wikipedia.org/wiki/Forth_(pro…
SJG
https://en.wikipedia.org/wiki/Ada_%28pro…
Is this the reason we don't have further development on PASCAL, like following Modula-2, Oberon, or Borland's Object Pascal, because that has all been subsumed into Ada?
More books to read, yes indeed.
SJG
https://www.amazon.com/Compiler-Construc…
So as always, Writh is extremely systematic.
He cites the origins of this around 1960, with the langauge Algol-60
He says that compilers were running around 7 passes, because of memory limitations.
My own experience was that Microsoft DOS Pascal, Fortran, and C ran 3 passes.
Wirth says that PL/1 ( IBM Mainframe ) ran 70 passes.
He talks of there being a scanner, a parser, then a code generator.
And of course multi-pass is complicated because it has to make a temporary file and then read it back into the next executable.
So Wirth sees a continuity from Pascal to Oberon to Ada.
So as I see it, the attempts to extend Pascal were Modula-2, Borland Object Pascal, and Oberon. So then seems the reason we don't have these any more are Ada. So I need to learn about it.
So then maybe Object Orientation and Client Server do not make software more vulnerable to failure and virus attacks. Maybe dynamic linking does not either. But the main difference is that C/C++ is very loosely typed, and far more so before the ANSI Standard. Where as Pascal and likely Ada are very strongly typed.
Oberon is really a language, compiler, run time environment, and operating system all together. And then of course this yields dynamic linking.
I expect to see other things like this with Forth and SmallTalk, and likely more.
And then Wirth talks of context free grammar and Bakus - Naur form. And then there are extended and augmented versions.
https://en.wikipedia.org/wiki/Backus%E2%…
Naur P. 1960 Report on algorithmic language Algol 60
Wirth talks about the data type SET. This is interesting to me, as there is also this language SETL.
The only way I would know about any of this is by making a commitment to read the old books. And the concepts involved are not out of date at all.
So additional references from the publisher:
Software Development with Z J. B. Wordsworth
Object-Oriented Database Systems: Concepts and Aritectures E. Bertino and L. D. Marino
Functional Programming and Parallel Graph Rewriting R. Plasmeijer and M van Eekelen
Object-Oriented Programming in Eiffel P Thomas and R Weedon
Miranda: The Craft of Functional Programming S. Thompson
Programming in Ada 95 J. Barnes
Ada from the Beginning J. Skansholm
This will be the last of the Niklaus Wirth books for me. Now on to LISP.
SJG
A programmer's guide to COMMON LISP / Deborah G. Tatar (1987)
COMMON LISP : the language / Guy L. Steele, Jr. ; with contributions by Scott E. Fahlman ... [et al.] and with contributions to the 2nd ed. by Daniel G. Bobrow ... [et al.] (1990)
Object-oriented common LISP / Stephen Slade (1998)
But there was some minor reading about XML. I can't follow all the logic of its history and the relation to HTML, but the basic idea of trying to package text data and give it some reliability is good. One could easily write a parser for it and establish their own rules. But still better to keep the data in relational databases.
Reading about MySQL and PHP, looks real good. PostgreSQL is seen as the alternative to MySQL, and it is known to run slower. Probably because it has some object oriented properties. Similar to Oracle.
And then for client server, PHP and the browser lets it all run with a very thin client.
SJG
The Costs of Inequality: Joseph Stiglitz, native of Gary Indiana, seeing things get worse each year, starting from 1980.
https://www.youtube.com/watch?v=GYHT4zJs…
Crises of Capitalism, David Harvey
https://www.youtube.com/watch?v=qOP2V_np…
Wendy Brown: How Neoliberalism Threatens Democracy
https://www.youtube.com/watch?v=ZMMJ9Hqz…
I cannot stand this Karen Huckabee Sanders. We should set up an anti-Trump news show, and make Stormy Daniels into out main news reader.
https://www.youtube.com/watch?v=HAIDkG-n…
https://www.youtube.com/watch?v=r_ggvmYV…
https://www.youtube.com/watch?v=DFEoyIGb…
HK Gallery
http://hktijuana.com/assets/img/gallery/…
http://hktijuana.com/assets/img/gallery/…
http://hktijuana.com/assets/img/gallery/…
COMMON LISP : the language / Guy L. Steele, Jr. ; with contributions by Scott E. Fahlman ... [et al.] and with contributions to the 2nd ed. by Daniel G. Bobrow ... [et al.] (1990)
Object-oriented common LISP / Stephen Slade (1998)
to be continued
SJG
Now I see more, and I want to start with the oldest. LISP goes back to the 1950's
LISP 1.5 programmer's manual / John McCarthy (1962) might be inconveniently too large of format, more a paper.
The programming language LISP : its operation and applications / Edmund C. Berkeley and Daniel G. Bobrow (1964)
Programming in Common LISP / Rodney A. Brooks. (1985) Mr. Brooks is a famous man.
Lisp / Patrick Henry Winston, Berthold Klaus Paul Horn (1989)
The art of the metaobject protocol / Gregor Kiczales, Jim des Rivières, and Daniel G. Bobrow. (1991)
Paradigms of artificial intelligence programming : case studies in Common Lisp / Peter Norvig (1992)
Interpreting LISP : programming and data structures / Gary D. Knott (2017)
Also books about Clojure and Ruby.
Remember, I am not a 'job seeker' or anything like that. I want actual understanding of how the ideas developed. No other way to get that than to read the old books.
SJG
LISP goes back before 1960, just like Cobol and Fortran.
SJG
It has a moderate object oriented capacity. They have linked the creation of compounded variables, in C stuctures, to the creation of classes. Make sense.
SJG
There are other books which tell much much more, this is just a chapter of a book about using mysql.
SJG
Great papers in computer science / [edited by] Phillip Laplante
New York : IEEE Press ; Minneapolis/St. Paul : West Pub. Co., [1996] ©1996
Format:Books & Journals
More Details
Descript
iv, 717 p. : ill. ; 26 cm
Contents
1. Algorithms and data structures. The complexity of theorem proving procedures / by Stephen A. Cook ; On the conceptual complexity of algorithms / by J. Hartmanis and R.E. Stearns ; Quicksort / by C.A.R. Hoare ; Finite automata and their decision problems / by M.O. Rabin and D. Scott -- 2. Programming languages. The FORTRAN automatic coding system / by J.W. Backus, et al. ; An axiomatic basis for computer programming / by C.A.R. Hoare ; An axiomatic definition of the programming language Pascal / by C.A.R. Hoare and N. Wirth ; The contour model of block structured processes / by John B. Johnston ; On the translation of languages from left to right / by Donald E. Knuth ; Revised report on the algorithmic language ALGOL 60 / by Peter Naur, et al. -- 3. Architecture. First draft of a report on the EFVAC / by John von Neumann ; A symbolic analysis of relay and switching circuits / by Claude E. Shannon ; Alto : a personal computer / by C.P. Thacker ... [et al.] ; The best way to design an automatic calculating machine / by M.V. Wilkes --
4. Numerical and scientific computing. On computable numbers, with an application to the Entscheidungsproblem / by A.M. Turing ; On computable numbers, with an application to the Entscheidungsproblem / by A.M. Turing ; On computable numbers, with an application to the Entscheidungsproblem. A correction / by A.M. During -- 5. Operating systems. Cooperating sequential processes / by Edsger W. Dijkstra ; Solution of a problem in concurrent programming control / by Edsger W. Dijkstra ; A formal system for information retrieval from files / by David Hsiao and Frank Harary -- 6. Software methodology and engineering. No silver bullet-- essence and accidents of software engineering / by Frederick P. Brooks ; Guarded commands, nondeterminacy, and formal derivation of programs / by Edsger W. Dijkstra ; Go to statement considered harmful / by Edsger Dijkstra ; Proof of correctness of data representations / by C.A.R. Hoare ; On the criteria to be used in decomposing systems into modules / by David L. Parnas ; A rational design process : how and why to fake it / by David L. Parnas and Paul C. Clements ; Global variables considered harmful / by W. Wulf and M. Shaw --
7. Databases. The theory of joins in relational databases / by A.V. Aho, C. Beeri, and J.D. Ullman ; Organization and maintenance of large ordered indexes / by R. Bayer and E. McCreight ; The entity relationship model-toward a unified view of data / by Peter Pin-Shan Chen ; A relational model of data for large shared data banks / by E.F. Codd -- 8. Artificial intelligence and robotics. Steps toward artificial intelligence / by Marvin L. Minsky ; Matter, mind, and models / by Marvin L. Minsky ; Fusion, propagation, and structuring in belief networks / by Judea Pearl ; Computing machinery and intelligence / by A.M. Turing -- 9. Human-computer communications. Programming considered as a human activity / by Edsger W. Dijkstra -- 10. History. Programming in America in the 1950s-- some personal impressions / by John Backus ; The evolution of data-base management systems / by James P. Fry and Edgar H. Sibley ; The evolution of the UNIX time-sharing system / by Dennis M. Ritchie.
https://www.amazon.com/Papers-Computer-S…
This author has written a lot of interesting looking books.
I learned of this one because he has the Chen paper, 1976
The entity relationship model-toward a unified view of data / by Peter Pin-Shan Chen ;
https://en.wikipedia.org/wiki/Peter_Chen
I remember hearing about this Entity Relationship model decades ago and reading about it. It is how you design relational databases. To me it seems obvious. But if you need to teach other people, then Chen is the one who put it into words.
https://en.wikipedia.org/wiki/Peter_Chen…
Need to read this book, and Chen has books too which I need to read.
SJG
Arnold Schönberg: Pélleas und Melisande op.5 (1903)
https://www.youtube.com/watch?v=-2SvMeye…
But you can also go directly from your Linux shell to have a MySQL statement processed, without launching the command interpreter. You include your user name and password along with the SQL command.
'help' gets you a list of all the MySQL statements which are not also a part of SQL.
Not sure if this only works because of using client server mode.
For some apps, better to be able to use a leaner and more real time oriented operating system.
Oh well, I have much to learn.
XML files are an improvement over raw text. But really should be able to store info and transfer info from app to app using relational databases.
SJG
I read:
The programming language LISP : its operation and applications / Edmund C. Berkeley and Daniel G. Bobrow, editors and fifteen authors. (1964)
They acknowledge that the earliest book is:
LISP 1.5 programmer's manual / John McCarthy [and others (1962)
But that above is really not that coherent.
Next I will be reading
Programming in Common LISP / Rodney A. Brooks. 1985
Now I see why people would be interested in this, all coming from MIT and the Military, and why they would want this when they already have Cobal and Fortran.
LISP means List Processing. It is interpretive, and a list is like a set, except that order also matters.
Earlier computer languages had to be compiled because computers were so slow.
Later computer work gets the set logic back in. LISP might be like Forth, but I do not know.
Rodney Brooks, MIT AI Lab, very famous man.
Again, if I did not take the time to read the old books, and if libraries did not still have them, I would not be able to know.
SJG
Later developed LISP Object Orientation system.
https://en.wikipedia.org/wiki/Common_Lis…
I have so much to read books about. But I will wait until I go through all the older stuff first. Encouraging to see though.
What is CLOJURE?
https://en.wikipedia.org/wiki/Clojure
Lisp version, emphasizes functional programing ( as opposed to procedural ), uses Java Virtual Machine. ( Does Java Virtual Machine have security problems? )
To make good strategic decisions, so much to learn. Even SJG can only read so many books at a time.
Interpretive languages keep the run time variables right there in the interactive environment, so you get what dynamic linking would give you with compiled languages.
And then Forth uses Reverse Polish Notation, like an HP calculator? I love RPN.
The Order I am building will have the best libraries in the entire world.
Consider Germany's Franhofer Society
https://en.wikipedia.org/wiki/Fraunhofer…
https://www.fraunhofer.de/en.html
(any thing I ever do in Germany will always be next door to an FKK)
SJG
There was talk at the end of the 19th Century in Paris of an elite occult group which would become the shadow government. Some say that this is what the current EU government is. Is this what Franhofer is?
Is Franhofer the new Free Masons?
Gemeinschaft and Gesellschaft
https://en.wikipedia.org/wiki/Gemeinscha…
http://www.newworldencyclopedia.org/entr…
SJG
curious
https://www.youtube.com/user/freakphil13…
Object-oriented programming : the CLOS perspective / edited by Andreas Paepcke
Clojure seems newer, so read the older first.
But also notice books like:
Functional programming : a PragPub anthology : exploring Clojure, Elixir, Haskell, Scala, and Swift / Michael Swaine and the PragPub writers. (2017)
So LISP lives on in many forms.
SJG
talked before about Elixir
https://en.wikipedia.org/wiki/Elixir_(pr…
sounds way out there, first appeared 7 years ago.
Haskell
https://en.wikipedia.org/wiki/Haskell_(p…
goes back to 1990
Scala
https://en.wikipedia.org/wiki/Scala_(pro…
back to 2004, intended to address criticisms of Java, uses Java virtual machine, or some such
goes back to 2014, Swift, tied to Apple, but there is also a Swift scripting language
https://en.wikipedia.org/wiki/Swift_(pro…
We have C#, now we have F# what is that? Don't know.
Hadoop : the definitive guide / Tom White (2015)
"Apache Hadoop ( /həˈduːp/) is a collection of open-source software utilities that facilitate using a network of many computers to solve problems involving massive amounts of data and computation"
So many things to learn about, and all so complex.
https://en.wikipedia.org/wiki/Apache_Had…
Apache Software Foundation
https://en.wikipedia.org/wiki/Apache_Sof…
SJG
F# is a cross-platform, open source programming language for .NET which provides first-class support for functional programming, along with support of object-oriented and imperative programming. The Visual F# compiler and tooling are Microsoft's implementation and tooling for the F# programming language, making F# a first-class member of .NET.
Functional Programing
https://en.wikipedia.org/wiki/F_Sharp_(p…
Anyone know anything about this?
https://en.wikipedia.org/wiki/Forth_(pro…
procedural, without type checking, compiled and interpretive.
The free software Gforth implementation is actively maintained, as are several commercially supported systems.
For arithmetic operators, this follows the rule of reverse Polish notation.
http://rosettacode.org/wiki/Category:For…
http://galileo.phys.virginia.edu/classes…
http://www.forth.org/KittPeakForthPrimer…
so much to learn about
SJG
So if you want something highly interactive, like a calculator, RPN.
If you are writing a program with a text editor, then it doesn't matter, go ahead and use your parentheses and your equals sign.
SJG
https://en.wikipedia.org/wiki/Reverse_Po…
Used in Forth Language and in HP Calculators
We have this newer thing from HP, RPL, an object oriented programming convention used in their later calculators in the 90's, like HP-48.
https://en.wikipedia.org/wiki/RPL_(progr…
And there does seem to be come connection to LISP.
And we have some relation to this text editor Emacs, and its GNU version.
https://en.wikipedia.org/wiki/Emacs#Feat…
SJG
https://en.wikipedia.org/wiki/Clojure
https://clojure.org/
https://objectcomputing.com/resources/pu…
https://www.infoq.com/presentations/Are-…
SJG
Object-oriented databases / J.G. Hughes. (1991)
above looks good, but actually lots of OODB stuff
http://csul.iii.com/search~S0?/dObject-o…
C++ object databases : programming with the ODMG standard / David Jordan ; [foreword by Rick Cattell] (1998)
High wired : on the design, use, and theory of educational MOOs / Cynthia Haynes and Jan Rune Holmevik, editors ; foreword by Sherry Turkle.(2001)
and this MongoDB, Palo Alto CA
https://en.wikipedia.org/wiki/MongoDB_In….
https://www.mongodb.com/
lots of books about mongodb, and some associating it with Python.
SJG
https://en.wikipedia.org/wiki/MongoDB
a NoSQL, meaning non SQL, not relational, database
https://en.wikipedia.org/wiki/NoSQL
I have no idea how such a thing would work.
https://en.wikipedia.org/wiki/NoSQL
MongoDB uses JSON-like documents with schemas.
Very challenging for me to even apprehend all which I do not know.
SJG
https://en.wikipedia.org/wiki/JSON
SJG
SJG
and interfacing with programs written in other languages, including C, C++, C#, Java, Fortran and Python.
SJG
https://en.wikipedia.org/wiki/MATLAB#Syn…
SJG
Other books about NoSQL databases
Want to read about OO Databases
Object-oriented databases / J.G. Hughes. (1991)
So about Forth using RPN, I think that is great. I know all about RPN for HP calculators from 41C and backwards.
But in the 90's for HP-48 and beyond they came up something more like a real programming language, and object oriented. 'RPL' I am told. Need to learn about this.
http://hpmuseum.org/
RPL
http://www.hpmuseum.org/rpl.htm
What is the HP Calculator line up today?
http://www8.hp.com/us/en/prodserv/calcul…
Web site seems screwed up, but they seem to have Scientific, Financial, and Graphing Calculators.
This video about the new HP Prime Graphing Calculator
http://www8.hp.com/us/en/prodserv/calcul…
Classroom Manager, more of a program
http://www8.hp.com/us/en/classmanager/ov…
well here is more about the HP Prime
https://en.wikipedia.org/wiki/HP_Prime#P…
RPN, but not this RPL.
I've gotten the impression that HP calculators are no longer what they were and that the lead has gone to TI.
https://education.ti.com/en/products
Yes, but I have never cared for TI calculators, their buttons, anything about them. And I like RPN.
But they pitch it as calculators are for taking exams. True. If not an exam you can use a desk top computer. But is there good software? The old HP-41C was so so good, and then there was a library of programs and some plug in modules. Magnetic Card Reader, Printer, plug in modules, everything.
and this brings us to MATLAB, which I find to have both strengths and short comings.
Still intrigued that Forth used RPN, and wondering if there is anything which continues this?
SJG
Vietnam Freelancers And Hostess Ladies
https://www.youtube.com/watch?v=SuHCvGqK…
Come visit Zona Norte / Tijuana México Red Light Districts (part 1), much loved, believed to be showing the inside of that Mermaids Message Place
https://www.youtube.com/watch?v=Jj0yKwFl…
King Crimson Red
https://www.youtube.com/watch?v=X_pDwv3t…
Led Zeppelin II
https://www.youtube.com/watch?v=0bcIjILq…
Led Zeppelin Heartbreaker / Living Loving Maid (She's Just a Woman)
https://www.youtube.com/watch?v=nwmCOSYU…
Deep Purple, Woman From Tokyo
https://www.youtube.com/watch?v=b-ScDz4V…
Demana, Franklin D., 1938- Reading, Mass. : Addison-Wesley, 1992. 2nd ed.
Deals with HP-48, should be RPL ( Reverse Polish Language )
Learn you a Haskell for great good! : a beginner's guide / by Miran Lipovača
Lipovača, Miran. San Francisco, CA : No Starch Press, 2012.
people starting to use Haskell, even though already been out there for over 20 years.
C++ without fear : a beginner's guide that makes you feel smart / Brian Overland
Overland, Brian, 1958- http://id.loc.gov/authorities/names/n940… author. Boston : Prentice Hall, 2016. Third edition.
SJG
Web Database Applications with PHP & MySQL
by Hugh E. Williams and David Lane
Kind of an overview book, much more to be said about both softwares.
But they talk about a 3 tier model for a web database application.
Top Tier, the Client Tier. has the Internet
Middle Tier, Scripting Engine, Scripts, Web Server ( like PHP and Apache )
Bottom Tier, Database Tier, Database Management System, they mean client server model. MySQL is usually on a particular port.
Many things work like this. Probably most of the first decade of Internet popularization. I believe TUSCL works like this.
Not clear though that this is the best way to do everything. So much to learn.
SJG
Web Database Applications with PHP & MySQL
by Hugh E. Williams and David Lane
2002
So there is a 'mysql>' command line prompt. And to get it running you call it at what looks like a Unix shell command line prompt. You can also give a password, I guess to mysql, not to the Unix system.
So you can give commands, which include the running of scripts. You can type 'edit' which will start the designated text editor, and then run things directly from this. So I am sure you can use all of this to generate reports, and these could be included into other HTML files, or prepared with enough HTLM to make them show the way you want.
Now this book might only talk about this kind of stuff, as it a web applications book.
But you should also be able to get data in and out of MySQL from inside of a complied C/C++ program, without ever going to text. And same for this new statistical language 'R'. Must be some way. We had this for RBASE a long time ago.
Want this for MySQL, PostgreSQL, and this MongoDB.
They say that SQLite works as a run time library you link into C. Really need both ways, text commands and files, and direct access.
Want Dynamic Linking, Client-Sever Multi-Taksing, interprocess communications, and support for parallel processor machines.
Lots of stuff, lots to learn. With the old books my comprehension level is 100.0%. With the newer books, not necessarily so yet.
SJG
Volkswagen history
https://www.youtube.com/watch?v=Is1TXAcC…
https://www.youtube.com/watch?v=DNnV3Jb3…
Robin Trower
https://www.youtube.com/watch?v=ZmoMb0gN…
TJ
https://c2.staticflickr.com/8/7290/96201…
http://www.adelitasbartijuanamexico.com/…
http://www.adelitasbartijuanamexico.com/…
http://farm4.static.flickr.com/3680/9633…
Special Report: In the Streets with the New Poor People’s Campaign Against Racism and Poverty
https://www.democracynow.org/2018/6/13/s…
Web Database Applications with PHP & MySQL
by Hugh E. Williams and David Lane
2002
So reading about MYSQL. Inserting, Updating, and Deleting data.
This is fine, but it is still through text strings. Need to also have ways to go directly from internal variables in complied C programs. I believe this exists. We had it for RBASE. But also use of this 'R' statistical language needs this.
SJG
TJ Street
https://farm6.staticflickr.com/5449/9632…
MAKEUP THERAPY! RED FOR MY LITTLE BROTHER
https://www.youtube.com/watch?v=5aY4VuFX…
http://uncyclopedia.wikia.com/wiki/Pytho…
Open Source and Interpretive. Sounds very good, but so much to learn, especially about how it can connect to databases, and also R and Ruby.
https://en.wikipedia.org/wiki/Python_(pr…
SJG
Tubbs has written other books, but mostly they are not in libraries. Of note he has written about Mathcad.
MatLab means Matrix Lab. And they also have Simulink
Tubbs has also written about Mathematica and about Maple, owned by Maplesoft inc.
There also used to be something connected with the above, Analogy, a very versatile simulation platform.
https://github.com/Tijl/ANASIME
Not sure if above connects to the original. But below, Saber was the name of their input language
https://www.embedded.com/print/4036892
So bought by Avanti, then by Synopsys.
https://en.wikipedia.org/wiki/Saber_(sof…
Anyway, about MATLAB, very widely used, but expensive. Most of the kinds of problems it will deal with involve complex numbers, polynomial functions and root finding, and then rational polynomial functions, and then these made into matrices. Going beyond that is more ladder matrix simulation, then arbitrary circuit meshes and matrix inversion, and then things which completely resist analytic solutions and must be solved numerically.
Followed MATLAB indirectly for decades, goes back to the late 1970's. As I see it now, huge room for improvement!
Used to also be something from Germany, D-Space.
Here, and yes, always close to the automotive industry
https://www.dspace.com/en/inc/home.cfm
https://en.wikipedia.org/wiki/DSpace
SJG
Erik Satie - 6 Gnossiennes, for Piano (Full)
https://www.youtube.com/watch?v=SO7dnxKc…
Pink Floyd, Compilation
https://www.youtube.com/watch?v=xP8XzjUy…
HK Bar, Fat Girl On Stage. I like her. TLN material
https://www.youtube.com/watch?v=Ea3_CMDa…
https://www.youtube.com/watch?v=7AOrtMIK…
https://www.youtube.com/watch?v=gGdaWjCN…
https://www.youtube.com/watch?v=XARgc5Um…
TJ Chicago Club
https://www.youtube.com/watch?v=BuUSPcmq…
Street
https://www.youtube.com/watch?v=3s-tq4lW…
https://www.youtube.com/watch?v=l5q920a3…
https://www.youtube.com/watch?v=Jj0yKwFl…
https://www.youtube.com/watch?v=MyJuyhdt…
Pattaya After Midnight - RAW and UNFILTERED
https://www.youtube.com/watch?v=DAcKoHpT…
Lot Lizards, Ontario CA, way above average, in high heels and short skirts
https://www.youtube.com/watch?v=1M2NCpgE…
Sexcraft Magic
http://www.pwpwpoker.com/news/game-tips/…
Why Monogamy Is Ridiculous
https://www.youtube.com/watch?v=w8SOQEit…
7-meter-long python swallows Indonesian woman
http://start.att.net/news/read/article/t…
The School of Niklaus Wirth: The Art of Simplicity
https://www.amazon.com/School-Niklaus-Wi…
Especially the discussion of Oberon, The Overlooked Jewel.
https://www.amazon.com/School-Niklaus-Wi…
Book is not however in libraries.
SJG
TJ HK girl
http://hktijuana.com/assets/img/gallery/…
Robin Trower live
https://www.youtube.com/watch?v=ZmoMb0gN…
Object-oriented databases / J.G. Hughes. (1991)
SJG
HK Bar Sweetie. She has what many girls lack, enough ass. And she knows that besides for the bed, high heels are also for the shower. As @n0tmyf1r5t explained, the shower is the place for anal.
http://hktijuana.com/assets/img/gallery/…
http://hktijuana.com/assets/img/gallery/…
Another HK Bar Sweetie
http://hktijuana.com/assets/img/gallery/…
http://hktijuana.com/assets/img/gallery/…
Lot Lizards
https://www.youtube.com/watch?v=1M2NCpgE…
https://www.youtube.com/watch?v=kWXdnzLQ…
https://www.youtube.com/watch?v=_Nlc6qNH…
TJ Street
https://c2.staticflickr.com/8/7290/96201…
Lingerie
https://www.aliexpress.com/item/2014-New…
https://www.wickedweasel.com/en-us
http://g01.a.alicdn.com/kf/HTB1TB0hIXXXX…
Rev. William Barber: U.S. Policies on Healthcare, Poverty Are Immoral & a Threat to Democracy
https://www.democracynow.org/2018/6/15/r…
Jet Strip Cabaret, Lennox CA, pricey
http://jetstrip.com/dance-specials/
Erwin Kreyzig
https://www-elec.inaoep.mx/~jmram/Kreyzi…
Analogy Simulation Environment in Python
https://github.com/Tijl/ANASIME
Analogy delivers simulator, redefines strategy
https://www.embedded.com/print/4036892
https://en.wikipedia.org/wiki/Saber_(sof…
DSPACE
https://www.dspace.com/en/inc/home.cfm
https://en.wikipedia.org/wiki/DSpace
Busy boxes really, so they can hire college grads who know nothing, and regulate them with a division of labor.
Stupid.
I've known this about the Engineering College Degree Jobs for decades. But as little as a decade ago I would not have extended this to those commercial applications.
So much more they could do, and so much more open they could be!
SJG
Web Database Applications with PHP & MySQL
by Hugh E. Williams and David Lane
2002
What it talks about is always communications going into and out of the MySQL database via a client server port. And that means always in text.
That maybe okay just for serving up web pages. But for other stuff, no good.
So now reading some of:
MySQL and mSQL / Randy Jay Yarger, George Reese and Tim King (1999)
This does get into some comparative database stuff, and how one gets data in and out via different language programs.
With C we used to have complete access of all types to RBASE via a runtime library you linked to. Other than Dynamic Linking or Process to Process Communications, hard to see any other workable way to do it.
Still, so much to learn, and now these NoSQL databases.
SJG
If you run an electricity utility, you wouldn't want Microsoft Windows in your control console.
Telephone or Internet Utility, Manufacturing Processes, Automatic Test Systems, or any critical processes, you do not want Microsoft Windows.
So what sort of a control panel do you want? Lets see what we can find.
https://www.nxp.com/docs/en/user-guide/F…
http://www.virtualsim.com/portfolio_item…
http://www.virtualsim.com/
How about Linux / Unix stuff, like Monta Vista
https://www.mvista.com/
https://www.mvista.com/market-IoT.php
MontaVista Software, LLC
2315 North 1st Street
San Jose, CA, 95131
https://www.mvista.com/product-devrocket…
How about Space X, what does Musk use for their launch monitoring stations?
https://space.stackexchange.com/question…
to be continued
SJG
"
The Ground Software team is about 9 people. We primarily code in LabVIEW. We develop the GUIs used in Mission and Launch control, for engineers and operators to monitor vehicle telemetry and command the rocket, spacecraft, and pad support equipment. We are pushing high bandwidth data around a highly distributed system and implementing complex user interfaces with strict requirements to ensure operators can control and evaluate spacecraft in a timely manner.
"
SJG
https://en.wikipedia.org/wiki/MontaVista
https://en.wikipedia.org/wiki/Eclipse_(s…
https://en.wikipedia.org/wiki/Wind_River…
https://en.wikipedia.org/wiki/VxWorks
https://en.wikipedia.org/wiki/PSOS_(real…
https://en.wikipedia.org/wiki/Carrier_Gr…
https://en.wikipedia.org/wiki/Linux_Foun…
https://wiki.linuxfoundation.org/cgl/sta…
https://en.wikipedia.org/wiki/Cavium
https://en.wikipedia.org/wiki/MontaVista…
https://en.wikipedia.org/wiki/Robert_Lov…
https://web.archive.org/web/200705191924…
https://en.wikipedia.org/wiki/POSIX
https://en.wikipedia.org/wiki/List_of_fi…
https://en.wikipedia.org/wiki/Green_Hill…
SJG
http://briefeditor.com/
I think the brief text editor is a model to follow for critical process control panels. It does not have overlapping windows or scroll bars, and it uses the computer's character generator, not writing to the bit map. I call this tiles, instead of windows. So even with very limited computing speed, the brief editor was blistering fast.
For critical process control operations, fixed configuration machines, you want the screen layout be fixed. A basic layout, and then a limited number of alterations to that. But that is it. The operator cannot make other changes. You want problems to be immediately visible, without making screen changes.
Does anyone offer this? Does it run on top of Linux, or could it be something even leaner?
SJG
http://www.texteditors.org/cgi-bin/wiki.…
SJG
san_jose_guy - commonly referred to as SJG this member is widely mocked and considered at best a nuisance or at worst mentally unstable, his comments should NOT be taken in any way as legitimate
Discovering calculus with the HP-28 and the HP-48 / Robert T. Smith, Roland B. Minton (1992)
HP-65, 67, and 41's used RPN, Reverse Polish Notation. These did not have alpha numeric variables. HP-41's had alpha numeric prompts, but not varialbles.
HP-48 changed this. Need to learn and understand the concepts which were underlying. Reverse Polish Language.
SJG
https://www.amazon.com/Python-Power-Comp…
I have to say that my initial reaction is rather negative. I am very happy with compiled languages, like C/C++. I know that computers are much faster now, so that interpretive is not always that slow anymore. But there are other problems. It encourages casual tinkering.
So the only reason I can see for using it is if you want to distribute something where users are supposed to alter it, make their own version, okay. But the interpretive language portion should be short, simple easily inspectable.
But loosely typed, variables not predeclared, indentation part of the logical structure? It it is not actually ambiguous, I bet a lot of time is spent making sure. Would you want to fly in an airplane which is run on Python?
But I still have more to learn. Compared with PHP and Perl, is it better for client side web page scripting?
I see some other potentials though. Open source, interpreter written in C, and not that big.
What this means is that you could make the Python interpreter the core of a large and complex C++ application, where the way you interface with it is via python scripts. And when you start some types of things, the C++ actually spits out the Python code where the variables are established and it lets you look at it. And of course these are duals, Python and C, variables. So then you supply what you want via Python. Will their IDLE Integrated Environment text editor work well with this, and using its immediate mode?
Much still to learn. What are the new compiled languages, how do they work, and then how about functional programming languages?
And then, they say Python is drawing some from Haskel. As I know Haskel is not a bit old, but it is starting to gain some following, because it is considered a functional language.
Need to see how it gets stuff in and out of SQL databases, and with the new NoSQL databases like MongoDB, and see how it handles enumerated variables in IDLE.
Much to learn for me to provide good Over Watch.
SJG
But it sounds like Python works fine outside of it. On windows the interpreter is 'python.exe'. Just add the file name '.py', and it goes.
But I still balk at the idea of using indentation as part of the structure.
For me, the only real reason for it would be that you get the interpreter, modest in size, and written in C. Then you could build an application around it, and the user communicates by making their own Python code.
Need to read more though, and as it stands now I am more interested in newer and Functional Languages, as opposed to the older Procedural Language types like Python is.
SJG
Essentials of Practical Alchemy
https://www.youtube.com/watch?v=ux9idXWL…
I am not enamored with it. But I still want to know how it gets stuff in and out of databases, MySQL, PostgreSQL, and MongoDB.
And then what is really interesting is just the idea of having the C language source code to its interpreter and the prospects of building applications and environments around that.
Interested in the still newer langauges:
Functional Programming: A Pragpub Anthology: Exploring Clojure, Elixir, Haskell, Scala, and Swift (2018)
Node.js, MongoDB and AngularJS web development / Brad Dayley (2014)
Data science fundamentals for Python and MongoDB / David Paper (2018)
Getting MEAN With Mongo, Express, Angular, and Node / Simon Holmes (2015)
So I had read some about LISP and plan to read more. Then that leads to Object Lisp, and I guess CLOS, and I guess that goes into Clojure, which has some large current popularity. So LISP was originally complied, as the military wanted that, like with Fortran and Cobol.
Clojure
It runs on the Java virtual machine and the Common Language Runtime.[9] There is a dialect, developed in lockstep with Clojure, called ClojureScript,[10] that compiles to ECMAScript 3.[
So it uses the Java Virtual Machine, and there is also a companion, ClojureScript. Mostly a functional language.
So I guess like Java, you could say it is partially, but not fully complied.
Clojure is free software released under the Eclipse Public License
Rich Hickey is the creator of the Clojure language.
Rich Hickey developed Clojure because he wanted a modern Lisp for functional programming, symbiotic with the established Java platform, and designed for concurrency.
https://en.wikipedia.org/wiki/Clojure
https://clojure.org/
https://clojure.org/guides/getting_start…
I have much to learn!
How about Elixir?
Elixir is a functional, concurrent, general-purpose programming language that runs on the Erlang virtual machine (BEAM).[3] Elixir builds on top of Erlang and shares the same abstractions for building distributed, fault-tolerant applications. Elixir also provides a productive tooling and an extensible design. The latter is supported by compile-time metaprogramming with macros and polymorphism via protocols
José Valim is the creator of the Elixir programming language, an R&D project of Plataformatec
https://en.wikipedia.org/wiki/Elixir_(pr…
https://elixir-lang.org/
How about Haskell ?
Strong typing and purely functional ( as opposed to procedural )
https://en.wikipedia.org/wiki/Haskell_%2…
Its main implementation is the Glasgow Haskell Compiler.
https://en.wikipedia.org/wiki/Glasgow_Ha…
and the compiler is written in Haskell.
but the runtime system for Haskell, essential to run programs, is written in C and C++.
How about Scala ?
complies to Java Byte Code, supports functional programming, uses C style curly braces ( GOOD ), string typing, object oriented.
The design of Scala started in 2001 at the École Polytechnique Fédérale de Lausanne (EPFL) (in Lausanne, Switzerland) by Martin Odersky.
Released under BSD license.
Functional Tendencies
https://en.wikipedia.org/wiki/Scala_(pro…
Official Site
Documentation
https://docs.scala-lang.org/?_ga=2.21790…
https://en.wikipedia.org/wiki/Scala_(pro…
How about Swift ?
https://en.wikipedia.org/wiki/Swift_(pro…
Compiled language, developed by Apple.
How about R ?
R is GNU Free, and the environment is written in C, Fortran, and R. ( need to have a Fortran compiler to change it and compile it. R itself must be interpretive ) For statistics and Math.
https://en.wikipedia.org/wiki/R_(program…
While R has a command line interface, there are several graphical front-ends, most notably RStudio and RStudio Server, which are the only GUIs developed by the R Foundation.[13] Integrated development environments are available.[
I love compiled langauges. But you also need command line ones, for the input to your own app.
object oriented, functional and procedural, and reflective (?).
Can write C and C++ to link directly, and Fortran ( but how does this actually work, Dynamic Linking? )
And also linkage to Python ( how does this work? )
R is an interpreted language; users typically access it through a command-line interpreter. If a user types 2+2 at the R command prompt and presses enter, the computer replies with 4, as shown below:
> 2 + 2
[1] 4
mentions languages 'F#' and 'Julia'.
Official Site
https://www.r-project.org/
Comparison of Numerical Analysis Software ( Includes LabView, expensive! )
https://en.wikipedia.org/wiki/Comparison…
Comparison of Statistical Packages
https://en.wikipedia.org/wiki/Comparison…
Comparison of Languages:
https://en.wikipedia.org/wiki/Comparison…
Well, if R has a connection to Fortran, that is a reason to stay current and equipped for Fortran.
How about Forth?
https://en.wikipedia.org/wiki/Forth_(pro…
Stack based, free version Gforth.
Forth is an imperative stack-based computer programming language and environment originally designed by Charles "Chuck" Moore. Language features include structured programming, reflection (the ability to modify the program structure during program execution), concatenative programming (functions are composed with juxtaposition) and extensibility (the programmer can create new commands).
Compiled language
Forth relies heavily on explicit use of a data stack and reverse Polish notation (RPN or postfix notation), commonly used in calculators from Hewlett-Packard. In RPN, the operator is placed after its operands, as opposed to the more common infix notation where the operator is placed between its operands. Postfix notation makes the language easier to parse and extend; Forth's flexibility makes a static BNF grammar inappropriate, and it does not have a monolithic compiler. Extending the compiler only requires writing a new word, instead of modifying a grammar and changing the underlying implementation.
Popular in the 1980's ( has something taken its place today? )
The compiler itself is not a monolithic program. It consists of Forth words visible to the system, and usable by a programmer. This allows a programmer to change the compiler's words for special purposes.
pForth, portable Forth written in C
https://en.wikipedia.org/wiki/Pforth
fully open source and written in C.
pForth official, dedicated to the public, free, open source
http://www.softsynth.com/pforth/index.ph…
reference manual online
http://www.softsynth.com/pforth/pf_ref.p…
says it is an interactive language ( and written in C and for controlling telescopes )
!!!!!!! RPN !!!!!!
Use C compiler!
WOW!
I am interested in languages old and new because I want to understand the underlying ideas. The ideas themselves are never dead.
How about Ruby?
Ruby is a dynamic, interpreted, reflective, object-oriented, general-purpose programming language. It was designed and developed in the mid-1990s by Yukihiro "Matz" Matsumoto in Japan.
Functional and Object Oriented.
https://en.wikipedia.org/wiki/Ruby_(prog…
I was talking with my colleague about the possibility of an object-oriented scripting language. I knew Perl (Perl4, not Perl5), but I didn't like it really, because it had the smell of a toy language (it still has). The object-oriented language seemed very promising. I knew Python then. But I didn't like it, because I didn't think it was a true object-oriented language — OO features appeared to be add-on to the language. As a language maniac and OO fan for 15 years, I really wanted a genuine object-oriented, easy-to-use scripting language. I looked for but couldn't find one. So I decided to make it.
Ruby is also completely free. Not only free of charge, but also free to use, copy, modify, and distribute.
Seeing Everything as an Object
Initially, Matz looked at other languages to find an ideal syntax. Recalling his search, he said, “I wanted a scripting language that was more powerful than Perl, and more object-oriented than Python.”
Official Site
https://www.ruby-lang.org/en/
IMPRESSIVE!
Ruby Compiler written in straight C, and Ruby makes little or no use of operating system calls. Very portable!
SJG
For myself, never really went along with the Java idea of compiling only to a virtual machine. You could say it is best of complied and interpretive, but you could also say it is the worst.
I admit though that I have much more to learn.
Reading about the languages, old and new, is the only way.
SJG
SJG
Interpretive languages though, these serve a different sort of purpose.
SJG
Starting FORTH : an introduction to the FORTH language and operating system for beginners and professionals / Leo Brodie and Forth, Inc. ; with a foreword by Charles H. Moore
FORTH : the fourth-generation language / Steve Burnap. (1986)
Some R books
The book of R : a first course in programming and statistics / by Tilman M. Davies. ( 2016, real fat book )
Some Ruby Books
Computer science programming basics with Ruby / Ophir Frieder, Gideon Frieder, and David Grossman. (2013)
SJG
Need to learn much more to really do it. But if you have pForth, portable version, interpreter written in C, anything it does not already do, you just add that to it. And of course i really love the postfix - RPN - stack approach.
Complies with the 1983 Forth standard.
SJG
Beginning Ruby : From Novice To Professional (2016)
SJG
connects to Ruby, and maybe to Elixir
curious.
How about the language RUST ?
Rust is a systems programming language[11] sponsored by Mozilla[12] which describes it as a "safe, concurrent, practical language,"[13] supporting functional and imperative-procedural paradigms. Rust is syntactically similar to C++, but its designers intend it to provide better memory safety while still maintaining performance.
https://www.rust-lang.org/en-US/
Rust is intended to be a language for highly concurrent and highly safe systems,[19] and "programming in the large", that is, creating and maintaining boundaries that preserve large-system integrity.[20] This has led to a feature set with an emphasis on safety, control of memory layout, and concurrency. Performance of idiomatic Rust is comparable to the performance of idiomatic C++.
The Rust compiler is written in Rust.
Like C++, but better? Hard to beat that!
SJG
Rust Programming Language , Rust Programming Language Klabnik, Steve/ Nichols, Carol , 2018.
I would suggest the interested to first thoroughly study C and C++, in order to better understand the differences!
SJG
I still do not know how this stuff gets data in an out of the various databases. I see that as very important. Extra packages you are supposed to link to when you compile and like the interpreter? Need to modulate some compiler switches? Need both C and Fortran compilers?
SJG
Principles of Information Systems
by Ralph Stair and George Reynolds, 10th edition, 2012
so so, lots of stuff about new economy big business.
Essentials of Management Information Systems, by Kenneth C. Laudon and Jane P. Laudon, 5th edition, Prentice Hall, 2003.
Similar to above book. Talks also about Total Quality Management
SJG
Mark Passio on the Chaos Sorcery of 9/11 - Kabbalah, Tarot & Freemasonry - Symbolism and Numerology
https://www.youtube.com/watch?v=tXOJHZho…
Tiphareth (Tree of Life / Sephira)
http://www.wisdomsdoor.com/tol/tiphareth…
Steely Dan, 2000
https://www.youtube.com/watch?v=wZA62ZmZ…
Daily Digit: Teens don't think Facebook is cool anymore
https://www.yahoo.com/news/daily-digit-t…
I have always disliked Facebook. There have actually been lots of things like it before. Myspace was okay.
Tens of Thousands of Protesters to Welcome Trump with Orange Baby Blimp for His First U.K. Visit
https://www.democracynow.org/2018/7/12/t…
also
MIS5 : Management Information System
Bidgoli, Hossein, author
https://www.amazon.com/exec/obidos/tg/de…
Looks similar, but maybe better
Also available:
Applying manufacturing execution systems / Michael McClellan (1997)
then:
Automation, production systems, and computer-integrated manufacturing / Mikell P. Groover, professor emeritus of Industrial and Systems Engineering, Lehigh University (2015), but not available.
The fundamentals of production planning and control / Stephen N. Chapman (2006)
Direct-write technologies for rapid prototyping applications : sensors, electronics, and integrated power sources / [editors] Alberto Piqué, Douglas B. Chrisey (2002)
Automation, production systems and computer-integrated manufacturing / Mikell P. Groover (2001)
SJG
Mark Passio on the Chaos Sorcery of 9/11 - Kabbalah, Tarot & Freemasonry - Symbolism and Numerology
https://www.youtube.com/watch?v=tXOJHZho…
Tiphareth (Tree of Life / Sephira)
http://www.wisdomsdoor.com/tol/tiphareth…
Steely Dan, 2000
https://www.youtube.com/watch?v=wZA62ZmZ…
Daily Digit: Teens don't think Facebook is cool anymore
https://www.yahoo.com/news/daily-digit-t…
I have always disliked Facebook. There have actually been lots of things like it before. Myspace was okay.
Tens of Thousands of Protesters to Welcome Trump with Orange Baby Blimp for His First U.K. Visit
https://www.democracynow.org/2018/7/12/t…
Finishing up with Python Power, by Matt Telles
Gives good examples of how to do things. But if you want to do complex things, or need more understanding for strategy, you need much more than this.
Shows how to use their GUI, TkInter.
Then it comes to databases, MySQL.
Shows how to set it all up, using the SQL admin tools. Then to get to it from Python you need to import MYSQLdb.
They say it is all "socket-based". I gather that you are using the client server features of the os, on your "localhost".
BUt to me, I know that this cannot be the fastest way. SQLite has you link right in to its run time library. Lighter weight data base, but it runs faster.
With socketed approach, still cannot tell if it passes number by the internal format, and if it does a good job with enumerated variables, important in databases.
They pass a year, but it is text, not a number.
Probably R and Ruby do it all the same. And pForth could easily be made to do it the same.
But so much more to learn.
SJG
like the above books, I think like all stuff intended for business students, mostly buzz words, quite vacuous really.
But I guess I picked up the book because that is what I want.
pg 224,
"An enterprise system is an application that is used in all the functions of a business and supports decision making throughout the organization. For example, an enterprise resource planning system is used to coordinate operations, resources, and decision making among manufacturing, production, marketing, and human resources. As you have learned in previous chapters, intranets and Web portals are used by many organizations to improve communications among departments as well as to increase overall efficiency. Enterprise systems are another way to make important information readily available to decision makers throughout an organization.
SCM, supply chain management
CRM, customer relationship management
ERP , Enterprise resource planning
I guess ERP is supposed to cover everything, current buzz word. But some are talking about ERP 2. Don't know what that means.
Of course this is all important, but I am more interested in R and D and Manufacturing. Not much talk about such in these books.
So now in hand,
Automation, Production Systems, and Computer-Integrated Manufacturing, by Mikell P. Groover, second edition 2001. Groover has written lots of books.
does deal with statistical process control.
MRP Material Requirement Planning
MRP II Manufacturing Resource Planning
talks about ISO 9000
book is worth spending more time with. Not totally focused on computerized Manufacturing Execution Systems though. Lots of stuff.
Groover writes about stuff dealing with robotics in manufacturng. Clearly automatic test systems and computer run process machines fit in to this, allowing direct computer control.
Some people actually model manufacturing operations, like for example semiconductor fab. They they use that in the negotiations. In my view this is a very high power negotiating tactic and it can be extremely divisive. Designed to turn people on their end against each other. Results mixed at best.
My experience though is that in most manufacturing operations, things are very little like what it says in this book. Just way too many problems, and so much of it comes down to the people.
Talk about quality assurance issues:
Place I worked for and learned much had hired a consultant. He taught classes, he was really good. He explained much about how to avoid creating people problems and informal work around paths when you are introducing changes. As I could see, what he taught was real good.
This book is good, good to read more like it, newer ones.
So much of US business today is just bullshit.
SJG
They talk about importing extra modules. Thing is, with an interpreted langauge, it is already sandboxed. There is not way it can get to anything which is not already provided for in the interpreter.
http://www.pythonware.com/
maybe out of date?
In the book they talk about using 'import' for MySQLdb, cgi, cyc, cgitb, os, Cookie.
I look at this:
http://effbot.org/librarybook/
Over 200 modules
Talks about OS stuff, must be provided for in the C-language interpreter
http://effbot.org/librarybook/core-modul…
using XML format files, can be good
http://effbot.org/librarybook/file-forma…
for databases. I believe people use Python with MongoDB
http://effbot.org/librarybook/data-stora…
anyway, short of checking the source code for the intepreter, let me point out another books which looks promising:
this is not what I meant:
Learning path : get started with natural language processing using Python, Spark, and Scala / O'Reilly Media, Inc. (2017)
Python programming on Win32 / Mark Hammond and Andy Robinson (2000)
Actually there are lots and lots of books.
https://www.amazon.com/Python-Programmin…
SJG
http://www.softsynth.com/pforth/
And then lots of books available, though just up through the early 80's
location of these SoftSynth people
Mobileer Inc
235 Camellia Circle
Larkspur, CA
94939 USA
pForth source
https://github.com/philburk/pforth
Forth documentation project
http://bigforth.sourceforge.net/bigforth…
Seems to be a Forth documentation pdf
http://bigforth.sourceforge.net/bigforth…
also look at this:
https://www.amazon.com/dp/B075879N76?aax…
Functional programming : a PragPub anthology : exploring Clojure, Elixir, Haskell, Scala, and Swift / Michael Swaine and the PragPub writers. (2017)
And what is the Eiffel programming language?
https://en.wikipedia.org/wiki/Eiffel_(pr…
Uses definite object oriented constructs which found their way later into Java and C#
https://www.eiffel.org/
And how about 'F#' ?
can be open source, but also tied to Microsoft
https://en.wikipedia.org/wiki/F_Sharp_(p…
SJG
https://www.amazon.com/Python-Programmin…
page 471 of the book says that a Sam Rushing has written an extension which allows Python to call any DLL.
As I understand this then that means that Rushing has extended the C language source code for the Python Interpreter, so it can access Windows DLL's. You would juat about to do this to connect with things not allowed for in the Python Interpreter, the sand box.
http://www.nightmare.com/
https://www.python.org/
http://www.nightmare.com/software.html
This O'Reilly book is much better than the other Python book I had. Really gives good hard info.
Excel sounds very complex. But there is a Visual Basic way to connect to it. There is now also such for Python. Spread sheets have lots and lots of legitimate uses. Under appreciated, in my opinion.
So Python allows integration with Excel. Why would you want to use a hand held calculator, when the desktop computer gets you Excel, and your math stuff could then become a part of that.
Python has lots of stuff about Data Bases, not sure how all of it works.
By now this is a very old book. But it is still very complex.
Really need to inspect the interpreter source code to know how this all works.
The additions for this language was huge, even back in year 2000. Complex because it all has to somehow go thru the Interpreter, or a Client-Server socket, or something.
page 6, says Windows uses DLLs ( Dynamic Link Libraries ) extensively, and that the API is all DLLs. Python written in ANSI C, and most of its functionally is in a DLL. So other programs can import Python at run time and start using it to evaluate expressions.
( So much better than that other book I was reading. O'Reilly books are always good. )
So they say that Python extensions ( presumably offered to the interpreter though DLL ) can be written in C, C++, or Delphi. Chapter 22 shows how this works.
COM = Component Object Model, Microsoft's newest integration technology, and it pervades Windows 95, 98, NT, and 2000.
DLL lets you call functions someone else has written. COM lets you talk to objects someone else has written. They don't even need to be on the same computer.
COM is easier to use than making windows API calls directly from C.
And you can fully integrate with Excel.
Wow, so much better than that other book, and this does make Python sound much more attractive.
To Be Continued
SJG
Led Zeppelin, 1969
https://www.youtube.com/watch?v=k-WSbMW7…
Why would anyone want an HP-48, 49, 50 when you could do things with that.
For long, I have been using spread sheets for things beyond just money versus time cases. Very pleased to see that Elon Musk does that to. When you understand the math, and the problem, you can do that.
Whereas the Silicon Chip industry uses commercial simulators as busy boxes, so they can hire people who know nothing.
The earlier Python books was not good for much, by comparison.
Now, the book I have is old. I cannot find a second edition. But there are zillions of other Python books. Here, just a few:
Advanced data analytics using Python : with machine learning, deep learning and NLP examples / Sayan Mukhopadhyay (2018)
The Beaglebone Black primer / Brian McLaughlin. (2016)
Beginning Django e-commerce / Jim McGaw (2009)
Data science fundamentals for Python and MongoDB / David Paper (2018)
MongoDB and Python / Niall O'Higgins. (2011 O'Reilly )
Remember, one of the things I started this thread with was saying that to have well expanded programs, for database use and more, you have to use dynamic linking. Well, Python is built entirely around dynamic linking.
SJG
Ada 95 : problem solving and program design / Michael B. Feldman, Elliot B. Koffman (1995)
Says it is much easier to use than Basic, Pascal, Fortran, or even Lisp.
Translates 'logical reasoning". Sounds like what today is being called a functional language.
Number crunching ( large and fast ) is not prolog's strong point. But it can do numbers.
"Towers of Hanoi" problem
I've got to learn much more broadly before I can dig in enough to render any opinion on this.
SJG
Remember Grady Booch etal and the Universal Modelling Langauge, UML, and Rational Software, well they were totally coming from an Ada background. Going through this book now constitutes my first exposure to Ada.
Is it like Pascal?
Is it less prone to result in serious errors, than say C/C++?
Book says it is strongly typed and was developed from Pascal.
https://www.theguardian.com/technology/2…
https://blog.beyondsoftware.com/failed-p…
I notice that that FreeRTOS, is written in C, not Ada. If you would not use Ada for that, then when?
Ada Rationale
https://en.wikipedia.org/wiki/Ada_%28pro…
https://web.archive.org/web/200702022052…
http://www.adaic.org/resources/add_conte…
http://www.adaic.org/resources/add_conte…
Analysable real-time systems : programmed in Ada / Alan Burns and Andy Wellings (2016)
Ada's legacy / Robin Hammerman, Andrew L. Russell. (2016)
Programming in Ada 2012 / John Barnes. (2014)
Concurrent and real-time programming in Ada 2005 / Alan Burns, Andy Wellings (2007)
Ada 95 : the Lovelace tutorial / David A. Wheeler (1997)
Ada95 for C and C++ programmers / Simon Johnston. (1997)
https://en.wikipedia.org/wiki/Ada_%28pro…
This book has a disk with the GNU Ada compiler.
Again, I need to learn much more before I can render any opinion on this.
SJG
Says Forth cuts time by a factor of 10 compared with Assembly language, and by a factor of 2 compared to other high level languages. Forth is also considered a kind of operating system.
https://en.wikipedia.org/wiki/Forth_(pro…
Forth Group:
comp.lang.forth
pForth, portable Forth written in C
Gforth, a portable ANS Forth implementation from the GNU Project
Yes, forth does look real interesing. Don't know if anyone still uses it. Don't know if it makes sense to still use it, and especially in light of all the new languages. Definitely want to know more about it and about the underlying ideas.
***********************************************************************
Beginning Ruby : from novice to professional / Peter Cooper (2016)
Basic statistics : an introduction with R / Tenko Raykov, and George A. Marcoulides (2013)
The book of R : a first course in programming and statistics / by Tilman M. Davies (2016)
Books about SmallTalk are available, but there are far less of them.
Object-oriented programming with smalltalk/V / Michele Marchesi ; translated by Nicoletta McGowan ; technical editing by Mario Wolczko (1994)
Referencing for origins of Ada:
Ichbiah, J. et al [1979] Rationale for the Design of the Programming Language Ada, ACM SIGPLAN Notices 14, N0. 6.
https://www.amazon.com/Rationale-Design-…
Rationale for the design of the Ada programming language / J. Ichbiah [and others]. (1991)
Ada
https://en.wikipedia.org/wiki/Ada_(progr…
Jean David Ichbiah
https://it.wikipedia.org/wiki/Jean_Ichbi…
Time Line Of Computer Languages, most interesting
https://en.wikipedia.org/wiki/Timeline_o…
So this kind of a 1991 book is not going to talk about these new NoSQL databases like MongoDB.
But it does give one a sense of the sorts of situations when you would find a Relational Database to be inadequate.
Now every few years, new acronyms are introduced. They talk about Computer Aided Design, Computer Integrated Manufacturing, and Computer Aided Software Engineering.
As I see it, the idea is the same as what is behind the drive to object oriented languages, the encapsulation of variables, and these 'methods'.
So to me, you would want it for these Manufacturing Execution Systems, and for these Enterprise Resource Planning Systems. And I know there are more things where databases could be better used.
But the object oriented database idea has been around now for a long time. Some had talked about it as an idea which would best be abandoned. So this is why I am so interested in old books, to better understand how this all has unfolded.
Actually there are zillions of books about this subject, for a next one I consider:
C++ object databases : programming with the ODMG standard / David Jordan ; [foreword by Rick Cattell] (1998)
SJG
There actually have been lots of database attempts. One of the most interesting things was the integrated programming and operating system Oberon. Its programming language was mostly an extension of Pascal. But people did not use it much.
Seems like the thing most like it, which actually went even further, was SmallTalk. Though still, not sure how many people really used small talk. Also, not that many books about it on library shelves.
And then we had the language Eiffel.
So other books, before I get to the pure MongoDB books:
C++ object databases : programming with the ODMG standard / David Jordan ; [foreword by Rick Cattell] (1998)
Seven databases in seven weeks : a guide to modern databases and the NoSQL movement / Eric Redmond, Jim R. Wilson ; [edited by Jacquelyn Carter]. (2012)
Practical SQL : a beginner's guide to storytelling with data / by Anthony DeBarros. (2018) (SJ)
SJG
Jim Gaffigan Knows Why The Elderly Go To Church
https://www.youtube.com/watch?v=GUyGV4Lg…
A Little Smalltalk / Timothy Budd (1987)
The New Gilded Age
http://www.lawyersgunsmoneyblog.com/2018…
“Bring the War Home”: The Long History of White Power and Paramilitary Violence in the United States
https://www.democracynow.org/2018/7/24/b…
Body Count
https://www.youtube.com/watch?v=WbfyerV3…
A Little Smalltalk, by Tim Budd, 1987
So Budd has his own Little Smalltalk, an interpreter, written in C, runs on UNIX, and that is available from himself.
He traces it all to Simula.
Like Wirth's Oberon, this is interesting to read about. But not sure if I would ever want to try and use it. Seems like it is part of past history, and that there are indeed newer things which have tried to implement the same ideas.
SJG
Symbolic Dimensions of the Gnostic Mass
https://www.youtube.com/watch?v=ENpzzIVD…
So, finished up with this. There have actually been lots and lots of languages and databases. Seeing that an issue is just tying the database to the code which accesses it, there are lots of ways in which that can be done. I've spoke about a group I headed many years back. There are more sophisticated things we could have done with only the tools we had.
I note one thing, the Hughes text says that databases usually do not have an enumerated data type.
This caught me by surprise, not what I had remembered or thought. Enumerated variables, in say the C language, are very useful and much fun. Okay, but they only exist up until compile time. After that there is no way to get to their little string tokens. So then they have no use in a database. So what you end up using instead are little string tokens, commands, reserved words. And then you have to let your CPU go through the list. This is how you can get something like dynamic linking. And so if you want the database to drive the data access program, you use these reserved words, not enumerated variables.
So I still have so much to learn and so so many books to read.
SJG
"Knuth gave a lot of attention to the spacing rules for mathematical formulae."
https://en.wikipedia.org/wiki/TeX
https://www.democracynow.org/2018/7/25/h…
"
Back in the United States, Georgia Secretary of State Brian Kemp has won the Republican gubernatorial primary. Kemp, who’s backed by President Trump, will now face Democratic progressive Stacey Abrams, who is vying to be the first African-American governor in the Deep South since Reconstruction, in the November general election. And African-American activist Lucy McBath has won her congressional primary race to represent Atlanta’s northern suburbs. Her son, Jordan Davis, was shot and killed in 2012 by a white man who shot into the car of African-American teenagers because they were playing loud music. McBath ran on a platform of tighter gun control.
"
Trump’s War on the Environment, from Attacking California Fuel Standards to Destroying Public Lands
https://www.democracynow.org/2018/7/25/t…
san_jose_guy - commonly referred to as SJG this forum member is widely mocked and considered mentally unstable, his comments should NOT be taken in any way as legitimate
MATH Toolkit for Real-Time Programming, by Jack W. Crenshaw, CD-Rom included
SJG
also deals with C++ and also talks about older langauges and Ada.
Actually, going thru this, a very good book.
960 pages, thin paper.
https://www.amazon.com/C-How-Program-Pau…
$150 !!!
Over all, real good book, and C/C++ are awesome.
Here, want to look again at what it says about the older languages.
FORTRAN, still widely used in engineering applications.
Much business software still in COBOL.
Pascal lacked many things needed in commercial, industrial, and government applications. Not widely accepted outside of academia.
Ada developed under Dept. Defense sponsorship. Has multi-tasking capability. Not built into C, but available via add on libraries.
Doesn't say more.
SJG
Giordano Bruno: Magician & Gnostic Saint
https://www.youtube.com/watch?v=wEzNb1A1…
related extremely good book:
Hermetic Deleuze
https://www.amazon.com/Hermetic-Deleuze-…
san_jose_guy - commonly referred to as SJG this forum member is widely mocked and considered potentially mentally unstable, his comments should NOT be taken in any way as legitimate
https://www.amazon.com/Introducing-Erlan…
https://en.wikipedia.org/wiki/Erlang_(pr…
Dynamic Strong Typing
http://www.erlang.org/
Intended for soft real time systems, with high availability ( to me that sounds like MIS/ERP/MES )
can change code without stopping system
BEAM compiles Erlang to C ???
Coming from Ericsson.
Elixir also runs on BEAM??
Okay, looking more into this, Elixir goes further than Erlang, building on Erlang, and they both run on top of the BEAM virtual machine.
Oh well, read some, learn some, but not likely this is something I would want to be involved with. Too tied to specialized things. But still, I can learn by reading.
SJG
Bob Seger - Mainstreet , the Sunnyvale Hip Hugger was so much like this. So too was Sporty's Bar ( formerly Candid Club, formerly Richard's Lounge, didn't even have a stage back then ) I always listened to this song before I had ever been into any such places.
https://www.youtube.com/watch?v=IoVCxQtQ…
Maybe for running a huge data center, a web farm, you would want to do it by writting such software. But for me now that kind of stuff is way way out.
SJG
The Pragmatic Bookshelf (2015)
https://www.amazon.com/Seven-Databases-W…
Awesome book! And the publisher also looks extremely interesting, with their other offerings.
They also have:
Seven Languages In Seven Weeks
tmux, productive mouse-free development
Build Awesome Command-Line Applications in Ruby
So the databases they consider are
PostGRESQL, written in C,
Riak, written in Erlang
CouchDB written in Erlang
MongoDB, written in C++
Redis, written in C/C++
Neo4J and HBase written in Java
Tensor Flow, for Dummies
https://www.amazon.com/dp/1119466210?aax…
R Projects, for Dummies
https://www.amazon.com/dp/111944618X?aax…
SJG
3D Circuit Boards
https://www.printedelectronicsworld.com/…
Ron Dellums
https://www.democracynow.org/2018/7/31/r…
Tmux 2 : productive mouse-free development / Brian P. Hogan ; edited by Susannah Davidson Pfalzer. (2016)
Tmux
https://github.com/tmux/tmux/wiki
Unix and Linux keyboard shortcuts
https://unix.stackexchange.com/questions…
Seven languages in seven weeks : a pragmatic guide to learning programming languages / Bruce A. Tate. (2010)
Ruby -- Io -- Prolog -- Scala -- Erlang -- Clojure -- Haskell
Build awesome command-line applications in Ruby : control your computer, simplify your life / David Bryant Copeland. (2012)
SJG
So the authors got involved in databases years ago, frustrated that people seemed reluctant to move beyond MySQL.
For myself, not sure why people would want other than MySQL.
These authors see PostgreSQL as the first minor step beyond that. The FAA uses it.
They see it only as a relational database, they don't see it as an object-relational database, at least they do not talk about it that way.
They do talk about it having some Join command to join two tables together.
The other databases are much further out, getting driven by concerns about distributed failure tolerant computing.
This goes beyond anything I have experience with.
So Riak is written in Erlang, and it is tied to this need for non-stop fault tolerant always available databases.
SJG
Put Your Hand On The Television Screen, On Top Of Mine
https://www.youtube.com/watch?v=APem-XOA…
CRUD, useful mnemonic for remembering Create, Read, Update, Delete, basic database operations.
But Postgre has this unique thing 'Join", connects to tables together.
As I know, 'Project' is how you do this, and it is the slowest command available. Hope stuff is better today, and I have much to learn.
Old 1999 book I have at times found useful:
MySQL and mSQL / Randy Jay Yarger, George Reese and Tim King
https://www.postgresql.org/download/
https://www.allthingsdistributed.com/
Ideas coming from Amazon
https://www.allthingsdistributed.com/fil…
Get Riak here:
http://basho.com/
it is written in erlang, get that here:
https://www.erlang.org/
??????
and then Vector Clock ????
https://en.wikipedia.org/wiki/Vector_clo…
************************
And then this new HBase
2006 Google Paper
Has rows, but the columns are particular to that row, so it does not really have tables, more like data buckets.
Hbase is written in Java, and it is said to be a Columnar database.
Riak and Redis, are Key-value
MongoDB and CouchDB are document
Neo4j is Graph
MongoDB
https://www.mongodb.com/
in Palo Alto
JSON
http://json.org/
JSON and BSON
https://www.mongodb.com/json-and-bson
And also this connects with "Atlas" and with "Rails"
SJG
Way over my head, but it is starting to sink in. Starting to see why they want NoSQL Databases and how they might work.
They show lots of examples, always using Ruby (dot)RB. Not using Python. To me, this looks like a big improvement.
Programming Ruby (2001) Thomas and Hunt
https://www.amazon.com/Programming-Ruby-…
SJG
https://shop.bestreviews.com/products/15…
The ones I would likely use are MySQL, PostgresSQL, and MongoDB.
And these are all written in C/C++
Java, Erlang, Elixir, and Clojure all compile down to JVM code, so you need this Java Virtual Machine. Never really liked that idea in the first place. That alone does not make your executable's portable. Takes more than that. And besides, that promotes sloppy computer use, we want people having the source code.
I guess JVM should be considered part of the OS, but hever the less, I'll avoid it if I can.
PostgresSQL used to be the Berkeley Ingres. Then the free source movement took it over and changed the name. Usually seen as the next thing more sophisticated than MySQL. And it is very well proven. But it is a bit slower.
MongoDB, soring blobs . To me that means that it is like a database inside of a database, you need to sort through the blogs with your own code.
HBase is for huge data and vast numbers of CPU's. Riak is for when you need always availability, like to run the phone system.
SJG
https://www.amazon.com/gp/product/013429…
https://www.amazon.com/Python-Projects-L…
But also this is all part of a much broader reading agenda. Want more on Object Oriented Databases, old stuff
C++ object databases : programming with the ODMG standard / David Jordan ; [foreword by Rick Cattell] (1998)
And then with the old languages, I left off on LISP. Need to understand the old stuff to better understand the ideas which got us to where we are today.
A programmer's guide to COMMON LISP / Deborah G. Tatar (1987)
COMMON LISP : the language / Guy L. Steele, Jr. ; with contributions by Scott E. Fahlman ... [et al.] and with contributions to the 2nd ed. by Daniel G. Bobrow ... [et al.] (1990)
Object-oriented common LISP / Stephen Slade (1998)
AI and expert systems : a comprehensive guide, C language / Robert I. Levine, Diane E. Drang, Barry Edelson. (1990 )
Levine believes that Lisp and Prolog are hindrances to use of AI techniques.
Mastering C++ : an introduction to C++ and object-oriented programming for C and Pascal programmers / Cay S. Horstmann. ( 1991 )
Ben Ezzell, very smart guy writes very good books
The programming language LISP : its operation and applications / Edmund C. Berkeley and Daniel G. Bobrow (1964)
Programming in Common LISP / Rodney A. Brooks. (1985) Mr. Brooks is a famous man.
Lisp / Patrick Henry Winston, Berthold Klaus Paul Horn (1989)
The art of the metaobject protocol / Gregor Kiczales, Jim des Rivières, and Daniel G. Bobrow. (1991)
Paradigms of artificial intelligence programming : case studies in Common Lisp / Peter Norvig (1992)
Interpreting LISP : programming and data structures / Gary D. Knott (2017)
SJG
But this is the first time I have heard of Prolog being used for any serious application. So much I have to learn.
Seven languages in seven weeks : a pragmatic guide to learning programming languages / Bruce A. Tate. (2010)
Ruby -- Io -- Prolog -- Scala -- Erlang -- Clojure -- Haskell
PROLOG Programming, by Nigel Ford, 1989
SETL back to 1986, and SETL was influenced by Ada
Programming with sets : an introduction to SETL / J.T. Schwartz ... [et al.] (1986)
An introduction to language processing with Perl and Prolog : an outline of theories, implementation, and application with special consideration of English, French, and German / Pierre M. Nugues 2006
Programming in Prolog / W.F. Clocksin, C.S. Mellish 1981
Intelligent embedded systems / Louis L. Odette 1991, talks about C, prolog,and Forth
Pocket guide to FORTH / Linda Baker [and] Mitch Derick ( 1983 )
FORTH on the Atari : learning by using / E. Floegel ( 1983 )
SJG
In hand now:
https://www.amazon.com/Templars-Assassin…
OT: Who Performs A**a**inations?
https://www.tuscl.net/discussion.php?id=…
A customer grabbed this waitress’s backside, so she took him down
https://www.yahoo.com/lifestyle/customer…
Symbolic Dimensions of the Gnostic Mass
https://www.youtube.com/watch?v=ENpzzIVD…
Programming in Common LISP / Rodney A. Brooks. (1985) Mr. Brooks is a famous man.
Need to understand where the ideas started, functional programming, instead of procedural. And is there any reason to use LISP today, or even this Clojure?
Seven languages in seven weeks : a pragmatic guide to learning programming languages / Bruce A. Tate. (2010)
Ruby -- Io -- Prolog -- Scala -- Erlang -- Clojure -- Haskell
PROLOG Programming, by Nigel Ford, 1989
SETL back to 1986, and SETL was influenced by Ada
Programming with sets : an introduction to SETL / J.T. Schwartz ... [et al.] (1986)
An introduction to language processing with Perl and Prolog : an outline of theories, implementation, and application with special consideration of English, French, and German / Pierre M. Nugues 2006
Programming in Prolog / W.F. Clocksin, C.S. Mellish 1981
Intelligent embedded systems / Louis L. Odette 1991, talks about C, prolog,and Forth
AI and expert systems : a comprehensive guide, C language / Robert I. Levine, Diane E. Drang, Barry Edelson. (1990 )
Levine believes that Lisp and Prolog are hindrances to use of AI techniques.
Timeline of Programming Languages
https://en.wikipedia.org/wiki/Timeline_o…
Of particular interest here is SETL
So Python is in part influenced by SETL
And Prolog influenced Erlang
SJG
Programming in Common LISP / Rodney A. Brooks. (1985) Mr. Brooks is a famous man.
A programmer's guide to COMMON LISP / Deborah G. Tatar (1987)
COMMON LISP : the language / Guy L. Steele, Jr. ; with contributions by Scott E. Fahlman ... [et al.] and with contributions to the 2nd ed. by Daniel G. Bobrow ... [et al.] (1990)
Object-oriented common LISP / Stephen Slade (1998)
Lisp / Patrick Henry Winston, Berthold Klaus Paul Horn (1989)
The art of the metaobject protocol / Gregor Kiczales, Jim des Rivières, and Daniel G. Bobrow. (1991)
Paradigms of artificial intelligence programming : case studies in Common Lisp / Peter Norvig (1992)
Interpreting LISP : programming and data structures / Gary D. Knott (2017)
and then this CLOS:
CLOS, 1993 book
Object-oriented programming : the CLOS perspective / edited by Andreas Paepcke
And then Clojure.
Need to read tons of this stuff in order to have the perspective and quality of judgement which I need.
Functional programming : a PragPub anthology : exploring Clojure, Elixir, Haskell, Scala, and Swift / Michael Swaine and the PragPub writers. (2017)
SJG
HOW MAGICK WORKS: The Consciousness, Energy, & Spirit Models - Taliesin McKnight
https://www.youtube.com/watch?v=lCW6WC1P…
I'll read about LISP, old books first, then up through Object List and CLOS, and maybe Clojure.
Then SETL, just 1 book.
Skipping Simula for now.
Then Prolog.
The C, C++, Unix Stuff, and all sorts of new language stuff, like functional languages.
SJG
So will have soon:
Programming in Common LISP / Rodney A. Brooks. (1985) Mr. Brooks is a famous man.
So then see how much of the following I need to read. Want to really understand LISP and functional programming, and any interpretive versions which may have come along, and the object oriented versions, and finally about Clojure.
A programmer's guide to COMMON LISP / Deborah G. Tatar (1987)
COMMON LISP : the language / Guy L. Steele, Jr. ; with contributions by Scott E. Fahlman ... [et al.] and with contributions to the 2nd ed. by Daniel G. Bobrow ... [et al.] (1990)
Object-oriented common LISP / Stephen Slade (1998)
Lisp / Patrick Henry Winston, Berthold Klaus Paul Horn (1989)
The art of the metaobject protocol / Gregor Kiczales, Jim des Rivières, and Daniel G. Bobrow. (1991)
Paradigms of artificial intelligence programming : case studies in Common Lisp / Peter Norvig (1992)
Interpreting LISP : programming and data structures / Gary D. Knott (2017)
and then this CLOS:
CLOS, 1993 book
Object-oriented programming : the CLOS perspective / edited by Andreas Paepcke
And then Clojure.
Then go to Forth, then SETL, skipping Simula for now, then Prolog.
Then to C and all manner of C related and Unix stuff.
Need to actually read these books, or I don't really know.
SJG
Intelligent embedded systems / Louis L. Odette 1991, talks about C, prolog,and Forth
Pocket guide to FORTH / Linda Baker [and] Mitch Derick ( 1983 )
FORTH on the Atari : learning by using / E. Floegel ( 1983 )
The free software Gforth implementation is actively maintained, as are several commercially supported systems.
For arithmetic operators, this follows the rule of reverse Polish notation.
Starting FORTH : an introduction to the FORTH language and operating system for beginners and professionals / Leo Brodie and Forth, Inc. ; with a foreword by Charles H. Moore
FORTH : the fourth-generation language / Steve Burnap. (1986)
Starting FORTH : an introduction to the FORTH language and operating system for beginners and professionals / Leo Brodie and Forth, Inc. ; with a foreword by Charles H. Moore
FORTH : the fourth-generation language / Steve Burnap. (1986)
SJG
Programming with sets : an introduction to SETL / J.T. Schwartz ... [et al.] (1986)
Yes, just one book. But need to read this in order to understand the concepts involved.
SJG
Programming in Prolog / W.F. Clocksin, C.S. Mellish 1981
Prolog programming for artificial intelligence / Ivan Bratko. 1986
The power of Turbo Prolog : the natural language of artificial intelligence / Ralph Roberts. 1987
An introduction to language processing with Perl and Prolog : an outline of theories, implementation, and application with special consideration of English, French, and German / Pierre M. Nugues 2006
PROLOG Programming, by Nigel Ford, 1989
Seven languages in seven weeks : a pragmatic guide to learning programming languages / Bruce A. Tate. (2010)
Ruby -- Io -- Prolog -- Scala -- Erlang -- Clojure -- Haskell
Intelligent embedded systems / Louis L. Odette 1991, talks about C, prolog,and Forth
SJG
by Fernandez and Faustino
https://www.amazon.com/Rails-Way-Addison…
Likely to only have this book for a day. Don't know what Rails is, but it seems to have something to do with the Ruby Programming Language, and that language looks to me very interesting.
A curious note, earlier I visited a library branch in another part of town. I saw a librarian I remember from about 25 years ago. Back then she was a really cute girl whom I took notice of. But time takes a toll. And now she is wearing a wedding ring. Her face looks much harsher, and she has gained lots of lower body weight. Her temperament seems different, harsher.
Some of this is time, but also I don't think marriage is good for women or men.
I could still go for her, but she is not the same. And then that so much time has passed, how has that effected me? For the positive?
SJG
The Cube oF Space and the 22 Paths Of initiation
https://www.youtube.com/watch?v=7cXWcnHb…
⚡️ Arcanum 1⚡️ The Magician ⚡️ Tarot & Alchemy And Kabbalah
https://www.youtube.com/watch?v=05HTe25N…
by Fernandez and Faustino
https://www.amazon.com/Rails-Way-Addison…
Though fine grain paper back, this is a huge book, using thin paper it has over 800 pages.
So much of what it says is over my head, and also outside of my present interests. It is intended for professional programmers using Rails.
But it also has much other good stuff, like stuff about Ruby, and about this REST.
So Ruby books:
Ruby On Rails Tutoria
Practical Object-Oriented Design In Ruby
Programming Ruby
The Ruby Way
So REST comes from the Roy T. Fielding disertation.
Use of a client server architecture, stateless communicaiton, explicit signaling of response cacheability, use of HTTP request methods such as GET, POST, PUT, and DELETE.
CRUD, create, read, update, and delete.
Return to this book later.
SJG
by Martin Fowler, forwards by Cris Kobryn, Gardy Booch etal.
this is Unified Modeling Language, an attempt to codify object oriented approaches, and part of the general project of Computer Aided Software Engineering. 2004.
This group was coming from an Ada background, not C++ or SmallTalk, and not any of the newer languages.
They had this company Rational Software, in Cupertino.
Not sure if anyone goes with this anymore or not.
SJG
Zaga Reed - Thelema (Full Album) - Art Metal - Mexico City
https://www.youtube.com/watch?v=KNiNPVLR…
Baker Gurvitz Army - Vinyl Album High Quality
https://www.youtube.com/watch?v=cte9Bk_f…
Live
https://www.youtube.com/watch?v=u7GXbGPN…
Computer languages are not sufficiently abstract to facilitate discussion of the program. So now we have this standardization of diagram types.
There guys are clearly talking about Enterprise Applications, and these are always going to be things which involve a database.
As I know though, people fill this need for abstraction and discussion by making pseudo code, and think with comments.
Then they take this and develop into into real code.
I have been thinking of ways which one could actually use a database to hold their code. Reports could generate the code and header files.
Some References:
Martin Fowler is Chief Scientist of ThoughtWorks, Melrose, MA,
https://martinfowler.com/
https://www.thoughtworks.com/
http://phruby.com/
Some other Martin Fowler books
1. Analysis Patterns
2. Refactoring
3. Patterns of Enterprise Application Architecture
4. With Kent Beck, Planning Extreme Programming
[Meller and Balcer] Executable XML (2002)
[Meyer} Object Oriented Software Construction, 2000, Meyer is developer of Eiffel
[Grady Booch, Peter Coad, Ivan Jacobson, Jim Odell, Jim Rumbaugh] Official UML diagram types, Class Diagrams are most basic, Book speaks to each type.
Iterative vs Waterfall development processes
Software Patterns
http://www.hillside.net/patterns
Ward Cunningham, Constantine and Lockwood, Software for Use 2000
CRC Cards, Class - Responsibility - Colaboration diagrams.
Worfs - Brock, Object Design: Roles Responsiblities and Collaborations 2003
COM (Common Object Module)
SJG
Gnosis - Work of the Initiate
https://www.youtube.com/watch?v=tlJ9rFKr…
Seeing this book now, I remember it and the author's name as being in book stores everywhere, decades ago.
Brooks in not some old data processing guy. He is from MIT's AI Lab. But he is not one of the guys who followed Marvin Minsky and his cognitive model nonsense.
He is the inventor of the Subsumption Architecture
https://en.wikipedia.org/wiki/Subsumptio…
His work is critically acclaimed here:
https://www.amazon.com/gp/product/026252…
So if Rodney Brooks thinks LISP worth using, then I certainly want to know about it.
SJG
I mean when they first started, having only Fortran and Cobal, maybe. But Brooks says that LISP interpreters and compiles are no longer written in Assembler anymore, they are written in C.
C is not intended for list manipulation, it is intended to do everything. So you can make it do whatever you want. I certainly can make it do what I want.
LISP I see now is part of the stupidity and pomposity of MIT's AI Lab, led by Marvin Minsky and with his Cognitive Model.
So I am for now suspending my plans to read about Object List and about CLOS. I will read about Clojure, to see if anything is different about it, and why people are using it.
Python and Ruby may not have specific list manipulation features, but they are so good, so inspired by C, they I am sure they can do whatever you want them to.
So I will read about SETL and Prolog, and Forth, then it is on to C.
Most large programs do have something in them which involves list manipulation and that type of cognitive "reasoning", but this is only a small portion of the total project.
Notice that I am for now suspending reading about SmallTalk or Ada, for now.
Have right now:
Testing R Code, by Richard Cotton, CRC Press, 2017
https://www.crcpress.com/Testing-R-Code/…
SJG
https://www.crcpress.com/Testing-R-Code/…
Really interesting book about a most interesting subject. Also, dozens of other books about R from this
well loved Boca Raton FL publisher.
Richard Cotton is in Cambrige MA, and he is with datacamp
https://www.datacamp.com/
With the publisher we also have John M. Chambers at Stanford, and Duncan Temple Long at UC Davis, both in their respective statistics departments. And then Hadley Wickham with RStudio, Boston.
https://www.rstudio.com/
SJG
https://ggplot2.tidyverse.org/
Just a few of the other books in the CRC R series
Using R for Numerical Analysis in Science and Engineering
Statistical Computing in C++ and R
Basics of Matrix Algebra for Statistics with R
R and MATLAB
R Graphics
SJG
For one thing he claims you can have seemless integration with C++, and using this package Rcpp.
That would be really hard to beat. How does it work? He shows something and says that you C functions get included in an R envelop???? How does this work, are they preprossessing you C code before compiling?
Usually such an expansion to R would mean adding something to the interpreter, written in C and Fortran. Maybe using dynamic linking like they seem to use for Python and I think Ruby.
How does R get into databases, same way? Through client server provision from the OS? My only concern is that you be able to get data out in big chunks, and still in binary form. Cotton talks about PostgreSQL, but how about the new wild NoSQL stuff like MongoDB.
I see the R language, interesting. Want to know more about it.
Would you use R instead of Python or Ruby? Can you use R for server side web page scripting and get to it via CGI ( Common Gateway Interface )?
Why is some of it in Fortran, does that make it work better? How? Or were they just reluctant to re-write some parts in C?
So Cotton says that R has over 7000 expansion packages. Wow! But Python and Ruby also have such. Can't statistics as needed just be added that way?
As I know, statistics are not that complicated.
Talking about R in relation to MATLAB. Very interesting because MATLAB is great, but still limited. If R can be made to do what MATLAB does and more, that would be phenomonal, and most of all because R is open source and free. MATLAB, Mathematica, and MathCad are nothing of the sort.
So much more to read about and learn.
So in hand right now:
Learn RUBY the Hard Way, by Zed A. Shaw, 2015
SJG
uses -v to get Ruby version, and talks about how to install Ruby.
Windows is much more Unix like than it used to be.
Terminals, text windows, that is how to use computers. You don't want to be driving computers, you want to be making other computers drive computers.
Graphical interactive interfaces should only be used in situations where they are an absolute necessity.
Ruby looks real good.
SJG
san_jose_guy - commonly referred to as SJG this forum member is usually mocked or ignored, his comments should NOT be taken in any way as legitimate
https://www.amazon.com/gp/product/193435…
Will have in hand soon. Need to keep building better strategic overview ability.
SJG
by Doug Hellmann (2017)
https://www.amazon.com/gp/product/013429…
in hand now.
SJG
by Doug Hellmann (2017)
So this is interesting, big 1400 page, thin paper, would sell for $60 book.
Talks about a couple of dozen of the library modules, the standard ones.
It does do most basic math stuff, and some statistics. Has list variables and enumeration, and routines to manipulate them. I think this is the key to 'functional programming'
Lots of stuff about networking and files and databases. XML, sqlite3, JSON's
I think one would want even more though.
I read that Ruby has over 7000 additions. So probably Python has even more. This book is just for what is considered standard.
I believe that the way these extensions work is via Dynamic Link Modules offered to the interpreter and then connected to a run time. This, plus some actually Python code being imported.
Does Ruby work the same way? I believe so. Does R work the same way? I suspect so, but i have not yet read enough about it from the right sources to really know.
Can Python, Ruby, and R be used interchangeably? I don't really know, but I suspect that to a large degree yes.
SJG
Ginger Baker's Air Force (Jazz and Rock, 1970) Full Show
https://www.youtube.com/watch?v=oe9DA8pO…
Functional programming : a PragPub anthology : exploring Clojure, Elixir, Haskell, Scala, and Swift / Michael Swaine and the PragPub writers. (2017)
How about this Swift?
https://en.wikipedia.org/wiki/Swift_(pro…
Yes, too tied to Apple and their Objective-C and some of their frameworks. Not interested, not in Swift, or for now the above book.
Then we have:
Functional Programming in C++ : How to Improve Your C++ Programs Using Functional Techniques [ O'Reilly 2018], most intriguing, but not even on library shelves yet.
So in hand right now, Seven Languages In Seven Weeks, by Bruce A. Tate, The Pragmatic Bookshelf.
Starts off talking about Ruby. Inspired by Perl, hence the name, and also by SmallTalk, and also as kind of corrective to Python. Interpreter written in C.
Ruby is a bit over my head I admit, but it looks absolutely fascinating and extremely useful. Plan to be doing much with it.
Then he talks about Io, also interpreter written in C, and people see it as for embedded systems, and I agree. I could see it taking over with the things Forth is good for.
https://en.wikipedia.org/wiki/Io_(progra…
http://iolanguage.com/
https://web.archive.org/web/201107161757…
https://itunes.apple.com/us/book/io/id49…
http://smalltalk.gnu.org/blog/zuluuuuuu/…
Okay, then he talks about Prolog. I continue to see that this is a bullshit language.
Then Scala, which seems like an update for Java, still running on that Java Virtual Machine. I do not go along with that. Dumb.
Then Erlang, runs on the Beam Virtual Machine. Again, I do not like this. But this is for apps way beind the scale of anything I have ever done. But still, I would make it work some other way.
So then Clojure, a dialect of LISP. Runs on the Java Virtual Machine. Says some schools start people off with LISP. And that is good, the best time to do it, because LISP is a language of very little use, just an intellectual exercise. So if all you had were the original versions of Fortran and Cobal, sure, Lisp would look very interesting. But today, LISP and Clojure, in my opinion, very little use.
Next to read the chapter about Haskel.
The way to do Functional Programming, the things Prolog and Lisp do, is to write good OO modules in C/C++. or one of the other OO languages. Then you can do it.
Getting the one book about the SETL Language.
Then want to get about Forth:
FORTH : the fourth-generation language / Steve Burnap (1986)
Computer languages seem to divide neatly into the pre-C and the post-C. So after reading about SETL and Forth, I will go directly to C, and let the other pre-C stuff sit for now.
SJG
Farm 1971
https://www.youtube.com/watch?v=plfEvepn…
Booker T & The MGs - Green Onions *LIVE*
https://www.youtube.com/watch?v=WB5VD_Z5…
Art Blakey & the Jazz Messengers - Moanin'
https://www.youtube.com/watch?v=Cv9NSR-2…
The Official Unbuntu Book
https://www.amazon.com/gp/product/013451…
Finishing up with Seven Languages In Seven Weeks
by Bruce A. Tate
This publisher series: The Pragmatic Programmers, its really good.
Let me just list a few:
Programming Ruby
CoffeeScript
Crafting Rails Applications
Metaprogramming Ruby
JavaScript
So about the language Haskell, it is fully compiled, no Java Virtual Machine, and compiler written in Haskell. It is a language developed by a committee, centered around the University of Glasgow, the most radical language covered in the book.
It is intended to be a purely functional language, as opposed to Object Oriented or Procedural.
What the author does not say is that always underneath Functional programs is Object Oriented and Procedural code.
So my first reaction is that Haskell would be better as an interpreted language, interpreter being open source and in C/C++.
Second reaction is that what would be better than Haskell is some adaptation of its ideas into other languages, via language additions, or extension modules.
Well, Python and Ruby have open source C language interpreters. Ruby has some 'code block' idea which is like functional programming. And Python, second major release, did take a bunch of stuff from Haskell.
And then these OO languages are both great places to do Functional Programming.
So I fear that Haskell will become the next Prolog and the next LISP, not really used for real stuff.
And then of Clojure, it does fix some of the main objections with LISP.
But it still is compiled and then needs the Java Virtual Machine. I still do not go along with that.
But there is some ClojureScript
This is not what I had thought it was, might be fucked.
https://clojurescript.org/
Who is this black girl with Jeff Healey, she is really something:
https://www.youtube.com/watch?v=NCaL_v2E…
Deep Purple-My Woman From Tokyo
https://www.youtube.com/watch?v=b-ScDz4V…
And then it sounds like lots of people hate Java.
JavaScript on the otherhand is near universal.
ClojureScript should be an interpretive language like JavaScript. But it is not, it is compiled into JavaScript. That is idiotic.
So the best now for Functional Programming is to write some good modules, people probably have, for C/C++, for Python, for Ruby, and maybe even for Io. For R? Don't know enough yet.
Now some stuff from the book I want to preserve:
ActiveRecord has to do with persistant data, databases, and Ruby.
Prolog Tutorial
http://www.cpp.edu/~jrfisher/www/prolog_…
http://www.cpp.edu/~jrfisher/www/prolog_…
http://alumni.cs.ucr.edu/~vladimir/cs171…
for using with Clojure
https://leiningen.org/
http://thinkrelevance.com/
11 Theses on Clojure
http://www.tbray.org/ongoing/When/200x/2…
History of Haskell and programming languages
https://wiki.haskell.org/History_of_Hask…
Haskell Monads
https://wiki.haskell.org/Monads
Lots of interesting ideas, but best to implement them with modules used with more standard OO languages.
SJG
https://www.dandb.com/businessdirectory/…
SJG
Also, this Unbuntu, in the distribution they wrote most everything using Python. They made this one of their original objectives.
So I assume that GNU/Linux is still in C. I have been skepitcal about Python, but that such a group would want to focus on it is an extremely significant endorsement.
In hand right now, Learn Ruby the Hard Way, by Zed A. Shaw
Will be in hand soon, about SETL an old language which influenced Prolog and lots of other stuff.
Programming with sets : an introduction to SETL / J.T. Schwartz ..
SJG
The Jeff Healey Band - While My Guitar Gently Weeps (live)
https://www.youtube.com/watch?v=NCaL_v2E…
The book of R : a first course in programming and statistics / by Tilman M. Davies. (2016) huge book
Learn business analytics in six steps using SAS and R : a practical, step-by-step guide to learning business analytics / Subhashini Sharma Tripathi. (2016)
Learning R / Richard Cotton. (2013)
Pro machine learning algorithms : a hands-on approach to implementing algorithms in Python and R / V. Kishore Ayyadevara. (2018)
Python for R users : a data science approach / Ajay Ohri. (2018)
R for data analysis in easy steps / Mike McGrath. (2018)
R for dummies / by Andrie de Vries and Joris Meys. (2015)
R packages / Hadley Wickham (2015)
And there are lots and lots more, and new ones coming out regularly. One mentions SAS, I think I want to read that, as I want to also know about SAS. Some talk about Python. Save those for later as I will be reading much more about Python anyway.
And in hand right now:
Sams Teach Yourself Java in 24 Hours by Rogers Cadenhead
TeX, anyone have any experience using this? Mathematical notation is quite complex, and historically computers have fallen way short.
https://tex.stackexchange.com/questions/…
SJG
Steely Dan Live 2006 Charlotte - HQ video
https://www.youtube.com/watch?v=FQXobc4A…
Unapologetic: A Black, Queer, and Feminist Mandate for Radical Movements
https://www.amazon.com/Unapologetic-Femi….
From the Grassroots to the Ballot Box: How Gubernatorial Candidate Andrew Gillum Won in Florida
https://www.democracynow.org/2018/8/30/f…
This book was actually very good. Not read about Java before. When it originally debuted, and like when Bill Joy relocated to Aspen, I was not impressed by what he was suggesting.
Wanting to make it run on small devices okay. But this idea of portable executibles was not. That only exacerbates the consumer idiocy which was already flooding the computer market. We should be going to open source, and then staying with machine specific executibles.
And then the virtual machine idea slows the machine down at the most critical place. They are now calling this a byte code interpreter. But it is an interpreter in exactly the wrong place, under a compiler. Stupid to compile and then feed it into an interpreter.
So this book says Java is widely used. Others say that JavaScript is more widely used. That makes more sense to me.
So anyway, I look at it all, it is so similar to C++, except for that stupid JVM ( Java Virtual Machine) underneath.
What it actually reminds me of is Borland Turbo C++, all so well packaged and colorful, and with its own pre-Windows GUI.
Some say they really don't like programming in Java. Well that is because they are coders, people who work for a pay check.
I look at it and to me it is almost like a video game. It would be fun, almost too much fun!
So Scala, running on that JVM and also including some Functional Programming abilities, that is like the Java replacement.
And then Clojure, also on the JVM, a modernized Lisp, is also there.
So as Java indeed is made to run across the www, that does mean there are special requirements. But that would also make it fun.
Anyway, they should have made all the JVM does part of a class library, not some virtual machine.
So some are saying Java is finally what will retire Cobal. I can see why they would see it that way.
Cobal is from a time of central Data Processing Dept's.
Today it is all client server, and at least a relational database. So Java would be good for this. You could certainly use Java to make a web based ERP2 ( Enterprise Resource Planning 2 ).
So lets get more specific here from the book:
Controlled today by Oracle. I do not like this.
https://www.java.com/en/
free, but is it all open source?
Java Magazine
https://www.java.com/en/about/javamagazi…
So James Gosling found limitations in C++. Okay.
Than Bill Joy got involved. At that time I remember him talking about all the major OSes being full of bugs and how they would never all be gotten out. He was creating this big fear. And there was fear about C/C++ and talk of how Ada was better.
So they wanted to tame C/C++.
So some do not like Java. For me it would be fine, but so also is C/C++.
Java Programs that run locally are called applications.
Programs that run on web pages are called applets.
Run by web servers are called servelets.
And on mobile devices are called aps.
Then there is JAX=WS, the Java API and XML for programs to communicate with each other.
And SOAP ( Simple Object Access Protocol )
And then writing apps for Android
Actually Google, Intel, Motorola, Nvidia, Samsung, and others set up this Mobile Handset Alliance to protect openness from Apple.
So anyway, Java is fully object oriented. Took a while for the world to accept this.
But they have gone further, Inner Classes, and Anonymous Inner Classes, and then using the latter for "Closures" or Lambda Functions. These latter being Lisp stuff, data as program, functional programming.
Will be reading more about Java later, and about C#. This just a preview.
Overall, I don't see it as a bad experience to use. But of the overall strategy and architecture of it, not impressed.
So, in hand now, JavaScript & jQuery
the missing manual
by David Sawyer Mc Farland O'Reilly 2014
SJG
Man killed by Amtrak Train, in Alviso, Northern portion of San Jose, Southern edge of San Francisco Bay
https://patch.com/california/milpitas/ma…
Steely Dan ( live )
https://www.youtube.com/watch?v=FQXobc4A…
It is all classes, started out with about 250 classes, now up to 40k. And of course the detailed documentation for this is not on paper, it is online.
Okay, so now I have the SETL Book, 1986
https://www.amazon.com/Programming-Sets-…
So a set variable or list variable type seems to be the intro to functional programming.
Fortran, Pascal, and C do not have set or list variables.
Mostly the difference between set and list is that with a set the order is not important, but with a list, sometimes the order matters and sometimes it does not.
Later extensions of Pascal did add list variables.
With C, you just use arrays. Then the real fun would be in making a module with all the 'methods' to manipulate it.
So anyway, the say SETL was orginally from Russia, then further developed in the US, and it was the inspiration behind Prolog. So as this is really the main book, and it is not GNU Free Software, I plan to spend enough time with the book to really understand it.
"
The programming language SETL is a relatively new member of the so-called "very-high-level" class of languages, some of whose other well-known mem bers are LISP, APL, SNOBOL, and PROLOG. These languages all aim to reduce the cost of programming, recognized today as a main obstacle to future progress in the computer field, by allowing direct manipulation of large composite objects, considerably more complex than the integers, strings, etc., available in such well-known mainstream languages as PASCAL, PL/I, ALGOL, and Ada. For this purpose, LISP introduces structured lists as data objects, APL introduces vectors and matrices, and SETL introduces the objects characteristic for it, namely general finite sets and maps. The direct availability of these abstract, composite objects, and of powerful mathematical operations upon them, improves programmer speed and pro ductivity significantly, and also enhances program clarity and readability. The classroom consequence is that students, freed of some of the burden of petty programming detail, can advance their knowledge of significant algorithms and of broader strategic issues in program development more rapidly than with more conventional programming languages.
"
SJG
by J.T. Schwartz etal, 1986
Springer-Verlag
https://www.amazon.com/Programming-Sets-…
This is a beautifully made book of the very highest quality.
https://www.springer.com/us/shop?msclkid…
https://en.wikipedia.org/wiki/Springer_N…
With its syntax diagrams and reserved words list appendices, and binding of the highest quality, it is every bit the equal of the Niklaus Wirth books they have published.
Even though this is a 1986 book, having access to it is still very important. There need to be more copies of it on library shelves.
So SETL started in the USSR?
Seemingly no:
https://en.wikipedia.org/wiki/SETL
Talk about a langauge APL ??
https://en.wikipedia.org/wiki/APL_(progr…
Learning APL : an array processing language / James A. Mason (1986)
So yes, I want to read about this. Ideas which have given us spreadsheets and functional programming.
Also, functional programming books:
Functional Programming in C++ : How to Improve Your C++ Programs Using Functional Techniques (2018)
Functional programming in R : advanced statistical programming for data science, analysis and finance / Thomas Mailund (2017)
Functional and reactive domain modeling / Debasish Ghosh (2016)
Beginning functional JavaScript : functional programming with JavaScript using EcmaScript 6 / Anto Aravinth (2016)
Functional reactive programming / Stephen Blackheath, Anthony Jones (2016)
Functional programming in JavaScript / Luis Atencio. (2016)
Functional programming in Scala / Paul Chiusano, Runar Bjarnason (2015)
A beginner's guide to scala, object orientation and functional programming / John Hunt. (2014)
Discrete mathematics and functional programming / Thomas VanDrunen (2013)
Functional JavaScript / Michael Fogus ; [forewords by Steve Vinoski & Jeremy Ashkenas]. (2013)
The art of R programming : tour of statistical software design / by Norman Matloff. (2011)
So now lets talk about the J.T. Schwartz book and the SETL Language:
Comes out of Computer Science Department of New York University.
Has a special undefined variable value, "Om'.
Has atoms ( like Prolog and Elixir ) How this is used though seems to vary.
Functions for picking things out of lists, from, fromb, frome.
Sets, versus Lists.
Then Hash Tables, then Maps, then Tuples, just like all the new functional langauges.
M..N, means all included integers.
all these compound types can be compounded every which way.
Has extensive backtracking capability, including splitting of duplicate universes to exploring.
Backtracking is like Prolog. Duplicate universes are how you make a computer play chess.
But I doubt you can make it do a good job with the Asian game of GO, this way.
So clearly much has come from SETL, and still does. Much to learn. But I still say that most of the time the best ways to use these ideas are by making extension modules for the established languages like C++, Python, R, Ruby, Io.
Most programs beyond a basic level, are Functional on top of Object Oriented, on top of Procedural.
Most of these special functional languages have ended up as just curiosities.
SJG
A specter is haunting Europe
https://www.youtube.com/watch?v=PdYLRTGm…
https://en.wikipedia.org/wiki/Timeline_o…
SJG
Universe 1971 (FULL ALBUM) [Hard | Blues Rock]
https://www.youtube.com/watch?v=4kSma2pg…
Imagining Life After Capitalism
What can Star Trek tell us about life after capitalism? Peter Frase discusses four possible futures in a world where workers are increasingly being replaced by machines — ranging from communist and socialist societies to ones in which workers are literally disposable. (Encore presentation.) Resources: Peter Frase, Four Futures: Life After Capitalism Verso, 2014
https://kpfa.org/episode/against-the-gra…
Learning APL : an array processing language / James A. Mason (1986)
SJG
Carmen
https://www.youtube.com/watch?v=Lx4ImMQW…
FORTH
the forth-generation language
by Steve Burnap
Tab Books 1986
This looks like a fun book. I want to see what people saw in Forth. If I didn't read the old book, I would not be able to learn this.
And also, Public Libraries and Academic Libraries are under assault right now, by librarians and others who want to turn them into neo-liberal propaganda centers. So collections are being ravaged. So I know that without the old books there will be no way to learn. So I try to read them now.
FWIW, in the organization I am building, we will make vast libraries, and we will always keep any books we process into the collection. To make room for new books we will just be building more and more buildings.
SJG
I'll have this book about the opera Carmen in hand soon.
Georges Bizet : his life and work / Winton Dean. (1965)
Carmen, full opera
https://www.youtube.com/watch?v=sl10z41-…
Okay, this Indiana University version is playing now. It is from their 2015-2016 season.
https://music.indiana.edu/iumusiclive/
Better way to get to it:
Part 1
https://media.dlib.indiana.edu/media_obj…
Part 2
https://media.dlib.indiana.edu/media_obj…
And here, program with some commentary:
https://music.indiana.edu/events/program…
So lets see how some of this sounds when played fixed pitch, i.e. organ:
https://www.youtube.com/watch?v=GKNoVOBg…
https://www.youtube.com/watch?v=-Gk6J5I_…
https://www.youtube.com/watch?v=DR5YCijs…
https://www.youtube.com/watch?v=gEY5Lg_6…
Hal Ashby
https://www.theringer.com/movies/2018/9/…
https://en.wikipedia.org/wiki/Hal_Ashby
Obama Delivers Stinging Rebuke, Standing Up To Bullies, not following them.
https://www.yahoo.com/news/supposed-stan…
Roe v. Wade in Danger: Released Docs Reveal Kavanaugh Thinks Abortion Decision Is Not “Settled Law”
https://www.democracynow.org/2018/9/7/ro…
As 400+ Children Remain Separated From Parents, Trump Admin Wants to Detain Kids Indefinitely
https://www.democracynow.org/2018/9/7/as…
Mason, 1971
https://www.youtube.com/watch?v=-fyeJk5W…
Learn business analytics in six steps using SAS and R : a practical, step-by-step guide to learning business analytics / Subhashini Sharma Tripathi. (reading some about SAS will be good too )
R for dummies / by Andrie de Vries and Joris Meys. (2015)
R in action : data analysis and graphics with R / Robert I. Kabacoff. (2015)
R packages / Hadley Wickham. (seems like these new interpretive languages all work with expansion packages, and through dynamic linking 2015)
Sam's teach yourself R in 24 hours / Andy Nicholls, Richard Pugh, and Aimee Gott. (2015)
All seeming to have come upon us in 2015. And thanks to GACA for telling me about the new centrality of R.
SJG
Ginger Baker's Air Force
https://www.youtube.com/watch?v=oe9DA8pO…
san_jose_guy - commonly referred to as SJG this forum member is usually mocked or ignored, his comments should NOT be taken in any way as legitimate
Learning APL : an array processing language / James A. Mason (1986)
This language APL, which I just learned about from the book about SETL, supposedly influenced S, and that R, and then the language Perl. And then it supposedly is the origin of the concepts behind Spread Sheets.
SJG
want to watch:
Chronic State
https://www.youtube.com/watch?v=hhHI01CC…
an anti-marijuana film
Yes, Mason had been teaching this for 10 years. APL started back in 1962. Good highly interactive mathematics system.
Overall, I say that people could be doing more math, if they had in front of them better tools.
SJG
Katherine S. Newman, on campus safety, 2008
https://www.youtube.com/watch?v=TtsO5K6t…
Why 20-Somethings are Moving Back Home
https://www.youtube.com/watch?v=8Lftjp9x…
Katherine Newman - America's "missing class" presentation
https://www.youtube.com/watch?v=9AV5cgrx…
Elliot Rodger The Virgin Killer 2014 Isla Vista killings Documentary
https://www.youtube.com/watch?v=cBm-dC26…
The Secret Life Of Elliot Rodger 2020 FULL Interview
https://www.youtube.com/watch?v=pnT0CMwB…
Channel 4 Elliot Rodger The Virgin Killer Full Documentary
https://www.youtube.com/watch?v=IutRRGpe…
Low-level programming : C, assembly, and program execution on Intel 64 architecture / Igor Zhirkov (2017SJ)
Some assembly required : assembly language programming with the AVR microcontroller / Timothy S. Margush (2012 CRC Press)
Guide to assembly language : a concise introduction / James T. Streib. (2012) Springer-Verlag
Introduction to 80x86 assembly language and computer architecture / Richard C. Detmer (2010)
The art of assembly language / by Randall Hyde (2010)
Assembly language step-by-step : programming with Linux / Jeff Duntemann (2009, unavailable )
Guide to assembly language programming in Linux / Sivarama P. Dandamudi (2005, lots of copies )
LINUX assembly language programming / Bob Neveln (2000)
Also, in C,
Real-Time C++ : efficient object-oriented and template microcontroller programming / Christopher Kormanyos. (2015 Springer, SFPL)
Programming : principles and practice using C++ / Bjarne Stroustrup. (2014)
21st century C / Ben Klemens ( O'Reilly 2013)
Embedded systems building blocks : complete and ready-to-use modules in C / Jean J. Labrosse (2000 CMP Mission)
C programming for embedded systems / Kirk Zurell (2000 Mission)
Programming embedded systems in C and C++ / Michael Barr. (1999 O'Reilly)
SJG
Graham Bond ✪ Holy Magick
https://www.youtube.com/watch?v=G0Exbl-S…
Hardening Linux / James Turnbull (2005)
Hardening Linux / John Terpstra ... [and others] (2004)
GNU/Linux application programming / M. Tim Jones (2008)
SJG
In hand now, Bizet, by Winton Dean, finally get to read about Carmen
https://www.amazon.com/Bizet-Master-Musi…
Giuseppe Verdi
https://en.wikipedia.org/wiki/Giuseppe_V…
Aida, 1871
https://en.wikipedia.org/wiki/Aida
The Urban Agenda: Katherine S. Newman on the low-wage labor force
https://www.youtube.com/watch?v=Bpnue34k…
The practical art of divine magic : contemporary & ancient techniques of theurgy / Patrick Dunn (2015)
Automatic vs Stickshift
https://www.edmunds.com/fuel-economy/fiv…
https://www.directasia.com/blog/manual-v…
https://www.quora.com/Why-is-automatic-b…
https://www.budgetdirect.com.au/blog/man…
SJG
Definitely and advanced and current topic, and a great publisher.
SJG
Author is of quite some renown.
Must have libraries for Haskell:
Hascore - means of describing music! Also American Mathematic SOciety, material about music on their public outreach
vect - all for computer graphics
binary - lets you serialize your data so you can transmit it.
vector - because arrays work better than linked lists. (C++ STL has something similar)
aeson - for doing stuff with JSONs.
attoparsec - for parsing mixed format files
bytestring - for interacting with data, can be strict or lazy
stringsearch -
text - Unicode, everything
moo - Genetic Algoriths!
SJG
Elixir
Elm
Go
Dart
Pony
TypeScript
Kotlin
Nim
OCaml
Python 3
Reason
Rust
https://functional.works-hub.com/
https://analyticsindiamag.com/
ML model
https://analyticsindiamag.com/dedloc-hug…
NVIDIA Releases Eighth Generation Of Its Popular Conversational AI Software TensorRT
https://analyticsindiamag.com/nvidia-rel…
SJG
https://www.kdnuggets.com/
https://www.kdnuggets.com/2021/06/7-open…
SJG
https://hackernoon.com/
https://hackernoon.com/reality-smacking-…
SJG
https://codeburst.io/
Then if course there's vba because people can't let go of Excel.
Thanks, SJG
Amazon Web Services, free tier
https://aws.amazon.com/free/?trk=ps_a131…
Digital Ocean
https://www.digitalocean.com/try/develop…
And do we call someone who knows how to read and write a scribe?
SJG
It was LISP and Prolog, then Scheme and Erlang, and then now Clojure, Scala, Haskell, and Elixr?
SJG
But I think about languages like Lua and other scripting languages that enhance lower languages like C C++ it's like putting decorations on a Christmas tree, I guess pragmatism would suggest since it serves no purpose other than decorating it's useless...but is it really?
If you are referring to SCALA Native above, yes I agree that that is more worth looking at than the original SCALA which runs on the Java Virtual Machine.
My feeling though is that you have to make a software project so that it works at all levels. You don't want or need things like immutable variables or concurrency at all levels. You want these are certain levels.
The standard languages now are all object oriented. And so you can pass pointers to function, and you can define your own variable types and define the methods for accessing them. You can hide pointers, you can make types that are immutable, you can do just about anything these new languages do. But these newer languages do not have the power of C/C++.
Now if you want a language to be interpretive, there is value in that for some things, especially in R, Python, and Ruby.
SJG
Jimmy Smith
https://www.youtube.com/watch?v=i_m-gyi5…
Control.Monad Haskell
https://hackage.haskell.org/package/base…
Regular Expressions
https://www.regular-expressions.info/
SJG
https://tuscl.net/photo.php?id=1793
https://tuscl.net/photo.php?id=1795
https://tuscl.net/photo.php?id=1794
And then sometimes some of the code will be generated at run time, so again you want interpretive. But typically this is only a small portion of the project.
And then special functional techniques can be supported by libraries written in this interpretive language, or in C++.
These specialized functional languages tend to be more of a distraction and something which undermines the final result, in my humble opinion.
SJG
I know just enough HTML JavaScript for a front end when the needs are can't be met for lack of R or python integration.
My programming knowledge is very limited
In Object Oriented languages you can define your own variable types and the methods of accessing them. So you can make immutable variable types, and you can buffer access to memory addresses.
And then you can use R, Python, or Ruby, to call your compiled code. And you can use pointers to functions in every way.
You can use the interpretive language to have something like Lambdas. You can do all this, but still keep the quality very high throughout.
The C++ Standard Class Library is made to allow all the sorts of things used in functional programming.
And the ideas of functional programming are not new. Most applications which seem to run on their own, have minds of their own, are using these ideas.
Concurrency helps in some situations, but in others it accomplishes nothing.
Thanks,
SJG
When Threads Unravel,
By Paul Butcher, 2014
And this "The Pragmatic Programmers" series is always really good.
Most "Functional Programming" no is connected to concurrency, as it is for machine automation, not anymore pretending to be able to replace human intelligence.
SJG
https://tuscl.net/photo.php?id=1793
https://tuscl.net/photo.php?id=1795
https://tuscl.net/photo.php?id=1794
When Threads Unravel
by Paul Butcher
Talks about Hadoop, MapReduce, Elastic MapReduce, and Lambda; all for Big Data.
Talks about Nahan Marz
https://www.linkedin.com/in/nathanmarz
http://nathanmarz.com/about/
https://redplanetlabs.com/
text also references:
https://www.amazon.com/gp/product/B09783…
SJG
Sexiest Ladies of Jazz - The Trilogy! - Full Album
https://www.youtube.com/watch?v=CsJs_hEC…
ElephantDB
https://github.com/nathanmarz/elephantdb….
https://dbdb.io/db/elephantdb
https://www.elephantsql.com/
https://en.wikipedia.org/wiki/Lambda_arc…
Voldenmort Database
https://www.project-voldemort.com/voldem…
Then they want you to also have a Speed Layer, which makes up for the big latency issue in the huge scale batch processing.
SJG
Robert Kiyosaki
https://www.youtube.com/watch?v=az6NibAU…
Reactive Programming, Microsoft Rx
Functional Reactive Programming, FRP, Elm language
Grid Computing
Fork/Join and works stealing Cilk langauge
Apache Spark, Cluster Computing Framework
Storm, Apache, makes a cluster
Kafka, Apache, for speed layer
Kestrel, github, for speed layer
ElephantDB and Voldemort, for where the Batch Layer puts its stuff
joda-time
mahout, apache
amazon aws, elastic map reduce
hadoop, map reduce
Lambda Architecture
Nvidia, CUDA
Direct Compute, Render Script Computation
makes my head dizzy,
SJG
Deep Purple - New York 1973 - Full Concert
https://www.youtube.com/watch?v=1En47iPE…
https://www.amazon.com/Types-Programming…
https://www.amazon.com/Types-Programming…
SJG