?

Log in

No account? Create an account

Previous 25

Oct. 24th, 2017

eyes black and white

Anarchist Restoration

Last night I had this dream of what might make an interesting novel of political fiction. In this timeline, the Republic of China (Taiwan) alone in the world has kept a delegation for the Republic of (South) Vietnam. The RVN embassy is still occupied by an official Vietnamese delegation, reduced to three people living off a small stipend from the Republic of China, that hasn't increased since 1975, with a Chinese guard on duty during the day. One night, a group of Vietnamese revolutionaries break in and take over the delegation, led by a notorious anarchist, a martial artist, and an international lawyer. They carry with them an old drunkard who happens to have a claim as heir to the ancient throne through a previous Emperor's affair, and declare the Restoration of his Dynasty. They somehow convince the old delegates to join their cause. Of course, Taiwan will be taken aback by this revolution, and immediately revoke what stipend and guard they were granting to the delegation; but the RoC will not dare violate the sovereignty of the entity they tried to prop up so long — at least not until and unless it itself violates international law. And so Taiwan will follow a wait and see policy.

The anarchist takes the new Emperor in his Imperial Suite, a reserved suite on the top floor of the building. He leads the other men upstairs with the drunk man on tow. However, an astronomical society has taken over all floors of the building but the ground floor and entresol; the rent they pay is how the delegate made his comfortable living despite the low stipend from RoC. Trying to keep going to the top floor, the men discover that it is only accessible by a ladder leading to the higher levels of the telescope, which is impractical for men carrying a drunkard. However, a late-staying astronomy student explains that they already reached the original top floor, the observatory having been added later. Part of the Imperial Suite was kept, but as an impeccably preserved museum room inside the offices, not really usable as an actual room. The revolutionaries still use it symbolically that night, but in the morning, the Emperor will "decide" that from now on he shall occupy a simple maid's room in the entresol.

When the drunkard wakes up with a major hangover, the anarchist talks to him with deference due to the Emperor, yet explains in no uncertain terms that he is in control as the new Regent. The Regent has one goal for the Emperor: make Him become a dignified figure (no more alcohol) who will become relevant as an assassination target. There only three ways out of the embassy: installed on his rightful throne in Hue, dead, or abdicated in favor of another heir approved by the Regent. His fortune will follow that of the Restoration: ascetic for now; but princesses and concubines, fast cars and private jets if they are wildly successful. And a lot of it will depend on the Emperor's ability to project dignity indeed.

The first appointments of the day are for the new Emperor and his Regency to receive the CEOs of various international companies of mercenaries. The Empire offers that it will setup its Court in Exile; companies can file actions; the Court will decide whether there is a Casus Belli, and then declare war on the enemy and grant the mercenary a letter of marque in exchange for titles in the loot and/or conquest. The mercenaries will however then have to follow the strictures of an official army and be subject to Court Martial for transgressions. Of course most governments won't recognize the Empire and its letters of marque. At least in the beginning. But that's where a mutually profitable relation is born: by respecting international law better than existing governments, the Companies and the Empire can lend Credence and Legitimacy to each other.

Selling flags of convenience, setting up Court, delivering passports, negotiating mutual recognition with odd States, maintaining good relationships with Taiwan, making statements to the press, teaching the Emperor how to be sovereignly (and preparing an online course on Natural Law based on those teachings), preparing a secret contingency plan for when Taiwan turns inimical or falls, plotting against the Vietnamese communist regime, dealing with spooks from various countries and non government entities, improving internal security, drawing an internet fan base as well as government backed opposition from SJW groups, etc., are daily activities of the Regency. All of that until... well, next episode, if any

Sep. 24th, 2017

eyes black and white

A tale of many nests

This short essay will tell you about my favorite macro, nest, discuss the modularity of syntax extension, and use the implementation of that macro as an illustration for how to use defmacro, syntax-rules and syntax-case, providing along the way a comparison between these respective macro definition systems.

Using the nest macro

When I started using Scheme as my main Lisp, the first macro I wrote was the nest macro. What macro? The nest macro. The one that in Common Lisp helps my code avoid drifting hopelessly to the right as I nest binding form inside binding form... by doing the nesting for me. To illustrate the kind of issues that I'm concerned with, consider the Common Lisp code snippet below:

Read more...Collapse )

Jul. 28th, 2017

eyes black and white

Bohemian Rhapsody as the Grief of Coming Out Gay

In this series where I decrypt art for you, here is Bohemian Rhapsody, by Queen. Unlike my previous contributions, about Lovecraft and Picasso, I did not figure this one by myself; rather it was clearly suggested by some biography of Freddie Mercury that I once watched. I still think it deserves to be better known.

Freddie Mercury was sexually attracted to men. But his conservative Parsi mom had taught him all his life that homosexuality was of the devil. So, putting aside some transgressive experiences, he had taken a girlfriend. But eventually he started a homosexual affair in earnest, and after a year or two came out to himself, to his girlfriend and to his friends. One day, in the middle of these events, he came excited to his friends and partners of Queen, with this great song that he had been working on for years, even decades (some witnesses told of hearing him dabbling with the "just killed a man" line in the 1960s), that finally had come to fruition, and they spent three weeks recording it, singing it over and over, overdubbing themselves on analog tape tracks that got overwritten many times.

So, what is the meaning of the song? It's about coming out as gay to his mother. "Mama, just killed a man / Put a gun against his head, pulled my trigger, now he's dead" is about receiving fellatio from a man; no man dies except metaphorically. The "monstruosity" that the character is being damned for, is homosexuality. The song confronts the conflicted emotions of shame and fear of rejection, and goes through the "five stages of grief", from denial ("Is this the real life? Is this just fantasy") to final acceptance ("Nothing really matters to me"), through anger ("Thunderbolt and lightning"), bargaining ("Easy come, easy go, will you let me go?") and depression ("Beelzebub has a devil put aside for me, for me, for me!"). His mother cries ("Mama, ooh, didn't mean to make you cry"), she tries to convince him to abandon his ways ("Just got to out / Just got to get right out of here"), she gets angry ("Oh, baby, can't do this to me, baby!"), and though she has only reached the second stage of grief by the end of the song, Freddie already has completed his cycle, and some day so will she complete hers — or maybe not. Probably for the sake of not losing her, Freddie never publicly came out.

So there. The meaning of "Bohemian Rhapsody". It is beautiful because it comes from the deepest of the heart, the greatest emotional conflict that Freddie had had to face, that shook him for decades, and to which he finally found a resolution. Though this conflict was his own, the emotions are universal, for each of everyone's emotional conflict — and they here find their aggrandized operatic expression, in maybe the most beautiful song of all times.

Jul. 23rd, 2017

eyes black and white

Taking private commerce seriously

With many authoritarian governments cracking down on peaceful exchange and commerce, including via electronic means, there is clearly a need for discussion and e-commerce software with good privacy and security — hence a market opportunity to provide the technical means to achieve such peaceful human interaction. Of course I am only discussing the means of avoiding oppression by illegitimate governments, and not at all about escaping the just surveillance of what legitimate governments there may be. You're each big enough to distinguish oppression from justice by yourself, and to know when to surrender even to oppressive governments.

To seize this opportunity, a group of technically advanced software developers could write general-purpose secure discussion and e-commerce software. To demonstrate their technology, these developers would maintain a discussion and commerce site beyond any legal reproach: that site would defensively follow every applicable regulation in every single country it is allowed to operate: this includes restricting speech and commerce to what is uncontroversially legal, paying all relevant taxes, and tracking users no less (though no more) than legally required. Of course, the software being open source, anyone can trivially customize and deploy it with minimal configuration, making their own responsible choices as to which oppressive laws to flaunt in which oppressed countries. But official maintainers of the software are barred from ever operating or having operated such a site. A clean separation is essential to avoid any legal trouble, and to keep the project running, accepting funds and attracting academic contributions. Thus, the open source project may accept anonymous donations (within legal limits) and people can post bounties on its bug tracker. No open source developer will ever touch anything illegal — they just help build basic secure internet infrastructure.

There are many technical challenges, with two main themes, distinct but related: raising the state-of-the-art in secure software, and rejecting those mainstream technologies that are insufficiently secure.

The first theme, raising the state-of-the-art in secure software, is because every government crackdown on private networks thereby demonstrates that security is currently insufficient. Now, it's not just a matter of "currently": security is a race. You don't have to be perfect, you only have to be better than the other guy; but it's also not enough to be perfect, you still have to be better than the other guy. And as the other guy improves, you must improve ahead of him if you want to stay ahead; and you want to stay ahead if you don't want to spend the rest of your life in prison. Offense has a permanent team to improve its position in the race. Defense also needs a permanent team if it wants to compete. And that is why a dedicated team is needed.

Also, "technology" must be understood broadly: it is not just a matter of the software, or its development process, but also of the people running it. Operational security requires operators to follow a strict discipline, jumping through sufficient hoops, every single the time, to cover their tracks. Software can help with it, by automating what can be automated, by providing checklists for recurrent human actions, by offering tutorials and training and documentation, etc. Some of the actions shall remain secret and/or context-specific, and each operator of a private site will have to extend the software in ways that make sense.

Obviously technology is also a matter of software, and of software development process. On the pure software technology front, "raise the security level" means that privacy developers should use languages, libraries and protocols that will minimize the attack surface of their systems, while maintaining sufficient (and as high as affordable) productivity, within their development budget. Otherwise, they are likely to lose the race to their competitors, and hence to their enemies: as the joke goes, you don't always have to run faster than the tiger, only faster than the other preys that the tiger is just as interested in. In particular, the privacy developers should invest in programming languages and operating system infrastructure with formal semantics, limits on side-effects, verified compilers, verified protocols, full abstraction for domain-specific languages, etc.

As regards the software development process, rigorous design, extensive documentation, precise specification, comprehensive testing, including fuzz testing, stringent review, are all necessary, but not sufficient, to promote quality. Reviews can be facilitated using automated linting and code formatting, that remove syntactic concerns from the reviewers so they can focus on the essential; but even with this burden removed, review is still error prone, the reviewers of a change may be missing context, and unobvious bugs or underhanded backdoors can pass through. Therefore regular code walkthroughs of the entire codebase, especially before release, are a good idea. And that includes any software dependencies. To make these walkthroughs possible, an emphasis on simplicity is essential — in the style of Alan Kay whose ViewPoints Research Institute (VPRI) built a complete software system in twenty thousand lines of code, including compiler, network stack and graphical interface, though excluding device drivers, backward compatibility modules, and various extensions.

And this brings us to the second main theme: rejecting those mainstream technologies that are insufficiently secure. Most mainstream technology is not optimized for security at all; security comes as an afterthought. Typical software environments involve huge codebases with gaping security holes and gigantic attack surfaces, in which it's OK for security to be breached, because there isn't too much money at stake, operators will be there to clean up the mess and restore from backup, and if needed government agents will use supreme force to go after the attackers, not the defenders. But these common standards of security that are good enough for mainstream use are just not good enough when developing software meant to resist attack by oppressive government agencies themselves. And this means much of the existing body of software must necessarily be excluded from the trusted code base used to conduct private commerce. In particular, if the choice of protocols necessitate the use of the giant gas factories that modern web browsers have become, it's game over. These beasts are not likely to be made (much less kept) secure any time soon.

Insecure by construction includes a lot of current technologies: HTML, CSS, Javascript, SSL, HTTPS, HTTP, maybe even long-running end-to-end TCP connections, they all have to go. Programming languages such as C++, C, Perl, Python, PHP, Ruby, Java, will also have to be wholly avoided. Safe replacements of some of these technologies may have to be developed where these technologies possess unrivaled features, and these features are not completely wrongheaded with respect to security. In developing these replacements, the lessons of these existing technologies can be preserved, and even large parts of the code base for these technologies can be ported. Yet when a safer technology replaces an unsafe one, it is important to not try to "look alike" the previous popular but unsafe technology, because willful confusion between similar technologies is itself a surface of attack by malicious actors. The safe choice is to be explicitly incompatible with any unsafe standard (or worse insufficiently specified semi-standard), and to fail fast and loud when the attempted use of unsafe technologies is detected. Trying to provide "best effort" compatibility is doomed, as it will open confused users to security issues.

Authentication by centralized authorities, whether through SSL certificates or secure DNS, is antithetical to the purpose of private commerce. They may not be used beyond bootstrapping the installation of basic secure software. This disqualifies HTTPS as a valid protocol, even if some "extension" to it ever were to one day support decentralized certificates as well as centralized ones: its very support for centralized authorities makes it a liability by which users may be confused into connecting using the wrong authorities. Instead, a private commerce protocol must exclusively rely on decentralized identities; the simplest naming scheme might be to read (digests of) cryptographic public keys as sequences of words using (some variant of) diceware (a bit in the style of Urbit having pronounceable names) — and always insisting that users check the full sentence before they complete their first connection. When users use stateful clients, these should remember connection keys and accept aliases (a bit in the style of SSH), and they should warn loudly against partial matches or near-matches.

Network connections may have to be avoided for private commerce, because long-running TCP connections can help identify participants. To keep communications private against a spy router at your ISP, at other ISPs nationwide and maybe even worldwide, and at anonymizing network nodes, might involve partaking in a mix relay network into which you'd inject traffic at a constant rate through many intermediate nodes. Doing it might might both add a lot of latency and considerably restrict bandwidth. Whatever the means to achieve privacy, they have a price that is likely incompatible with using the latest and greatest web browsing technologies en vogue on the non-private Internet. Private commerce operators must accept that their sites must intrinsically function with much lower latency and throughput than non-private sites. Goodbye, Web 2.0, AJAX, HTML5, rich interfaces and bloated pages; no cookies, no personalization, no language or format negotiation. Private commerce technologies should revert to Web 1.0 and earlier: asynchronous store-and-forward mailboxes, where marketplaces transmit catalogs of data, or search engines return hundreds of results, that users browse locally before to mail in order forms.

Bandwidth and security limitations mean that private commerce may be made mainly a lot of text, which may be "rich", but not too rich: there will never be any code in it (no Javascript), and no style engine capable of expressing "weird machines" (like CSS); only a well-specified, precisely-versioned, and strictly-validated, variant of markdown (all protocols should be well-specified, precisely-versioned, and strictly-validated). The only style parameters will be screen size and font size, and they will be under the exclusive control of the client, not at all of the server. There will be few pictures and sounds, at a premium; video will be a rare luxury; interactivity will be extremely limited. Private commerce will be austere compared to the public web. But it will be private, and, secure.

How much will the development of such private commerce infrastructure cost? Probably millions of dollars over several years. But many existing pieces of software can be leveraged: Peer-to-peer protocols, mix networks, cryptographic libraries, distributed hash-tables, cryptocurrencies, decentralized naming protocols, etc. Yet, probably few of those pieces can be used as is, and even though that can will require integration into a coherent system that securely ties all these technologies together. The development team must publish a set of protocols and a reference implementation of clients and servers. This trusted code base should not include anything like a modern web browser, or any other untrustable blob of software bloat. (This disqualifies OpenBazaar, anything to do with the Tor Browser, etc.) Others may feel free to fork and extend, or reimplement, the code base; they may even add or remove a backdoor or two, improve the interface or its implementation, contribute features — the code is opensource. The core development team will focus on providing the core functionality, making sure that it's tightly secure where it should, and extensible where it could.

