Tuesday, September 27, 2016

[qoqbetqt] Forested virtual reality

One of the most dramatic impacts humanity has had on the planet is deforestation.  Simulate in virtual reality or augmented reality what your area, your terrain, would have looked like before people, likely heavily forested.  Which kind of trees (requires science to answer)?  Computer graphics of sun and sky filtering through lots of little leaves is difficult.

[tmgjbmah] GMP mpz_urandomm nonuniform

The GNU MP function mpz_urandomm tries rejection sampling up to 80 times (MAX_URANDOMM_ITER) to find a random number which fits within the user-specified range.  Each attempt I think fails with probability at most 1/2, so the probability of 80 consecutive failures is around 0.5^80, an extremely small number.

After 80 failures, it silently uses mod to bring the too large number into range, which destroys the uniformity.  I think it should instead abort, because 80 consecutive failures means something deeper is going wrong, perhaps a faulty random number generator which only emits '111...'.

[fpnlixqu] Peace and War

Is military might the only way long term peace has occurred in history?  Is it the only way it can occur?  Within a country, military might translates to a fascist government.

[dqttfhkg] Best worst ranking

For a competitive event in which competitors compete in several sub-events, let the "all-around" ranking be the ranking in the competitor's worst event.

Who is the best chess and go 囲碁 player?

[txdialwv] Delendum effect

Does the phenomenon of a person's compassion toward someone else dropping suddenly to zero have a name?

Referencing "Carthago delendum est".

[ptzvyvue] Proven media decoders

It would be nice if a web browser handled every possible media type under the sun; however, this increases the work required for the maintainers, and increases the attack surface of security vulnerabilities for malformed images.  (Ostensibly, these were the reasons given by Mozilla for removing support for MNG; there was probably political component of wanting kill off image formats they did not like.)

For security vulnerabilities, one could add back any media decoder formally proven free of security defects.  Thry could also have proven resource usage (memory, CPU) characteristics.  Less ambitiously, they could be run in a runtime sandbox that blocks faulty decoders from doing harm as well as enforce constraints of memory and CPU usage.

Continuing along the formal path, the decoder could be proven to correctly decode a specification of an image format (or other media format), at which point the user can download and substitute any other implementation which also is proven follows the spec.  This could provide a mechanism for additional media formats to be introduced aside the browser: an image gives its type, implicitly or explicitly a specification of how it is to be decoded, and the user (user agent) goes out and finds a decoder that is proven to meet the spec (as well as other guarantees).  There remains (among other things) the challenge of a bug-free specification.

[vnztnsqt] Lakey McLakeface

Loch Lochy seems like a similar fictional Scottish-sounding construction, or perhaps Lake McLakeyface.  There's also a Loch Loch (Cairngorms National Park), a loch so nice they named it twice.

[wgbcueip] Deep endgames

Train a neural network to classify chess endgames, then (this is the hard part) extract knowledge from the nets that is useful for humans to play the endgame.

Perhaps classify not just whether a position is won, lost, or drawn but also whether a move is making progress.

[uzgrzkla] Countdown

Cheap digital wristwatches usually have alarms and stopwatches but rarely countdown timers.

To time how long it takes to do something, but for which one may be too distracted at the end to stop a stopwatch or note the time, set a countdown timer with the estimated time at the beginning.  The accurate interval time may be found by bisection, updating the estimated time each iteration.  This takes many trials.

Monday, September 26, 2016

[rotqywrk] foldl foldr

foldl: (x * y) * z

foldr: x * (y * z)

Also a nice reference: https://wiki.haskell.org/Foldr_Foldl_Foldl'

Wednesday, September 21, 2016

[djipuhos] One quadrillion dead

If the realistic estimates of the population of an ecumenopolis like Coruscant, almost completely covered in skyscrapers miles high, are to believed (as opposed to the officially published figure which seems way too low), then perhaps a quadrillion people died in the destruction of Hosnian Prime, a similarly urbanized planet: 100000 to 200000 times the current earth population.

Alderaan seems similar to earth now, so much much fewer were killed by the Death Star.

Tell a realistic story of galactic war in which death tolls in the quadrillions, even a daily death toll in the quadrillions, is par for the course.  Before the planet busting weapons, maybe Base Delta Zero against an ecumenopolis.

Incidentally, Starkiller Base illustrates the weakness of Saddam Hussein's unmoveable supergun: fire it just once and its location will be revealed to the enemy, who will come and destroy it.  The Death Star, being mobile, was a much better design.

[icplkeor] Founders versus Gases

The Founders (of the Star Trek DS9 universe) encounter a species of gaseous life forms.  The gases treat the liquids with tremendous hostility and contempt, seeking to to destroy or subjugate all liquids.  The Founders of course recognize that this parallels how they see and treat solids, and then... the story remains to be written.

[ospzwams] Faster light

How would the universe be different if the speed of light were faster, perhaps much faster?

Probably magnetic fields are weaker, or electric fields are stronger.  Other subatomic effects probably wreak havoc compared to the current universe.  (The "tuning" theorists might say the speed of light is exactly the right speed for intelligent life to observe it and ponder it.)

Inspiration is hard science fiction in an alternate universe in which high speed travel around (say) the galaxy is possible without having to invoke machinations such as hyperspeed or wormholes, or to worry about time dilation.

(Alternatively, the characters could just live longer.)

[zonmerbp] Fermat test

The worst case failure rate over bases for the Fermat test of primality approaches 100% in the case of Carmichael numbers.  However what is its average failure rate, say, over all 8192-bit numbers, if the base is chosen randomly (or even deterministically, e.g., 2)?  This should be easy to measure exhaustively for small numbers, then extrapolate.

(As comparison, the worst case failure rate for the Miller-Rabin is bounded above by 25% over all bases, so even if you happen to hit one of those worst case numbers, repeated tests with different bases will drive 0.25^n to zero.  I do not know the average failure rate of Miller-Rabin, though it is probably very low.)

If one is randomly sampling large numbers in search of a prime, then, at some size, the probability of accidentally selecting a Carmichael number becomes lower than the probability of machine error over some number of repeated Fermat tests.  What size is the the break even, after which it is not worth the additional programming effort to implement Miller-Rabin?  (This is not for the case when there might be an adversary who might deliberately feed you Carmichael numbers.)

[crnsbmxl] Generating random big integers

Given a source of uniform random unsigned integers over a range (not necessarily a power of two), generate a uniform random large integer.  This is probably not too hard.  Use a previous subroutine as a last step.

Inspiration was the Miller-Rabin probabilistic primality test, whose failure rate 1/4 requires that the bases be chosen uniformly randomly all the way up to the number being tested, typically a large number.  I'm guessing very few implementations of Miller-Rabin do this sampling correctly.  Arnault (August 1995). "Constructing Carmichael Numbers Which Are Strong Pseudoprimes to Several Bases" has constructed large composite numbers which pass the Miller-Rabin test for all small bases, and it seems likely that one can construct such a pseudoprime for any given deterministic collection of bases.

If one were to attempt to construct a random large integer from just one double precision random deviate, then only about 2^52 bases are possible, and it's only a little preposterous to imagine constructing a pseudoprime that passes the test for all these bases.

[wlpwaeor] Computer generated porn

How soon will computer-generated pornography constitute the majority of porn consumed?  It might be soon, as porn requires less acting ability so might be easier for a computer to synthesize.  Computer graphics can deliver photorealism already.  Or it might take a very long time, as people might be very sensitive to notice when it isn't right.  It might also take a very long time because computers are and will always be expensive compared to an amateur with a cam.

It'll be a gradual process, because even with computers, there will still be required (for a while) human models to provide features and starting points for computer-generated models, motion capture performers, and imaginative and creative people to imagine and create the porn in/with a computer instead of live.  Popular camgirls that week might serve as inspiration for computer generated copycats.

The sex work industry will change, though it is constantly changing due to technology.

Society will probably change in its views about child pornography when any child pornography that can be imagined can be generated in a computer without harming any child and be photographically indistinguishable from the real thing.

[vpywtggp] Communicating via chess moves

