Quick
index
main
eev
eepitch
maths
angg
blogme
dednat6
littlelangs
PURO
(C2,C3,C4,
&nbspλ,ES,
&nbspGA,MD,
&nbspCaepro,
&nbsptextos,
&nbspChapa 1)

emacs
lua
(la)tex
maxima
git
lean4
agda
forth
squeak
icon
tcl
tikz
fvwm
debian
irc
contact

Angel's Egg - the home page of Eduardo Ochs (a.k.a. Edrx)

Welcome! I'm a mathematician, logician, categorist and type-theorist who used to do computer programming and Free Software activism in his spare time... I have a Free Software project that I consider extremely important, and I have decided that I have to spend a few years outside of the academic world working on day jobs related to Free Software in order to concentrate better on it and make it as usable and well-known as possible.

The world does need simpler ways to understand Type Theories and categorical models, true, but it desperately needs to reduce computer illiteracy and other illiteracies and to realize the importance of Free Software and Free Information. The Eev Project is an effort against illiteracies, and it has stayed underground for far too long; type theory will have to wait.

(I've been doing less maths-related work recently and more activism. Here's why.)

2022: Some tweets about nazism (by Yonatan Zunger).
2021: Pages with links about bolsonarismo & bolsomitismo and Jacarezinho.
2017: Pages with links about the art exhibitions Queermuseu and La Bête.
2015oct26: Falta misandria no movimento trans (zine: PDF em A5)
2014aug01: Link das ruas - vídeos de manifestações
(An index of videos related to the Brazilian uprisings - currently with 1700+ videos.)
2014aug01: Ydb - the tool that I use to maintain that archive.
2014mar19: Ferramentas para ativistas (tools for activists - docs mostly in Portuguese at the moment)
2014oct24: Something similar for Facebook posts (sample output)
2013oct16: Mass arrests in Rio de Janeiro!

(Update: I did spend several years in the "real world", but things didn't work out there...
I now work at PURO, a small countryside campus in the wild east of the state of Rio de Janeiro).
2014mai/jun: Sobre a performance "Xereca Satânik" (processo: p.21)
2013jul10: Parabéns, Edwin!
2013jun27: Debate sobre espaço físico.

Saia do seu quadradinho:
2013may25: versão atual: PDF em A5, 2-sided, mais informações.
2012aug27: primeira versão.
Lista de fontes primárias de informações sobre a greve das IFES.
Chomsky fala sobre os filtros da grande mídia,
Atividades de greve no PURO.
2012may22: Início da greve na UFF.
&nbsp

 2011august: Apóiem a ocupação da reitoria!
 2011jul01: Pressão social (PDF)
 2011jun27: Eleições no PURO: Chapa 1


2011jun08: a campaign: Queremos bolsas da Anvisa de onze mil reais
2011april: a study group on the Psychodynamics of Corruption
2011may25: Material da manifestação de 25/maio/2011
2011mar23-24: Eleições no ICT: vote nulo
Zombies and other texts


Quick index:
[eev] eev, that is a tool for automating almost everything,
[dednat4] dednat6, for typesetting trees and categorical diagrams,
[dednat4] my page on maths and categorical semantics,
[blogme] BlogMe3, that generates the html of these pages,
[llangs] a list of all of my little (extensible) languages,
[gab] gab, a calculator with quantifiers,
MiniForth and RubyForth (by Marc Simpson)
other programs in Lua and Forth,
other things related to Emacs,
my pages on Tcl/Tk/Expect, Icon, and (La)TeX,
[rrj] my rape recovery journal (is no longer secret),
how to contact me,
my pages on (micro)politics, veganism and the CoE,
literature, music, movies, webcomics, my mother's PhD thesis,
my very old personal pages.

