From bddda1613c461aa96a3f5ee01b48f2456cdd6c62 Mon Sep 17 00:00:00 2001 From: Bryan Newbold Date: Sun, 13 Nov 2022 20:55:11 -0800 Subject: more tmp and misc stuff to scratch --- Index.page | 1 - misc/artists.page | 7 --- misc/newcomb-paradox.page | 69 --------------------- misc/payments.page | 20 ------- scratch/artists.page | 7 +++ scratch/common_as_air_book_nots.txt | 33 +++++++++++ scratch/expat.txt | 26 ++++++++ scratch/newcomb-paradox.page | 69 +++++++++++++++++++++ scratch/numerical_computation.txt | 32 ++++++++++ scratch/nz.page | 34 +++++++++++ scratch/payments.page | 20 +++++++ scratch/review_nonblocking_verilog_kill | 67 +++++++++++++++++++++ scratch/teaching-cs.page | 102 ++++++++++++++++++++++++++++++++ scratch/topics-of-curiosity.page | 54 +++++++++++++++++ tmp/common_as_air_book_nots.txt | 33 ----------- tmp/expat.txt | 26 -------- tmp/numerical_computation.txt | 32 ---------- tmp/nz.page | 34 ----------- tmp/review_nonblocking_verilog_kill | 67 --------------------- tmp/teaching-cs.page | 102 -------------------------------- tmp/topics-of-curiosity.page | 54 ----------------- 21 files changed, 444 insertions(+), 445 deletions(-) delete mode 100644 misc/artists.page delete mode 100644 misc/newcomb-paradox.page delete mode 100644 misc/payments.page create mode 100644 scratch/artists.page create mode 100644 scratch/common_as_air_book_nots.txt create mode 100644 scratch/expat.txt create mode 100644 scratch/newcomb-paradox.page create mode 100644 scratch/numerical_computation.txt create mode 100644 scratch/nz.page create mode 100644 scratch/payments.page create mode 100644 scratch/review_nonblocking_verilog_kill create mode 100644 scratch/teaching-cs.page create mode 100644 scratch/topics-of-curiosity.page delete mode 100644 tmp/common_as_air_book_nots.txt delete mode 100644 tmp/expat.txt delete mode 100644 tmp/numerical_computation.txt delete mode 100644 tmp/nz.page delete mode 100644 tmp/review_nonblocking_verilog_kill delete mode 100644 tmp/teaching-cs.page delete mode 100644 tmp/topics-of-curiosity.page diff --git a/Index.page b/Index.page index d6662be..00410d9 100644 --- a/Index.page +++ b/Index.page @@ -18,7 +18,6 @@ right in to: * [/places/]() * [/ideas/]() * [/products/]() - * [/misc/]() This wiki is run on gitit, a Haskell web application built on top of the Pandoc formating package and the git revision system; see the [Gitit User's Guide]() diff --git a/misc/artists.page b/misc/artists.page deleted file mode 100644 index ac1cc86..0000000 --- a/misc/artists.page +++ /dev/null @@ -1,7 +0,0 @@ -Artists -======= - -* Kay Sage (1898-1963), American Surrealist Painter -* Yves Tanguy (1900-1955), French Surrealist Painter -* Hans Bellmer (1902-1975), French. "Die Puppe" series (dolls) -* Francis Picabia (1879-1953) French Painter diff --git a/misc/newcomb-paradox.page b/misc/newcomb-paradox.page deleted file mode 100644 index 58ace89..0000000 --- a/misc/newcomb-paradox.page +++ /dev/null @@ -1,69 +0,0 @@ ---- -format: rst -toc: no -... -================== -Newcomb's Dialemma -================== - -Newcomb's paradox was thought up by a researcher named Newcomb; it was first -explored and written up by Robert Nozick in the 1969 paper -"Newcomb's Problem and Two principles of Choice". - -The Situation -------------- -As narrated by an all knowing "predictor":: - - I am going to give you a choice. It is important to know that I really - pretty much know what you are going to do. I have been watching their whole - life and am additionally an immortal being; i've been doing this a long - time and always guess correctly. It's also important to know that I am - unbiased and don't care which decision you make, I have nothing to gain - either way. - - Here are two boxes: a large and a small. The small has a 10 shekel coin - in it (show everybody). The large one may or may not have a thousand - shekels in it; you don't know. Your choice is to either take only the - large box or to take both the large and small boxes. The twist is that - I already knew which decision you will make and decided whether or not - to put the $1000 in the large box or not based on that knowledge. - If I knew you would "two box", then I left the large box empty. If I knew - you would "one box" then I filled it. - -Dominance Mindset ------------------ -Regardless of what decision was made previously, and whether or not there -is anything in the large box, the person is better off taking both boxes; -either they will get just $10 (better than none) or $1010 (better -than $1000). So two-box. - -Trusting Mindset ----------------- -The predictor is pretty much always right so we can just ignore the -possibility that they are wrong. In this case, choosing to one-box -implies that the Predictor knew you would and you get $1000; -choosing to two-box implies that the predictor knew you would and you -only get $10. - -The predictor doesn't even have to be perfectly accurate; say they are -90%: -If you one-box, your expected value is $900. -If you two-box, your expected value is $110. - -Discussion ----------- -It's disputed whether this is a paradox, and there are many deeper arguments -that I don't have time to go into here. Ultimately, I am a one-boxer -though this is something of a minority position. - -Afterword ---------- -The person who taught me this paradox, Professor Augustin Rayo, a -two-boxer, then had this to add. He was talking with his one-boxing friend -and accused her of letting irrationality undermine her logic: she is so -optimistic that if a statement S is unprovable, but it would be nicer if S -was true than false, then she pretens that S is proven. So basically, even -though there is no rationalization, she will accept a statement "just -because it would be nice", and this isn't how logic works. To which she -replied "but wouldn't it be nice if it was?". - diff --git a/misc/payments.page b/misc/payments.page deleted file mode 100644 index decf409..0000000 --- a/misc/payments.page +++ /dev/null @@ -1,20 +0,0 @@ - -Costs of various payment plaftorms ----------------------------------------- - -As of Dec, 2011. - -Visa rates go down for reliable or "small ticket" vendors; eg 1.65% + $0.04 per -swipe. See http://usa.visa.com/download/merchants/Interchange_Rate_Sheets.pdf - - - Visa Standard Credit Fee: 2.70% + $0.10 per swipe - - Visa Standard Debit Fee: 1.90% + $0.25 per swipe - - Visa Utility Payment (Credit or Debit): $0.75 - - PayPay transfer, credit or debit (p2p): 2.9% + $0.30 - - PayPay transfer, bank (p2p): Free - - PayPal merchant (eg, ebay): 2.9% + $0.30 - - PayPal discounted merchant: 2.2% - - Stripe: 2.9% + $0.30 - - Dwolla under $10: free - - Dwolla over $10: $0.25 - - Square credit cards: 2.75% diff --git a/scratch/artists.page b/scratch/artists.page new file mode 100644 index 0000000..ac1cc86 --- /dev/null +++ b/scratch/artists.page @@ -0,0 +1,7 @@ +Artists +======= + +* Kay Sage (1898-1963), American Surrealist Painter +* Yves Tanguy (1900-1955), French Surrealist Painter +* Hans Bellmer (1902-1975), French. "Die Puppe" series (dolls) +* Francis Picabia (1879-1953) French Painter diff --git a/scratch/common_as_air_book_nots.txt b/scratch/common_as_air_book_nots.txt new file mode 100644 index 0000000..6adfa66 --- /dev/null +++ b/scratch/common_as_air_book_nots.txt @@ -0,0 +1,33 @@ +--- +format: rst +categories: book +toc: no +... + + +============================ +Common as Air +============================ + +:by: Lewis Hyde + +.. warning: These notes still in progress! + +p50: double telescope story (patents are public) + +p51: old history of publishers over authors + +land as canonical property: feudal commons, then enclosure + +p61: present value analysis says 20+ year copyright no incentive today + +p73: copyright over cage's 4'3" ! (actually trademark) + +stinted markets: not "free" + +allodial vs. feudal ownership + +p125: "patent of importation" given to immigrant (not inventor) + +p129: franklin loved "public and durable knowledge" + diff --git a/scratch/expat.txt b/scratch/expat.txt new file mode 100644 index 0000000..0583474 --- /dev/null +++ b/scratch/expat.txt @@ -0,0 +1,26 @@ +====================================== +On The Merits of Expartiatization +====================================== + +"Hairshirting" must be avoided: the benefits of all human progress should be +leveraged going forward, and technologies and lessons learned under flawed and +unjust organizations should not be ignored. The point is not to drop off, +abandon, or boycott the polical grid, it is to create a new and improved +subnetwork of the grid. + +Change happens when things are done well. + +The United States, and arguably many other developed western captialist +democracies, is stuck in a rut: political and social progress has slowed to a +halt and momentum has been lost. It is unclear whether there is a significant +backslide taking place or if this is just the perception from a lack of +progress. + +Other Places +--------------- + +Unused infrastructure is good. + +A balance of resources is good: enough to not be desperately dependant, but not so many that outside forces will be attracted. + + diff --git a/scratch/newcomb-paradox.page b/scratch/newcomb-paradox.page new file mode 100644 index 0000000..58ace89 --- /dev/null +++ b/scratch/newcomb-paradox.page @@ -0,0 +1,69 @@ +--- +format: rst +toc: no +... +================== +Newcomb's Dialemma +================== + +Newcomb's paradox was thought up by a researcher named Newcomb; it was first +explored and written up by Robert Nozick in the 1969 paper +"Newcomb's Problem and Two principles of Choice". + +The Situation +------------- +As narrated by an all knowing "predictor":: + + I am going to give you a choice. It is important to know that I really + pretty much know what you are going to do. I have been watching their whole + life and am additionally an immortal being; i've been doing this a long + time and always guess correctly. It's also important to know that I am + unbiased and don't care which decision you make, I have nothing to gain + either way. + + Here are two boxes: a large and a small. The small has a 10 shekel coin + in it (show everybody). The large one may or may not have a thousand + shekels in it; you don't know. Your choice is to either take only the + large box or to take both the large and small boxes. The twist is that + I already knew which decision you will make and decided whether or not + to put the $1000 in the large box or not based on that knowledge. + If I knew you would "two box", then I left the large box empty. If I knew + you would "one box" then I filled it. + +Dominance Mindset +----------------- +Regardless of what decision was made previously, and whether or not there +is anything in the large box, the person is better off taking both boxes; +either they will get just $10 (better than none) or $1010 (better +than $1000). So two-box. + +Trusting Mindset +---------------- +The predictor is pretty much always right so we can just ignore the +possibility that they are wrong. In this case, choosing to one-box +implies that the Predictor knew you would and you get $1000; +choosing to two-box implies that the predictor knew you would and you +only get $10. + +The predictor doesn't even have to be perfectly accurate; say they are +90%: +If you one-box, your expected value is $900. +If you two-box, your expected value is $110. + +Discussion +---------- +It's disputed whether this is a paradox, and there are many deeper arguments +that I don't have time to go into here. Ultimately, I am a one-boxer +though this is something of a minority position. + +Afterword +--------- +The person who taught me this paradox, Professor Augustin Rayo, a +two-boxer, then had this to add. He was talking with his one-boxing friend +and accused her of letting irrationality undermine her logic: she is so +optimistic that if a statement S is unprovable, but it would be nicer if S +was true than false, then she pretens that S is proven. So basically, even +though there is no rationalization, she will accept a statement "just +because it would be nice", and this isn't how logic works. To which she +replied "but wouldn't it be nice if it was?". + diff --git a/scratch/numerical_computation.txt b/scratch/numerical_computation.txt new file mode 100644 index 0000000..ca606b9 --- /dev/null +++ b/scratch/numerical_computation.txt @@ -0,0 +1,32 @@ + +Link Dump on Numerical Computation Topics +============================================ + +"Issues in Numerical Computing With Java" (NIST) +http://math.nist.gov/javanumerics/reports/issues.html#StandardInterfaces + +"Guide to Available Mathematical Software" +http://gams.nist.gov/ + +netlib + +http://math.nist.gov/MatrixMarket/ + +"Tools for Evaluating Mathematical and Statistical Software" (NIST dept) +http://math.nist.gov/temss/ + +"Statistical Reference Datasets" (NIST) +http://www.itl.nist.gov/div898/strd/ + +"Digital Library of Mathematical Functions" software comparison page +http://dlmf.nist.gov/software/ + +"Computer Physics Communications Program Library" +http://www.cpc.cs.qub.ac.uk/ + +"The Table Maker's Dilemma: our search for worst cases" +http://perso.ens-lyon.fr/jean-michel.muller/Intro-to-TMD.htm + +Third-Party Commercial Libraries: + http://www.nag.com/library_details_table + http://www.roguewave.com/products-services/imsl-numerical-libraries diff --git a/scratch/nz.page b/scratch/nz.page new file mode 100644 index 0000000..0c50c5d --- /dev/null +++ b/scratch/nz.page @@ -0,0 +1,34 @@ +================ +New Zealand +================ + +Justice System +---------------- + +203 prisoners per 100k, vs. 760 for USA and 55 for Iceland. + +Military +------------- +2.3/2.8% of population is active/total military, vs. 5.1/9.8% in the USA. 1% of +GDP (NZ 1.7 billion) vs. 4.7% ($692 billion) for USA. + +Sent some troops for Afghanistan War, sent engineers but not soldiers to Iraq. + +#2 in "Global Peace Index", USA #82/153. + +During the Vietnam War, Agent Orange chemicals were produced in New Zealand and +shipped to US forces in Vietnam. + +Privacy, Spycraft +------------------- + +NZ participates in US/Canada/UK/Australian spying and information sharing, +including ECHELON, with 2 ECHELON ground sites in NZ. + +Economy +------------ +"Westpac CEO gets $5.4m [NZD] pay packet [...] The figure likely makes him the +highest paid CEO in New Zealand this year." (2011; roughly $4.2m USD) + +http://www.stuff.co.nz/business/industries/5962549/Westpac-CEO-gets-5-4m-pay-packet + diff --git a/scratch/payments.page b/scratch/payments.page new file mode 100644 index 0000000..decf409 --- /dev/null +++ b/scratch/payments.page @@ -0,0 +1,20 @@ + +Costs of various payment plaftorms +---------------------------------------- + +As of Dec, 2011. + +Visa rates go down for reliable or "small ticket" vendors; eg 1.65% + $0.04 per +swipe. See http://usa.visa.com/download/merchants/Interchange_Rate_Sheets.pdf + + - Visa Standard Credit Fee: 2.70% + $0.10 per swipe + - Visa Standard Debit Fee: 1.90% + $0.25 per swipe + - Visa Utility Payment (Credit or Debit): $0.75 + - PayPay transfer, credit or debit (p2p): 2.9% + $0.30 + - PayPay transfer, bank (p2p): Free + - PayPal merchant (eg, ebay): 2.9% + $0.30 + - PayPal discounted merchant: 2.2% + - Stripe: 2.9% + $0.30 + - Dwolla under $10: free + - Dwolla over $10: $0.25 + - Square credit cards: 2.75% diff --git a/scratch/review_nonblocking_verilog_kill b/scratch/review_nonblocking_verilog_kill new file mode 100644 index 0000000..296f8c5 --- /dev/null +++ b/scratch/review_nonblocking_verilog_kill @@ -0,0 +1,67 @@ +to: team@leaflabs.com +subj: paper review: "Nonblocking Assignments in Verilog Synthesis..." + +TL;DR: this is something like a "goto considered harmful" w/r/t using confusing +blocking assignment in (non-sythesizable?) Verilog. + +# Context + +This paper was written in 2000 and seems to target Verilog programmers who +write non-synthesizable simulation code. Despite the word "Synthesis" in the +title. After reading, the implication that this paper might have any new +insights for an engineer whose failure might "kill" stikes fear in my gut. + +Apparently this won a "Best Paper" award at a conference back when it was +published. + +On page 15 there is a note about about synthesis performance: "The latter would +be inefficient from a simulation time perspective"; perhaps this was the +historical temptation of these bad practices? + +# Judgement + +There's really nothing new here (for jess/aj/bryan at least): for sequential +logic use nonblocking assignment in always@ blocks, and for combinatoral logic +use 'assign' statements outside of a block, unless you have something really +tight and complicated going on, in which case use an always block with a +carefully selected sensitivity list and all blocking assignments inside. + +# Nuggets + +From page 20: "Nonblocking assignments are updated after all $display +commands". I did not know this! The example given is pretty good; $strobe is +recommended as the alternative: + + module display_cmds; + reg a; + initial $monitor("\$monitor: a = %b", a); + initial begin + $strobe ("\$strobe : a = %b", a); + a = 0; + a <= 1; + $display ("\$display: a = %b", a); + #1 $finish; + end + endmodule + +gives: + + $display: a = 0 + $monitor: a = 1 + $strobe : a = 1 + +# Appendix: Verilog Coding Guidelines + +Verbatim from paper: + +1: When modeling sequential logic, use nonblocking assignments. +2: When modeling latches, use nonblocking assignments. +3: When modeling combinational logic with an always block, use blocking +. +4: When modeling both sequential and combinational logic within the same always +nonblocking assignments. +5: Do not mix blocking and nonblocking assignments in the same always block. +6: Do not make assignments to the same variable from more than one always block. +7: Use $strobe to display values that have been assigned using nonblocking +. +8: Do not make assignments using #0 delays. diff --git a/scratch/teaching-cs.page b/scratch/teaching-cs.page new file mode 100644 index 0000000..d441985 --- /dev/null +++ b/scratch/teaching-cs.page @@ -0,0 +1,102 @@ +--- +format: rst +categories: cs +toc: no +... +==================================== +Notes on Teaching Computer Science +==================================== + +:author: Bryan Newbold + +.. note:: Incomplete, just a structure of starting topics + +.. contents:: + +In thinking about how to teach somebody new "how to program" or "about +computers", it seems like getting the rough big picture is the best first step. + + +Engineering and Scientific Philosophies +----------------------------------------- +keywords: computation, computability, hierarchy, interface, implementation + +In approaching computer science it is important to note an arbitrary division +of the field between "computation" and "computability" that has arisen over +the years. Similar to the "theory" vs "experiment" schisms in other scientific +fields like physics, "computation" puts emphasis on actually generating +hardware and software to run in the real world, while "computability" focuses +on what can be computed and generalizations of specific computations. Of course +they are two sides of the same coin and should be appreciated together. + +It is almost impossible to deal with computer systems (hardware or software) +without breaking them up into modules and layers. Perhaps more so than in any +other field, conceptual barriers are reflected in the actual design and +implementation of systems, which can make it hard to learn how things work +because their inner workings are shielded from view both literally and +figuratively. For example, a software developer writing a web browser doesn't +have to know about what kind of monitor the user is sitting in front of, +what kind of physical link to the internet they have (or even how this +connection is managed), the details of their computer architecture, how their +application is delegated computing resources, what kind of mouse is being used, +etc etc. + +A more formal example is the ethernet protocol, which is used to +pass data between nodes in a relatively unstructured network. The ethernet +protocol itself lies above the physical "link layer", which means the same +protocol can be used for wireless radio communications or with conducting +wires. It lies below any sort of higher network layers and far below the +"application layer", so large amounts of data can be streamed over it between +two nodes, or messages between dozens of nodes can be passed over it, or it +can be only one link in a very large web of interconnections. This flexibility +has made it ubiquitous and is the protocol most network devices use without +a hitch, but occasionally it's imperfections can lead to problems at higher +levels which are hard to track down. + +Turing Completeness +----------------------------------------- +keywords: finite state machine, deterministic + +Personal Computer Hierarchy +----------------------------------------- +keywords: CPU, RAM, hard disk, peripherals, network, BIOS, motherboard, + operating system, serial, parallel, interrupts, multicore, register + +UNIX Operating Systems +----------------------------------------- +keywords: file system, kernel, driver, threading, + +UNIX is the Latin of operating systems: there were operating systems that came +after, and the average user isn't running a UNIX operating system, but it's +design is simple, functional, and has represents the dominant paradigms for +modern (non-experimental or special use) operating systems. + +As some context, Microsoft Windows is not directly based on UNIX. Apple OSX +and subsequent versions is built on top of a UNIX core. Linux is an open source +implementation of UNIX. BSD was the free UC Berkeley distribution of UNIX which +has branched off into open source implementations like FreeBSD, OpenBSD, and +NetBSD. "UNIX" got started as a Bell Labs research project in the 70's (?) + + +The Internet +----------------------------------------- +keywords: IP (internet protocol), ARP, MAC, routing, servers, backbone, + protocol, email, http, html + + +Software Development Tools +----------------------------------------- +keywords: compiler, lexical analysis, library, language, interpreter + + +Data Formats, Structures, and Algorithms +----------------------------------------- +keywords: string, integer, bit, list, pointer, tree, sort, P/NP + + +Design Paradigms +----------------------------------------- +keywords: server/client, object oriented, wrappers, KISS, parallelization, + resource locking, serialization, buffer + + diff --git a/scratch/topics-of-curiosity.page b/scratch/topics-of-curiosity.page new file mode 100644 index 0000000..c07b13c --- /dev/null +++ b/scratch/topics-of-curiosity.page @@ -0,0 +1,54 @@ +--- +format: rst +toc: no +... + +Topics of Curiosity +--------------------- + +*or, list of future knowledge items* + +* United Nations +* List of International Treaties + + including signatories + +* Ethernet +* Benthic Biology +* Antarctica +* Kyoto Protocol +* Sensory Deprivation +* Beat Authors +* Harvey Mudd +* National Science Foundation + + And other US national science organizations + +* Iraq War + + Strategy, costs, political figures, history, technology, prospects, companies, etc. + +* Recycling +* Pollution sources in the United States +* US Education System +* US Judicial Branch +* Kennedy School of Government +* Democratic Party +* Republican Party +* Green Party +* Bob Dole +* Al Gore +* Obama +* Book Publishing +* Internet + + Power consumption, user numbers, global connectivity, core and backbone services + +* One Laptop Per Child + + Bundled knowledge, regions, implementation plans, new software concepts, connectivity + +* Paul Dirac +* LaTeX +* vim +* pykrete diff --git a/tmp/common_as_air_book_nots.txt b/tmp/common_as_air_book_nots.txt deleted file mode 100644 index 6adfa66..0000000 --- a/tmp/common_as_air_book_nots.txt +++ /dev/null @@ -1,33 +0,0 @@ ---- -format: rst -categories: book -toc: no -... - - -============================ -Common as Air -============================ - -:by: Lewis Hyde - -.. warning: These notes still in progress! - -p50: double telescope story (patents are public) - -p51: old history of publishers over authors - -land as canonical property: feudal commons, then enclosure - -p61: present value analysis says 20+ year copyright no incentive today - -p73: copyright over cage's 4'3" ! (actually trademark) - -stinted markets: not "free" - -allodial vs. feudal ownership - -p125: "patent of importation" given to immigrant (not inventor) - -p129: franklin loved "public and durable knowledge" - diff --git a/tmp/expat.txt b/tmp/expat.txt deleted file mode 100644 index 0583474..0000000 --- a/tmp/expat.txt +++ /dev/null @@ -1,26 +0,0 @@ -====================================== -On The Merits of Expartiatization -====================================== - -"Hairshirting" must be avoided: the benefits of all human progress should be -leveraged going forward, and technologies and lessons learned under flawed and -unjust organizations should not be ignored. The point is not to drop off, -abandon, or boycott the polical grid, it is to create a new and improved -subnetwork of the grid. - -Change happens when things are done well. - -The United States, and arguably many other developed western captialist -democracies, is stuck in a rut: political and social progress has slowed to a -halt and momentum has been lost. It is unclear whether there is a significant -backslide taking place or if this is just the perception from a lack of -progress. - -Other Places ---------------- - -Unused infrastructure is good. - -A balance of resources is good: enough to not be desperately dependant, but not so many that outside forces will be attracted. - - diff --git a/tmp/numerical_computation.txt b/tmp/numerical_computation.txt deleted file mode 100644 index ca606b9..0000000 --- a/tmp/numerical_computation.txt +++ /dev/null @@ -1,32 +0,0 @@ - -Link Dump on Numerical Computation Topics -============================================ - -"Issues in Numerical Computing With Java" (NIST) -http://math.nist.gov/javanumerics/reports/issues.html#StandardInterfaces - -"Guide to Available Mathematical Software" -http://gams.nist.gov/ - -netlib - -http://math.nist.gov/MatrixMarket/ - -"Tools for Evaluating Mathematical and Statistical Software" (NIST dept) -http://math.nist.gov/temss/ - -"Statistical Reference Datasets" (NIST) -http://www.itl.nist.gov/div898/strd/ - -"Digital Library of Mathematical Functions" software comparison page -http://dlmf.nist.gov/software/ - -"Computer Physics Communications Program Library" -http://www.cpc.cs.qub.ac.uk/ - -"The Table Maker's Dilemma: our search for worst cases" -http://perso.ens-lyon.fr/jean-michel.muller/Intro-to-TMD.htm - -Third-Party Commercial Libraries: - http://www.nag.com/library_details_table - http://www.roguewave.com/products-services/imsl-numerical-libraries diff --git a/tmp/nz.page b/tmp/nz.page deleted file mode 100644 index 0c50c5d..0000000 --- a/tmp/nz.page +++ /dev/null @@ -1,34 +0,0 @@ -================ -New Zealand -================ - -Justice System ----------------- - -203 prisoners per 100k, vs. 760 for USA and 55 for Iceland. - -Military -------------- -2.3/2.8% of population is active/total military, vs. 5.1/9.8% in the USA. 1% of -GDP (NZ 1.7 billion) vs. 4.7% ($692 billion) for USA. - -Sent some troops for Afghanistan War, sent engineers but not soldiers to Iraq. - -#2 in "Global Peace Index", USA #82/153. - -During the Vietnam War, Agent Orange chemicals were produced in New Zealand and -shipped to US forces in Vietnam. - -Privacy, Spycraft -------------------- - -NZ participates in US/Canada/UK/Australian spying and information sharing, -including ECHELON, with 2 ECHELON ground sites in NZ. - -Economy ------------- -"Westpac CEO gets $5.4m [NZD] pay packet [...] The figure likely makes him the -highest paid CEO in New Zealand this year." (2011; roughly $4.2m USD) - -http://www.stuff.co.nz/business/industries/5962549/Westpac-CEO-gets-5-4m-pay-packet - diff --git a/tmp/review_nonblocking_verilog_kill b/tmp/review_nonblocking_verilog_kill deleted file mode 100644 index 296f8c5..0000000 --- a/tmp/review_nonblocking_verilog_kill +++ /dev/null @@ -1,67 +0,0 @@ -to: team@leaflabs.com -subj: paper review: "Nonblocking Assignments in Verilog Synthesis..." - -TL;DR: this is something like a "goto considered harmful" w/r/t using confusing -blocking assignment in (non-sythesizable?) Verilog. - -# Context - -This paper was written in 2000 and seems to target Verilog programmers who -write non-synthesizable simulation code. Despite the word "Synthesis" in the -title. After reading, the implication that this paper might have any new -insights for an engineer whose failure might "kill" stikes fear in my gut. - -Apparently this won a "Best Paper" award at a conference back when it was -published. - -On page 15 there is a note about about synthesis performance: "The latter would -be inefficient from a simulation time perspective"; perhaps this was the -historical temptation of these bad practices? - -# Judgement - -There's really nothing new here (for jess/aj/bryan at least): for sequential -logic use nonblocking assignment in always@ blocks, and for combinatoral logic -use 'assign' statements outside of a block, unless you have something really -tight and complicated going on, in which case use an always block with a -carefully selected sensitivity list and all blocking assignments inside. - -# Nuggets - -From page 20: "Nonblocking assignments are updated after all $display -commands". I did not know this! The example given is pretty good; $strobe is -recommended as the alternative: - - module display_cmds; - reg a; - initial $monitor("\$monitor: a = %b", a); - initial begin - $strobe ("\$strobe : a = %b", a); - a = 0; - a <= 1; - $display ("\$display: a = %b", a); - #1 $finish; - end - endmodule - -gives: - - $display: a = 0 - $monitor: a = 1 - $strobe : a = 1 - -# Appendix: Verilog Coding Guidelines - -Verbatim from paper: - -1: When modeling sequential logic, use nonblocking assignments. -2: When modeling latches, use nonblocking assignments. -3: When modeling combinational logic with an always block, use blocking -. -4: When modeling both sequential and combinational logic within the same always -nonblocking assignments. -5: Do not mix blocking and nonblocking assignments in the same always block. -6: Do not make assignments to the same variable from more than one always block. -7: Use $strobe to display values that have been assigned using nonblocking -. -8: Do not make assignments using #0 delays. diff --git a/tmp/teaching-cs.page b/tmp/teaching-cs.page deleted file mode 100644 index d441985..0000000 --- a/tmp/teaching-cs.page +++ /dev/null @@ -1,102 +0,0 @@ ---- -format: rst -categories: cs -toc: no -... -==================================== -Notes on Teaching Computer Science -==================================== - -:author: Bryan Newbold - -.. note:: Incomplete, just a structure of starting topics - -.. contents:: - -In thinking about how to teach somebody new "how to program" or "about -computers", it seems like getting the rough big picture is the best first step. - - -Engineering and Scientific Philosophies ------------------------------------------ -keywords: computation, computability, hierarchy, interface, implementation - -In approaching computer science it is important to note an arbitrary division -of the field between "computation" and "computability" that has arisen over -the years. Similar to the "theory" vs "experiment" schisms in other scientific -fields like physics, "computation" puts emphasis on actually generating -hardware and software to run in the real world, while "computability" focuses -on what can be computed and generalizations of specific computations. Of course -they are two sides of the same coin and should be appreciated together. - -It is almost impossible to deal with computer systems (hardware or software) -without breaking them up into modules and layers. Perhaps more so than in any -other field, conceptual barriers are reflected in the actual design and -implementation of systems, which can make it hard to learn how things work -because their inner workings are shielded from view both literally and -figuratively. For example, a software developer writing a web browser doesn't -have to know about what kind of monitor the user is sitting in front of, -what kind of physical link to the internet they have (or even how this -connection is managed), the details of their computer architecture, how their -application is delegated computing resources, what kind of mouse is being used, -etc etc. - -A more formal example is the ethernet protocol, which is used to -pass data between nodes in a relatively unstructured network. The ethernet -protocol itself lies above the physical "link layer", which means the same -protocol can be used for wireless radio communications or with conducting -wires. It lies below any sort of higher network layers and far below the -"application layer", so large amounts of data can be streamed over it between -two nodes, or messages between dozens of nodes can be passed over it, or it -can be only one link in a very large web of interconnections. This flexibility -has made it ubiquitous and is the protocol most network devices use without -a hitch, but occasionally it's imperfections can lead to problems at higher -levels which are hard to track down. - -Turing Completeness ------------------------------------------ -keywords: finite state machine, deterministic - -Personal Computer Hierarchy ------------------------------------------ -keywords: CPU, RAM, hard disk, peripherals, network, BIOS, motherboard, - operating system, serial, parallel, interrupts, multicore, register - -UNIX Operating Systems ------------------------------------------ -keywords: file system, kernel, driver, threading, - -UNIX is the Latin of operating systems: there were operating systems that came -after, and the average user isn't running a UNIX operating system, but it's -design is simple, functional, and has represents the dominant paradigms for -modern (non-experimental or special use) operating systems. - -As some context, Microsoft Windows is not directly based on UNIX. Apple OSX -and subsequent versions is built on top of a UNIX core. Linux is an open source -implementation of UNIX. BSD was the free UC Berkeley distribution of UNIX which -has branched off into open source implementations like FreeBSD, OpenBSD, and -NetBSD. "UNIX" got started as a Bell Labs research project in the 70's (?) - - -The Internet ------------------------------------------ -keywords: IP (internet protocol), ARP, MAC, routing, servers, backbone, - protocol, email, http, html - - -Software Development Tools ------------------------------------------ -keywords: compiler, lexical analysis, library, language, interpreter - - -Data Formats, Structures, and Algorithms ------------------------------------------ -keywords: string, integer, bit, list, pointer, tree, sort, P/NP - - -Design Paradigms ------------------------------------------ -keywords: server/client, object oriented, wrappers, KISS, parallelization, - resource locking, serialization, buffer - - diff --git a/tmp/topics-of-curiosity.page b/tmp/topics-of-curiosity.page deleted file mode 100644 index c07b13c..0000000 --- a/tmp/topics-of-curiosity.page +++ /dev/null @@ -1,54 +0,0 @@ ---- -format: rst -toc: no -... - -Topics of Curiosity ---------------------- - -*or, list of future knowledge items* - -* United Nations -* List of International Treaties - - including signatories - -* Ethernet -* Benthic Biology -* Antarctica -* Kyoto Protocol -* Sensory Deprivation -* Beat Authors -* Harvey Mudd -* National Science Foundation - - And other US national science organizations - -* Iraq War - - Strategy, costs, political figures, history, technology, prospects, companies, etc. - -* Recycling -* Pollution sources in the United States -* US Education System -* US Judicial Branch -* Kennedy School of Government -* Democratic Party -* Republican Party -* Green Party -* Bob Dole -* Al Gore -* Obama -* Book Publishing -* Internet - - Power consumption, user numbers, global connectivity, core and backbone services - -* One Laptop Per Child - - Bundled knowledge, regions, implementation plans, new software concepts, connectivity - -* Paul Dirac -* LaTeX -* vim -* pykrete -- cgit v1.2.3