tuscl

OT: Computer Programming

Avatar for san_jose_guy
san_jose_guymoney was invented for handing to women, but buying dances is a chump's game

Comments

last comment
Avatar for SanchoRG
SanchoRG

I prefer Nginx

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

en.wikipedia.org

What does Nginx do, and why do you like it over the above two?

Thanks,
SJG

0
0

Log in to vote

Avatar for SanchoRG
SanchoRG

Nginx handles static content better, which is most anything I program. Apache is better for dynamic content.

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

^^^^^ Thanks,

SJG

0
0

Log in to vote

Avatar for DenimChicken
DenimChicken

Those Apache projects have nothing to do with the traditional Apache web server. Sure they could be..involved...behind the scenes but. Nevermind.

FRMOS with great multithreaded, ULL cache targetting, avx512 optimized code makes things fast.

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

^^^^ Agreed, and thanks for the info. That was also my perception of the above software things.

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Practical Usage of Regular Expressions: An introduction to regexes for translators Paperback – February 20, 2018
by Anthony Rudd

Introducing Regular Expressions 1st Edition
by Michael Fitzgerald (Author)

Learning Ruby: The Language that Powers Rails 1st Edition
by Michael James Fitzgerald

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

IO

iolanguage.com

en.wikipedia.org

Practical Haskell : a real world guide to programming / Alejandro Serrano Mena. (2019)

Game Development with GameMaker 2 Studio 2 : make your own games with gamemaker language. (2019)

The Rust programming language / by Steve Klabnik and Carol Nichols ; with contributions from the Rust Community. (2019)

The audio programming book / edited by Richard Boulanger and Victor Lazzarini ; foreword by Max V. Mathews. (2011)

On Git Hub
github.com

github.com

From Simple IO to Monad Transformers
by J Adrian Zimmer (Author)

This is a short ebook written for Haskell programmers who wish to become comfortable with the concept of monad. It is formatted for reading on small or large screens. The author is a math Ph.D. with decades of experience teaching abstract concepts to beginners, including teenagers.

The Io Programming Language
youtube.com

peru
gini.cps.udayton.edu/teaching/courses/Spring2017/cps499/Languages/notes/Io.html

Machine Learning with R: Expert techniques for predictive modeling, 3rd Edition Paperback – April 15, 2019
by Brett Lantz

wiki guide to Io
en.wikibooks.org

Ozone, intro to Io
ozone.wordpress.com

The AWK Programming Language 1st Edition
by
Alfred V. Aho (Author),
Brian W. Kernighan (Author), Peter J. Weinberger (Author)

Concepts of Programming Languages (10th Edition) 10th Edition
by Robert W. Sebesta

Coral Dev Board I/O Programming Using Python Kindle Edition
by Agus Kurniawan

Io language was created by Steve Dekorte in 2002

dekorte.com

Lots of online info, and Io looks extremely interesting. To me it looks like Forth, as well as SmallTalk.

But zero books I can find about it!

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

^^^ based on what I see it looks wonderful. Still like to find some books and first hand accounts.

Not interested in it for general purpose, but for some small embedded applications, and maybe running with no operating system underneath.

They say it is like SmallTalk, fine. Or I see it as also like Oberon. But I also see it as the new Forth.

And of course I want to add complied C++ to its interpreter, not just write in its interpretive stuff. And highly object oriented is ideal.

SJG

Joe Bonamassa Official - "Midnight Blues" - Beacon Theatre Live From New York
youtube.com

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

So let me look some more at "Io".

What processors, what compilers?

Cross compilers?

Download and then use make to compile Io (its interpreter and runtime stuff)
iolanguage.org

Here is source code, on GitHub ( I think run by Google )
github.com

Linux Build Instructions
github.com

Everything for this must be GNU, and they want on Windows for you to build using Cygwin

cygwin.com

But can you cross compile? Mostly I want to use Io on ARM processors. But I will not want to compile it there, want to compile on a PC, probably using Linux.

