lmfao, anywhere I can read more about McCarthy's plans for this?
Oh well.
[1] http://sl4.org/shocklevels.html and literally on http://sl4.org/
I think it would be easier to just limit greenhouse gas emissions on earth.
Your point works pretty well considering that Venus has a a dense atmosphere unlike Mars.
The same technology could be used to reduce gw on the earth:
1. an orbiting sunshade
2. putting something in the atmosphere that makes it more reflective, like sulfur dioxide
I wonder how big a sunshade would need to be to reduce temps by, say, one degree. A specific location could be shaded by putting the shade in geosynchronous orbit. To finance the sunshade, put a Starbucks or Coca-Cola logo on it.
> I think it would be easier to just limit greenhouse gas emissions on earth.
Of course it would, but that's besides the point
Somehow I doubt our ability to do this strategically...
Nowadays (god-)fathers of AI are Geoff Hinton and Yann LeCun and others, but 20 years ago things were very different…
“The long-anticipated revision of this best-selling book offers the most comprehensive, up-to-date introduction to the theory and practice of artificial intelligence. Intelligent Agents. Solving Problems by Searching. Informed Search Methods. Game Playing. Agents that Reason Logically. First-order Logic. Building a Knowledge Base. Inference in First-Order Logic. Logical Reasoning Systems. Practical Planning. Planning and Acting. Uncertainty. Probabilistic Reasoning Systems. Making Simple Decisions. Making Complex Decisions. Learning from Observations. Learning with Neural Networks. Reinforcement Learning. Knowledge in Learning. Agents that Communicate. Practical Communication in English. Perception. Robotics. For those interested in artificial intelligence.”
Schmidhuber part of the story should also considered more, I think
that's not a fair characterization at all. The title contains the term "Artificial Intelligience", and soon after item 3 in the proposal was "Neuron Nets". The word symbolic is not used at all, although the term Abstractions is used.
http://www-formal.stanford.edu/jmc/history/dartmouth/dartmou...
A PROPOSAL FOR THE DARTMOUTH SUMMER RESEARCH PROJECT ON ARTIFICIAL INTELLIGENCE
J. McCarthy, Dartmouth College M. L. Minsky, Harvard University N. Rochester, I.B.M. Corporation C.E. Shannon, Bell Telephone Laboratories
August 31, 1955
We propose that a 2 month, 10 man study of artificial intelligence be carried out during the summer of 1956 at Dartmouth College in Hanover, New Hampshire. The study is to proceed on the basis of the conjecture that every aspect of learning or any other feature of intelligence can in principle be so precisely described that a machine can be made to simulate it. An attempt will be made to find how to make machines use language, form abstractions and concepts, solve kinds of problems now reserved for humans, and improve themselves. We think that a significant advance can be made in one or more of these problems if a carefully selected group of scientists work on it together for a summer.
The following are some aspects of the artificial intelligence problem:
1 Automatic Computers
If a machine can do a job, then an automatic calculator can be programmed to simulate the machine. The speeds and memory capacities of present computers may be insufficient to simulate many of the higher functions of the human brain, but the major obstacle is not lack of machine capacity, but our inability to write programs taking full advantage of what we have.
2. How Can a Computer be Programmed to Use a Language
It may be speculated that a large part of human thought consists of manipulating words according to rules of reasoning and rules of conjecture. From this point of view, forming a generalization consists of admitting a new word and some rules whereby sentences containing it imply and are implied by others. This idea has never been very precisely formulated nor have examples been worked out.
3. Neuron Nets
How can a set of (hypothetical) neurons be arranged so as to form concepts. Considerable theoretical and experimental work has been done on this problem by Uttley, Rashevsky and his group, Farley and Clark, Pitts and McCulloch, Minsky, Rochester and Holland, and others. Partial results have been obtained but the problem needs more theoretical work.
4. Theory of the Size of a Calculation
If we are given a well-defined problem (one for which it is possible to test mechanically whether or not a proposed answer is a valid answer) one way of solving it is to try all possible answers in order. This method is inefficient, and to exclude it one must have some criterion for efficiency of calculation. Some consideration will show that to get a measure of the efficiency of a calculation it is necessary to have on hand a method of measuring the complexity of calculating devices which in turn can be done if one has a theory of the complexity of functions. Some partial results on this problem have been obtained by Shannon, and also by McCarthy.
5. Self-lmprovement
Probably a truly intelligent machine will carry out activities which may best be described as self-improvement. Some schemes for doing this have been proposed and are worth further study. It seems likely that this question can be studied abstractly as well.
6. Abstractions
A number of types of ``abstraction'' can be distinctly defined and several others less distinctly. A direct attempt to classify these and to describe machine methods of forming abstractions from sensory and other data would seem worthwhile.
7. Randomness and Creativity
A fairly attractive and yet clearly incomplete conjecture is that the difference between creative thinking and unimaginative competent thinking lies in the injection of a some randomness. The randomness must be guided by intuition to be efficient. In other words, the educated guess or the hunch include controlled randomness in otherwise orderly thinking.
In addition to the above collectively formulated problems for study, we have asked the individuals taking part to describe what they will work on. Statements by the four originators of the project are attached.
... the paper continues ...
(setq foot (* 0.3048 m))
And not
(setq foot (* 12 inch))
It comes to the same thing, but inch is defined in metric as 2.54 cm and the foot is a derived unit of the inch. But this way it clearly spells out the dependency.
Im not criticizing, it was his library for his use, I'm just wondering if there is there a deeper meaning beyond "God enough"?
(setq km (* m 1000.0))
(setq cm (* m 0.01))
(setq foot (* 0.3048 m))
(setq ft (* 0.3048 m))
(setq mile (* 5280 foot))Furthermore, there are more than one definition of the inch. If he worked on astronomical data from the 19th century UK, all these units would have to be changed. By tying the foot to the inch he'd only have to redefine the inch to the old British inch.
I don't think McCarty would have been too snobbish in dialects, considering he wasn't expecting a practical language at all :D
It's kind of hard to understand why MacCarthy was surprised. Anyone sitting down to follow the spec and make it work on the machine would soon realize that they are just mechanically converting the expressions to code. Like where the specification calls APPLY with certain arguments, your machine code has to obtain those argument values and call APPLY in the same way. It will soon be obvious that you're just hand-coding exactly what is written. People were already doing that. FORTRAN is "formula translator"; before Fortran, formulas had to be translated to code by hand. Russell was just "fortranning" the formulas in the Lisp specification, like you would arithmetic formulas.
He was expecting a practical language and was designing one. Lisp was from day zero a project to implement a real programming language for a real computer.
Earlier he experimented with IPL and also list processing / functional programming in Fortran.
The original plan was to implement a Lisp compiler. At first the Lisp code, which McCarthy was experimenting with, was manually translated to machine code. So before the first Lisp compiler or interpreter existed, he was experimenting with how to represent and make the code running on a computer.
He then invented a Lisp interpreter in Lisp. Then came up the idea (-> Steve Russell) to use this EVAL as a base for an interpreter implementation, which was also implemented by manually translating the Lisp code to machine language. McCarthy at first thought that it was not possible to use this Lisp evaluator written in Lisp as a base, but Steve Russell implemented it.
Around 1962 then a Lisp compiler followed.
The paper by Herbert Stoyan describes the history of McCarthy's Lisp project:
https://github.com/papers-we-love/papers-we-love/blob/main/c...
> considering he wasn't expecting a practical language at all :D
He was expecting a practical language, since he was designing one and the team was implementing it. He designed data structures, core functions, evaluation, garbage collection as memory management, input and output, ... The language was to be used as a list processing language for research in the upcoming field of Artificial Intelligence: game play, natural language dialogs, symbolic maths (integration, ...), logic reasoning, computer vision, robotics, ...
He wrote several design documents on the language and its implementation. There even is the Lisp I Programmer's Manual from March 1960:
https://bitsavers.org/pdf/mit/rle_lisp/LISP_I_Programmers_Ma...
Lisp was initially developed for an IBM 704 computer and primitive list operations CAR (= FIRST, HEAD) and CDR (= REST, TAIL) were referencing machine architecture details of the IBM 704.
;;; multiplying a matrix by a column vector (defun mvmult (matrix vector) (list (scap (nth 0 matrix) vector) (scap (nth 1 matrix) vector)))
;;; sum of two vectors (defun vplus (vec1 vec2) (list (+ (nth 0 vec1) (nth 0 vec2)) (+ (nth 1 vec1) (nth 1 vec2))))
;;; difference of two vectors (defun vminus (vec1 vec2) (list (- (nth 0 vec1) (nth 0 vec2)) (- (nth 1 vec1) (nth 1 vec2))))
;;; scalar product of two vectors (defun scap (vec1 vec2) (+ (* (nth 0 vec1) (nth 0 vec2)) (* (nth 1 vec1) (nth 1 vec2))))
;;; product of scalar and vector (defun svmult (sca vec) (list (* sca (nth 0 vec)) (* sca (nth 1 vec))))
;;; sum of a list of vectors (defun addup (veclist) (if (null veclist) zerovec (vplus (car veclist) (addup (cdr veclist)))))
(defconst zerovec '(0 0) "zero vector with two components"1)
;;; length of a vector (defun length (x) (sqrt (+ (expt (nth 0 x) 2) (expt (nth 1 x) 2))))
(defconst Imatrix '((1.0 0.0) (0.0 1.0)) "unit 2x2 matrix")
(defun smmult (sca matrix) (list (svmult sca (nth 0 matrix)) (svmult sca (nth 1 matrix))))
(defun mplus (mat1 mat2) (list (vplus (nth 0 mat1) (nth 0 mat2)) (vplus (nth 1 mat1) (nth 1 mat2))))
(defun mminus (mat1 mat2) (list (vminus (nth 0 mat1) (nth 0 mat2)) (vminus (nth 1 mat1) (nth 1 mat2))))
(defun mmult (mat1 mat2) (list (list (scap (nth 0 mat1) (col 0 mat1)) (scap (nth 0 mat1) (col 1 mat1))) (list (scap (nth 1 mat1) (col 0 mat1)) (scap (nth 1 mat1) (col 1 mat1)))))
(defun multiplyup (matlist) (if (null matlist) Imatrix (mmult (car matlist) (multiplyup (car matlist) (multiplyup (cdr (matlist)))))))
Also saw someone else just added it to one of theirs: https://github.com/bbarclay7/bb-emacs/blob/5858823bb033be113...
> (setq avogadro 6.0221367e23) ; Avogadro number
This is now standardized to exactly 6.02214076e23
Ive seen this in dennis richie code, doom code, etc
Am i the only person who sees these things stand out like a sore thumb? It would drive me mad. They either all have to be not aligned, or aligned, but not 90%
I did an experiment to double check it's still true in a recent-ish emacs:
(defun my-fun ()
(setq test-123-456 'this-is-a-test))
(my-fun)
test-123-456 => this-is-a-test
There is some information in the info file under elisp about lexical binding, but you can just use let to keep variables in a lexical scope. (defun my-other-fun ()
(let ((test-789 'this-is-another-test))
test-789))
(my-other-fun)
test-789 => *** Eval error *** Symbol’s value as variable is void: test-789jigger := 1.5 floz