To avoid prearranged draws, consider structuring a tournament with random pairings each round and players sequestered from each other so they cannot see whom they are playing.  How difficult would it be for players still to communicate with each other, confirming each other's identity then agreeing to a draw, through their moves, perhaps opening moves?

Do things become easier or harder if players are permitted to see the other games in progress, without the players' labeled of course?  On one hand, it might make it possible for a player to determine who other players are by observing style and opening selection, and determine who the player is playing by a process of elimination.  On the other hand, visible games could help a player pretend to be another player trying to take advantage of draw prearrangements between other players.  Maybe the visible other games are delayed.

Chess960 would probably make it more difficult to communicate via opening choice.

Having a few weak players in the tournament might decrease the tendency of prearranged or short draws.  The strong players cannot know for sure whether they are playing a weak player against whom it would be a shame to give up a draw.

[npvraiac] GUI command line

Create a widget for a desktop environment which is a one-line command line, with which one can launch GUI applications or even run sequences of commands all in one line e.g., separated by semicolons in bash syntax.

If clicked on, the widget can expand to display a full terminal window complete with any console output the GUI commands may have emitted.  The widget probably runs a virtual terminal, e.g., screen or tmux, to be able to nicely redisplay output at any desired window size.

Typically GUI applications should be started and backgrounded, i.e., &.  Provide a feature that backgrounds commands by default, so the widget remains available to accept more commands.  Perhaps it backgrounds after a delay or user activity in the just opened GUI window.  Maybe also some way of distinguishing console output of different backgrounded applications.  Perhaps each application runs in a separate "screen" window, though that thwarts things like cd.

This should be easy.

[npvraiac] Guillotine

A curious bit of trivia begins the story: the last person guillotined in France was executed in 1977, surprisingly recent.  But 1977 is in fact the last time anyone was executed in France, because as a civilized country, France abolished the death penalty after that.

Who was the last person person executed in France?  Can you guess characteristics about the person and about the crime?  Answer: an Arab man convicted of kidnapping, rape, and murder of a young white French woman.  And well duh, you could have guessed that: in a country with popular sentiment on the cusp of abolishing capital punishment, it's the lower class committing a sex crime against the upper class that incites the blood lust for revenge; similar to lynchings for (perceived) sex crimes in American history.

Who was the last person executed in Western Europe, before all of Western Europe abolished the death penalty?  The answer is, again, this case -- France was the last to abolish the death penalty -- and again, duh, you could have guessed it given how high social tensions are between Arab and white in France.  (Though if the answer were instead the English executing an Irishman, the Germans executing a Turk, or anyone executing a Romani, that would not be too surprising.)  France probably is the closest to reenacting the death penalty for exactly this continued social tension (terror attacks), though one wonders what method of execution they will use.

Once again, a lesson for America: the continued existence of the death penalty reflects the social tension and discord in the country.  If the death penalty is abolished too quickly, we'll probably see lynchings again.

Japan also still has a death penalty.

[ykvgtzld] Nonuniform shared memory

Having a distributed memory system simulate shared memory, i.e., cache coherent non uniform memory access, is a very convenient abstraction for programmers.  However, what other features could be provided to make it possible for a dedicated programmer to optimize things, breaking the abstraction?

The OS moves blocks of memory closer to the processor using it.  A program can declare in advance that it plans to frequently access (or write) a block of memory.  Or the program could explicitly request a block of memory be moved closer.  Conversely the program could prevent the OS from automatically moving a block of memory if it knows it will be a bad idea.

Alternatively, some way of migrating a process to the processor close to the memory that the process will accessed.  Perhaps automatic, perhaps explicitly yes or explicitly disable automatic.

A program could issue a bunch of memory requests, wait for the first few to respond, then cancel the remaining requests.  The remaining requests, if they arrive back, should not displace elements in the cache.

[sufdptlv] Disablable convenience features

Consider a feature (e.g., in software) to make things more convenient to users.  Can the feature be disabled by the user?

Often the convenience feature makes the common case easy, but needs to be disabled to make the less common case possible.

[rwewgwkn] Failure of strong and weak governments

If government is too weak, organized crime takes over.  If government is too strong -- fascist -- it itself, or its agents, fearing no repercussion,  become the perpetrator of crimes.

Worse still, in between them is an unstable equilibrium: organized crime will leverage its organization to weaken government further, while a fascist government will leverage its power to snuff out opposition and maintain power.

How can these bad outcomes be avoided?

[kpzuqkgz] Fist fight versus cat fight

In the movies, the trope is, a fistfight breaks out among men, a catfight breaks out among women.  Subvert this trope.

Which is the superior fighting form, perhaps for people who have no fight training?  On one hand, a fist fight seems to have rules, e.g., no kicking, while a catfight has none.  On the other hand, kicking might be difficult (especially balance-wise) for someone without training.

Monday, September 19, 2016

[sfhjvcgz] USA chess Olympiad asterisks

The previous two American chess Olympiad team gold medals have (silly IMHO) asterisks next to them: Soviet Union did not participate, and Soviet Union did not exist yet.

The recent gold medal could also have a silly asterisk: Armenia did not participate, and Vassily Ivanchuk (of Ukraine, whom USA tied in match points) was out playing checkers (draughts).  Armenia and Ukraine have dominated gold medals in previous recent Olympiads.

[yjjuwafv] Carlsen Olympiad

With Norway's (seeded 12th) surprise high finish (5th) in the recent chess Olympiad, it's fun to speculate how it could have done even better if GM Magnus Carlsen had won more games, not that he played especially poorly.  Because he is undisputed world champion and the highest rated player (2857), we can always argue Carlsen should have won more games.

The games in which Carlsen could have done half a game point better (he had no losses) and the half point would have mattered for Norway's match points were

Round 3 draw with black against GM Constantin Lupulescu (2618) of Romania

Round 6 draw with white against GM Julio Catalino Sadorra (2560) of Philippines, arguably one of the bigger upsets of the event

Round 11 draw with black against GM P. Harikrishna (2752) of India.

Norway finished tied with India in match points, but worse in tiebreaks.  One more match point in any of these games would have vaulted them over India to 4th place.  Two more match points would have tied them in match points with Russia (3rd place) with unknown tiebreaks.

Of course, a different result in any of the rounds would have affected the Swiss pairings of subsequent rounds.

Of course, speculations about how Carlsen could have played better improving Norway's finish ought to be paired with how all the other players could have played worse.


The Chess Results website, despite choosing the language to be English, still uses German abbreviation for colors: s (schwarz = black) and w (weiss = white), which happen to common surnames.

Monday, September 12, 2016

[hpjgrskw] Art and politics

There have certainly been artists like Nina Simone and Dante Alighieri for whom their art was a expressly political statement.  But there have also existed artists who were expressly apolitical: they endeavored to create art that transcended political and social boundaries, art that captured a universal aspect of the human condition.  Sure, their art may reflect the sounds, language, movement, etc., of the culture they were born into, but those are the tools they had to work with, and not an endorsement of, or even participation in, a political position.  To ascribe politics to their art is profoundly disrepectful, akin to declaring that they are failures as artists, failures in their artistic quest to create something that rose above the foibles and quibbles of human politics.  Therefore, when discussing politics as it relates to an art form, e.g., dance, be mindful that adding politics to where there wasn't intended to be by the artist can be just as disrepectful as removing politics from where there was intended to be, depending on each artist.

In the context of politics of race, and dance.

[erewaocu] Publicly funded journalism

Journalism is a public good, so suffers from tragedy of commons: a private business has difficulty making a profit from it (unless it resorts to journalism as entertainment, which we see happening: politics as NASCAR).

The standard solution for inducing the optimal production of public goods is public funding, but publicly funded journalism tends to go terribly, e.g., Pravda.

Is there a solution?  Perhaps somehow the public or agents of the public enforcing accountability in accuracy and completeness of the journalism, maybe something adversarial.

[rjejcxti] Overlapping leagues

On odd years, leagues of (say) 16 formed by ranking all the players ranked in order (perhaps by Elo from chess) and choosing segments of 16.  Play round robin within each league.