Io links
iolanguage.org

GNU C complier ( GCC )

gcc.gnu.org

GCC 7.5 released [2019-11-14]

GCC 9.2 (changes)
Status: 2020-02-28 (regression fixes & docs only).
Serious regressions. All regressions.

Says these are the GNU GCC targets

gcc.gnu.org

so for example:

aarch64*--

gcc.gnu.org

Talk about some corrective for Cortex-A53

Special stuff about MS-DOS
DOS

Please have a look at the binaries page.

You cannot install GCC by itself on MSDOS; it will not compile under any MSDOS compiler except itself. You need to get the complete compilation package DJGPP, which includes binaries as well as sources, and includes all the necessary compilation tools and libraries.

All the GNU complier manuals

gcc.gnu.org

GNU Fortran Manual
gcc.gnu.org

Talks about Fortran 2003, 2008, and 2018 !!

So this is the manual for all of the GCC compilers ( G Compiler Collection )
gcc.gnu.org

for example, special options for the BlackFin processors, I guess on all GCC compliers:

Specifies the name of the target Blackfin processor. Currently, cpu can be one of ‘bf512’, ‘bf514’, ‘bf516’, ‘bf518’, ‘bf522’, ‘bf523’, ‘bf524’, ‘bf525’, ‘bf526’, ‘bf527’, ‘bf531’, ‘bf532’, ‘bf533’, ‘bf534’, ‘bf536’, ‘bf537’, ‘bf538’, ‘bf539’, ‘bf542’, ‘bf544’, ‘bf547’, ‘bf548’, ‘bf549’, ‘bf542m’, ‘bf544m’, ‘bf547m’, ‘bf548m’, ‘bf549m’, ‘bf561’, ‘bf592’.

Blackfin processors could be very useful, for some stuff:
en.wikipedia.org

Offical Blackfin, lots of part numbers, with datasheets
analog.com

Sometimes you have to accept single source solutions. But I would be concerned that this Blackfin unnecessarily could get you into a single source solution.

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Here is IA 64. As I know this is Intel, and what it is, is in the later Pentiums when they added the full on 64 bit mode.

gcc.gnu.org

This is 68000 and Coldfire options
gcc.gnu.org

More about AArch64
gcc.gnu.org

Special options for AMD GCN, like for PC Gaming, great images
amd.com

gcc.gnu.org

Extensions to C language
gcc.gnu.org

Extensions to C++ language
gcc.gnu.org

talks about HSA language and D language, also Go language and G++.

From all of this I see that C/C++ is heavily used, as is Fortran. But Pascal does not exist. And Ada is really very secondary.

Compiling C++
gcc.gnu.org

C compiler options summary
gcc.gnu.org

I am getting the impression that cross compilation options are just built in. If you can get the compiler running on your machine, then you can compile for any of the vast array of supported processors.

This is 1 million times better than how it would be on commerical proprietary software development tools!

No I am not suggesting that this is easy. I know that it is not. But at least the people driving it are thinking the right way!

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Now we talk about Floating Point
gcc.gnu.org

Some targets have 128 bit integers
gcc.gnu.org

Some support for Complex numbers.
gcc.gnu.org

That might be done in a manner which is not useful.

Says their is some float128 !! Not sure how this really plays out though.

__float128 is available on i386, x86_64, IA-64, and hppa HP-UX, as well as on PowerPC GNU/Linux targets that enable the vector scalar (VSX) instruction set. __float128 supports the 128-bit floating type. On i386, x86_64, PowerPC, and IA-64 other than HP-UX, __float128 is an alias for _Float128. On hppa and IA-64 HP-UX, __float128 is an alias for long double.
__float80 is available on the i386, x86_64, and IA-64 targets, and supports the 80-bit (XFmode) floating type. It is an alias for the type name _Float64x on these targets.
__ibm128 is available on PowerPC targets, and provides access to the IBM extended double format which is the current format used for long double. When long double transitions to __float128 on PowerPC in the future, __ibm128 will remain for use in conversions between the two types. 