I used to be just in a war against the macho world -
now I am explicitly genderfreaky/TG/TS
(but I'm too busy to change what I see in the mirror)


Between 2004 and 2008 I tried to work as a professional programmer, but I ended up failing miserably - mostly because I was not thick-skinned enough.
My plan was to earn money to move to London and do the training on Alexander Technique at Karen Wentworth's school, but I had to put that on hold.
Some links:
2005-2006: worked at Vivo.
July-October, 2007: worked full-time on IUP and on the DaVinci Project.
October-December, 2007: worked on Plurall.
November, 2007: I gave a talk in a round table about Digital TV, Digital Radio, Free Software and Education.
In December, 2007 I moved to São Paulo (São Caetano, actually) and started working at Omnisys.
In February, 2008 I was fired.
In April, 2008 I applied to a position at UFF.
I started working there in January, 2009.
(Logo)


The eev project:

I used to call eev a "tool for automating almost everything" and "my project to save the world with Free Software". In more concrete terms, eev is a library for Emacs that lets us create executable logs of what we do in a format that is reasonably easy to read and to modify, and that lets us "play back" those logs step by step in any order - for example, like in this video. We can even edit our executable logs in the middle of playing them back, as shown in this demo of test blocks.

The main starting points for eev are:
this page about eepitch,    ← (read this first!)
this page about videos,     ← (read this second!)
if you're a longtime Emacs user start here,
if you're a total newbie start by this page (about installation and navigation),
this sandboxed tutorial - (find-eev-quick-intro) - explains all the main features,
and this other (fake) tutorial - (find-eev-intro) - lists all tutorials.
If you understand Portuguese, start by this.
If you understand Portuguese and use M$ Windows, start by this (2024, M$).
Also:

EmacsConf2019 My presentation at the EmacsConf 2019 (video, slides), and
EmacsConf2020 the one at the EmacsConf 2020, that is more technical.
EmacsConf2021 At the EmacsConf2021 I explained test blocks (video, slides, figure).
EmacsConf2022 At the EmacsConf2022, bidirectional hyperlinks and eev-rstdoc.el.
EmacsConf2023 At the EmacsConf2023, REPLs in strange places (git, anim)

I gave a series of workshops in 2021 and 2022. Very few people attended them,
but they inspired me to produce many pages and videos... here is a list by keywords:
Agda, Calc, customize, eepitch, emlua, find-find-links-links, find-elisp-intro (weird),
git, Haskell, kla, Maxima, Make, Org for non-users, pict2e-lua, prerequisites, Python
(yttranscript, find-pydoc), saving links, SVG, subed-mpv, TikZ, wconfig, wget...

The main sandboxed tutorials are:

.0. (find-eev-quick-intro)
 1. (find-emacs-keys-intro)
 2. (find-eev-intro)
 3. (find-here-links-intro)
 4. (find-refining-intro)
 5. (find-saving-links-intro)
 6. (find-pdf-like-intro)
 7. (find-eepitch-intro)
 8. (find-audiovideo-intro)
 9. (find-video-links-intro)
10. (find-videos-intro)
11. (find-psne-intro)
12. (find-rcirc-intro)
13. (find-elisp-intro)
14. (find-lexical-intro)
15. (find-eev-install-intro)
16. (find-windows-beginner-intro)
17. (find-eev-exercises-intro)

Eev is now an ELPA package! Its ELPA page is here.
The git repository of eev is here: https://github.com/edrx/eev
It has a nice introduction: https://github.com/edrx/eev#introduction
Eev has a mailing list. Its archives are here.

Some information on how blogme3 htmlizes ascii files with elisp hyperlinks.
Some old versions of eev only supported "«...»"s correctly in unibyte buffers, but
recent versions of eev are UTF-8 clean. See the comments in eev-codings.el.
The file eev-load.el can be used as a guide to the source files of eev.

Some old stuff:
For a totally non-technical introduction to eev, read this.
For non-technical introductions in Portuguese read this and this.
(find-escripts-intro) explains what these "executable logs" ("e-scripts") are;
    its section "3. Sharing" explains some of the motivation,
    its section "4. How to read an e-script" dissects a small example;
    http://angg.twu.net/e/lua-intro.e is a much bigger example of an e-script;
    its section "5. Tools for writing e-scripts" discusses how to take (executable) notes.
An e-script is usually made of:
    free-form text,
    hyperlinks (including `to's), and
    gate io (as shown in this video).

The 1979 paper about Emacs by RMS (*), Lisp Conference speech of 2002.


September 11, 2001 - the inevitable happenned in an oh so glorious way
If you treat everybody else as an enemy you get an ulcer.
The American ulcer is bleeding (in the form of the falling of the twin towers), and it is no longer possible to just take a pill, find something external to blame, and forget about the problem.

(By the way: The seven levels of despair, by John Berger.)

2003mar20: Oh, no - they're destroying another country -
What we need is a world without the United States.
What have you been doing for that?

Notes on Bin Laden's impact (wp, deleted)