On even years, the top league is 8 and does double round robin offering more rigorous competition among the very top, perhaps establishing who is the best.  The lower leagues remain 16, so the boundaries are staggered compared to odd years.

One could do promotion and relegation, or simply rerank all players at the end of each season (Elo), and reassign to leagues.

How much cooperation and Elo manipulation can occur to game the system?  Fischer criticized round robin tournaments.

[shgifulx] De Bruijn sphere

Draw a pattern onto a sphere so that every small localized segment of the pattern is unique.  Probably subdivisions of an icosahedron (triangles) or dual (pentagons and hexagons).  You get to choose what is meant by "small localized segment".

Inspired by the De Bruijn torus, but we do not require every subpattern appear, only that every subpattern be different from the rest.

[vgbuolje] Prime frieze

This picture, illustrating the distribution of primes, is neat.  Its width is 3 * 5 * 7 * 11 = 1155, so exhibits stripes.

Find dimensions, products of small primes, which fit neatly onto one screen, illustrating the logarithmic decrease in density.  1155 is just a little bit too wide for 1080 HD.  OK to scale down by a small integer factor, yielding grayscale.

Perhaps simply omit multiples of 2 (already done) 3 5 7 11, splicing out white columns.

Are there dimensions which yield prominent diagonal stripes as well as vertical?

[xcrwyhfw] Bluetooth broadcast

Create a device which can broadcast the same music to many different Bluetooth audio players simultaneously.  (Perhaps a typical computer can already do this: it can certainly handle a few Bluetooth devices simultaneously, e.g., mouse and keyboard.)

Goal is for a DJ to broadcast a silent dance party.

[uthxtenp] Language for speed reading

Create a language, in particular an orthography, designed for speed reading.

It will probably incorporate color, because the eye is sensitive to that.  It will probably be more two dimensional, like Chinese or Korean, rather than linear like Latin scripts: chunks of meaning cover a more compact area rather than spread out over a long thin line, though this could be mitigated with narrow columns of text.  It might look more like pictures and diagrams, because 1000 words.

[jtdrvpoi] Pursue your dream

Tell a story which juxtaposes the seemingly noble principle that one should and should be able to pursue one's dreams, with the reality that the dreams that the characters pursue are terrible: selfish, destructive to society, etc.

Perhaps exploration on what social forces, perhaps sinister forces, cause people to have the dreams they have.

[jqwinvkz] More Chaconne

Bach's Chaconne, or any chaconne, being variations on a short harmonic theme, invites composition or improvisation of further variations on the theme, like jazz.

Bach's Chaconne also certainly invites orchestration and arrangement for other instruments and ensembles, which have been done and should be continued.  There are moments which sound like, "this is where the full orchestra comes in".

[zeuzurcz] Multiplication table up to 20

One only needs to memorize the multiplication table up to 5*5 in order to be able to multiply up to 10*10.  For digits larger than 5, substitute (10-x) and use the distributive rule (FOIL).

However, having sunk the cost of memorizing up to 10*10, one can apply the same principle to multiply up to 20*20.  Recursively go further, i.e., 40, though that might be more work than the traditional tableau.

Flash cards app showing partial sums.

[fnngupvi] Chess960 knight handicap

Consider a human versus computer chess tournament with the human getting an advantage of a knight.

Rybka vs. Meyer seemed to prove that a knight is too much of a handicap, but I still feel there is more that computers could do to learn to swindle.

To decrease the human's advantage, let it be initial position be chosen randomly among the Chess960 opening positions.  A human can no longer deeply prepare a single low-risk or anti-computer opening from the orthodox opening position.  Meanwhile, the computer, being not constrained by memory, can deeply prepare 960 openings (or 1920 if we randomize which knight is removed) designed to lead the human into tricky waters.

[sgnuxiuo] Multiplication table in various bases

Omitting multipliers 0 and 1 because they are trivial (which makes the entire base 2 multiplication table trivial).  Source code in Perl.  Heavy lifting is done by "bc".

There are some patterns visible between bases.

Base 3


Base 4


Base 5


Base 6


Base 7


Base 8


Base 9


Base 10


Base 11


Base 12


Base 13


Base 14


Base 15


Base 16


Saturday, September 10, 2016

[oigtpyve] Learning and play

Learning happens well in a context or environment of play.  It also happens not in play.  Examine both styles, perhaps determining which is better.

On one hand, I suspect schools are set up completely wrong.  On the other hand, the purpose of school may not be learning: 1, 2.

[itdbcpil] Wikipedia link then

Create a Wikipedia tool for following an article's link to another article, but pulling up the old version of the linked article as it existed when the link was originally made in the first article.  This could be tricky if links were made then un-made the made again (possibly to confuse such a tool), as well as articles being moved and renamed.

The tool can also compares the current version of the linked article to the historical version.

[bjtdeito] Nuclear science on a densely populated planet

Tell a hard science fiction story of a civilization in which the power of the atom, for nuclear power and possibly nuclear weapons, is only discovered after the entire planet has become extremely densely populated, like Coruscant.  There are no sparsely populated places to test things, where early reactors may fail without catastrophic results.

[egvimqga] Triangle in square

Consider an isosceles triangle with base 1 and height 1 inscribed in a unit square.  There are 4 different ways of doing it with the base coincident to an edge of the square.

Stack two such squares on top of each other: 16 possibilities, an encoding of hexadecimal.  4 such squares arranged in a big square has 256 possibilities, encoding a byte.

Consider stretching the tip of the isosceles triangle beyond the edge of the square so that it touches the triangle in the adjacent square.  This helps the set look like one connected character.  One tricky case is 4 triangles each "pointing" to the next one around the big square.

Update: For the tricky case, the height of the isosceles triangle is 0.5 + sqrt 0.5, and the apex angle is 45 degrees, making it surprisingly a wedge of an octagon.

Friday, September 09, 2016

[hjjiytlg] Text only chess

A table: name of each piece, and coordinates of where it is.  Name might be the original name in descriptive notation, e.g., King's Knight Pawn.  Some pieces will have location "captured".

Possibly useful for interfaces which cannot show diagrams.

Could easily add additional annotations about pieces being attacked and defended, etc.

Inspired by a baseball scoreboard showing the players' names and their stats for the game.

Wednesday, September 07, 2016

[xoahstvf] Diacritics in English

According to Wikipedia, the two diacritical marks native to English, as opposed to applied to loanwords from foreign languages, are the grave accent (used in poetry to indicate a pronunciation of an elided vowel for the purpose of meter), and diaereses (umlaut), to indicate that a vowel should be pronounced separately, for example Zoe and cooperation.

Both are kind of arguable.

[gqoyetfv] Time-limited location link

Provide a URL to someone so that they can track where you (your GPS enabled smartphone) are.  Typical usage: "I'm on my way."  The URL only works for a limited time, controllable by the sender.

Phone as a server, or intermediate server, perhaps personal server.

Monday, September 05, 2016

[xiwmharn] Low resolution mathematical art

What elegant mathematical diagrams do not require high resolution?  You can't have much text, because text at low resolution will be large and take up a lot of space.  Inspired by art carved on small tiles.

Pythagorean theorem.

Inscribed angle in a circle is half the subtended arc.  This can be generalized to two chords, secants, or tangents intersecting anywhere, not necessarily on the circle.

[dcwphuiz] 4 buttons 4 letters

Consider 4 buttons to type a character set of 4 characters: high, low, ascending, descending.  Easiest of course is each button corresponds to a different character.  With each thumb operating two buttons, the user could press pairs of buttons, chords, corresponding to the shape of the character: the two upper buttons means HIGH, up on the left side and down on the right means DESCENDING, etc.  Similarly on a touchscreen, swipes.  Swipe direction does not matter.  If it did matter, then it could be done with only two buttons.

[yhaiysjy] Bicycles and baby strollers

There are different regulations regarding when and where bicycles are permit on various public transit, and likewise baby strollers, though the latter is rarely regulated.