Power PC does also involve IBM.

Look at this chip package:
upload.wikimedia.org

PowerPC list
en.wikipedia.org

Special ARM options

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

So let me try to look at the GCC linker:

gcc.gnu.org

talks about ASM relations
gcc.gnu.org

Still taking effort to make progress in learning about this.

Enumerator Attributes
gcc.gnu.org

gcc.gnu.org

^^^^ I don't think that is a good thing to do. Microsoft pushes this, came from them.

So try to get back to linking issues:
gcc.gnu.org

Looking for overlay capabilities in linker. Not seeing it.

Starting at the top again:
gcc.gnu.org

GNU origins and operating system
gnu.org

gcc.gnu.org

look at this, quad precision math library?
gcc.gnu.org

Quad precision, meaning 4 times 4 bytes, 16 bytes, 128 bits?

But this is in software. Still useful. About 33 decimal digits precision, plus the exponent.

Suggests that one way or another, there will be the needed hardware.

SJG

Led Zeppelin – No Quarter [1975/05/24 @ London, England] Earl's Court Extended Version, I could listen to this until the vinyl wears out!
youtube.com

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

So let me try to look up their linker this way:

en.wikipedia.org

Well they talk about Dynamic Linking, but they fail to talk about the importance of this in these interpretive langauges, being able to expand them.

They don't even talk about doing overlay linking, except for one thing. IBM 360 has more data in the output file, so you can remove some stuff from a linked program, and then put other stuff in, without have to recreate all the object files.

This, ld, should be the GNU linker manual
sourceware.org

And then here, talked about with Linux

linux.die.net

There is stuff about dynamic linking. Maybe they let you tell the machine how to do Virtual Memory swaps. That would be good, but still cannot really see that for sure.

Not sure what this is:
linux.die.net

Unix is multi-user and it has Virtual Memory, so it is going to be more complex.

UK based, FreeRTOS, looks good, scalable
freertos.org

Kernel
freertos.org

Real-time embedded components and systems : with Linux and RTOS / Sam Siewart, John Pratt. (2016)
Making embedded systems : [design patterns for great software] / Elecia White (2012)
Building embedded Linux systems / Karim Yaghmour (2008)
Embedded Linux system design and development / P. Raghavan, Amol Lad, Sriram Neelakandan (2006)
Open-source robotics and process control cookbook : designing and building robust, dependable real-time systems / by Lewin A.R.W. Edwards (2005)
Embedded system design / by Peter Marwedel (2003)
The art of programming embedded systems / Jack G. Ganssle (1992)

Another book, back early 90's, which I cannot now find.

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Think Julia : how to think like a computer scientist / Ben Lauwens and Allen B. Downey (2019)

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Introduction to artificial intelligence / Philip C. Jackson, Jr. (2019)

SJG

TJ Street
tuscl.net

0
0

Log in to vote

Avatar for Mate27
Mate27

^^^STFU or out me on ignore!

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Hands-on full stack development with Go : build full-stack web applications with Go, React, Gin, and GopherJS / Mina Andrawos (2019)

Introduction to artificial intelligence / Philip C. Jackson, Jr. (2019)

Clean Ruby : a guide to crafting better code for Rubyists / Carleton DiLeo (2019)

Computational thinking / Peter J. Denning and Matti Tedre. (2019)

C++ templates : the complete guide / David Vandevoorde, Nicolai M. Josuttus, Douglas Gregor (2019)
788 pages

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

How fast I can learn is completely dependent on how fast I can read mountains of books.

This is why I also need my Organization. It will serve as a Think Tank with lots of sections, to help in reading lots of books, and as a repository of all different types of expertise.

SJG

Tom Petty & the Heartbreakers - I Won't Back Down - 10/2/1994 - Shoreline Amphitheatre (Official)
youtube.com

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