What's the point of a super-secure cryptocurrency if the weakest link in using it is a terribly insecure client?

PS: Of course a secure client also requires a secure operating system and a secure computer below it, but that's another issue. See my speech Who Controls Your Computer? For the moment, I'd recommend to run secure client software on a dedicated computer that doesn't run any other application (say, a cheap ARM board with its own display and keyboard), and assume some general Linux distribution wasn't specifically hacked to target you (and doesn't have such gaping holes that everything is lost for everyone).

Apr. 30th, 2017

eyes black and white

Design at the confluence of programming languages and build systems

This short article discusses upcoming changes and future challenges for ASDF, the Common Lisp build system. It also draws lessons for a hypothetical successor to ASDF, for build systems in general, languages in which to write them, and languages that would have an internal build system that could rival with modern build systems.

ASDF, "Another System Definition Facility", is the de facto standard build system for Common Lisp (CL). It is relatively lightweight (13 kloc, over half of which for the portability layer UIOP, the "Utilities for Implementation- and OS- Portability"), quite portable (17 supported implementations), configurable (though importantly it "just works" by default), well-featured (it can create standalone executables), extensible (e.g. with support for linking C code, or for compiling FORTRAN through Lisp, etc.). But it lacks many features of modern build systems like e.g. Bazel: it does not support determinism and reproducibility, distribution and caching, cross-compilation to other platforms, building software written in languages other than CL, integration with non-CL build systems, management of multiple versions of the same software, or scaling to millions of files, etc. Historically, these limitations are due to ASDF being at heart an in-image build system in direct line of the original Lisp Machine DEFSYSTEM: it is designed to build and load software into the current Lisp image. But the challenges in possibly transforming ASDF into a modern build system touch limitations of Common Lisp itself and tell us something about language design in general.

I have essentially two development branches more or less ready for merge in the upcoming ASDF 3.3: the "plan" branch that provides proper phase separation (briefly discussed in my ELS 2017 demo), and the "syntax-control" branch that binding for syntax variables around ASDF evaluation (briefly discussed in my ELS 2014 extended article, section 3.5 "Safety before Ubiquity").

Phase Separation

The first branch solves the problem of phase separation. The branch is called "plan" because I started with the belief that most of the changes would be centered around how ASDF computes its plan. But the changes run deeper than that: 970 lines were added or modified all over the source code, not counting hundreds more were moved around as the code got reorganized. That's double the number of lines of the original ASDF, and it took me several months (part time, off hours) to get just right. Still, it is up-to-date, passes all tests, and works fine for me.

To understand what this is about, consider that a basic design point in ASDF 1.0 to 3.2 is that it first plans your entire build, then it performs the plan. The plan is a list of actions (pair of OPERATION and COMPONENT), obtained by walking the action dependency graph implicitly defined by the COMPONENT-DEPENDS-ON methods. Performing the plan is achieved by calling the PERFORM generic function on each action, which in turn will call INPUT-FILES and OUTPUT-FILES to locate its inputs and outputs.

This plan-then-perform strategy works perfectly fine as long as you don't need ASDF extensions (such as, e.g. cffi-grovel, or f2l). However, if you need extensions, there is a problem: how do you load it? Well, it's written in Lisp, so you could use a Lisp build system to load it, for instance, ASDF! And so people either use load-system (or an older equivalent) from their .asd files, or more declaratively use :defsystem-depends-on in their (defsystem ...) form, which in practice is about the same. Now, since ASDF up until 3.2 has no notion of multiple loading phases, what happens is that a brand new separate plan is computed then performed every time you use this feature. This works well enough in simple cases: some actions may be planned then performed in multiple phases, but performing should be idempotent (or else you deserve to lose), therefore ASDF wastes some time rebuilding a few actions that were planned before an extension was loaded that also depended on them. However, the real problems arise when something causes an extension to be invalidated: then the behavior of the extension may change (even subtly) due to its modified dependency, and the extension and all the systems that directly or indirectly depend on should be invalidated and recomputed. But ASDF up until 3.2 fail to do so, and the resulting build can thus be incorrect.

The bug is quite subtle: to experience it, you must be attempting an incremental build, while meaningful changes were made that affect the behavior of an ASDF extension. This kind of situation is rare enough in the small. And it is easily remedied by manually building from scratch. In the small, you can afford to always build from scratch the few systems that you modify, anyway. But when programming in the large, the bug may become very serious. What is more, it is a hurdle on the road to making a future ASDF a robust system with deterministic builds.

Addressing the issue was not a simple fix, but required deep and subtle changes that introduce notions neglected in the previous simpler build models: having a session that spans multiple plan-then-perform phases and caches the proper information not too little not too much; having a notion that loading a .asd file is itself an action that must be taken into account in the plan; having a notion of dynamically detecting the dependencies of loading a .asd file; being able to check cross-phase dependencies before to keep or invalidate a previously loaded version of a .asd file without causing anything to be loaded in the doing; expanding the state space associated to actions as they are traversed potentially many times while building the now multi-phase dependency graph. And all these things interfere with each other and have to be gotten just right.

Now, while my implemented solution is obviously very specific to ASDF, the issue of properly staging build extensions is a common user need; and addressing the issue would require the introduction of similar notions in any build system. Yet, most build systems, like ASDF up until 3.2, fail to offer proper dependency tracking when extensions change: e.g. with GNU Make you can include the result of a target into the Makefile, but there is no attempt to invalidate targets if recipes have changed or the Makefile or some included file was modified. Those build systems that do implement proper phase separation to track these dependencies are usually language-specific build systems (like ASDF); but most of them (unlike ASDF) only deal with staging macros or extensions inside the language (e.g. Racket), not with building arbitrary code outside the language. An interesting case is Bazel, which does maintain a strict plan-then-perform model yet allows user-provided extensions (e.g. to support Lisp). However, its extensions, written in a safe restricted DSL (that runs into plan phase only, with two subphases, "load" and "analysis") are not themselves subject to extension using the build system (yet the DSL being a universal language, you could implement extensibility the hard way).

Fixing the build model in ASDF 3.3 led to subtle backward-incompatible changes. Libraries available on Quicklisp were inspected, and their authors contacted if they depended on modified functionality or abandoned internals. Those libraries that are still maintained were fixed. Still, I'd just like to see how compatible it is with next month's Quicklisp before I can recommend releasing these changes upon the masses.

Syntax Control

The current ASDF has no notion of syntax, and uses whatever *readtable*, *print-pprint-dispatch*, *read-default-float-format* or many other syntax variables are ambient at the time ASDF is called. This means that if you ever side-effect those variables and/or the tables that underlie the first two, (e.g. to enable fare-quasiquote for the sake of matching with optima or trivia), then call ASDF, the code will be compiled with those modified tables, which will make fasl that are unloadable unless the same side-effects are present. If systems are modified and compiled that do not have explicit dependencies on those side-effects, or worse, that those side-effects depend on (e.g. fare-utils, that fare-quasiquote depends on), then your fasl cache will be polluted and the only way out will be to rm -rf the contaminated parts of the fasl cache and/or to build with :force :all until all parts are overwritten. Which is surprising and painful. In practice, this means that using ASDF is not compatible with making non-additive modifications to the syntax.

Back in the 3.1 days, I wrote a branch whereby each system has its own bindings for the syntax variables, whereas the default tables be read-only (if possible, which it is in many implementations). With that branch, the convention is each system can do modify the syntax in whatever way it wants, and that will only affect that system; however, changes to syntax tables must be done after explicitly creating new tables, and any attempt to side-effect the default global tables will result in an error.

This was the cleanest solution, but alas it is not compatible with a few legacy systems that explicitly depend on modifying the syntax tables (and/or variables?) for the next system to use, as ugly as that is. My initial opinion was that this should be forbidden, and that these legacy systems should be fixed; however, these were legacy systems at a notable Lisp company, with no one willing to fix them; also, I had resigned from maintainership and the new maintainer is more conservative than I am, so in the end the branch was delayed until after said Lisp company would investigate, which never happened, and the branch was never merged.

A simpler and more backward-compatible change to ASDF would have been to have global settings for the variables that are bound around any ASDF session. Then, the convention would be that you are not allowed to use ASDF again to load regular CL systems after you modify these variables in a non-additive way; and the only additive changes you can make are to add new entries to the shared *readtable* and *print-pprint-dispatch* tables that do not conflict with any default entry or earlier entry (and that includes default entries on any implementation that you may want to support, so e.g. no getting #_ or #/ if you want to support CCL). Even additive changes, if made, must somehow not clash with each other, or they become non-additive; but there is no way to automatically check that this is the case and issue a warning. After you make non-additive changes (if you do), then ASDF can't be used anymore to build normal systems that may conflict with those changes, and if they are modified and you call ASDF on a system that depends on them, you lose (or you must first make all those systems immutable).

Note that because ASDF would already break in those cases, most of these constraints de facto exist, are enforced, and are respected by all ASDF users. There remains the question of binding the variables around the build, which allows normal systems to be built even if a user changes the variables, or to not bind them, which puts the onus on most users of keeping these variables bound to reasonable values around calls to ASDF for the benefit of a few users would want their own breaking changes to persist after the build. I believe the first option (bind the variables) is cleaner, though the second (basically, do nothing) is more backward-compatible.

In all cases, you can always make non-additive changes to a readtable (such as enabling fare-quasiquote) by locally binding *readtable* to a different value, e.g. using named-readtables:in-readtable. A local binding won't adversely affect the ASDF build; but unless ASDF is changed to enforce its own bindings, you'll have to make sure to manually undo your local bindings before you call ASDF again.

The problem with not adding any syntax-control to ASDF is that it forces Lispers to always be conservative about modifying the readtable and calling ASDF (or having it called indirectly by any function whatsoever that they call, which they can't always predict). In practice this makes hacking CL code hostile to interactive development with non-additive syntax modification; which defeats in social conventions a technical feature of the language often touted as cool by its zealots. If syntax-control is added to ASDF, then you can freely do your syntax modifications and be confident that building code won't be adversely affected.

The current branch implements the simpler option of binding variables around ASDF sessions, and using a mutable shared readtable that should only be modified additively. It has probably bitrotten, and should be updated or rewritten. The current maintainer, Robert Goldman, should probably opine on which change to adopt with what schedule (3.3.0? 3.2.2? 3.3.1? 3.4.0?) and sign off the API.

Vanquishing Language Limitations

These two modifications are ((now)low)-hanging fruits in making ASDF a more robust build tool, one that supports working with non-trivial extension to the build system or the Lisp syntax. And in both cases, the limit reached by ASDF is ultimately that CL is a hippie language that allows unrestricted global side-effects and disallows disallowing. Therefore extensions necessarily introduce potential conflict with each other that have to be solved in wetware via convention, whereby all users are to be trusted not go wild with side-effects. The system cannot even detect violations and warn users of a potential mistake; users will have to experience subtle or catastrophic failure and figure out what went wrong.

A better language for a build system should be purer: inasmuch as it has "global" side-effects, it should allow to "fork" the "global" state in an efficient incremental way. Or even better, it should make it easy to catch side-effects and write this forking support in userland. At the very least, it would make it possible to detect violations and warn the user. Bazel is an example build system with an extension language that has local side-effects, but globally has pure forked environments. A successor to ASDF could similarly provide a suitably pure dialect of Lisp for extensions.

Happily, adding better syntax control to ASDF suggests an obvious solution: ASDF extensions could be written in an enforceable subset of a suitable extension of Common Lisp. Thus, ASDF extensions, if not random Common Lisp programs, can be made to follow a discipline compatible with a deterministic, reproducible build.

What would be an ideal language in which to write a extensible build system? Well, I tackled that question in another article, the Chapter 9: "Build Systems" of my blog "Ngnghm". That's probably too far from CL to be in the future of ASDF as such, though: the CL extension would be too large to fit ASDF's requirement of minimalism. On the other hand, if such a language and build system is ever written, interest for CL and ASDF might wane in favor of said latter build system.

In any case, in addition to not being a blub language, features that will make for a great programming language for an integrated build system include the following: making it possible to directly express functional reactive programming, determinism as well as system I/O, laziness as well as strictness, reflection to map variables to filesystem and/or version control as well as to stage computations in general including dynamic build plans, hygiene in syntax extension and file reference, modularity in the large as well as in the small, programmable namespace management, the ability to virtualize computations at all sizes and levels of abstractions, to instrument code, etc.

Towards cross-compilation

Now, before we get reproducible builds, we also need to enable cross-compilation for ASDF systems, so the necessarily unrestricted side-effects of compiling Common Lisp code cannot interfere with the rest of the build. Cross-compilation also allows building on a different platform, which would be important to properly support MOCL, but would probably also mesh well with support for building software in arbitrary other languages.

Importantly, instead of the (perform operation component) protocol that specifies how to build software in the current image, a (perform-form target operation component) protocol (or maybe one where the target information has been made part of the operation object) would return forms specifying how to build software, which could then happen in separate Lisp or non-Lisp process, on the same machine or on another worker of a distributed build farm.

Note however, that one essential constraint of ASDF is that it should keep working in-image in the small and not depend on external processes or additional libraries. Any serious effort towards a "deterministic build" should therefore remain an extension indeed (though one users would load early).

Still, if this extension is to remain compatible with ASDF and its .asd files, providing a backward-compatible path forward, then modifications and cleanups may have to be done to ASDF itself so it behaves well. Even keeping that hypothetical deterministic build separate, I expect non-trivial changes to the ASDF API to enable it, such as the perform-form protocol mentioned above. But backward-compatibility and smooth transition paths have always been the name of the game for ASDF; they are what make possible an ecosystem with thousands of packages.

There is a precedent to an ASDF extension leading to (most positive) changes in ASDF: POIU, the "Parallel Operators on Independent Units", Andreas Fuchs' extension to compile files in forks (but still load them in-image). Making sure that POIU can be expressed as an extension of ASDF without redefining or breaking the provided abstractions, was instrumental in the evolution of ASDF: it led to many cleanups in ASDF 2, it inspired several of the breakthroughs that informed what became ASDF 3, and it kept influencing ASDF 3.3.

Thus, even though ASDF will stay forever an in-image build system, and even though a deterministic build extension (let's call it FDSA, the Federated Deterministic System Assembler) may ultimately remain as little used as POIU (i.e. because it lacks sufficient benefits to justify the transition costs), I expect the design of the base ASDF to be deeply influenced by the development of such a tool (if it happens).

Looking for new developers

Robert Goldman and I are not getting younger, not getting more interested in ASDF, and we're not getting paid to hack on it. We are looking for young Common Lisp hackers to join us as developers, and maybe some day become maintainers, while we're still there to guide them through the code base. Even without the ambition (and resources) to actually work towards a hypothetical FDSA, our TODO file is full of items of all sizes and difficulties that could use some love. So, whatever your level of proficiency, if you feel like hacking on a build system both quite practical and full of potentiality, there are plenty of opportunities for you to work on ASDF (or a successor?) and do great, impactful work.

Apr. 21st, 2017

eyes black and white

S.O.S. VIETNAM

CALL TO ALL LOVERS OF JUSTICE AND FREEDOM, NATURE AND DEMOCRACY

S.O.S. VIETNAM
Under threat of genocide and annexation by China!

A machiavellian plan by China for the annexation of Vietnam is being implemented with the complicity of the communist power in Hanoi to general indifference!

In 1979, China invaded Vietnam in retaliation for Vietnam's intervention in Cambodia. The resulting Sino-Vietnamese border war, lasted not only a few months as per the official version, but ten years, until 1989. It was marked by unheard of atrocities from a 620,000 strong Chinese army that razed everything in its wake: they destroyed four entire cities and villages, massacred all their inhabitants including children after gang raping the women. Yet, when their ally and sponsor the Soviet Empire fell in 1990, the dictators in Hanoi, rather than lose their power by reconverting themselves as democrats as in Eastern Europe, preferred to pledge allegiance to China and offered their country in exchange for Beijing's support. The secret treaty signed in Chengdu had its brief content only disclosed in April 2013: documents stolen from the Vietnamese Secret Service of Defense were handed over to Foreign Policy Magazine by General Hà Thanh Châu, after he applied for asylum in the United States. According to this treaty, the dictators in Hanoi commit themselves to the gradual transformation of Vietnam into a Chinese province like Tibet. The evolution will take place in three stages of twenty years each:

2000-2020: Vietnam becomes an autonomous province,

2020-2040: Vietnam becomes a dependent province,

2040-2060: Vietnam trades its name for Âu Lạc (named after two ancient ethnic groups living between the two countries) and will be subject to the administration of the governor of GuangZhou.

The 1990 surrender was merely the explicit execution of what Hồ Chí Minh pledged in return for the military aid granted by Mao ZeDong during the First Indochina War. By the "Vietnam-China Cooperation Agreement" signed on 12/6/1953 in GuangXi, Hồ promised to thereafter "merge the Vietnamese workers' party with the Chinese Communist Party" and to make "the Vietnamese democratic republic an element of the People's Republic of China".


Under the pretense of active cooperation with the Big Brother from the North, the process of tibetization of Vietnam took place as follows:


Political Bringing to Heel:

- In 1999, a land border treaty stipulated the transfer of 900 km² (equivalent to 60% of the area of the ​​Thái Bình province), including half of the Bản Giốc waterfall and the Nam Quan border crossing, two historical sites dear to the heart of the Vietnamese.

- In 2000 by a treaty on the Gulf of Tonkin the dictators in Hanoi ceded to China nearly half (44% or 16000 km²) of the territorial waters in the gulf as well as the beach of Tục Lãm. The Chinese were also granted the right to exploit economically the riches of the gulf in the Vietnamese zone, under guise of cooperation. These two treatises are actually but the application texts of three treaties signed by Hồ Chí Minh with Beijing in 1957, 1961, 1963.

- In 2013 ten resolutions on cooperation allow Beijing to control the entire policy-making of Vietnam. Chinese people from China or formerly from Vietnam (those who left in 1978) were specially trained and placed by the Chinese government in various leadership positions at all levels within all Vietnamese institutions, especially in the police and the army, up to the highest state positions: At present, President of the Republic Trần Đại Quang, Deputy Prime Minister Hoang Trung Hải considered Beijing's right-hand man, Deputy Speaker Tô Huy Rứa and Minister of Police Tô Lâm are Chinese or from Chinese origin. Thus, executives and dignitaries who are rebellious to sinicization are quickly spotted and neutralized: Some twenty high-ranking officers known for their hostility to China, including General Staff Đào Trung Lịch and the Commander-in-Chief of the 2nd Military Zone Trần Tất Thanh, disappeared in an "aircraft accident due to fog" in May 1998; more recently, in July 2016, just three months after his appointment, General Lê Xuân Duy, another commander-in-chief of the same zone (very important because of its neighborhood with China and Laos), war hero of the Sino-Vietnamese War of 1979, experienced a rather "sudden death". The same kind of death struck in December 2016 minister of defense Phùng Quang Thanh, long pro-Chinese, when he displayed patriotic inclinations.

- In 2014, the treaty on a "project for two strategic corridors" grants China the right to economically exploit the six border provinces (that is, actually, the destruction of the country's magnificent primary forests) and the Điện Biên region, as well as the establishment of two strategic corridors, Lào Cai - Hà Nội - Hải Phòng and Móng Cái - Hà Nội.

- In January 2017, Nguyễn Phú Trọng, the current secretary-general of the party, went to Beijing to sign 15 conventions promoting closer cooperation between the two countries, in particular in the fields of the military, the police and culture. This cooperation should be understood as a greater subjection, with the eventual incorporation of the Vietnamese army and police into the Chinese army and police, that is, the end of Vietnam.

- As for the occupation of the Paracel and Spratly islands by China, the dictators in Hanoi endorse it in a way for they repress any public demonstration against it, and they do not protest much or with much vigor against the Chinese building and drilling there.

All these treaties were followed by economic agreements enabling Beijing to send en masse its nationals to the most strategic places of Vietnam, under cover of being employees and workers:

- Agreement for two joint ventures (actually Chinese ventures since the majority of the capital comes from China) to exploit bauxite. These companies are installed on the "roof" of the Highlands of the Center region, from where one can dominate all Indochina.

- Agreement for the exploitation by the Chinese of the primary forests, which amounts to letting China destroy the most beautiful natural resources of Vietnam while giving it control on the most crucial points of the north of the country.

- Permission for Chinese companies to settle on all the Vietnamese coast, from Móng Cái to Cà Mau.

- Possibility for the Chinese to found Chinese cities throughout the country as in Bình Dương, where the only language used is Chinese and where trade is made in Chinese yuan.

- Permission for Chinese nationals to come to Vietnam without a visa, to move and settle freely in Vietnam where they can marry Vietnamese women whose children will become systematically Chinese. On the other hand, a visa is still required for Vietnamese people going to China, and many Chinese districts in Vietnam are prohibited to Vietnamese people, and even to Vietnamese public authorities.

The tacit recognition of Vietnam's belonging to China is shows up in the adoption of a 6-star Chinese flag: a large star surrounded by five instead of the four small official stars. There the Vietnamese people are symbolically represented as one new conquered people, on an equal footing with the peoples of Manchuria, Inner Mongolia, Tibet and the Uighur country. This Chinese flag appeared for the first time in 2011 in the background behind a speaker of the VTV official television; it aroused such an indignant interrogation that it was quickly withdrawn; yet it was seen again in thousand copies agitated by the Vietnamese schoolchildren for the welcome of the Chinese vice president Xi Jinping in 2012. Faced with the general outcry, the government bald-facedly blamed the fact on a technical mistake by the flag manufacturers (sic!). This did not prevent said flag from appearing in a meeting room of Vietnamese and Chinese high-ranking officers in Lào Cai in 2015 and currently in many police stations.

Moreover, the red flag with a yellow star in the middle which officially represents communist Vietnam, as imposed by Hồ Chí Minh to Vietnam, is but the emblem of the young Chinese communist pioneers (and not that of the Fujian province as the rumor claims). This adds up with the strong probability that the famous Hồ Chí Minh, identified with the Vietnamese revolutionary Nguyễn Tất Thành alias Nguyễn Ái Quốc, was in fact a Chinese imposter, his look-alike Hồ Tập Chương alias Hồ Quang: he had been commissioned by the Communist International to personify the Vietnamese Soviet spy after his death in 1932 in the jails of Hong Kong. This identification was revealed in 1946 by a Taiwanese author, Ngô Trọc Lưu, in a book titled "Hồ Chí Minh" written in Japanese; it was confirmed in 1949 by a local CCP newspaper, Cương Sơn; and it was clearly reaffirmed in a controversial biography on "Hồ Chí Minh's half-life" published by another Taiwanese scholar, Hấ Tuấn Hùng in 2008. This trait speaks volumes about the annexationist machination of Chinese leaders and the depth and duration of their determination to conquer Vietnam.

There is no surprise after this that the Chinese behave as arrogant masters. Some high dignitaries in Beijing do not deprive themselves of publicly calling Vietnamese leaders "ungrateful bastards" when Hanoi dares shyly protest against one of their abuses.

Vietnam's submission to China means the violent repression of all anti-Chinese demonstrations: demonstrations against the occupation of land on the northern border; against the occupation of the traditionally Vietnamese Paracel and Spratly Islands coveted by most countries in the region for its rich oil reserves amounting to 25% of the world's reserves, that China took from Vietnam in 1974 and 1988; or against the establishment of bauxite plants in an environmentally sensitive region in 2009-2011; etc. Hundreds of patriotic activists were arrested, beaten and sent to prison where many of them died as a result of ill-treatment. Repression, moreover, is still the norm, as for instance in recent months towards protestors against the Formosa company (Taiwanese by its name, with its seat in Formosa, but it is Chinese by its capital and therefore its management).


Cultural subjection:

Political expansion is hardly conceivable without cultural influence. For Beijing this influence can only be understood by the sinicization of the conquered people. Since the Vietnamese are destined to merge into the great Chinese melting pot, it is necessary to erase the traces of hereditary antagonism in them and to deprive them at the same time from the pride of their historical past. Thus, Beijing imposed various measures on Hanoi:

- Obliviate the valiant resistance to the Chinese army in the war of 1979-1989: To the helpless indignation of the veterans, Hanoi had to desecrate the graves of Vietnamese soldiers who died on the northern border. Anything about that war and their heroism was erased from their graves. On the other hand, cemeteries and monuments were erected in honor of the Chinese soldiers who fell in Vietnam. Anti-Chinese publications, abundant during the war, went missing entirely; and henceforth the rare mentions of this war in official history textbooks fit in eleven lines, such that the young Vietnamese ignore its very existence. On the annexations of frontier lands as well as of the Paracel and Spratly Islands, a radio silence is strictly observed, and also on the frequent abuses by the Chinese army such as the strafing of fishing boats or the shooting down of Vietnamese aircraft off the territorial waters of Vietnam, half of which was appropriated by China.

- Avoid the glorification of the great heroes of history honored for their victorious struggle against the Chinese invader. There were discussions about removing their statues from public places, but the overly sensitive subject was put aside and the authorities were content to remove those in private houses (a recent case being the statue of General Trần Hưng Đạo, a great victor against the Mongols, erected in the house of a resident of the province of Lâm Đồng).

- No assimilation can take place without language adoption. Unlike English, a language that is very flexible and easy to learn, unfortunately for China's hegemonic ambitions, the Chinese language with its ideographic writing lends itself poorly to spreading internationally and does not appeal to the Vietnamese. If you do not want to learn it voluntarily, you will learn it by force: decrees were therefore issued at the end of 2016 to impose Chinese as a compulsory first language in secondary school and to introduce Chinese as a second language in primary school. At the moment programs entirely in Chinese are broadcast by the Vietnamese radio and television; and even in the Vietnamese programs, Chinese songs are interspersed among national music.


Destruction of the economy:

Hanoi and Beijing both had to keep secret the contents of the 1990 treaty for fear of the unanimous revolt of the Vietnamese people—who as a result of the lessons of the history are animated by a visceral hostility towards the predatory neighbor. On the one hand, Beijing wanted to avoid having to face 90 million resistance fighters when the officially proclaim the annexation; on the other hand, they coveted Vietnam mostly for its mineral wealth (especially bauxite and oil) and its favorable strategic situation in South-East Asia; thus, they verily connived an enterprise of genocide against the Vietnamese people, with a view to a repopulation by Chinese people; and this entreprise began immediately after they signed the treaty. Faced with the methodical destruction of the economy and the parallel poisoning of all their sources of life, young able Vietnamese have been and will be driven to emigrate; those who remain will be reduced over the years to the sick and impotent, while coming children are destined to be weak or deformed.


Destruction of agriculture:

Vietnam derives its main resources from its thriving agriculture that still occupies more than half of its population, from its fisheries, its tourism, and also its oil (since 2000). The rice food crop for which Vietnam is still the second largest producer in the world and the third largest exporter, was therefore Beijing's first target:

The vast Mekong Delta, Vietnam's rice granary, depends on the annual alluvial floods that ensure its fertility. But China established a series of 6 dams in Yunnan upstream of the Mekong (4 more are planned, besides the project of two canals that will divert the water of the river in the surroundings), in particular the gigantic dams of Xiaowan (Capacity: 15 billion m³, 2010) and Nuozhadu (capacity: 23 billion m³, 2012); and now the other countries that live on the Mekong are helpless before the decline of their river economy. They cannot hold accountable the powerful Chinese; and so the Chinese manipulate the flows of the river at their whim, without even warning the residents; they ignore the warnings the Mekong Regional Commission in which they refuse to belong; and so these countries prefer to participate in the scramble by building their own dams with Beijing's blessing and financial contribution (11 planned in Laos who dream of being a major supplier of electricity to the region, including the enormous Xayaburi on the main river, already being build; 2 projects in Cambodia and 2 more in Thailand).

Vietnam, downstream in the delta, can only take notice of the damage: facing prolonged droughts and devastating floods, soils are depleted due to lack of sediments, compounded by salinization due to the increase in temperature and the rise of seawater; fresh water levels are declining dangerously, leading to shortages and to the fall of fish stocks; with the change of temperature, insects and fungi multiply, spreading diseases (notably the dengue fever) and destroying the crops. To the action of dams, add the destruction of the mangroves, especially in the extreme south, in order to raise shrimps for export, at the instigation of seafood freezing companies, most of which are run by the Chinese. Without the trees to fix the land, the coasts erode and each year 500 ha (1200 acres) disappear in Cà Mau which will soon no longer have the shape of a point.

As a result, the area of ​​rice fields is decreasing and their yield has dropped by 15% over the last decade; the situation is deteriorating so rapidly that there may be a risk of famine in the years to come. For paradoxically, whereas Vietnam is a large exporter of rice, its residents are often forced to eat imported rice; this is due to the fact that the major part (60%) of the crops is pre-empted by the State which buys it at very low prices from the producers (3000 đ/kg instead of 4500 đ/kg on the market), for export. Where to? mostly (40%) to China (at the price of 6000 đ/kg), which in exchange for good Vietnamese rice sells to the Vietnamese population its own poor quality rice, sometimes mixed with plastic beans called "faux rice", at a price double or triple (up to 30000 đ/kg). Exploited and discouraged by poor working conditions, driven from a land that has become arid, a growing number of peasants abandon the profession, emigrate to the city or to neighboring countries, abandoning land to the Chinese who are eager to acquire it.

Determined to grab as much land as possible for their colonization, the Chinese find a thousand tricks each more diabolical than the others to ruin the reluctant peasants and push them to abandon their homes. Their subtle cruelty finds an easy prey in the little peasantry, that is poor hence greedy, ignorant and credulous :

- Chinese traders traveling all over the country locate peasants in difficulty and offer to buy the four clogs of their buffalo at the price of the animal; the poor things accept, thinking they can earn double since the animal killed for its hooves can thereafter be sold as meat. Since the buffalo is the working tool for the peasant, once it has disappeared, the peasant will have no choice left but to acquiesce to any suggestion from the Chinese: to fill his rice field to plant subsistence crops or shrubs, using toxic Chinese fertilizers and pesticides (which do not comply with any international standards) sold to him on credit by the merchant, who promises in return to buy him the product of his harvest at a good price. The promise is often held at least the first year; then, under any pretense (e.g. the product in question is no longer required) the merchant or another of his accomplices refuses the purchase of the product at the expected price. The peasant must content himself with selling his perishable goods at a low price. The peasant finally over-indebted is obliged to cede his land to the Chinese or one of his accomplices to emigrate elsewhere.

- Alternatively, in areas where certain crops prosper, the trader offers to buy all the leaves of the tuber (e.g. cassava) or the plant, or also all the roots of the plant, at a much higher price than the harvest itself. As a result, the tuber can not grow, the plant dies and the farmer is deprived of seed or seedling for the next season. Again the trader offers fertilizers and pesticides for the planting of a fruit, a flower, etc., with very good yield, etc. The trick of buying the roots was used for the destruction of pepper crops, one of the riches of Central Vietnam.

- A hundred-year-old cultivation on the border with Cambodia, the sugar palm, is being eradicated "thanks" to the Chinese who come to propose to the peasants to buy at high prices the trunks of this palm tree. Cut in half the palm tree can only die and there is no question of replanting because the tree produces only after twenty years.

The Chinese will to destroy has no bounds: For somewhat smarter farmers, Chinese "experts" come to advise an increase in income by the breeding of a variety of whelk (pomacea), freshwater lobster (Procambarus), or red turtle, the flesh of which is indeed prized. However, these three species, imported from America, are terribly invasive; they soon invade rice fields, rivers and lakes, canals... killing local flora and fauna, especially young rice plants, to a degree that the FAO is alarmed.

Better or worse, strangers were surprised throwing babies crocodiles in the Mekong. Maybe it was only a rumor. However last month, a buddhist monk, who was even "elected" to the house of representatives, - and who is known for publicly criticizing Lý Thường Kiệt, the Great general who in 1075 won against the Chinese Song dynasty, in a war for the first time offensive and not defensive, for his "insolence" towards the Empire - certainly a Chinese agent, before a public of hundreds of people, threw into the Red River under cover of a rite of deliverance of souls, ten tons of piranhas, enough to infest the entire river and prohibit any activity there. Can you imagine such an act? Facing the general indignation, the authorities have tried to minimize the fact by declaring that those piranhas belonged to an inoffensive variety!

The coffee plantations, for which Vietnam is the world's second largest producer (and the first for the robusta variety), do not undergo a routine destruction by the Chinese, first because it is rather a product for export (only 5% is used for domestic consumption), not indispensable to the life of the population, and secondly because they want to control it: always on the lookout for the slightest opportunity to purchase at a discount, they already count on the sharp fluctuation in the price of coffee, which is causing ruin to planters who are unable to absorb a sharp fall in prices (for example in 2012).


Destruction of forests, Vietnam's lung:

Thirty years of war with massive bombardment destroyed only 16 per cent (not 60 per cent, as claimed by official propaganda) of Vietnamese forests, based on mutually conflicting figures given in various articles, which show that in 1943 Vietnam was forested at 43% (i.e. 140,000 km² out of a total area of 330,000 km²), and from 1943 to 1973, 22,000 km² of forests were destroyed. But 17 years after the war, in 1990, the official forest coverage was only 92,000 km², which means that in peace time 26,000 km² of forests were destroyed, a greater area and faster than during the war. Deforestation is ongoing, despite a massive effort towards reforestation. In 2013, forests covered 39% of the territory, but 25% of these forests are made out of reforestation using low-shade and low-diversity species such as pine and eucalyptus. What more, with deforestation comes the erosion and degradation of bare soils of which 40% becomes unfit for cultivation.

Among the causes of deforestation, the main one is population growth, with its consequent need for space, construction, firewood (for cooking) and for agricultural and industrial development. But the most disastrous factor is organized looting of forests by Chinese operators to whom the Vietnamese government granted the concession to thousands of square kilometers near the northern border and on the highlands of the Center region. This is compounded by the plunder organized by traffickers whose chiefs are usually Chinese, in collusion with local authorities, who derive from this illegal trade, accounting for half of the timber trade, a profit of 2.5 billion USD per year. The deforestation of Vietnam is all the more deplorable since its ravages include beautiful rainforests, especially primary forests that are rare and valuable for their biodiversity (they shelter or used to shelter more than a thousand different species, of which 8.2% are endemic and 3.4% are protected by the United Nations): out of 10% of the area in 1996, there only remained 0.6%, i.e. 80,000 ha in 2012. In a mere 20 years, the communist regime in Hanoi managed to squander the fabulous ancestral inheritance of the golden forests (rừng vàng).


Environmental pollution :

Facing the pollution that poisons their own country, Beijing had the idea of ​​using chemical poisoning to get rid of the Vietnamese. Through political as well as financial pressures, they made Hanoi accept the installation throughout Vietnam of its most polluting industries. Already in 1990, after the end of the Sino-Vietnamese War, many Chinese people who came to or returned to Vietnam went back to trading and opening small businesses, by taking Vietnamese individuals first as front men, then as a partners in a joint venture. Even after 100% foreigner-owned companies were accepted starting in 2005, knowing the Vietnamese distrust of China, many 100% Chinese companies prefer to claim to be a joint venture by allying themselves with corrupt executives, and one can say that today the vast majority of companies in Vietnam have Chinese owners.

Taking advantage of the population's ignorance of the lack of Vietnamese laws, small Chinese production units, like those of the Vietnamese themselves, we must admit, were rejecting their wastes in rivers without restraint, to the dismay of the residents. But for Beijing that was not enough, and the Chinese authorities decided to switch to a higher gear. Whereas China itself closed all its bauxite plants due to environmental damage, after repeated pressures starting in 2001, Beijing eventually obtained in 2007 the signing by Prime Minister Nguyễn Tấn Dũng of the agreement for a project of 6 bauxite plants on a ​​1800 km² concession, to be exploited jointly by the two countries on the Highlands of the Central region, where the third richest deposits of bauxite in the world are located. The location of the first two sites chosen, in DakNong and Lâm Đồng, once known, raised for the first time in Communist Vietnam a protest by scientists, intellectuals and various personalities (petition with 2,600 signatures), who mentioned considerable dangers for the environment and, consequently, for the men and for the cultivation of tea-trees and coffee-trees in the neighborhoods, not to mention the danger of installing thousands of Chinese alleged workers on the "Roof of Indochina". The government ignored these concerns and arrested the leaders of the revolt. Construction of the factories therefore started in 2009. And the people are forbidden to circulate into the area as has become the rule for any large Chinese corporation. What is the result? To install the plants, thousands of acres of primary forest and crop land have been sacrificed, causing impoverishment of the inhabitants (defenseless mountain people); there is now a shortage of fresh water, much of which is captured for the manufacture of alumina; and in the event of heavy rain there are risks of spillage of red sludge out of the two pits where it is stored in the open. An unknown number of Chinese alleged workers are present in the restricted areas, who may or may not actually be factory workers. As for the two factories supposed to bring back a lot of foreign currency to Vietnam, they have not stopped making losses to the point that in 2016 the Ministry of Industry and Commerce had to ask for government assistance to replace obsolete and inefficient Chinese equipments by machines with more advanced technology from other countries.

The ultimate in Chinese duplicity and inhumanity (until now at least) as well as of Vietnamese governmental complicity, was reached with the company Formosa. In 2008, Beijing pressured Hanoi to grant Formosa Plastics group, a Taiwanese company infamous for lawsuits against it for environmental damages, permission to establish a steel plant in the province of Hà Tĩnh in the Center region of Vietnam. For this project, the group formed a subsidiary, the Hung Nghiep Formosa Ha Tinh Company, known simply as Formosa in Vietnam, whose shares were soon bought back by Chinese companies, which in fact made it a Chinese company and no longer a Taiwanese company as many still believe. In 2010, as always through corruption and intimidation, Formosa obtained a 70-year concession for 3300 hectares in Vũng Áng in Kỳ Anh district, just in front of a deep-water port with great military importance, since 500-ton ships and submarines can shelter there. This was already an enormous privilege, since according to Vietnamese laws in force, land ownership is not recognized, only land use, and no individual or group in Vietnam can be issued a land use license for more than 45 years. Yet in addition, Formosa also benefited from a rebate on its property taxes and on its importation taxes, which did not prevent it from practicing fraud in their payment (discovered in 2016) for nearly $ 300 million. It also was granted the right to develop infrastructure at its leisure!

Despite the protests of the expropriated inhabitants, the factory was put under construction in 2012, and in 2015 a huge complex was created on its site, which can be seen on Google maps.

On April 6th 2016, right after the factory was completed, the inhabitants of Vũng Áng found a frightening number of dead fish on their beaches. The following days, till the 18th of April, the phenomenon spread on the coasts of the Center region, affording the spectacle of miles of dead fish estimated to number several millions. The death of the sea, which will prove to be the greatest ecological catastrophe ever seen so far, did not at first provoke any reaction from the authorities. Looking for the cause of the disaster, fishermen-divers detected pipes from Formosa that were spitting out continual jets of a strange red liquid. Then began protests throughout the country against the Chinese company. The Vietnamese authorities did not wake up until 6 weeks after the massacre to speak of a catastrophe and to induce Formosa to accept its responsibility. But instead of immediately shutting down the factory and ordering an investigation into the effects of the pollution, the government was content with a $500 million payment. This was a paltry sum with regards to the damages caused, and none of the victims saw any of it, which leads to wondering whether it was actually paid and if so who pocketed it. Yet, according to the few scientists who came to take stock of the damage, it will take decades or even centuries for the sea to heal from millions of m³ of liquid filled with heavy metals and toxic chemicals (lead, mercury, cadmium, manganese, phenol, cyanide, etc., according to a laboratory independent from the Vietnamese authorities) that Formosa rejected and keeps rejecting in its waters. Today it is no longer the two provinces neighboring Formosa but all four central provinces (Hà Tĩnh, Quảng Bình, Quảng Trị, Thừa Thiên - Huế) that are affected and the body of red waters continues to expand and begins to reach the southern coasts. In order to survive, fishermen try to get fish from the open sea where they risk being slaughtered by armed Chinese fishermen and the Chinese navy, who have seized the eastern sea.

As if Formosa were not enough, in the same region, taking advantage of the rainy season, about twenty Chinese-owned hydroelectric plants discharge the water from their basin without warning into the surrounding countryside, destroying crops and killing several hundreds of people. This kind of flooding caused knowingly and often without notice by the hydroelectric factories has finally aroused in the population a feeling of detestation towards the 7000 dams that produce 40% of the national electricity, that Hanoi is spreading throughout the country, in imitation of the Chinese in China.

More importantly, in the midst of the Formosa scandal, the Chinese, in contempt of the entire world, and using the Vietnamese company Hoa Sen as a front, were granted the license for the installation of another steelworks plant of equal size in Cà Ná, Province of Ninh Thuận, in the south of the country. If this plant comes into existence and starts to dump its waste into the sea like that of the Center region, there is no doubt that all the coastal provinces of Vietnam will become uninhabitable for its natives and that the maritime economy will collapse completely.

To perfect the destruction of the South, in 2008 the Chinese, through the company Lee & Man, were granted the construction of a gigantic paper mill to produce 420,000 tons of paper per year on the Sông Hậu, the great river feeding the delta, in the face of unanimous protests. This plant, which is supposed to be in operation this year, will certainly kill the river with its enormous quantities of toxic waste including hydroxide, and will ruin rice crops as well as aquaculture in the West.

Unlike other foreign companies, that are not harmful, Chinese companies located all over Vietnam are all very polluting by the nature of their products and blithely dump their waste into the atmosphere, the soil and the waters. Vietnamese lakes and rivers are already blackish or reddish depending on the substances that are spilled there. The soil is impregnated with fertilizers and pesticides that contaminate crops. China is even suspected of exporting its own toxic waste to Vietnam, with or without a license from Hanoi, and of burying it in various parts of the country, based on the testimony of a few repentant accomplices. Besides, where does Formosa get so much toxic waste from, when, according to their own declaration, their stoves will not quite be ready until some time in 2017?


Consequences of pollution:

The Vietnamese population is extremely scared now for its health. Besides the air that they breathe, the water they use for their ablutions and their washing, all their food is now likely to poison them. Fruits and vegetables are not only stuffed with highly harmful Chinese pesticides but also dangerous Chinese chemicals that either magnify them or prolong their apparent freshness. Moreover, since the Sino-Vietnamese treaties, food products imported from China invade the Vietnamese markets and they are even worse: there is no week without the newspapers reporting cases of intoxication caused by one of these products, or without revealing cases of fake rice, fake eggs, fake noodles, fake meats, fake coffee, and so on, all faked with industrial chemicals. How can you protect yourself since you must eat to live? How to know if the fruit or vegetable you eat is not contaminated, if the meat you are enjoying is not tampered with, if the fish you buy is not packed with toxic metals, if the nước mắm you are consuming is not made from these intoxicated fish and if the salt that is used does not come from a polluted coastline? Vietnam has become a country with a high rate of cancer patients; the death toll from cancer, estimated by WHO in 2015 based on reports from Vietnamese hospitals, is 350 per day; there are 130,000 new cases every year, and these figures are expected to increase sharply after the Formosa disaster.

However, the government, complicit of the polluters, refuses to take sanitary measures. It rejects any request for analysis of the water. After the Formosa scandal, it even forbids doctors to examine the blood of the inhabitants of the Central provinces, for fear of exploitation by "enemy forces" (a term that refers to groups of opponents of the regime). The "genociders" of Beijing can rub their hands. The Southwest Vietnam and Central Vietnam are gradually being emptied of their population, driven by the misery to emigrate abroad on the incentive of the government. And most of these uneducated emigrants have no other resource than to join the lumpenproletariat of the host country which receives them badly and despises them. Ironically, following the example of Donald Trump, the Cambodian prime minister recently spelled out plans to build a wall on the Vietnamese border to prevent the paperless Vietnamese from entering Cambodia! Meanwhile, thousands if not millions of Chinese people have been settled in Vietnam, where the authorities have reserved the best places for them, wherein the Vietnamese who have been living there for generations have been expropriated for an insignificant indemnity, thus creating groups of "dân oan" (victims of injustice) that can be seen gathered around the capital or prefectures to claim a reparation that will never be made.


Military threats:

Unlike free countries that host foreign companies only with a view to procuring work for their citizens, the Vietnamese government suffers without objection that Chinese companies import all their personnel to the tens of thousands or even more, and refuse any control on the part of its administration. Also part of this behavior of servility/arrogance is a concern to conceal a much more worrying reality. The immense areas conceded to China for their factories that do not require as much, moreover located in the most strategic locations of the country, protected by barbed wire and prohibited to all Vietnamese, even to representatives of public authority, may house only military complexes whose staff consists of alleged factory employees. Arms of all sizes passed through the open border can be easily camouflaged, especially if tunnels are dug. Moreover, if we are to believe the rumor, the Chinese are in the process of (or have finished) constructing in secret two tunnels large enough for the use of tanks and lorries, to connect the region of the Highlands and The Mekong Delta.

At present, in the event of an armed invasion, China can move regiments at any time through North Vietnam, whose border region and Tonkin Bay are already under its control; in the Center region it has bases on the Highlands as well as on the coast with the port of Vũng Áng where its submarines and large ships can enter. Farther away, the south will be reached by troops descended from the Center region, and also by aircraft from the recently built airports on the Paracel and Spratly Islands stolen from Vietnam. If current intrigues succeed, China will soon become the owner of several regional airports on the brink of bankrupcy, that it can transform into military airfields.

In order to complete the encirclement of Vietnam and to control all its supply lines by either land or sea, China has established a solid alliance with Laos and Cambodia; the latter has even leased a naval base for 90 years in the port of Sihanoukville from where China can monitor the South Sea. In case of necessity, for example of American intervention, it deployed a row of ground-to-air missiles on the Paracel Islands. Where are these missiles pointed at, if not towards Vietnam, barely thirty kilometers away.

All these military preparations merely materialize China's warlike ambition. This is an ambition China never concealed: on the website of the Chinese army sina.com, the authors of articles published on 5/9/2008 and then on 20/12/2014 explain how China can quickly conquer Vietnam! But, as good followers of Sun Tzu and lovers of the game of go, especially after the failed invasion of 1979, the Chinese prefer to use force only as a last resort after stifling the opponent. Thus, for decades China has patiently applied to its little neighbor the "strategy of the silkworm", a small animal that is able to overcome a large pile of mulberry leaves by nibbling it bit by bit.



The Vietnamese population, caught between the Chinese hammer and the government anvil, prefers for the most part to live in denial or in fatalism. But the deniers of the Chinese threat can not dispute the omnipresence of the Chinese in the country; and since the leaks on the 1990 treaty, especially since the development of the "livestream" technique on Facebook that allows the direct exchange of information, they become aware of the imminent danger that the communist power wants to hide from them. For their part, the traitors of the State apparatus, who have been in the know for a long time, seek only to build up a substantial personal fortune through racketeering and corruption, and then to transfer this fortune abroad by means licit or illicit. Vietnam is in danger of bankruptcy with a current debt of USD 117 billion equivalent to 64% of GDP, that it cannot pay (on the deadline of July 2017, servicing the debt will amount to 24% of the national budget), at a time that country's coffers are empty (in many places, civil servants and employees of government companies haven't been paid for months). Meanwhile, it is estimated that more than USD 600 billion of money stolen from the Vietnamese people by the apparatchiks was deposited in the United States, and more than 200 billion USD in Swiss banks. All these Communist felons continue to assuage the people with lies, to praise the sweetness of living in a Vietnam moving towards modernity; but they themselves take the precaution of sending their wives and children in advance to capitalist countries, preferably in the most "detested", the United States. The "spoilsports" who oppose this travesty of justice, those who assist victims, the "democrats", the citizens who are openly hostile to the Party or to China, are tolerated for a certain time in order to convince international opinion that they live in a free country. Then on a beautiful day or rather on a beautiful night (as is the custom in dictatorships) they are arrested, beaten, imprisoned, sometimes killed. A few days ago, the political police thus kidnapped the most notorious democrats, and detained them in places unknown, so as to discourage those who are tempted to participate in the general demonstration of 5/3/2017. In Saigon, those who had the courage to demonstrate were harshly repressed, and on this occasion they discovered that the most brutal police officers who beat them cruelly are in fact Chinese.

Apart from the minority of the watchdogs of the regime, the Vietnamese people refuse the idea of ​​any Anschluss with China. But, betrayed by their own leaders who have become the "domestic enemy," how can they oppose the powerful "foreign enemy" when the fateful hour comes? The only hope for Vietnam to remain independent is a general uprising large enough to overthrow the power of Hanoi and install in its place a democratic government that will take national interests to heart and establish military alliances with free countries. And that before a Chinese military deployment. Yet, one of the most cruel political regimes in existence has submitted the South of Vietnam for half a century and the North of Vietnam for a century. And the Vietnamese have lost their energy and confidence in themselves. To revolt, they must overcome the paralyzing fear of the ire of the regime, a fear that is inculcated in them from childhood.

Meanwhile, time is short and we cannot watch without reacting the slow death of a once proud and courageous people. To you all men and women of good will, who love justice and freedom, I beseech you to look into the drama of Vietnam! Alert international public opinion to counter Beijing's annexationist machinations! Especially those among you, who by your vociferations against the Vietnam War in the 1960s, helped push America to abandon the republic of South Vietnam to bring it into the hands of the sinister clique of assassins from Hanoi, take your responsibilities and redeem yourself by denouncing the Chinese political crimes as strongly you former denounced the US! Show the Vietnamese that they are actively supported, and by the warmth of your sympathy communicate to them the flame they lack to overcome their fear! Help them to take back their right to live free in a free country!


Paris, 2017-03-09, revised version 2017-04-19
Đặng Phương Nghi
Em: dpnghi@gmail.com

Mar. 25th, 2017

eyes black and white

Why I haven't jumped ship from Common Lisp to Racket (just yet)

Matthias Felleisen jested "Why are you still using CL when Scrbl/Racket is so much better :-)" ? My response was as follows:

Dear Matthias,

you are right Racket is so much better in so many dimensions. I use Lisp because I just can't bear programming in a language without proper syntactic abstraction, and that is a dimension where Racket is far ahead of Common Lisp (CL), which sadly also remains far ahead of the rest of the competition. Racket also has managed to grow a remarkable way to mix typed and untyped program fragments, which sets it ahead of most. But I am under the impression that there are still many dimensions in which Racket lags behind other languages in general and Common Lisp (CL) in particular.

  1. The Common Lisp Object System (CLOS) has multiple-inheritance, multi-methods, method combinations, introspection and extensibility via the MOP, generic functions that work on builtin classes, support for dynamic instance class change (change-class, update-instance-for-changed-class) and class redefinition (defclass, update-instance-for-redefined-class), a semi-decent story for combining parametric polymorphism and ad hoc polymorphism (my own lisp-interface-library), etc. Racket seems to still be playing catch-up with respect to ad hoc polymorphism, and is lacking a set of good data structure libraries that take advantage of both functional and object-oriented programming (a good target is Scala's scalaz or its rival cats).
  2. While the ubiquity of global side-effects in CL is very bad, the facts that all objects that matter are addressable by a path from some global namespace and that live redefinition is actively supported makes debugging and maintaining long-lived systems with in-image persistent data more doable (see again CLOS's update-instance-for-redefined-class). This is in contrast with the Racket IDE which (at least by default) drops live data when you recompile the code, which is fine for student exercises, but probably wrong for live systems. CL is one of the few languages that takes long-term data seriously (though not quite as seriously as Erlang).
  3. Libraries. CL seems to have much more libraries than Racket, and though the quality varies, these libraries seem to often have more feature coverage and more focus on production quality. From a cursory look, Racket libraries seem to be more ambitious in their concepts, but to often stop at "good enough for demo" in their practice. An effort on curating libraries, homogenizing namespaces, etc., could also help Racket (I consider CL rather bad in this respect, yet Racket seems worse). My recent experience with acmart, my first maintained Racket library, makes me think that writing libraries is even higher overhead in Racket than in CL, which is already mediocre.
  4. Speedwise, SBCL still produces code that runs noticeably faster than Racket (as long as you don't need full delimited control, which would requires a much slower CL-to-CL compiler like hu.dwim.delico). This difference may be reduced (or even reversed) as Racket adopts the notoriously fast Chez Scheme as a backend (or then again not). Actually, the announcement of the new Racket backend really makes me eager to jump ship.
  5. As for startup latency, Common Lisp is also pretty good with its saved images (they start in tens of milliseconds on my laptop), making it practical to write trivial utilities for interactive use from the shell command-line with an "instantaneous" feel. Racket takes hundreds of milliseconds at startup which puts it (barely) in the "noticeable delay" category (though nowhere near as bad as anything JVM-based).

All these reasons, in addition to inertia (and a non-negligible code-base and mind-base), have made me stick to CL — for now. I think Racket is the future of Lisp (at least for me), I just haven't jumped ship right yet. If and when I do, I'll probably be working on some of these issues.

PS (still 2017-03): Here are ways that Racket is indeed vastly superior to CL, that make me believe it's the future of Lisp:

  • First and foremost, Racket keeps evolving, and not just "above" the base language, but importantly below. This alone makes it vastly superior to CL (that has evolved tremendously "above" its base abstractions, but hasn't evolved "below", except for FFI purpose, in the last 20 years), which itself remains superior to most languages (that tend to not evolve much "above", and not at all "below" their base abstractions).
  • Racket is by far ahead of the pack in terms of Syntactic abstraction. It is the best language in which to define other languages and experiment with them, bar none.
  • Racket has a decent module system, including build and phase separation (even separate phases for testing, cross-compilation or whatever you want), and symbol selection and renaming.
  • Racket has typed modules, and a good interface between typed and untyped modules. While types in Racket do not compete with those of say Haskell, just yet, they are still evolving, fast, and that contract interface between typed and untyped is far ahead of anything the competition has.
  • Racket has lots of great teaching material.
  • Racket has a one-stop-shop for documentation, though it isn't always easy to navigate and often lack examples. That still puts it far ahead of CL and a lot of languages.
  • Racket provides purity by default, with a decent set of pure as well as stateful data structures.
  • Racket has many primitives for concurrency, virtualization, sandboxing.
  • Racket has standard primitives for laziness, pattern-matching, etc.
  • Racket has a standard, portable, gui.
  • Racket has a lively, healthy, user and developer community.

I probably forget more.

PS (2017-08-23): A few months onward, I've mostly jumped ship from Common Lisp... but not to Racket, and instead to Gerbil Scheme.

As ASDF 3.3.0 gets released (imminently), I don't intend to code much more in Common Lisp, except to minimally maintain my existing code base until it gets replaced by Gerbil programs (if ever). (There's also a syntax-control branch of ASDF I'd like to update and merge someday, but it's been sitting for 3 years already and can wait longer.)

What is Gerbil? Gerbil Scheme started as an actor system that vyzo wrote over 10 years ago at MIT, that once ran on top of PLT Scheme. vyzo was dissatisfied with some aspects of PLT Scheme (now Racket), notably regarding performance for low-level system code and concurrency (at the time at least), but loved the module system (for good reasons), so when he eventually jumped ship to Gambit (that had great performance and was good for system programming, with its C backend), he of course first reimplemented the PLT module system on top of Gambit, or at least the essential features of it. (The two module systems were never fully compatible, and have diverged since, but they remain conceptually close, and I suppose if and when the need arise, Gerbil could be made to converge towards PLT in terms of features and/or semantics.)

Why did I choose Gerbil instead of Racket, like I intended?

  1. A big reason why I did is that I have a great rapport with the author, vyzo, a like mind whom I befriended back in those days. A lot of our concerns and sense of aesthetics are very much in synch, and that matters both for what there is and what may come to be. Conversely, the bigger features that Racket has that Gerbil is lacking (e.g. a GUI) are those that matter less to me at this point.
  2. What there is, the module system, the actor system, the object system, the libraries, is far from as complete as I could wish, but it is all in good taste, and with the promise that they can be molded to what we both want in the future.
  3. While the code base is smaller than in PLT, it is also more consistent and with a coherent sense of aesthetics, being implemented by one man (so far). It also happens to cover the kind of domains for which I'm most in need of libraries, and it also has a bias towards industrial applicability that you can't expect from PLT and its legion of academics and interns (see my discussion of PLT above).
  4. Sitting on top of Gambit does not just mean relatively efficient code (as far as Scheme is concerned), but it also means enjoying the portability of its GVM, and some of these properties are especially interesting to me: its observability.

Observability is the property (whose name I coined in my PhD thesis) whereby you can interrupt the execution of the program and observe it at the level of abstraction of your language (in this case, the GVM). This already allows Gambit to migrate processes from one machine to the other, even though the machines may be using completely different backends (C on ia32, C on AA64, JS, PHP, Java, etc.) For my thesis, I want to generalize observability from the GVM to arbitrary virtual machines written on top of it for arbitrary languages, with plenty of cool implications (including e.g. Erlang-style robustness; see said thesis). Working on the GVM will save me having to care about plenty of CPU- or VM- dependent backends that I would have to deal with if I wanted to write a compiler from scratch or reuse an existing one. I notably tried to read the source of Chez Scheme, that PLT Racket is adopting as a new backend (moving from its own horribly complex yet ultimately slow C codebase); but it is largely inscrutable, and with its tens of backends would require much more work before a prototype is achieved.

I therefore have a lot of personal reasons to adopt Gerbil. I understand that Gerbil in its current state, is no rival to either Racket or Common Lisp (or Haskell or OCaml, or even blub languages), for most people in most situations. Yet there are probably other people for whom it is a better fit, as it is for me; and I invite these people to come join forces and enjoy writing in Gerbil. It's still barebones in many ways, yet already quite a pleasure to work with, at least for me.

Dec. 15th, 2016

eyes black and white

Reading Greek Mythology

As I read "d'Aulaires Book of Greek Myths" to Véra, I am reminded of Paul Rosenberg's "Production vs Plunder", and how it interprets the history of religion and state; and it becomes painfully obvious to me, which was never mentioned when I was a kid, that the stories of Gods violently defeating other Gods by allying with other Gods — were the oral tradition remnants of stories of inter-ethnic strife, whereby one ethno-cultural group violently imposes it supremacy through wars and alliances, only to be eventually toppled by another group.

Greek mythology, like other less-documented polytheistic mythologies, is often retrospectively presented as some kind of structured view of the world, some sort of single coherent static religion where every God has a well defined role in the Universe. But nothing could be further from the Truth. Complex structures like established religions do not arise out of the divagations of some mad poet inventing random gods in drunken stupor. No, established religions they are the fruit of cultural, economical and political confrontations among and between many people rivaling for dominance, whether peacefully or violently. And this confrontation does not follow an orderly plan, but is a mess, a market, a war, an enterprise, and much more; a dynamic reality where gods are memes backed by money as well as swords, by farmers as well as intellectuals, by the inertia of large ethnic groups as well as the catastrophic action of charismatic leaders.

In the Greek Theogony, first comes Gaïa, a primitive cult to Mother Earth, not an active cult, but a memory of the very first religion of the first agriculturists. Then, her son, lover and husband Ouranos takes over; he is a Sky-God, a rain God — one old variant of so many conquering or domineering sky gods in so many mythologies. That again is the memory of a first conquest of the agriculturists by invading herdsmen and their Sky-Gods; you can tell who did the violent conquest by who ends up on top despite not being there first. Though in the very first conquest, the conquered were so probably so incompetent at fighting that they just surrendered without too much blood; balance of power is the fruit of long interactions.

There are other gods, the Titans, and some many-headed or one-eyed monsters, but they are "sons" to Ouranos and Gaïa, and Ouranos cast them into Tartarus. Historically, this sounds like this religion managed to eliminate two or more different families of religions, and violently repress or destroy their cults, maybe genociding or enslaving their followers. The many-headed monsters and the cyclops could have been animists, or people once led by a one-eyed leader or two, or a tribe of herdsmen known for their one-eyed sheep. The details are long lost. But once you understand myths as history compressed to stable memes by centuries of oral transmission by the victors (and to a lesser degree by other survivors), they are no longer arbitrary just so stories, they are the last witnesses of wars and invasions, alliances and natural catastrophes, from a time before history was written (at least by those who transmitted those myths).

That story when Kronos defeats his father Ouranos? One religion that was formerly repressed or subsdiary took over the dominant status from the previous Sky God. Kronos was the youngest of the Titans — a recent religion from a new set of migrants. He castrates his father Ouranos and throws his testicles to the sea (a detail omitted from d'Aulaire's expurgated retelling). There might have been an actual event where some King or High-Priest embodying the power of Ouranos was thus overpowered and castrated by another embodying the power of Kronos; or there have been a mass castration of enemies; or just killing of males; or just the descendants of the vanquished king (his notional seed) fleeing by sea; or some combination of the above, or something else. Oral history doesn't well distinguish between Gods and their cults, between the people and their leaders, between successive generations of leaders, between people with the same name, between prominent mountains and rivers of one people who tell a story, and prominent mountains and rivers of other people who appropriate and retell the story, or who tell it after having migrated.

Then, Kronos eats his children — maybe his priests try to claim for him the attributes of other gods, declare them but facets of that one god, and build a syncretic monotheism out of the many religions around; but that doesn't hold, and eventually he is toppled by Zeus, his "son in hiding", i.e. a newer secondary Sky God, worshipped in clandestinity — or maybe the very same Sky God as Ouranos, and also the same as Thor or Indra, just reimported from latter waves of migrants, distant cousins of the former, invading a few centuries later. Zeus, allied with his "siblings" once eaten by Kronos, i.e. with reestablished cults previously repressed, wins over Kronos; then most of the Titans refuse his reign, but Zeus and his allies prevails after a long war. Zeus even allies with some of the older gods (of animism?), but in the end casts them back to Tartarus, to "guard" the Titans; this episode might possibly correspond to the allies fomenting a rebellion by some people enslaved by their enemies, only to enslave most of them again after the victory. Indeed, animism survives in Greek Mythology, with nymphs and river Gods, spirits of trees and houses, though it remains secondary to institutionalized religion. Whatever happened, you have to imagine a long, messy ethno-religious strife, as the previous political supremacy is destroyed and the former vassals fight over who will or won't be dominant in the new order. Kronos may have been the Cretan power. Or not. I don't know. I don't know that anyone knows. It has stopped mattering that much many millenia ago. What still matters though is that we should understand human nature, and how culture is the condensate of the often violent confrontation of many influences.

However, Theogony is not all wars. A story goes that Aphrodite came from the sea; she does not acknowledge being the daughter of any other god yet she sits in the Pantheon equal to the greatest of them. — That story does not suggest a war; likely, the people who brought their love goddess Aphrodite came with some superior sea-faring technology and were adopted in the greater Greek commonwealth. Who were the seafaring people of the day? The Phoenician. And indeed Wikipedia says that Aphrodite is of Phoenician origin. So this interpretation of myths does lead to verifiable predictions. Some stories suggest Aphrodite was produced by the seed of Ouranos thrown to the sea — which seems to confirm the interpretation of the fall of Ouranos as a sea migration after the downfall of a mighty kingdom. Other stories claim that Aphrodite was a daughter of Zeus after all; this filiation is symbolic subordination; it probably was retroactively invented later, after the Phoenicians had been taken down a notch in the pecking order of the CommonWealth: indeed, Gods did take sides in the Trojan war (i.e. the most prominent leaders of each cult), and Aphrodite was on the defeated side of the Phoenician-related Trojans. Other peaceful gods include Dyonisos and Prometheus. Dyonisos brings wine and tells everyone how to make it. The much older god Prometheus once brought fire stolen from the thunder god Zeus (i.e. from a fire started by a thunderstorm), and taught men how to keep it. Sometimes, a wave of migrants joins a common culture through peaceful trade, by bringing some superior technology or another, and contributes with it a god or goddess to the Pantheon of the day — or become deified in recognition of their achievement.

Our successors in the far future, whether made of flesh or of digital patterns, will not study our detailed history. Their understanding of us will be based on gross summarizations, optimized for extracting and transmitting whatever meaning remains relevant to them, not for completeness or accuracy — in other words, on myths. Even if all the written and filmed documents of today survive, the picture they draw is far from complete, and far from accurate, and wouldn't be either necessary or sufficient to understand whatever there is to understand about our times. It too is myths, myths that we feed each other in order to manipulate each other in various ways. Consider how most of what has been written on the recent US election was partisan propaganda of some kind; and that is not at all specific to those US elections, just more blatant and obvious for the close, high-stakes contest. Understanding how to not to fall for the remnants of propaganda of the past is a good exercise to avoid falling for the overwhelming propaganda of the present.

PS (2017-09-07): Of course, historical clashes do not alone explain myths. The worldview, the beliefs, the values, the worries, the aspirations, of the tellers and retellers, that they wish to propagate onto others or that they blindly follow, are also part of these stories... and that's the whole point: there is no single force at stake in building and propagating myths. Describing the myths that reached us as flowing from a single coherent source, rather than emerging as a mish-mash of memes that evolved and fought each other, is itself an absurdity that flows from the superstitious judeo-christian notion of a "revealed truth".

Nov. 21st, 2016

eyes black and white

Gluttony

The Deadly Sin of Gluttony does not consist in eating a lot. It consists in consuming more than you can afford. In harsher times, that did mean Death indeed — yet an indirect Death that had to be warned about for it wasn't obvious to the naive and the ignorant. In modern times, consuming more than you can afford still means Death, but in a yet more indirect way, that requires oh so bigger warning. There are enough interpersonal safety nets and economic interconnections that Gluttony is not usually deadly at a personal level — but it remains Deadly, and how Deadly, at a societal level. Gluttony is socialism and everything left wing: denial of scarcity, spending as if from an infinite barrel, "unblocking" the manna from above. But the manna isn't from above, it's the blood and sweat from the producers being oppressed, and the more they are oppressed the less they produce, until the very richest country in a continent (Rhodesia, Venezuela) becomes the very poorest, and people starve and die.

The big mistake that modern people make with respect to their ancient predecessors is not disagreeing with them — it's failing to understand them. Our ancestors weren't more stupid, naive or credulous than we are. Their disadvantage compared to us is that they lacked the accumulated product of thousands of years of riches, of wisdom, of experience, of technology, of social skills — in a word, of capital — whether material or human.

Oct. 23rd, 2016

eyes black and white

All Watched Over By Machines Of Loving Grace

When my friend Markus Fix twitted this poem, I knew I had to put it to music, and I did: "All Watched Over By Machines Of Loving Grace", by Richard Brautigan.

Read the original poemCollapse )

It's a beautiful poem about the simultaneously most awesome and most awful future of mankind, after we win and create AIs: returned to nature, to be cared for by robots, i.e. as zoo animals for the new higher form of intelligence that we gave birth to. I love the song I wrote based on the poem (taking the liberty of repeating some lines, as befits the medium of songs but not of poems); but I have never been able to perform it to a level of quality satisfactory to my ears. One thing I definitely don't know how to do is how to postprocess the last repetition of the last line so it sounds creepily like a tinny emotionless robot voice. You can download the Lilypond source, or the printable PDF. Sorry, no recording at this point. I figure if six years later I still don't have a half-decent version, there's no reason to wait for one; and so, since my other friend Perry independently puts this same poem on his FB feed, it's as good a time as any to publish at least the score...

Read the sheet musicCollapse )

May. 30th, 2016

eyes black and white

(no subject)

"In 1968 our parents' generation burned everything down. Because fire is cool. Kids these days are imitating their parents, as kids do. But they're flicking their lighters on a pile of ashes. Sometimes they will get a cinder or two to glow for a moment. Whatever pleasure this produces, it's now objectively less fun than actually constructing something new." — Mencius Moldbug

Apr. 28th, 2016

eyes black and white

Minarchism beyond Anarchism

I decided that after all, I was a minarchist and not an anarchist. Let me explain.

A bigger government is where the proclaimed rulers have greater power, where public force is more positively correlated with their will, at their disposal to impose a less restricted subset of their commands, whims and desires on a wider set of topics and resources — compared to another (form of) government. A smaller government is that other comparative (form of) government where the proclaimed rulers have less power, where public force is less positively aligned with their will, and their cannot rely on it as much to impose it upon others, etc. A minimal government is thus such that there is no strictly lesser government — any comparable government is greater. A minarchist is a proponent of minimal government.

Now, anarchy is where the proclaimed rulers have no power at all, where public force is totally uncorrelated with their will, where they cannot use force to impose it upon anyone, etc. Proclaimed rulers are just laughed at, or ignored — they are ridiculous clowns whom no one takes seriously, except maybe a psychiatrist they pay to listen to them solemnly, and a few bored village idiots who aren't watched closely enough by their busy tutors. On my good days, I'm an anarchist, a proponent of anarchy.

But every time I hear a politician, I feel more like a minarchist. What's the difference? Well, in a true minimal state, rulers are not just ignored and laughed at, with public force uncorrelated to their will; rather, public force is negatively correlated to their will, and maximally so. In other words: all their belongings are forcefully taken away from them, and surrendered to their worst enemies, or dispersed to whichever charities are most outrageous to them; then they are put to death by being subjected to whatever is most horrific to them personally (just as in 1984's Room 101). Indeed, there is nothing more that a ruler can give than what he possesses, including his life, no way that things can go further against his will. And so this is truly minimal government, and that's what I support as a minarchist: fully dispossessing and horrifically putting to death anyone who claims to govern others.

When I feel optimistic I'm an anarchist and believe that the world will be fine without the need for violence. When I feel pessimistic I'm a minarchist and I understand that those who want to rule others will not be stopped by anything but extreme prejudice. Trying to establish a government is high treason against society, to be treated as such (and every government is foreign before it's established, and domestic after it is).

PS: My friend Charles summarizes: "Less than 0 government is negative government. The active criminalization of government."

Apr. 18th, 2016

eyes black and white

Le vase de Soissons, ou l'Anti-Magna Carta

Pour voir à quel point l'étatisme est ancré dans les traditions françaises, à l'opposé des traditions anglo-saxonnes, il suffit de regarder le mythe fondateur de la monarchie française qui elle-même fonde la France et son État: le vase de Soissons, tel qu'enseigné de tout temps à l'école à tous les enfants. Il est à l'opposé même du mythe fondateur des libertés anglo-saxonnes, la Magna Carta.

Lisez la suite...Collapse )

Mar. 2nd, 2016

eyes black and white

23 Deadly Stab Wounds

Jesus famously said "Render unto Caesar what belongs to Caesar". I'll argue that he meant 23 Deadly Stab Wounds — and yet that he wasn't advocating violence.

Read more...Collapse )

Feb. 23rd, 2016

eyes black and white

Les tas recrutent des sicaires costumés

Sur les murs du métro, l'armée française recrute — mais quel homme digne d'être un soldat rejoindra l'armée française? Cette armée est au service du MAL: une république sans valeur et sans honneur, qui a toujours trahi tous ceux qu'elle avait juré de protéger, qui ne doit son existence que comme régime fantoche installé par les socialistes américains et noyauté par les communistes russes, avec sursaut en prime de fierté nationaliste mal placée dans la trahison des colonies.

Certes, une minorité dont la tradition familiale est liée à l'armée y ira peut-être honorablement, quoiqu'erronément, par atavisme. Ils iront grandir les rangs des cadres moyens de l'armée: assez sérieux pour être officiers, trop honnêtes pour s'élever au-dessus des politiciens aux dents longues. Mais l'armée attirera surtout des petits fonctionnaires ne cherchant que les avantages et prêts à déserter au moindre risque, des imbéciles qui ne comprennent pas dans quoi et pour qui ils s'engagent, des techniciens du meurtre de masse sur commande, des mercenaires sans foi ni loi, des sadiques assoiffés de sang, et des salauds prêts à tout pour gravir les échelles du pouvoir. Les tas (de parasites) recrutent l'armée qu'ils méritent.

Le traître de Gaulle n'engendrera qu'engeance pire encore. La Fwance décivilisée n'aura pas son Pinochet. Son Chavez, peut-être, en attendant son Abd al-Rahman. CPEMF.

Jan. 23rd, 2016

eyes black and white

NYC Opera Renaissance: Tosca

As usual, he gets it "come il Conte Palmieri"; he knows knows it's fake fake, but he wants to see her happy, to hear her happy. One last time. And as usual, I cry all along, at each and every one of the carefully paced arias, in this emotional rollercoaster of an Opera. It has everything: love and hate, lust and jealousy, honor and betrayal, lofty fraternity and mortal enmity, victory and defeat, misplaced idealism and too well placed opportunism, lofty art and crass superstition, integrity and corruption, etc. But it also has all the sins and crimes, from gluttony to rape, from perjury and bribery to suicide and murder, from torture to blasphemy. It is the individual against the State. It is all that and much more. It is Tosca.

Congratulations to the NYC Opera Renaissance. A tremendous success. I rate it 95%. Act I was perfectly played, though maybe Tosca's voice wasn't at her top yet, possibly hampered by this really excellently rendered jealousy. Caravadossi knew to be above the jealousy and superstition without being patronizing; he loved Tosca warts and all. Scarpia was a delicious villain, and his minions also played well. Act II and III were great, and the singing wonderful. The direction didn't sport the many tricks of other productions I've seen, but had some clever ones of its own, such as the well done fighting attempts by Caravadossi, or Spoletta concluding right at Tosca's face "Come Palmieri". As usual my biggest gripe is with direction that in some songs just doesn't make sense. Scarpia should be either impatient with lust or reveling with power when Tosca pleads to God then to him; he shouldn't be merely bored on the sofa. And Caravadossi should be holding Tosca's hands and trying to keep her close to him when they meet for the last time and sing about these hands against, he shouldn't be staying at a safe distance — indeed she might be blind to the situation and feel like playing on stage and dancing around, but oh not him, though he won't want to show and worry her — perfect opportunity for a lot of acting with body language.

I heartily recommend. Will go again if I can. E Rido Ancor!

Dec. 28th, 2015

eyes black and white

Conscious Cybernaut

I don't design myself. I evolve from countless interactions, of which the conscious mind is but the emerged part, that neither designs nor builds itself nor the rest of me. At best, it might steer me towards improvement - but the direction it steers won't be improvement if it is blind of who I am, where I am, what are the obstacles, what are my assets, and what maintenance is required.

The rationalist hubris of total design is often blindness that cripples the actual use of reason. On the opposite, denial of the importance design in steering is the rejection of reason and groveling in mere animality. Be yourself today. Fully.

Dec. 27th, 2015

eyes black and white

From Up on Poppy Hill

"From Up on Poppy Hill" proves that 2011 was a great year for Japanese (and world) cinema. Animation is used to show what just can't be shown with live action movies: the past. No need for choreographed violence, or for fantastic plots riddled with holes. A simple story well told without gimmicks. Lofty aspirations without grandiosity. Delicate sentiments without affectation. Nostalgia without blindness to the future. Local roots with a universal message. History without propaganda. A film like that relates us to our span in time and space. The opposite of what America does (at Hollywood). Note: 9/10

Nov. 17th, 2015

eyes black and white

Lettre à la France (Anonyme réactionnaire)

Voici la traduction de l'anglais par mes soins d'une lettre ouverte, anonyme, mais nettement dans la lignée réactionnaire de Mencius Moldbug. Cette lettre est complètement folle, mais sa folie a l'avantage d'être aux antipodes de la Folie Française ultra-socialiste, et je trouve cela fort raffraîchissant. Cette traduction ne signifie bien sûr pas approbation, loin de là; je ne vois dans ce manifeste aucun point sur lequel je n'aie rien à redire. J'ai dans le passé longuement expliqué mes différends intellectuels avec Moldbug, et ils restent les mêmes. Quant à une version libérale du changement de régime, pour comparer, il y en a une sur mon blog, signée Roman Perdeanu — vous pouvez-voir les différences entre ce que le liquidateur y fait ou n'y fait pas — et dans ce second cas laisse les citoyens autant libres de le faire que responsables civilement du résultat.

Lettre à la France

Anonyme

Chère France, ici l'Amérique.

Salut, la France, nous sommes désolés de ces sottises qui viennent d'arriver.

En fait, nous sommes doublement désolés. De toute évidence, la cause ultime en est le gouvernement collaborationniste communiste que nous vous avons infligé depuis '45. Les communistes ont importé les Arabes; les Arabes ont fait ce qu'ils ont fait. Nous regrettons d'avoir à énoncer une évidence, mais voilà la vie sous le communisme pour vous.

Nous faisons ce que nous pouvons à propos de nos propres communistes. Ce qui pour l'instant n'est pas grand-chose. Mais pourquoi nous attendre? Est-ce que Walesa a attendu Soljenitsyne? Quoi, est-ce qu'Obama va vous envahir? Comme Brejnev? Croyez-moi, Obama n'est pas Brejnev.

Hé, la France! Ne laissez pas passer une crise sans en tirer parti! Voici un autre secret de l'Amérique: toujours et partout, il n'y a pas de victoire graduelle ou relative pour la Droite. Il n'y a qu'une victoire absolue en une seule étape. Attrapez la vague! Il vous faut surfer; vous ne pouvez pas vous contenter de pagayer. Attrapez la vague que vous pourrez, ou continuez à mourir.

La Gauche, dont la mission est la destruction, peut prendre tout le temps qu'elle veut pour abattre la civilisation. Elle peut même tolérer de brèves rémissions. Elle joue avec une nation comme un chat avec une souris. Mais la Droite, dont la mission est la préservation, la restauration, la création, doit travailler de manière cohérente en une seule étape.

Il y a un modèle de laser appelé laser femtoseconde. Pour un millionième de milliardième de seconde, il est plus brillant que le soleil. Si vous agissez politiquement sur la base de la raison et de la réalité, plutôt que de l'instinct et de l'émotion, vous n'allumez pas un incendie; vous construisez un laser femtoseconde.

Le dernier chapitre du chef-d'œuvre de de Maistre explique le processus de la contre-révolution pratique plus ou moins parfaitement. En théorie, étant des Français et non pas des barbares, vous n'avez rien à apprendre de nous. Mais puisque votre État est un satellite de l'Amérique, nous connaissons peut-être votre ennemi mieux que vous ne le connaissez.

Quoi qu'il en soit, voici mon manifeste simple pour un changement pratique de régime. Dans un monde idéal, un million de Français se réunissent à Paris et obtiennent le respect de ces exigences, à peu près maintenant. Ce n'est pas un monde idéal et cela n'arrivera pas — mais ne devrait-on pas savoir où nous voulons aller? Primo: La Cinquième République a échoué et est abolie. Tout pouvoir d'État est transféré à une Nouvelle République Française dirigée par l'armée, sous la supervision de Mme Le Pen. Tout le pouvoir au Front National! Il n'y a pas besoin d'attendre une élection. Lénine a-t-il attendu une élection?

Secundo: Les Quatrième et Cinquième Républiques sont déclarées Cinquième et Sixième. La vraie Quatrième est Vichy. Tous les régimes totalitaires du XXe siècle, le régime fasciste (Quatrième), satellite allemand, et le marxiste (Cinquième / Sixième), satellite américain, sont déclarés également criminels et traîtres à la patrie. Collaborer avec Londres, Berlin, Washington ou Moscou, c'est le même délit.

Tertio: La France est fermée pour reconstruction. Ses frontières sont closes et resteront closes indéfiniment. Tous les étrangers, y compris les diplomates, sont soit déportés soit internés. Les Français bloqués à l'étranger, y compris des diplomates, sont soit rapatriés soit expatriés. Ces mesures ne prendront fin que lorsque la France sera une fois de plus une nation, et pas une province du Mondaméricain.

Quarto: Les véritables frontières ne concernent pas que les seules migrations. La souveraineté politique est également compromise par la dépendance financière, commerciale et intellectuelle. Puisque la France d'aujourd'hui est un patient atteint de cancer et que seul un isolement strict peut la sauver, tous ces liens doivent être rompus. Une France future, forte et saine pourra les restaurer.

Tous les titres français détenus hors de France sont annulés. Tout le commerce extérieur est réglé en or à un point d'entrée unique. Aucun produit manufacturé n'est importé. Toutes les liaisons Internet sont coupées. Seule la Nouvelle République achemine les paquets hors de France, seulement à Washington, et pour seulement trois objectifs: offrir des produits français à la vente; acheter des minéraux stratégiques; et négocier les questions planétaires réels tels que les droits sur l'océan, la contamination atmosphérique, la protection des oiseaux migrateurs et de la défense contre les astéroïdes.

Quinto: À cause des actes criminels du régime communiste, qui visait à s'établir au pouvoir de façon permanente en important un nouveau peuple, la possession d'un passeport français délivré par la sixième République n'est pas une preuve de la nationalité française. Toute personne titulaire d'un passeport français, mais sans quatre grands-parents nés en France, doit présenter une nouvelle demande de citoyenneté à la Nouvelle République Française.

Les demandes sont évaluées par la police. Toute personne à la fois assimilée et civilisée, sans égard à sa race, est acceptée. Tous les demandeurs restants sont déportés, ou internés si le Mondaméricain refuse de les accueillir. L'internement est pas une punition et n'en deviendra pas une, mais la France est une nation souveraine et personne ne la colonise.

Sexto: La Nouvelle France n'est pas seulement dirigée par le Front national et l'armée, mais gouvernée par eux. La France a de la chance; une fois que les colons sont expulsés, elle n'a pas d'ennemis qui possèdent la force à la fois morale et physique de l'attaquer. Puisqu'elle n'a pas de besoin militaire pour son armée, elle peut l'utiliser pour la tâche beaucoup plus importante de la restauration de la nation.

Tous les fonctionnaires de la sixième République sont présumés communistes jusqu'à preuve de leur patriotisme, et sont mis à la retraite à taux plein. Pour commencer, le nouveau gouvernement est entièrement composé d'anciens officiers militaires. Lorsqu'il est nécessaire de recruter, toute expérience dans le secteur officiel ou para-officiel, les forces de sécurité exceptées, est une disqualification inconditionnelle. En cas de doute, le processus de dénazification utilisé en Allemagne en 1945 est un bon guide.

Septimo: La France est une nation catholique et ne peut pas être restaurée sans l'aide de l'Église. Malheureusement, cette institution aussi a été envahie par les communistes. La Fraternité Saint-Pie X est le successeur légal de l'Église catholique française. Tous les prêtres affiliés à l'Église du Nouvel Ordre sont présumés communistes jusqu'à preuve du contraire, et purgés comme les fonctionnaires.

L'Église a pleine autorité sur tous les établissements d'enseignement de la maternelle à l'université; elle gagne la propriété de toutes les entreprises de médias et d'édition existantes. La liberté d'expression ne sera pas violée; les communistes peuvent rester communistes et continuer à essayer de colporter leurs produits toxiques, aux adultes en tout cas. Mais aucun organe de pouvoir conquis par le communisme ne peut survivre à sa chute.

Octavo: Toutes les institutions philanthropiques, les ONG, les fondations, etc., sont transférées à l'État pour liquidation. De plus, la source d'énergie ultime de ces institutions pernicieuses, l'oligarchie financière du XXe siècle, ne peut pas être autorisée à survivre.

Beaucoup de Français riches ont acquis leur argent honnêtement, même sous le régime corrompu des traîtres. Beaucoup l'ont mal acquis. Sans enquêter sur les affaires du passé, la richesse personnelle des riches doit être déclarée et plafonnée au maximum nécessaire pour assurer une vie de luxe. Les actifs au-dessus de ce plafond, mérités ou non, sont échangés contre des titres de noblesse. Les voleurs et les traîtres seront soulagés de s'échapper par ce petit sacrifice; les hommes d'affaires honnêtes et patriotes comprendront sa nécessité.

Nono: Tous les secrets d'État, à l'exception des plans militaires, sont descellés. En utilisant ces documents, et toutes les sources vivantes encore disponibles, la Nouvelle République va parrainer l'ouvrage de la plus grande qualité portant sur l'histoire de la France au XXe siècle, un document de référence entièrement indépendant, patriotique et catholique sans complexe, qui ne sera contaminé par aucun biais, ni fasciste, ni communiste.

Decimo: la France doit être restaurée culturellement, architecturalement, et industriellement. Tous les bâtiments construits en France, d'un caractère moderniste, communiste, islamiques ou autrement non-français, seront démolis et/ou remplacés dans un style historique français.

Selon un degré compatible avec l'offre réelle de main-d'œuvre, la production industrielle de nourriture et de vêtements est interdite. Puisque la Nouvelle République a mis à la retraite l'ensemble du gouvernement, beaucoup de Français auront besoin de travail. La seule source envisageable de la demande de travail est la production artisanale sur les modèles pré-industriels; l'honneur et l'épanouissement ne peuvent être trouvés que dans des tâches égales au potentiel humain du travailleur. Tout le monde peut être un maçon ou charpentier; Personne ne devrait être condamné à vivre comme un robot industriel du XIXe siècle.

Undecimo: La Nouvelle République Française est un régime temporaire visant à guérir la France, pas à la gouverner éternellement. Sa dernière tâche est de concevoir son propre remplacement permanent, presque certainement par une monarchie absolue héréditaire dans la grande tradition française. Bien sûr, il n'y a pas un Français sur mille aujourd'hui qui comprendrait ou soutiendrait ce plan. Pourtant, la moitié de la France, au moins, voit le même problème.

Ce qui vous retient, chère France, est l'illusion que vous avez un remède plus facile, plus simple, plus indolore. La France a le cancer. Elle sait, même, qu'elle a le cancer. Je prescris une chimiothérapie; mais pourquoi pas de l'aspirine? L'aspirine n'a pas bon goût, alors elle doit sûrement aider.

Pourquoi ne pas tout simplement réélire Sarkozy, avec son Karcher? Peut-être l'utilisera-t-il cette fois? Il va certainement promettre de le faire. Et puis pourquoi toute cette dictature militaire? Ne pourrions-nous élire Marine, à l'issue d'une élection constitutionnelle normale? Elle promet d'expulser les terroristes. Elle doit avoir une liste. Bien sûr, ils vont faire appel à Bruxelles, alors il va y avoir beaucoup de questions juridiques à résoudre…

Hélas, la vérité est que la France est accro au communisme, comme un alcoolique à l'alcool. Ce matin, elle a une sacrée gueule de bois. Elle promet de cesser de boire. Eh bien, elle va certainement boire moins… France, je suis désolé. Il faut un sevrage brutal. Plus une seule goutte! Dans votre cœur, France, vous savez quoi faire. Et vous en avez peur. N'avons-nous pas tous peur du changement?

Aug. 15th, 2015

eyes black and white

Why I didn't create that song I wrote

I spent the other day yet again fixing bugs in the accompaniment for the song I authored on a famous poem by William Ernest Henley, Invictus. Clearly, no one else wrote that exact song before me; and so it's mine. Or is it? Frankly, I just wrote down a song already implicit in the poem I was putting to music. And I'll prove this claim by analyzing in detail the start of the song.

Now let's consider the rhythm of the first verse. The words "Out of the night that covers me" already have the rhythm and stress pattern: the syllables "out", "night", "co" and "me" are stressed; the other syllables are unstressed. Generally, the stressed monosyllables are longer than the unstressed syllables, but in the two-syllable word "cover", the stressed "co" is short and the unstressed "ver" is long, whereas the unstressed "that" should remain longer than the "of the" and "co". Let's use the simplest grid for rhythm, a 4/4 bar, and fit the stressed notes to the stressed beats, first and third. We can do it simply by using a crotchet for the longer syllables and a quaver for the shorter ones, except that we'd have to stretch the "ver" of cover for "me" to fall on the beat; actually, it sounds rude, whiny and pretentious to say "me" on the beat, so let's not stretch that "ver", and introduce a syncopation, which also gives more life to the poem. There, the rhythm was totally determined by factors outside my control.

Did I at least choose the melody and/or harmony? Not at all. The topic is gloomy, so it obviously calls for a minor key; let's arbitrarily pick G minor so I can sing it — it also has only few alterations (two flats) on the key signature, and happens to be quite playable on guitar (I didn't play any guitar at the time I wrote the song, but common influences from musical history had already shaped both my mind and the guitar); you can of course transpose to your key of choice, and it will remain the same song, so only really matters the fact that it's minor, and that's imposed by the mood of the poem. The first verse is an introductory verse, and it is building up a tension, so it obviously has to be in ascending tones. Since it doesn't end the sentence, the verse shall end up in suspension; the simplest way to achieve that is to end with a dominant chord. We also want to state the tonality, with a tonic chord somewhere, and since we end with the dominant, it's simplest to state the tonic as the first chord. So our stressed syllables will see an upward progression from tonic to dominant. There are four stressed notes; first is a tonic (G), last is a dominant (D); in an ascending progression, it is natural to fit a subdominant (C) between the two, for it has the next simplest chord. The simplest progression would be tonic, mediant, subdominant, dominant, where underlying the mediant would be a repeat the tonic chord; but since we're building tension, we have to do something more than this simplest progression; so we do the next simplest progression: tonic, subdominant, leading tone to the dominant, dominant; not only is it the next simplest, but the leading tone in itself contains tension that we seek. Since we're building up tension, let's also change the mood on the last chord, and make it major while the tonic and subdominant chords were minor; considering the meaning of the poem, it also makes sense to give a brighter color to the word "me" than to the other words and use a major chord. (Actually, in the poem we're adapting itself, the word "me" is deliberately ending the first verse, precisely for this effect, that we're translating to music.)

Now for the short notes: they could be anything that isn't dissonant, but better remain low to provide greater contrast to the upward progression of the stressed notes; and the simplest solution is to just repeat the tonic, G. However, since we have two short notes right after the initial tonic, we can make the first of them the mediant while still on the tonic chord, and it fits perfectly both with the upward progression of sounds and with the fact that the stressed notes set the chord. As for which chord underlies the leading-note-to-the-dominant, we find that a E flat minor seventh, which is just one note half a tone away from the previous chord of C minor seventh, is the simplest solution. Tada! The constraints natural in the text and in western music completely wrote the first verse for us, including every single note, its pitch and duration, and for each note the underlying chord. Of course, I didn't have to explicitly think about these constraints when I wrote the song — the melody and its implicit harmony just "fell into place", because I've internalized these constraints, and this is indeed the simplest solution, by far.

I could go on with the rest of this song: the next three verses have their rhythm decided likewise. A repetition of the melodic pattern of verses one-two in verses three-four is the natural expectation, with one-two ending on a dominant and three-four on a tonic. Verse two (and four) need their melodic line to be descending to use the tension previously built. Their first note needs to be above the last note of the first verse, to use its trampoline; it also needs to start with a tonic chord. However, for variety as well as to allow for the three note variant in verse two, it's better to start on a mediant from which you can go to the tonic (via the supertonic as a transient note), rather than starting from a tonic and have nowhere down to go within the chord. Filling the melody with stressed notes that are different from the (notional canonical chord) bass line also makes for a nice response to the previous verse where the stressed notes in melody were mostly the same as the bass. The words "Pit" also suggests going lower than what is simplest (F♯), and even lower than what is natural (B♭ instead of B), in another interesting interaction between word meaning and pitch (I don't even know how to name the resulting chord, because the natural B is also present; or maybe it's actually a C♯ in an G chord with major seventh and augmented eleventh? does it matter?). Similarly, "pole to pole" suggests going up and down around the "equator" of the tonic, while following the general downward pitch progression of the sentence. I could go on and on, but I'll leave it as an exercise to the reader to figure out all the reasons why this song is indeed the simplest solution to the problem of putting this poem to music. Of course, the idea of music scores as puzzles isn't new: Johann Sebastian Bach and his contemporaries famously wrote the scores of some canons and fugues as puzzles to be completed from scant indications: a theme is stated at the beginning, with indications on what symmetries and transformations to use to fill the blanks with modified copies of the theme, and seasoned baroque musicians would be able to reconstitute the entire piece.

Now, consider the set of rules and constraints, some hard, some soft, some formal, some informal, some purely musical, some related to the syntax of English, some related to the meaning of the words, according to which these solution is simplest; together they constitute a sense of aesthetics, that I am indeed bringing on the table. Of course, I probably invented not one single of these rules: I inferred them from a large body of extant western music that I've been exposed to, and the small amount of codified theory that I actually learned. In this sense, the fact that I developed my sense of aesthetics from cultural precedent only illustrates how all creative work is derivative. Still, I've been exposed to a different set of music pieces and music theories than any other person, this set of rules is less unambiguous than those followed by Bach, and wherever there are soft or ambiguous rules or constraints, I probably give them slightly different relative weights and different interpretations than other musicians would; and there are probably many rules I am altogether unaware whereas each other musician might also have additional or missing rules compared to mine. Thus, this sense of aesthetics still constitute a personal, though marginal, input of mine, to the "creation" of the song — as does the will to work at composing a song, and to work on this poem rather than another one: this song would have remained a mere potential if I hadn't cared to make it a reality. My input, small as it might be, was thus nevertheless existential for this song.

My ultimate point is that, inasmuch as I "invented" the song, this "invention" does not at all fit the modern mythology of artistic creation ex nihilo of something that didn't exist, and does completely fit the etymological meaning of "invention", to find: finding something at your feet, coming by something that already exists and that you notice, being first to discover an eternal truth, etc. There is of course merit in going where no one has dared or cared to venture before, or in noticing what no one noticed or cared to notice before though it was in front of their lying eyes; but it is not at all the merit of creating what didn't exist before, it is the merit (and demerit) of being me and having traveled, inside and out, all the way to where I've been — what I've created is myself. And the implications in terms of law, politics, economics and ethics are very different. But that will be the topic for a different essay.

Jul. 8th, 2015

eyes black and white

What is the International Community™? Part 2

"What is the Matrix? Control."

This essay was originally written by Daniel A. Nagy and published on his Facebook page on July 7th, 2015. It is the second part in a series. The first part is available here: http://fare.livejournal.com/184653.html. Both parts were originally published on facebook: Part 1, Part 2.

In that first part, I have discussed the so-called "independent media", the seeming conspiracy of mass-media workers, especially, but not exclusively journalists, in creating and perpetuating a virtual reality by biased reporting and analysis, serving the interests of the International Community™. I have argued, that there is no need for these people to actually conspire or to be in the service or the pay of some shadowy background power; they are merely following their own perceived interests and their own thirst for power and status.

In this second part, I am going to discuss another very important institution of power and its nexus with Independent Media™:

Student Activists™ and Community Engagement

As the cynical proverb goes, those who get through higher education by studying are doomed to get through life by working. However, there are plenty of other things one can do at university, some of them commonly denoted by the nebulous term "community engagement", ranging from participating in university-based organizations like the Student Union to doing volunteer work for various organizations in the non-profit sector, community organizing and direct political action.

It is "community engagement" where the most power-thirsty and politically ambitious among the students get the opportunity to network with all the right people. It is in these institutions, where they get their first real-life experiences of the workings of power, politics and corruption.

While all political and religious movements worth their salt do their best to gain a foothold at campuses, the International Community™'s grip on the better universities around the world seems inescapable. Conversely, whenever some other politicised group manages to gain the kind of pervasive influence on a campus typically enjoyed by the International Community™, such as introducing entire fields of studies with a political agenda, directly influencing salaries and scolarships and so on, the school immediately sinks in all academic rankings, starts losing out on the best students and faculty. It becomes little more than a training ground for the next generation of its political masters and a propaganda outlet masquerading as an institution of higher learning. Its real scientific output dwindles.

Not so with the International Community™! The fact that a university offers advanced degree programs in subjects like "gender studies" or "international relations" or "political science" does not, by any means, reduce the value of its physics, history or law degrees. The fact that its students are regularly doing the footwork for political campaigns and revolutions (both at home and abroad) is surprisingly reconcilable with academic excellence, albeit typically achieved by a very different part of the student body (with the exception of the aforementioned politically charged subjects). So, who are these foot soldiers of the International Community™ and what motivates them?

At first, just like in the case of media, it seems like a vast conspiracy. Surely, these agents are planted by some shadowy organization? Well, if you state that much in public, you are only going to make a fool of yourself. They all went through the regular recruitment process, and even if there were some strange irregularities (that actually happens more often than people are willing to admit), there is usually no third party to them; just the prospective student and school officials. Now, there might be some institutionalized "irregularities", such as formal or informal minority quotas and other preferences that might have helped these students get in, and you would surely find the International Community™ throwing its full weight behind these policies, but again, no shadowy puppet masters are pulling the strings, everything happens quite transparently, in broad daylight, so to speak.

Student activists are primarily motivated by an unsatiable thirst for power. It is regarded as the stepping stone to positions of greater power, such as journalism, diplomacy, politics and academic administration. The funding keeping these people from accidentally doing something productive in case they get hungry comes from a variety of sources; some of it is scholarships and stipends from other branches of the International Community™, but relying primarily on such direct payments would make the link too obvious. A far more common way of keeping activists paid is by pretending that the usual side shows of their activism, such as journalism, photography or art are worth paying for. For example, instead of paying them directly for participation in demonstrations and for bringing in more people, they are going to get paid for the pictures they take and the articles they write about the event, so that they, too, can believe that they are doing all the footwork of political activism out of pure and noble conviction. However, they do not need to take one minute off their activism to put bread on their plate. The quality of their journalistic or artistic output is not very relevant at this stage.

As we can see, there is no mysterious secret conspiracy here: news organizations (a.k.a. Independent Media™) has both the means and the motivation to recruit willing students for doing activist footwork for protecting and spreading the political system that keeps them enormously powerful. Ambitious students, on their part, constitute both a talent pool for future recruitment and a rich source of cheap labor.

In our next installment, we will look at why and how university faculty are not only tolerating but often encouraging such parasitic activities on campus. Again, without puppet-masters, entirely out of their own self-interest.

Apr. 26th, 2015

eyes black and white

What is the International Community™? Part 1

This essay was originally written by Daniel A. Nagy and published his Facebook page on December 11th, 2014. See also: Part 2.

"What is the Matrix? Control."

One essential element of the existing world order is a mysterious, yet very powerful entity commonly referred to as the "international community". To the uninitiated, it might look like some vast conspiracy and quite a few people believe that it is one. To the rest, these people are nuts, believing in weird conspiracy theories. Yet another set of people noticed, that the truth value of most statements does not change if "international community" is replaced by "U. S. State Department" or vice versa. From this, they conclude that it is simply a different name for American diplomacy. They also, quite justifiably, end up as targets of mockery when agents of the International Community™ accused of being on the payroll of the U. S. State Department very obviously aren't.

Yet, the role of the International Community™ in the modern world order cannot be overstated. Its most visible activity is enforcing "democratic values" around the world and crushing those that deviate from them with all its military and financial might, if necessary. Left to their own devices, democracies very often deviate from these "democratic values". For example, majorities, given the opportunity, have no qualms about taking advantage of minorities, and in general, fascism is a known failure mode of democracy to which it easily and quickly evolves with the strong support of the (often overwhelming) majority of voters. There are quite a few policies that are consistently unpopular with voters, yet democratic leaders are at pains to enact them nonetheless, often at substantial political costs to themselves and substantial economic cost to their subjects. It is very tempting to get some extra popularity and prosperity by deviating from the Democratic Norms™. The International Community™ is there to reign in those deviants. It is the ultimate arbiter of all disputes, its decisions are enforced without appeal and no government or other organization can measure up to its military and financial might.

The International Community™ is often accused of hypocrisy, for having friends and allies that can get away with flouting any and all Democratic Norms™. However, these relationships, with very few exceptions, do not last long; it can turn on its erstwhile friends and allies at the slightest display of wavering loyalty and it does.

In this series of essays, I would like to explain my understanding of what the International Community™ is, how its seemingly inconsistent and downright crazy decisions are made and who are the people "behind" it. At this point, I would also like to acknowledge the inspiration by one Mencius Moldbug, with whom I disagree on almost everything else. I believe that the International Community™ is composed of individuals and their institutions all acting in line with their individually perceived interests, without actually conspiring with one another. They are mostly motivated by lust for power, fear, greed and missionary zeal, all reinforced by an unshakable faith in their own superiority and entitlement. They sow destruction, misery and death. In each installment, I will discuss one institution of power of the International Community™. Here's the first one:

Journalists and the Independent Media™

The Freedom of Press™ is one of the core Democratic Values™. What it means in practice is that journalists enjoy immense power and privilege in the existing world order. They can violate anyone's privacy without consequences, for example. They are above the law for mere mortals or even mere governments in many other ways, too. Enemies of the International Community™ are mistaken in thinking that all they should do is outbidding the International Community™ in order to get journalists as loyal as those serving it. No matter how much outlets like RT pay their journalists to push the agenda of their government, they will have defections and miss top talent; because the journalists of the International Community™ push their own agenda, not that of the U.S. State Department (with which it often coincides for reasons discussed in a later essay) or any other government or business interest. No matter how much the king is paying to the journalist in money and privilege, the journalist will still desire to swap places with the king and be the one controlling the King's fate, not the other way around. This is why buying or creating "alternative" media outlets to counter the influence of the International Community™ in the media is a futile enterprise doomed to failure. If you set out to counter the propaganda of the International Community™, there is no journalist on whom you can count. If you do, you will end up with an inferior product and painful defections.

As any person in the position of power, journalists are, of course, corrupt. Since they have near-absolute power, they are very corrupt, in fact, but also very expensive. This might seem like a weakness, and indeed it is possible to destroy individual journalists by unmasking their corruption, but that may prove very difficult, expensive and dangerous.

The true and ultimate weakness of journalism is that it is entirely unnecessary and useless in the age of the internet. They do not do anything useful for anyone but themselves and their powerful friends. If you want to learn about something, there is no reason anymore to read or listen to journalists, because much better (more accurate, more reliable, etc.) sources of information abound. The best strategy for freeing yourself and the world is to ignore them out of power.

All that is not to say that you should hate journalists and that they are useless, evil people. Sure, as long as they work as journalists, they are useless and what they do is evil, but that is something that they can change and there is no reason for not helping them. Their skills are quite useful and valuable in a wide range of entirely peaceful and productive endeavors ranging from entertainment to marketing. Political journalism — hopefully — has no future, but these people — hopefully — do.

Apr. 25th, 2015

eyes black and white

Randroid detection

How to recognize randroids with no intellectual integrity: at some point, they repeat the talking point that Atlas Shrugged is "the second most influential book of all time after the Bible" — which when you dig is based on the single data point of one dubious poll by the Library of Congress decades ago in which randroids somehow self-selected as a plurality of minority responders (and sometimes a second self-selected poll from a random internet site). But guess what, more people in the USA actually claim to follow the Book of Mormon or the Quran than have ever read Atlas Shrugged, much less agreed with its philosophy. And these Mormons and Muslims actually put their money where their mouth is and pay weekly or yearly dues, whereas the "sales" figures for Atlas Shrugged are copiously inflated by a large number of copies bought by the Ayn Rand Institute itself, that end up given away and likely never read. If we are to count artificial "sales" like that, Dianetics ranks higher. Then again, outside the USA, the numbers are even less flattering for the randroids. So much for "second most influential book" bullshit.

Randroids ought to be ashamed to repeat such obvious lies that do not for a single moment impress a single listener. Miss Rand would certainly be ashamed of them: SHE had more intellectual integrity than to believe and repeat baseless propaganda — she even ran away from her country of birth so as not to have to repeat such. And she would never be caught alive resorting to Argumentum ad Populum.

Fuck randroids. They are just as despicable as antirandroids who repeat stupid talking points condemning Rand based on the opposite of what she said, wrote and stood for.

Apr. 13th, 2015

eyes black and white

Common Lisp as a Scripting Language, 2015 edition

The first computer I used had about 2KB of RAM. The other day, I compiled a 2KB Common Lisp script into a 16MB executable to get its startup (and total execution) time down from 2s to subjectively instantaneous — and that didn't bother me the least, for my current computer has 8GB of working memory and over 100GB of persistent memory. But it did bother me that it didn't bother me, for 16MB was also the memory on the first computer in which I felt I wasn't RAM-starved: I could run an X server, an Emacs editor and a shell terminal simultaneously without swapping! Now an entire comfortable software development universe could be casually wasted over a stupid optimization — that I have to care about because software systems still suck. And to imagine that before sentientkind reaches its malthusian future, code bumming will have become a popular activity again...

Read more...Collapse )
Tags: , ,

Mar. 19th, 2015

eyes black and white

Orderly liquidation of the so-called "State" / Liquidation ordonnée du dit « État »

This text, signed Roman Perdeanu, was intended for publication in «Libres!!!» opus 3; but as said the project was relegated until further notice to a drawer, it instead ends up published on my blog.

 

Ce texte, signé Roman Perdeanu, était destiné à «Libres!!!» opus 3; mais comme ledit projet a été relégué jusqu'à nouvel ordre dans un tiroir, il se retrouve à paraître sur mon blogue. Aussi sur Contrepoints.

Read more... / Lire la suite...Collapse )

Previous 25

eyes black and white

October 2017

S M T W T F S
1234567
891011121314
15161718192021
22232425262728
293031    

Tags

Syndicate

RSS Atom
Powered by LiveJournal.com