Should they be regulated similarly?  Both are large, impeding the use of public transit for other passengers.

If not, come up with an argument justifying why one group is more important than the other.

Realistically, such questions are resolved politically.  It is curious because "people taking baby strollers onto public transit" is normally not considered a powerful political group.

[qprgexjb] Small color palettes

The RGB color components varying over On and Off yields a color palette of 8.  On Medium Off yields 27.

The human eye is more sensitive to green.  Choosing more gradations of green yields palettes of size 12 (2-3-2), 36 (3-4-3), 45 (3-5-3).

The size 36 palette might be interesting because it is a square number.  Arrange the palette in a square.

27 suggests the letters in the alphabet, plus a background color.  Can a person learn to read color code?

[fltalwhq] integerLog2 and an introduction to unboxed types

Some notes on using unboxed types in Haskell, and in particular, notes on creating a boxed wrapper for the integer-gmp library function integerLog2# :: Integer -> Int# which returns an unboxed type.

{-# LANGUAGE MagicHash #-}
import GHC.Exts(Int(I#));
import GHC.Integer.Logarithms(integerLog2#);

integerLog2 :: Integer -> Int;
integerLog2 i = if i < 1
then error "must be positive"
-- because integerLog2# does no bounds checking
else I# (integerLog2# i);

The pragma MagicHash prevents GHC from interpreting the hash symbol as an operator.  Without it, one gets error messages like this:

parse error on input `#'
not in scope: `#'

It would be nice if GHC emitted a suggestion of MagicHash on errors like this.

The constructor I# is findable using Hoogle, searching for Int#->Int.

One must use parentheses around the argument to I#.  The standard trick of removing parentheses with the dollar sign results in an error:

bad1 i = I# $ integerLog2# i;

Couldn't match kind `*' with `#'
When matching types
r0 :: *
GHC.Prim.Int# :: #

Using the composition operator in point-free style fails similarly:

bad2 = I# . integerLog2#;

Couldn't match kind `*' with `#'
When matching types
b0 :: *
GHC.Prim.Int# :: #
Expected type: b0 -> Int
Actual type: GHC.Prim.Int# -> Int
In the first argument of `(.)', namely `I#'

Unboxed types are a different "kind", the # kind, than boxed types, which are a * kind.

Saturday, September 03, 2016

[utledwlp] Many different filesystems

There are a mind-boggling number of features a filesystem could provide (or not).  Just the tip of the iceberg: file names, directories, permissions, resource forks and metadata, multiple file versions, multiple files with the same name, hard links, symbolic links.

Things become tricky when reading or writing one filesystem with tools designed for another.  This comes to the forefront nowadays with cloud-based network filesystems.

How can we tame the madness?

[dulizrnl] Quadratic reciprocity

Create a picture illustrating quadratic reciprocity.  One possibility is a quilt of the Kronecker symbol with 3 pixel colors.

Quadratic reciprocity is the gateway to much mathematical investigation.

Interesting mathematical pictures show a mix of order and (seeming) randomness: there is something deep going on.  The sinusoidal oscillations of the Riemann-Siegel Z function, Ulam spiral.

[ahjsbkoo] Riemann Siegel Z function analogue for Dirichlet L-function

What is the function corresponding to the Riemann-Siegel Z function for a Dirichlet L function that is not the Riemann zeta function?  The goal is an infinite family of random sinusoidal functions.

[vjmhavax] Helium balloon in a hard shell

Fill a light rigid object with helium.  The object might not be light enough to float, but it might move strangely compared to one filled with air.

Old helium balloons, no longer buoyant enough to float, already do this.  The neutral buoyancy point is interesting.

[rsbeikob] Modes of throwing

One handed overhand extended arm: e.g., baseball pitching. Two handed extended arm: soccer throw-in.

One and two handed push: basketball

Two handed underarm: basketball granny shot

One handed underarm: bowling

One and two handed backward between the legs: football snap.

One handed backhanded frisbee throw.

Each mode could be made a sport of accuracy and distance.

[mwudvgbh] Concave gym membership

People join a gym, paying a monthly membership fee, but with a fear that they won't go to the gym, a fear of wasting money.  It's surprising that gyms, competing with each other and recognizing this fear, don't offer a pricing structure that assuades this fear.

Easiest would be extremely low base monthly fee (the cost of computer power and data storage to maintain your account), plus charge per visit for the first N visits per month, then no additional charges after the first N visits.

[ahklwqzs] Periodic table for chemists

The periodic table, a tool for chemists, should only include the elements whose radioactive half-life is long enough to do chemistry.  But how long is long enough to do chemistry?  An atom might only need to exist for a very short time to participate in a chemical reaction, perhaps as a catalyst, and if it is radioactive decay product, more of it might be constantly being produced, causing for a macroscopic yield for a chemical reaction, despite any particular atom existing for a very short time.

How long after a nucleus emits, say, an alpha particle, does an atom's electronic configuration change?

The nuclear scientists have their own Table of Nuclides to keep track of the radioactive stuff, though it doesn't show off as much structure (reflecting nuclear shells) as the electron shells getting filled in the Periodic Table.

Inspired by the new elements recently named being ceremoniously placed in the periodic table.  These elements have such short lifetimes that they are useless for chemistry.

Friday, September 02, 2016

[qpujslbr] Oxygenated air

Create a small oxygen-enriched environment to see how nature adapts, or evolves.  Oxygen in the atmosphere was richer in the past.

If it is warm, a flow of cool oxygen will hug the ground.  Inspired by a plant thriving in the middle of winter next to a clothes dryer vent.

Is highly oxygenated water interesting, or is, say, water at the base of a waterfall already saturated in oxygen content?

[gjcuivdx] Simplified baseball

Batter hits, then sprints along a straight line track.  Fielders field the ball and throw it to the catcher as quickly as possible, who must have a foot on home plate, like a force out.

The distance the batter has run along the track by the time the catcher catches the ball is the offense produced in that play.  This may be best measured electronically.  Simplest is for the score to be the sum of the distances, but more complicated combining functions could be invented, perhaps involving distances of consecutive plays.

[nmszboxx] Upside down saltines

Create food flavored only on one side, the side that should be placed against the tongue when eating it.

[qexgwxyr] Reusing sets

Build a movie set once.  Film the each scene many times with different actors playing the roles.  This allows creating many different versions of a movie to please different audiences, each who would prefer to see different actors play the roles.

Should the hero be male or female?  Black or white?  Speak English or Hindi?  Why choose?

[hqcmocit] Helium balloon spike

Attach a railroad spike to a helium balloon.  The balloon rises, carrying its cargo up and away by wind.  As the balloon ascends, air pressure decreases and the balloon expands, and at some point, bursts.  Then, the spike plunges to the ground from high altitude, killing the person unlucky enough to be directly below it.

Somehow avoid the balloon remnant from acting like a drag parachute.

Accurate model of wind.

This seems to be an incredibly simple weapon of terror (not too effective as a weapon of killing).  It could also easily be deployed en masse.  Inspired by the WWII Japanese balloon bomb attack against the U.S west coast.

[hzyyrfaf] You will be assimilated. It will be great.

New Borg tagline: Resistance is futile.  You will be assimilated.  It will be great.

Perhaps mashup with Odo describing the intense happiness he felt when he joined to the Great Link.

[hhkljjec] Ender's Game (2013)

Two thoughts about the movie:

The special effects of the final space battle scene could be better.  In 2108, the movie will become public domain, and anyone can splice in better scenes.

"They're waiting." "Maybe they think we come in peace." "I don't think Mazer intends for us to find a diplomatic solution."

Tell a story in which a less incompetent Ender realizes that yes, the situation was seeking a diplomatic solution, mutually beneficial for both sides rather than battle.  Ender may realize the simulation is real.  This of course destroys the continuity of the novels.

Thursday, September 01, 2016

[ufftljno] Deriving polyhedra coordinates

As a demonstration of a hypothetical computer algebra system, derive exact expressions for the coordinates of regular and semi-regular polyhedra and polytopes from very basic first principles.

[lviqvksd] 3D kaleidoscope

On a spherical display, or perhaps VR, draw pretty kaleidoscopic patterns, probably with icosahedral symmetry.  There's some geometric trickiness about what to do at the edges of the triangular faces: they cannot all simply be mirrors like on a regular kaleidoscope.


Wednesday, August 31, 2016

[ajrgaunx] Human scale data storage

Reliably storing information "forever" is a formidable task: people, institutions, civilizations, and protons die in time.  A seemingly less difficult task might be to store data for the length of a human lifetime, either the average lifetime, or a person storing data for their own lifetime.

There is tremendous difficulty for a business or organization to credibly offer to do this, so no such credible service exists, even though there seems to be consumer demand.  It seems almost possible to do it with current technology, perhaps cloud data storage, replicated across many services and sites, funded by an annuity, along with perhaps physical media in storage also funded by an annuity.  Previously similar.

Another approach is to store the data physically on the person, perhaps implanted media interfaced by induction.  We probably need significant advances in technology for such a device to reliably function for an entire lifetime.

A very old technology does already exist along these lines: tattoos can store information for as long as a person lives.

[whwdciwe] Taking off over sea

An airport borders the ocean, e.g., Boston Logan.  Landings and takeoffs can occur over land or over sea.  Those over land disturb residents living below, especially at night.

If crosswinds or other factors force only one usable runway, and takeoffs and landings must occur in the same direction, then I suspect it would be preferable to have landings over land and takeoffs over sea.  Engines must work harder, so are likely louder, for takeoffs.

This is not done.  It is likely a political battle with airlines, which would prefer to take off into the wind, thereby getting a bit of free airspeed for lift (though landings with wind behind are presumably more difficult).  The airlines win at the cost of residents below.

[hpgybqkq] Credible long term data

It is curious that no one entity can credibly guarantee storage of electronic data for a century or more, though it certainly seems possible by arranging it yourself.

Replicate it across several countries (assuming one can tell where the data is actually being stored), then (this might be hard) check on the replications regularly, making new copies from old copies when necessary or desired.

Delegating the management, the checking and copying, of the data to some other entity has the problem of that entity ending before the desired lifetime of the data.  Delegating to multiple entities might work, but guaranteeing a replacement when one closes up shop is tricky.

You (whether you are an individual or an organization) are the only one guaranteed (by tautology) to be around when you need your stored data.

One could try to place faith in long-lived organizations, but past performance is no guarantee for future returns.

Sunday, August 28, 2016

[lrrnlvbb] Square popcount

Type a long number digit by digit.  After each digit, the computer calculates and displays the the number of 1s in the binary representation of the square of the number entered so far.

Merely demonstrates that computers are extremely fast at arithmetic: the binary population count seems to be displayed instantly after typing each digit.  Consider a human trying to replicate the calculation by hand.

(10*a + b)^2 = 100*a^2 + 20*a*b + b^2.  Parallel, e.g., GPU, implementations of small*big multiplication, addition, and popcnt could make this very fast.

[lumarlmp] Cure and disease

A scary bad thing is discovered.  Then we learn more about the scary bad thing: it is in fact a cure, treatment, or preventative for something worse, perhaps a disease.  Then, the disease is discovered, perhaps unleashed when the preventative was disabled because it was scary and bad.  Finally, the reason the disease exists is discovered, which is the most horrifying of all.

Somewhat similar to the plot of Halo, though the origins of the Flood have yet to be revealed.

Possible real world example: cancer.

[fofjears] English flown dot

Catalan uses an interpunct to separate letters, in particular two Ls a row, which should not be pronounced as a digraph.  (Other languages too, Occitan.)  English could do the same, especially for compound words that falsely create consonant+H digraphs.

boat·house blow·hard

[mhnyjwyw] Apostrophe h

Consider shortening the English digraphs ch gh ph sh th wh with an apostrophe replacing the h.  It takes up slightly less space in proportional font and saves on printing ink.

Ask w'o w'at w'en w'ere & w'y.  Chili wit' meat.  T'at pussy cat.  W'ic' witc' watc'ed w'ic' witc'?

Probably want to use separate characters for apostrophe and single closing smart quote.

[crlwzdpj] Th and ng consonant digraphs

If we could add one additional consonant letter to English orthography, it should be TH, which already nicely has characters thorn or Greek theta.  If we could add another, it should be NG, which also already has a character eng, n with a hook.  Further consonant digraphs are listed below, with frequency relative to TH, though they may have been formed by the merging the final and initial of adjacent syllables.  The high frequency of LL is due to the contraction pronoun + will.

Consider recomputing English Huffman 0 with the two extra consonants.

1.00 th ; 0.34 ng ; 0.30 st ; 0.27 nd ; 0.24 nt ; 0.22 ll ; 0.14 wh ; 0.13 ch ; 0.11 pr ; 0.11 ns ; 0.10 ss ; 0.10 ct ; 0.10 rs ; 0.10 rt ; 0.09 ld ; 0.09 tr ; 0.08 pl ; 0.08 ts ; 0.08 gh ; 0.08 sh ; 0.08 nc ; 0.07 bl ; 0.06 tt ; 0.06 ck ; 0.05 rd ; 0.05 fr ; 0.05 mp ; 0.05 cl ; 0.05 ht ; 0.05 nk ; 0.05 sp ; 0.05 ff ; 0.04 pp ; 0.04 gr ; 0.04 cr ; 0.04 rr ; 0.04 ls ; 0.04 sc ; 0.03 rn ; 0.03 ds ; 0.03 rm ; 0.03 tl ; 0.03 rk ; 0.03 mm ; 0.03 nn ; 0.03 rc ; 0.03 mb

Counting only consonant clusters at the beginning or endings or words, so avoiding central consonant clusters due to adjacent syllables:

1.00 th ; 0.31 ng ; 0.21 st ; 0.20 nd ; 0.14 wh ; 0.12 ll ; 0.11 nt ; 0.11 ch ; 0.10 pr ; 0.08 ts ; 0.08 ld ; 0.07 sh ; 0.06 rs ; 0.06 ns ; 0.05 fr ; 0.05 ss ; 0.04 ht ; 0.04 tr ; 0.04 nk ; 0.03 rt ; 0.03 ck ; 0.03 ds ; 0.03 gh ; 0.03 cl ; 0.03 rd ; 0.03 sp ; 0.03 ct ; 0.03 sn ; 0.03 pl

The symbol & replacing "and" would decrease the frequency of ND to 0.06, suggesting the third already existing useful character to add.

Scraping near the bottom of the barrel, SS has a character in German.

Wednesday, August 24, 2016

[xkucmdks] Shiny sphere

An aircraft encounters a laser shined at it attempting to blind the pilot.  Cameras and other sensors aboard the plane track the laser back to its source, but the source is revealed to be a small shiny sphere, so the attacker's original beam could have originated from anywhere with direct sight of the sphere, or beyond that if multiple reflections.

It is curious how geometry provides such a powerful concealment ability.  Compare it to how easy it is to trace a bullet back to its source.

Should shiny spheres be outlawed?  Will they be?

[ldrkoozf] Burning diamonds

Can diamonds, in particular, jewelry diamonds, be burned away to carbon dioxide by conventional fire, for example, a house fire?  (Diamonds are famously burnable in an unconventional environment, namely in pure oxygen.)  What if the fire or heat source heats the diamond for a very long time, hours or days?  We are not asking for the diamond to ignite with a self-sustaining flame, asking only that it oxidizes away, perhaps like an ember.

This could easily be tested.  Is there a source of large, cheap, non-gem quality diamonds?

Inspiration was, gems of oxidized minerals, e.g., aluminum oxide, do not oxidize further in fire, so are more likely to survive.  (Debeers wants you to believe a diamond is forever, but oxidation makes that a lie.)

When might a sapphire or ruby realistically encounter a highly reducing environment or other destructive chemical environment?

[ygagmvbl] Teleporting higher dimensional chess pieces

Consider one of the orthogonal planes on which a piece lies in 3 dimensional chess.  A piece may have the movement ability to teleport to any empty or enemy-occupied square on that plane (similar to the Emperor piece in 2D tai shogi).  This piece could be considered the 3 dimensional equivalent to a 2D rook.  Teleporting to other diagonal planes, instead of orthogonal, could define other piece types.

Add the ability for a piece to block another piece.  Within a plane one piece can teleport, another piece can create a linear barrier, blocking teleportation beyond that barrier.  Not sure of the details of this.  Does the barrier inducing piece need to be in the same plane as the moving piece?

These ideas can be extended to arbitrary dimensions: in N dimensions, pieces teleport in hyperplanes of N-1 dimensions (as opposed to 1 dimension as previously proposed), and encounter barriers of N-2 dimensions in those hyperplanes.  This even applies to 2 dimensional chess: pieces move along lines, and encounter point-like barriers.

[kueomtuc] Go on a random board

Play go 囲碁 a random graph of 361 nodes that has all nodes in one connected component, every node has between 2 and 4 neighbors (with most nodes having 4), and no node connects directly to itself.

Lay out such a graph on a plane, maximizing some measure of elegance.

[tttdfklm] Card game of perfect and complete information

Design a game requiring only a deck of cards as equipment which has no element of chance nor hidden or concealed information.  Also could add poker chips.

Monday, August 22, 2016

[dunofnpd] Alaskan wall

In an alternate universe, Trump is calling for building a giant wall along the entire length of Alaska-Canada border.  Inspired by the wall in Game of Thrones.

[qhxnxssd] Pi in pi

Start with a square shaped region.  Draw a slightly smaller square with one side missing -- shaped like a capital Greek letter pi -- into it.  Repeat, a smaller pi into the region inside.  The orientations of the squares could encode information.

If packed densely, the central region may diverge away from being square.  We can also consider squares with more than one edge missing.  Vertices not connected to any edge could be marked as dots, or omitted entirely.  Packing cubes in 3 dimensions, considering cubes with faces missing, edges not connected to any faces could remain as a wire frame.

Previously similar, packing into frames.

[zdiermxj] Winter is coming

The cold sets in and kills everyone, making pointless all the previous machinations for power.  The whole Game Of Thrones / Song of Ice and Fire series has actually been a metaphor for global warming.

Winter falls.  Everyone dies.  The end.

Friday, August 19, 2016

[whzhgieh] Fun with genocide

Tell the story of genocide from the genocider's point of view, having to overcome the obstacles and resistance put up by the victims.

Perhaps aliens are colonizing earth, seeking to first wipe out all humans.

Ender's Game.

[gzhlxnve] Next order soccer ball

Construct a soccer ball out of 12 pentagonal patches and (I think) 80 hexagonal patches, the dual of the next-order icosahedral geodesic dome.  The hexagonal patches are of 2 different shapes (60 of one shape and 20 of the other), and the 60 shape is not 6-way symmetrical, so require correct orientation when assembling.

[wyiwtiwy] Discontinuity or vertical line

Is a function discontinuous at a point, jumping to a new value, or is it simply a vertical line segment there, taking all values along the line?  This matters for root finding: a vertical line clearly intersects y=0 whereas there is no root if there is a jump.

[qvhuisif] Calculator with root-finding and quadrature

Root finding of an equation of one variable, maximization or minimization of a function of one variable, quadrature of a single integral, numerical integration of a 1st order ordinary differential equation initial value problem are all functions that would be handy on a scientific calculator.  Maybe complex domain.  It does require parsing and evaluating arbitrary expressions.

Avoid matrices of arbitrary size, i.e., expressions of more than one variable, because that requires arbitrary amounts of memory: use a computer for that.  However, these days, it is only aesthetic difference between simple and complicated calculations, with powerful handheld devices with lots of memory.

[trefwxuj] Is lava liquid?

Is lava, or magma, fully liquid or is it a suspension of crystals whose melting point is higher then even lava?  It probably depends on which lava or magma where.  Both pressure and temperature matter.  Where do crystals start to form?  Deep inside the earth?

Inspired by the crystallization of diamond in volcanic pipes.

[bgfujenn] Dividing the world between two points

Take two points on earth, perhaps two closely spaced points, and divide the world into two hemispheres by the great circle equidistant between them.  Does the line cross through interesting places?

Inspired by a couple breaking up, mutually agreeing to avoid each other.

[exvidsys] Survived by your microbiome

A traveler gets stranded on a remote planet with no hope for survival or rescue.  However, not wanting to become completely forgotten, the traveler leaves a message about his or her existence for future travelers to the planet: the challenge is long term storage of data.  The universe is very big, so it might be billions of years before another traveler chances on the message.

Although conditions are too harsh for the traveler himself or herself to survive, his or her microbiome could survive and adapt to the conditions: bacteria are resourceful.

Therefore, the traveler seeks to engineer his or her microbiome to encode a message that will survive billions of years.

Twist ending: intelligent life, the product of evolution after that engineering, examine their own DNA to decode the message.

Inspired by The Martian.

[blwjavby] Demagoguery as an economic measure

The theory goes, in tough economic times, demagogues have an easier time seizing power: people become manipulable by the (often false) promise that the demagogue will improve their lives.

Exploit this effect in reverse: measure the economy by how successful demagogues and their false promises are.  Interestingly, this can be done at very high spatial resolution: the economic times of even a single person can be measured by their susceptibility to demagoguery.

Inspired by Trump.

Tangentially, who seizes power when economic times are not tough?

[xfjrztav] Aliases

Create a social networking platform that not only permits but embraces aliases.  A single account can have multiple aliases, and the user can manage who sees which alias, as well as the content associated with each alias.  Some people can see that two aliases refer to the same person, but that is user-configurable also.  The UI to manage all this will be a challenge.

Inspired by Facebook's real name police.

[cbpbejjn] Lossless crop

JPEG, because it works on 8x8 blocks, has the ability to do lossless crop (so long as you are cropping on a block boundary).  Newer lossy image compression algorithms which process the whole image at once lose this ability.  Perhaps this feature can be recovered if such newer algorithms could also encode "don't care" values in cropped areas.

[glzluqcv] Desirable features of a password manager

Open source, so that anyone can audit the code and fix bugs.

User configurable password hashing function for the master password, whose difficulty can be set as high as the user desires, or increased as attackers' computer power grows.  Probably also the ability to choose the hashing algorithm, with ability to add new ones.

Endorsed by reputable people or organizations who have audited (or authored) the code.

Network access not required, to store passwords on an air gapped computer.

Optional network access for cloud synchronization, though that could be provided by a separate utility such as Dropbox.

Passwords stored encrypted with a master password.

Clients for all platforms.

Store arbitrary user-defined metadata with passwords.

Roll back the password database, though that could be provided by a separate backup or version control utility.

Integration with browser to automatically fill in the password field of login forms.

Generation of random passwords.

Multiple users and passwords for a site.

[avnofdsy] Bomb design game

Bombs are complicated mechanical devices ("mechanical engineers build bombs, civil engineers build targets").  Extract some parts of the design process into a game.

Inspired by the monumental difficulty of designing nuclear bombs.

[eubwqwiq] Baseball without foul lines

Consider eliminating foul balls in baseball.  Play would be on a circular field with the batter in the center, and fielders scattered all around.  Anywhere within the field is fair, and over any fence is a home run (or automatic double).  Similar to cricket.

There will no longer be good spectator seats near the infield.

[uoyyojuh] Links to other CC content

Let Wikipedia articles have sections for links to external content whose copyright license is compatible with Wikipedia's Creative Commons.  These other content could eventually be incorporated into the article.

The allure of being linked to Wikipedia might serve as incentive to liberally license one's own content.

If not Wikipedia, this could easily be done by fork.

Thursday, August 18, 2016

[pfcxsnhj] Double scroller

Scrolling (or overwriting) is an attractive way to present text, but often text consists of data and metadata (e.g., Cablegate, or news article headline and body text) that we would like to present simultaneously.  This could be done by dividing the area into adjacent tiled windows and scrolling each window independently.  If one part is small, the window sizes should be adjusted.

Could be done both with vertical scrolling and horizontal single-line scrolling.

[nuyqalxo] Reflow sheet music

With people reading sheet music on smartphones and tablets these days, the ability to automatically zoom and reflow sheet music would be useful.  Perhaps Lilypond.

More radically, create a way to denote music as pure text (perhaps Unicode) so that text reflow engines can be reused.  This seems difficult as music is so complicated that a two-dimensional layout seems necessary.  I suppose two-dimensional layout engines do also exist, e.g., CSS box model.

[pheibypu] Occasionally transparent Rubik's cube

In a virtual Rubik's cube, one could see all six faces simultaneously if the front face become partially transparent.  Perhaps the front face turns into colored frames while the back face turns into colored centered dots.

[wwcuswwy] De Bruijn chords

Identify a collection of chords and play the de Bruijn sequence of all, say, 3-chord sequences of them, perhaps arpeggiated like Prelude in C.  Perhaps I ii iii IV V vi V7 and inversions.  This should be easy.

The minor key version simply substitutes III7 for V7.

De Bruijn sequences are cyclic, so the song can loop forever.


[bdnfblzy] Hexagonal tiling road layout

Consider laying out a city as hexagonal blocks, instead of rectangular as typically done.  Three roads, instead of four, meet at intersections.  There are no straight roads, which might be effective for traffic calming.

[icnmwpjw] Link to personal information

Instead of providing an entity, e.g., a company, with your personal information, provide a URL to a server providing your information.  The data could be hosted on a personal server that you control.  When you wish to remove permission for that company to have and use your personal information, simply remove the information from that URL.  You should provide each different company a different URL for your information, in order to be able to selectively retract permission.

A promise not to download and cache your personal information is done by legal agreements and audits.

If you are lazy or don't care to protect your information, you can provide a data URI containing your information directly.

Probably also negotiate a cryptographic key so that only the designated company can decrypt the information posted at the URL, not anyone eavesdropping in between.  Easiest would be to use a public key of the company, the same one used in the SSL HTTPS certificate to establish the identity of the company.  That is a key the company will credibly protect.

[reoqxvum] Cinderella and the definition of midnight

The fairy godmother's magic will expire at midnight (which incidentally is a terrible deadline for an evening social event), but they discuss the finer details of exactly what is meant by midnight, including the unstable rotation of the earth and general relativistic effects.

[lxcgpaqx] Crazyhouse small endgames

Consider positions in crazyhouse or shogi in which the total number of pieces on the board and in the hands of both players, is very small, similar to chess endgames.  Such positions can never occur in a actual crazyhouse or shogi game because the total number of pieces remains constant from the beginning of the game.

With a small number of pieces, ground truth can be calculated with a tablebase.  Are there any interesting endgames?

This is different from tsume shogi, which assumes all the remaining pieces are in the hand of your opponent.

[oqpcnizl] Jenny

8675309 in binary is 100001000101111111101101, a cute message to steganographically encode as a joke.  Other bases might sometimes be possible, though the occasions seem rarer.

perl -we 'for(2..100){print "$_ ",qx(echo "obase=$_;8675309"|bc)}'

Also consider other binary encodings.

Monday, August 15, 2016

[kctmprub] Selecting function arguments by type

Some programming languages permit a function to refer the arguments passed to it by number instead of by name, for example, Perl's @_ array.

We propose a similar mechanism of referring to function arguments by type.  This can only be done if there is only one argument of the given type in the list of parameters.  We introduce a special keyword, ARGUMENT_OF_TYPE, which when used with a type yields the desired argument.  Below, we use a syntax inspired by Haskell.

replicate_strings :: Int -> String -> String;
replicate_strings UNNAMED UNNAMED = concat $ intersperse " " $ replicate (ARGUMENT_OF_TYPE::Int) (ARGUMENT_OF_TYPE::String);

Somewhat more ambitious, possibly more confusing, would be to have type inference figure out which argument is needed.

replicate_strings :: Int -> String -> String;
replicate_strings UNNAMED UNNAMED = concat $ intersperse " " $ replicate ARGUMENT_OF_TYPE ARGUMENT_OF_TYPE;

The keyword UNNAMED marks the function arguments subject to this kind of inference.  They are awkward, but without them, it may be difficult or awkward for a function to return a function, i.e., it is a higher order function.  Perhaps it has a polymorphic return type which might or might not be function.

More ambitiously, if the arguments are of distinct types, then there could be some mechanism by which the order of the arguments at the call site does not matter.  Previously related ideas, for multiple element tuples and pairs.

Another idea: instead of UNNAMED being a keyword, let the parameters be user-chosen identifiers that do not have to be different for each parameter, but if they have the same name, they must be different types.  Add a (possibly optional) OVERLOADED_PARAMETER annotation to make things less confusing to others reading the code:

replicate_strings2 :: Int -> String -> Int -> String -> (String, String);
replicate_strings2 (OVERLOADED_PARAMETER x) (OVERLOADED_PARAMETER x) (OVERLOADED_PARAMETER y) (OVERLOADED_PARAMETER y) = (concat $ intersperse " " $ replicate (x::Int) (x::String), concat $ intersperse " " $ replicate (y::Int) (y::String))

Tuesday, August 09, 2016

[jumezmtx] Basketball from the sidelines

Consider modifying basketball to permit additional players playing outside the sidelines, but who must stay outside so can take shots only from outside: these end up being very long distance shots.

Devilish details: is the defense permitted to go out of bounds to guard these shooters?  When is a ball truly out of bounds?  Perhaps when the ball touches the ground, so these outside players never dribble but maybe may run with the ball.

Perhaps opens the game to shorter, older, or female shooting specialists.

[kedcrqyq] Batman Fledermaus mashup

Create a mashup of Batman and die Fledermaus operetta, both stories about a man dressed as a bat.

Monday, August 08, 2016

[rjnzvvjo] Password entropy

Instead of complicated rules about how long and what characters a password must contain, simply require it have a certain amount of entropy, as measured by an easily available text compression program.

Google's Brotli might be a good candidate, since it is primed with a sophisticated language model.  Alternatively, specify a prefix string to prime some other text compression algorithm.

All this is probably wanted in Javascript.

Inspired by, I would prefer to type a longer string of lowercase letters than add other kinds of characters.

[dqtsykci] Stepped cone

A circular stepped pyramid can be constructed as a stack of discs of decreasing size, like towers of Hanoi, or as a collection of nested concentric rings or tubes.

Sunday, August 07, 2016

[qkminaot] Terabyte NTFS format over USB 2.0

Formatting a 1 terabyte external hard drive connected over USB 2.0 using mkfs.ntfs (omitting the -Q option), Celeron 900 processor, took 9 hours and 54 minutes.  28 megabytes per second, well in line with reports that USB 2 has a real world maximum of about 30 megabytes per second (out of 60 theoretical).

[fgkqteji] Numerical chess pieces

Yet another language neutral method of denoting chess pieces is by number.  The pieces fairly naturally have a ranking by strength or importance: pawn=1, knight=2, bishop=3, rook=4, queen=5, king=6.  Inspired by, figurines are hard to type and read.

Reminiscent of baseball fielding position numbers and basketball position numbers.

Unfortunately, we cannot convert SAN notation to purely numerical (also substituting the a through h files as 1 through 8) because Raa1 and R1a1 would both translate to 4111.

[maqeoeyu] Publishing and consuming knowledge

What should be the interchange format for knowledge transfer between humans?  Writing?  Speech?  Video?

Writing is easier to do than producing video.  However, often video is easier to consume than reading: it is easier to learn from video.  (However, that might be an illusion.  Because of the high costs and barriers to entry to produce video, videos might be skewed toward people who have the resources to produce high quality content, regardless of medium.)  Inspired in part by, online learning heavily incorporates video these days.

In the future, I suspect we can get the best of both worlds using artificially intelligent computers as intermediaries.  When producing content, i.e., recording knowledge, the human will interact with a computer with some interface that is easy for the human, perhaps writing, perhaps a question and answer session with speech, with the computer asking questions.  The computer translates the interaction into some machine-readable knowledge format and that gets published.  When a human consumes content, i.e., learns knowledge, a computer reads the stored format and re-renders it into a format that is easy for the human to consume.  This output format might be completely different from the input format in which the data was originally recorded.  Perhaps the output is a video lecture with a virtual presenter.  Or another question and answer session, but with the human asking the questions.

Creating such a system is a very ambitious goal.

[fzcsngkw] Plus signs

There is a bug somewhere in the blogging software I use in which plus signs sometimes, but not always, get turned into spaces, as if URL encoding is being incorrectly applied somewhere.  The following is an arithmetic equation: 2 2 = 4.

[txqwdosn] User authenticated system integrity

At the beginning of the boot process, the computer checks for the existence of a file at a hardcoded location.  That file is a program with an authentication tag (MAC).  If the file does not exist, the computer does some error behavior, perhaps proceeding with boot for backward compatibility.  If it does exist, the computer asks the user for the key to verify the authentication tag.  If the key is correct and the MAC verifies, the computer immediately forgets the key and runs the program.  If not, some other error behavior.

The program is a system integrity checker.  Key points: the user has control over both the key and the program, so there are no DRM issues of users being restricted about what they can do with their computer.  Because the key is forgotten before the main operating system boot, malware running within the OS cannot alter the integrity checking program with something else by stealing the key.

Devilish details, most notably: occasionally, perhaps often, the integrity checker will need to be updated so the authentication tag will need to be recomputed.  This requires the key, so provides malware using a keystroke logger or other spoofing an opportunity to steal the key.

[djhnwnvl] From Manning to Brexit

Chelsea Manning releases Cablegate.  Cablegate causes Arab Spring.  Arab Spring causes the Syrian civil war.  The Syrian civil war causes refugee migration into Europe.  Refugees bring xenophobia into the forefront, causing Brexit.  Brexit might cause World War III.

Potential flaws in the reasoning: Arab Spring might have occurred without Cablegate.  The Syrian civil war might have occurred regardless.  Xenophobia as a political issue happens all the time.

Saturday, August 06, 2016

[mlhicfvd] Neutron gun

Creating superheavy elements could be done with a 3 way collision: two lighter elements and third stream of neutrons.  This is probably not done because simultaneous 3 way (and greater multi-way) collisions are rare.

One place where neutron flux is extremely high is inside a detonating nuclear bomb.  Some new elements were discovered in early bomb tests.  Is the ban on bomb testing preventing extending the periodic table?  The tricky part might be confirming the creation of a new element amidst the bomb going off: the new element might persist for a time period far too short to go in, collect samples, and do chemistry.

[phujouwb] Baseball without home runs except in extra innings

As before, we propose eliminating the home run, but just from the first 9 innings of baseball.  Instead of foul as before, it counts as an automatic double (incorrectly often called a ground-rule double) similar to if a ball bounces in play and goes over any fence.

We bring back home runs only for extra innings, and extra innings are played as sudden death for both teams, because we want the game to end as soon as possible.  All home runs become walk-offs, increasing the drama.

[vlfnaakh] Touchscreen trackball

A touchscreen can function like a trackball or trackpad, though no one does this.  First tap with your finger to the gross location, then switch to trackpad mode to finely adjust the location of the cursor.  There can be acceleration depending on finger sliding speed.

[osveremh] References by your school

A university library collects academic papers (and books, etc.) published by faculty and students; this is common.  Go further by also collecting -- keeping a local copy of -- every work cited in their published works.  Librarians can exercise judgment by picking perhaps only the important cited works.  Also, maintain a reverse index for every such item, which locally authored paper cites it.

Similar idea and motivation as previous.

[ctpslunt] N consonants and vowels

Identify a set of N consonants and N vowels such that any two can be combined to make a syllable.  This should be easy.  There is some elegance in the same number of each: usually there are more consonants; however, this is mostly a solution in search of a problem.

The vowels half can be made more numerous by extending it to vowel plus ending consonant.

Avoid pairs of consonants that are difficult to distinguish acoustically, e.g., S and F after a low pass filter.

[smibyfke] Reforesting Easter Island

Consider restoring the forests of Easter Island.  First need to eliminate the rats which killed all the trees.

It's sufficiently desolate that people might leave most of the land alone, other than the tourist attractions.  Or will we insist on agriculture?

[kcopvjsu] Disappearing into the shadows

The character's superpower is the ability to literally disappear into the shadows: easy to depict in comic illustration and animation.

Noir.  Chiaroscuro.

[arrinaku] Gun culture everywhere

Everywhere has social stratification.  Everywhere, the justice system does not care about the lower classes: the lower classes cannot afford lawyers to settle civil disputes between themselves in court.

Lacking lawyers, settling civil disputes, e.g. enforcement of contracts, has to be accomplished somehow, so everywhere we would expect the lower classes to resort to violence.

Guns are the most effective tool for violence, so we would expect to see gun violence everywhere, or if not, a tremendous demand for guns everywhere.  However, among first world countries, gun culture seems unique to the United States.  Why?

Enumerate the possibilities:

Gun control is so extremely effective in other first world countries, shutting down smuggling, black markets, and illegal manufacture despite extremely high demand.

The poor, perhaps aided by socialism, all have access to the justice system for settling disputes.

The poor do not have disputes, perhaps as a consequence of a highly homogenous society.

The poor who would have disputes with each other are kept strictly segregated.

There are other effective mechanisms for dispute resolution among the poor that are more effective than violence, perhaps a social class structure with well enforced mechanisms for punishment by demotion.

[vxphkaco] Flaw or beauty of chess

Chess has a flaw that it is possible to compose beautiful problem or study positions, but such positions almost never occur in a real game.  Consider modifying the game somehow so that such beauty happens more often.

Alternatively, this flaw could be considered a benefit.  Go 囲碁 problems tend to be similar to game positions; it does not have anything special beyond that for those bored of positions that occur in games.

Friday, August 05, 2016

[zfbgjzqo] Very short screen careers

Actresses, for example in Hollywood, typically have very short careers compared to male actors.  Many, perhaps most, actresses become no longer employable when they are no longer young and pretty.

When an actress becomes no longer employable, all the investment in creating the actress, the search effort in discovering her, the acting training and experience, the screenwriting effort in creating characters embodied by that actress, the trust relationships with producers, directors, and other actors, all gets thrown away.

This is all very expensive from the Hollywood's point of view.  Hollywood would prefer to be able to reuse the same actress, or pool of actresses, for many years, so as not to have to invest effort in discovering and training new ones.  Hollywood would very much prefer -- motivated by their financial bottom line -- that society not obsess over the latest pretty young starlet, discarding last week's model like a used Kleenex.

But Hollywood does not get what it wants, try as it may.

The purpose of this essay was to illustrate that media reflects society.  Media does not shape society (even though those calling for censorship insist that it does), because if Hollywood could reshape society so as to be able to reuse actresses for longer, then it certainly would have.

[vsxzknux] Disney theme parks as a Veblen good

I've heard anecdotally that Disney World raised its ticket prices but then attendance counterintuitively increased.

The most likely reason is the economy improved so more people went; the growth effect exceeded the decrease in demand due to price increase.

However, we can speculate that a different mechanism might be going on.  Disney World -- or anywhere -- is populated by two kinds of people: rich people from all over the country and world who can afford the travel and vacation time off from work, and poorer people from the local surrounding area whose travel costs are very low and can make a day trip of it.

Rich people do not like to be around poor people.  This may be especially true in the American South, where poor people include the subculture of rednecks and white trash, and rich people feel especially uncomfortable around places with lots of such people.  Because of the high numbers of people visiting from the local surrounding areas, Disney World does have a bit of a feel of a white trash playground.

Increasing park entry fee prices would most increase the relative cost of the trip for those coming from the local surrounding area, whose travel costs are low: this will cause less poor people to attend.  This would make the park more attractive in the eyes of the rich, causing the counterintuitive increase in demand.

Disney is not a fixed good: one's experience depends on who else attends.