So if they overlay linkers are no more, I think you could still write C/C++ extensions to these interpretive langauges, and then have the extensions loaded when needed, and the I think dump them when no longer needed.

SJG

Eric Clapton Layla 2008
youtube.com

crosby stills nash young almost cut my hair CSNY 1974
youtube.com

TJ Street
tuscl.net
tuscl.net

Pleaser 10"

pleasershoes.com

pleasershoes.com

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Functional Programming for Dummies, by John Paul Mueller.

Author is of quite some renown.

Must have libraries for Python:

PyAudio -

PyQtGraph -

TkInter - GUI

PrettyTable -

SQLAlchemy -

Toolz - lots of stuff good for Functional Programming

ClouderaOryx - Machine learning for Apache Hadoop

funcy - all stuff inspired by Clojure, for doing functional programming

SciPy - all stuff for scientific computing

XGBoost - Gradient Boosting Machine, for Python, R, Java, C++

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

John Paul Mueller, lots of books which all look good:
amazon.com

Machine learning for dummies / by John Paul Mueller and Luca Massaron.

Yes readily available

Anaconda, and IDE for doing Python data science work.
anaconda.com

But except for the individual edition, it is not free.

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Some are looking more to C++ for Functional Programming.

amazon.com

Mostly this is due to the Standard Template Library. And in my view, this is the right way.

Now C++ is not interpretive. Some things really do need an interpretive language. But in my view the popularity of many of these interpretive languages is not based on solving real issues, it is based on specious reasons for making the choice.

Interested to know what you think.

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

NumPy
numpy.org

Mueller Lists Programming Paradigms

Imperative
Procedural
Object-Oriented
Declarative

and the Functional Programming is built upon Declarative Programming.

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Seven Concurrency Models in Seven Weeks
When Threads Unravel
by Paul Butcher

The Pragmatic Programmers ( This publisher and this series are always really good )

amazon.com

SJG

0
0

Log in to vote

Avatar for SanchoRG
SanchoRG

link your github

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

So I read the above and he gives examples and discussion based on using Clojure. I feel that this demonstrates my contention that these new functional programming languages are not really helpful but are more of a hindrance. What he shows works, but the reason that it works is that what you need for concurrency is already built into Clojure. Okay, but if it is not a class assignment and instead it is a real work application, you need tools, not toys. You are responsible for the entire application from top to bottom, and for the careful judgements used in making it.

You can write it all yourself, or you can use library modules to do all of these things. But that still gives you a great deal more ability to tailor the result to your actual need than you would get from using Clojure, Scala, Lisp, Scheme, Prolog, Erlang, or Elixir.

I read all the discussions and examples and I can relate it to things I was responsible for decades ago. The concepts involved are very important. But I still see most of these new languages as gimmicks.

And then you have books like:
amazon.com

Totally disingenuous. They say you can do this and this and this. But they forget to tell you that the reason this is so is simply that others have already written the code to do these things and this is what is inside of Clojure. For a real world application much more is expected of the people responsible for it.

And then there is the loss of control of how it works via the Java Virtual Machine. Can't do stuff that way, not acceptable. If things are to be farmed out to multiple CPU's, you need to decide when and how this will be happening.

Good to see you here SanchoRG.

SJG

Buddy Guy - Knock on Wood
youtube.com

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

I really think that good libraries, Class Libraries, for C++, but also for things like R, Python, or Ruby, are the better way to go, than these specialized Functional Programming languages like Clojure or Scala.

Here is one:
actor-framework.org

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Seven Concurrency Models in Seven Weeks
When Threads Unravel
by Paul Butcher

Yes, so he talks about threads and locks.

He talks about Functional Programming, but out of its original context of Artificial Intelligence, in the context of Concurrency. And the central thing seems to be immutable variables.

My view is that you can make things to do this in any Object Oriented language, if you wish to.

He talks about Clojure and a lot of the concepts which underly it.

