Xah JS Blog

fuck JavaScript

update and correction

js tagged template string 2026-07-20 T54R2 ll
js tagged template string 2026-07-20 T54R2 ll

js bundler builder

js bundler builder 2026-07-23 17270 ll
js bundler builder 2026-07-23 17270 ll

ai cites xah lee info

now and then ai cites my work.

ai cite xah lee js dollar sign 2026-07-23 16270 ll
ai cite xah lee js dollar sign 2026-07-23 16270 ll
/*
2026-07-21 example of functional programing.
task. function to reconstruct template string
*/

// imperative style
function ff() {
 var result = arguments[0][0];
 for (var i = 1; i < arguments.length; i++) {
  result += arguments[i] + arguments[0][i];
 }
 return result;
}

// functional programing style
const fg = (...args) => {
 const xb = args.slice(1).concat("");
 return args[0].flatMap((x, i) => [x, xb[i]]).join("");
};

// test
console.assert(ff`a${1}b${2}` === "a1b2");
console.assert(fg`a${1}b${2}` === "a1b2");

updates.

after 10 years, finally wrote this tutorial String.raw.

updated

major update.

minor edit

minor updates

repost

css flexbox and grid layout are an revolution in computer language.

grid in particular, is the first computer language that can specify layout in a declarative, automated, dynamic change, way. even sans even a single length.

2ality is offline due to ai

Axel Rauschmayer (aka 2ality) is a top JavaScript master.

he took his website offline. reason given is the massive ai stealing his work, and no traffic.

2ality offline due to ai 2026-06-30 2d2d6 ll
2ality offline due to ai 2026-06-30 2d2d6 ll

misc minor updates

update

preliminary version

recent Xah Talk Show on css.

updates.

updates

xtodo
xtodo

updated

old article. interesting, found an article i wrote about this issue, back in 2011.

updates

Major discovery. HTML tag and attribute names are not case sensitive, but only for English letters.

major updates and new pages

updated.

xtodo

minor updates

minor update

major updates.

lots updates

minor updates.

added ::marker

massive updates.

advanced CSS and syntax issue in computer languages.

the relation of CSS Selector List, and the so-called pseudo selectors :is(), is a syntactic one, and critical one.

because :is() is a single syntactic unit, thus allows it to be grouped as part of other expression. but the selector list (of the comma operator), cannot.

splitted out as new page.

updated.

new pages

updates:

xtodo

I watched the birth of CSS, becoming accepted around 2001. Now, after flexbox was added some 5 or 10 years ago, finally i wrote a tutorial on it.

updates

xtodo