He talks about Actors, which in my view is a phenomenal way to go. He explains that it does not depend on immutable state variables, just on keeping them private.

Now he does his examples in Elixir. But remember that Elixir runs on their BEAM operating system. While I respect the great things which have been done with Elixir, I still do not think it hte best available way.

The he talks about CSP, Communicating Sequential Processes, the language Go, and a new library for Clojure. Not really impressive to me.

Then he gets into Data Parallelism and GPU ( Graphics Processing Units )

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

author talks about:

en.wikipedia.org.

en.wikipedia.org

This I go along with whole heartedly.

Talks about GPU in a laptop. Well I'm not so interested in that in a laptop or desktop, but rather in the servers used for production environments.

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

^^^^^ OpenGL is also khronos

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Lopes, Cristina Videira, author
Title Exercises in programming style / Cristina Videira Lopes
Imprint Boca Raton : CRC Press, 2021

CRC Press is always no nonsense.

SJG

Plus Size
foxylingerie.com

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Lopes, Cristina Videira, author
Title Exercises in programming style / Cristina Videira Lopes
Imprint Boca Raton : CRC Press, 2021

This is an unusual and uncommonly abstract book. Shows the history of programming paradigms, with examples written in Python and detailed commentary. At this time I don't need to spend much time with this.

SJG

Yazidi and Esoteric Islam matters
tuscl.net

Boob Out
tuscl.net

0
0

Log in to vote

Avatar for SJGTHREATENSWOMEN
SJGTHREATENSWOMEN

ESS JAY GEE

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

amazon.com

Functional Programming for Dummies
John Paul Mueller

using Python and Haskell
amazon.com
+

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy
0
0

Log in to vote

Avatar for motorhead
motorhead

Computer coding once had much better gender balance than it does today. What went wrong?

Did stripping pay more?

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

I agree with you. What people say is that it was the rise of the Internet. Because of this, computer programmers started to have greater social status and to get better pay. So what they say is that the women were chased out. People have written about this and have tried to do something to get back to better balance.

I have not read this but I want to. I know that it talks about a great deal of sexism in work places. I am not surprised that they are seeing this.

thriftbooks.com

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Not taking sides on this, but I think Shevinsky wants to say that the men don't want to see the women as equals. Rather they want to hire them as strippers, literally.

Other accounts of men being interviewed for a position and being unwilling to talk with female interviewers, staying silent until they can present him with a male.

These guys do this even though the women are the hiring manager and the company founder.

Okay, but I listen to this and I listen to some of what Shevinsky says and I see these as only quasi-technical positions. They pertain more to consumer marketing and canned programming environments, and so the men don't want to be cast into that role, a role they see as more suitable for women.

But I also know that there are many men who don't know the difference and who could only function in that kind of a realm themselves.

This is why I want to read Shevinsky and a lot of other related things which are coming.

Shevinsky just made a video on the Google Campus where she was walking down their halways and through their doorways, and she was noting that they could have offered her a job if they wanted to, but they didn't. I found her position to be a bit much. But still I want to read and understand before I take a position.

SJG

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

TensorFlow for dummies, by Matthew Scarpino (2018)

SJG

Why 'Sports Illustrated Swimsuit' will only work with brands that 'prove they are creating change for women'

yahoo.com

Weather Report - Live at Montreux (1976) [Remastered]

youtube.com

0
0

Log in to vote

Avatar for san_jose_guy
san_jose_guy

Erlang and Elixir for Imperative Programmers, by Wolfgang Loder (2016)

My view is still that it is better to learn from and understand these langauges, but not to use them. Don't want to use their BONE virtual machine, can't write everything their way.

Instead put the time in and make a nice C++ class library, accessible through C/C++, R, Python, or Ruby. Use this for you Imperative Programming. And it is inside of the mechanics of your class library that your multiprocessing and hot swap capabilities reside.

SJG

0
0

Log in to vote

Want to add a comment?