- on jka-compr (AKA auto-compression-mode
- on networking, ange-ftp, w3, and crypt++
- an introduction to ediff
- on gnuserv
- on customizing Emacs, including material on Custom
- on abbrev, dabbrev, and completion
samedi 30 mars 2013
1998 Emacs article serie "Emacsulation" from slim[e] (common lisp) author Eric Marsden.
After Luke Gorrie's talk about SLIME origins and features, I dug for Eric Marsen (author of SLIME proto-prototype). According to http://edward.oconnor.cx/2006/01/emacsulation did an article series about Emacs around 1998. Links are dead redirection so here's the web.archive~proxy list:
John Wiegley induced emacs [past]discovery of the day - edebug
EmacsConf is taking place today. John Wiegley speaks about elisp environment, including elp (profiler), edebug, and many other things. So I went to read the edebug manual a bit more (as usual I read a few pages but stopped too early).
I enjoyed the trace buffer combined with [fast]trace execution mode.
Enable the trace buffer with : `M-:` (setq edebug-trace t)
Now, let's say I have this in *scratch* (.|. being the caret)
(defun fact (n)
(cond
((equal n 0) 1)
((* n (fact (- n 1))))))
.|.(fact 10)
`M-x` edebug-defun enters the elisp debugger
`T` will step through the s-exps in fast trace mode (automatically evaluate the next s-exp every N ms) and the *edebug-trace* buffer will trace the whole process nicely, resulting in this:
{ edebug-anon0 args: nil
:{ fact args: (10)
::{ fact args: (9)
:::{ fact args: (8)
::::{ fact args: (7)
:::::{ fact args: (6)
::::::{ fact args: (5)
:::::::{ fact args: (4)
::::::::{ fact args: (3)
:::::::::{ fact args: (2)
::::::::::{ fact args: (1)
:::::::::::{ fact args: (0)
:::::::::::} fact result: 1
::::::::::} fact result: 1
:::::::::} fact result: 2
::::::::} fact result: 6
:::::::} fact result: 24
::::::} fact result: 120
:::::} fact result: 720
::::} fact result: 5040
:::} fact result: 40320
::} fact result: 362880
:} fact result: 3628800
} edebug-anon0 result: 3628800
Kawaii, isn't it ?
I enjoyed the trace buffer combined with [fast]trace execution mode.
Enable the trace buffer with : `M-:` (setq edebug-trace t)
Now, let's say I have this in *scratch* (.|. being the caret)
(defun fact (n)
(cond
((equal n 0) 1)
((* n (fact (- n 1))))))
.|.(fact 10)
`M-x` edebug-defun enters the elisp debugger
`T` will step through the s-exps in fast trace mode (automatically evaluate the next s-exp every N ms) and the *edebug-trace* buffer will trace the whole process nicely, resulting in this:
{ edebug-anon0 args: nil
:{ fact args: (10)
::{ fact args: (9)
:::{ fact args: (8)
::::{ fact args: (7)
:::::{ fact args: (6)
::::::{ fact args: (5)
:::::::{ fact args: (4)
::::::::{ fact args: (3)
:::::::::{ fact args: (2)
::::::::::{ fact args: (1)
:::::::::::{ fact args: (0)
:::::::::::} fact result: 1
::::::::::} fact result: 1
:::::::::} fact result: 2
::::::::} fact result: 6
:::::::} fact result: 24
::::::} fact result: 120
:::::} fact result: 720
::::} fact result: 5040
:::} fact result: 40320
::} fact result: 362880
:} fact result: 3628800
} edebug-anon0 result: 3628800
Kawaii, isn't it ?
mercredi 27 mars 2013
Coursera proglang epilog
Done with proglang. Lost many points because of I'm an unorganized idiot who can't recall a deadline. Unlike the scala course, proglang rules are stricter, 50% penalty right away. Anyway, got new insights and good understandings on all assignments. Both courses seems to be 2nd year college level. It's time for graduate level courses on programming. I'm revisiting old courses I took but failed (either in concept understanding or grades or both), and also starring at brown CS1730, idu C311, ...
There are initiatives for study groups about SICP, or advanced interpretation/compilation from coursera.proglang forum. Interesting, but I don't know how it's gonna be organized.
I also need 2nd-3rd year level classes in physics, chemistry, ee. And I want to take MIT classes about advanced data structures lead by E.Demaine.
That's for long term future. Short term is job hunting season opening. And right now I'm kinda blue. I liked the #coursera-pl @ freenode irc channel. All the guys here were cool (from the old timers gurus to the youngsters). I don't like to part.
Also, the sourceforge migration of some ocaml lib to github, pitched by xtrmz_ from #coursera-pl. A little push for the ocaml ecosystem, which some past teachers are so fond of.
-
There are initiatives for study groups about SICP, or advanced interpretation/compilation from coursera.proglang forum. Interesting, but I don't know how it's gonna be organized.
I also need 2nd-3rd year level classes in physics, chemistry, ee. And I want to take MIT classes about advanced data structures lead by E.Demaine.
That's for long term future. Short term is job hunting season opening. And right now I'm kinda blue. I liked the #coursera-pl @ freenode irc channel. All the guys here were cool (from the old timers gurus to the youngsters). I don't like to part.
Also, the sourceforge migration of some ocaml lib to github, pitched by xtrmz_ from #coursera-pl. A little push for the ocaml ecosystem, which some past teachers are so fond of.
-
jeudi 7 mars 2013
transcode to dvd using ffmpeg dvdauthor and growisofs
* transcode
ffmpeg -i input.asf -target pal-dvd output.mpg
* Now you can use this file to make a DVD:
export VIDEO_FORMAT=NTSC # NTSC or PAL
dvdauthor -t -o youroutputdirectory -f output.mpg
dvdauthor -o youroutputdirectory
mkisofs -dvd-video -o dvdimage.iso youroutputdirectory
growisofs -speed=4 -dvd-compat -Z /dev/dvd=dvdimage.iso
* Verify by comparing MD5SUM
md5sum dvdimage.iso
ISOSIZE=$(( $(ls -l dvdimage.iso | awk '{ print $5 }') / 2048 ))
dd if=/dev/dvd bs=2048 count=${ISOSIZE} | md5sum
from http://ubuntuforums.org/showthread.php?t=1123447
lundi 25 février 2013
limit stream -- convergent approximation for data
so many representation for a single entity
- url- path
- file handler
- file metadata
- file header
on a graphical side
- icon
- named cell
- preview
somehow they're ordered, like a lazy stream whose data is the limit
url | path -> r : lim stream
(r) -> file handler , r
(r) -> file metadata , r
(r) -> file header , r
(r) -> file byte stream, ()
- url- path
- file handler
- file metadata
- file header
on a graphical side
- icon
- named cell
- preview
somehow they're ordered, like a lazy stream whose data is the limit
url | path -> r : lim stream
(r) -> file handler , r
(r) -> file metadata , r
(r) -> file header , r
(r) -> file byte stream, ()
mercredi 6 février 2013
Never is the year of Linux on the Desktop
It's a non sense, unixness is not to give you a finished product but composable atoms to blend at will. There should be no one version of what a desktop is, anything of value should be implementable or drive the creation of a new atom. Unfortunately Linux desktop is 0.01% composable. It's all application on top of fat libraries, with low capabilities, and even less ergonomy.
dimanche 3 février 2013
sansa clip+ hazardous resurrection.
My little sansa clip buddy just crapped itself real good today. That's the second time I see that, my mother's one died out of the blue. These things are tiny and sturdy yet their internals seems very fragile. Fortunately, or not, mine resurrected, a definite proof that god exists, is digital and supports music sharing. I'm letting him charging on usb as if he needed some juice to warm itself back from the freezing cold trip to the trash bin we were getting back from. Pardon my grammar.
I was already thinking on grabbing a cheap android phone on ebay, I'm now one step closer. After all, it's only twice the price of this limited device to get a pocket computer/gps/mugmagnet these days. And I love jelly beans. Tribute to Busy Phillips.
[198002.235827] usb 1-5: USB disconnect, device number 15
[198680.723585] usb 1-5: new high-speed USB device number 16 using ehci_hcd
[198680.856683] scsi9 : usb-storage 1-5:1.0
[198681.863414] scsi 9:0:0:0: Direct-Access UNDEF storage 1.0 PQ: 0 ANSI: 0
[198681.866267] sd 9:0:0:0: [sdc] 8265 512-byte logical blocks: (4.23 MB/4.03 MiB)
[198681.867897] sd 9:0:0:0: [sdc] Write Protect is off
[198681.867906] sd 9:0:0:0: [sdc] Mode Sense: 04 00 00 00
[198681.868894] sd 9:0:0:0: [sdc] No Caching mode page present
[198681.868902] sd 9:0:0:0: [sdc] Assuming drive cache: write through
[198681.875921] sd 9:0:0:0: [sdc] No Caching mode page present
[198681.875929] sd 9:0:0:0: [sdc] Assuming drive cache: write through
[198681.885107] sdc: unknown partition table
[198681.893907] sd 9:0:0:0: [sdc] No Caching mode page present
[198681.893916] sd 9:0:0:0: [sdc] Assuming drive cache: write through
[198681.893923] sd 9:0:0:0: [sdc] Attached SCSI removable disk
[198723.408062] usb 1-5: USB disconnect, device number 16
[198796.486921] usb 1-5: new high-speed USB device number 17 using ehci_hcd
[198811.593537] usb 1-5: device descriptor read/64, error -110
[198826.803586] usb 1-5: device descriptor read/64, error -110
[198827.013588] usb 1-5: new high-speed USB device number 18 using ehci_hcd
[198835.743723] hub 1-0:1.0: unable to enumerate USB device on port 5
[198887.830541] hub 1-0:1.0: unable to enumerate USB device on port 5
[198889.163561] usb 1-5: new high-speed USB device number 20 using ehci_hcd
[198889.294648] scsi10 : usb-storage 1-5:1.0
[198890.297786] scsi 10:0:0:0: Direct-Access SanDisk Sansa Clip+ 4GB v01. PQ: 0 ANSI: 0
[198890.299140] scsi 10:0:0:1: Direct-Access SanDisk Sansa Clip+ 4GB v01. PQ: 0 ANSI: 0
[198890.299750] sd 10:0:0:0: [sdc] 7683072 512-byte logical blocks: (3.93 GB/3.66 GiB)
[198890.301475] sd 10:0:0:0: [sdc] Write Protect is off
[198890.301485] sd 10:0:0:0: [sdc] Mode Sense: 04 00 00 00
[198890.302146] sd 10:0:0:0: [sdc] No Caching mode page present
[198890.302155] sd 10:0:0:0: [sdc] Assuming drive cache: write through
[198890.305781] sd 10:0:0:1: [sdd] Attached SCSI removable disk
[198890.306345] sd 10:0:0:0: [sdc] No Caching mode page present
[198890.306354] sd 10:0:0:0: [sdc] Assuming drive cache: write through
[198890.309471] sdc:
[198890.311724] sd 10:0:0:0: [sdc] No Caching mode page present
[198890.311733] sd 10:0:0:0: [sdc] Assuming drive cache: write through
[198890.311741] sd 10:0:0:0: [sdc] Attached SCSI removable disk
I was already thinking on grabbing a cheap android phone on ebay, I'm now one step closer. After all, it's only twice the price of this limited device to get a pocket computer/gps/mugmagnet these days. And I love jelly beans. Tribute to Busy Phillips.
[198002.235827] usb 1-5: USB disconnect, device number 15
[198680.723585] usb 1-5: new high-speed USB device number 16 using ehci_hcd
[198680.856683] scsi9 : usb-storage 1-5:1.0
[198681.863414] scsi 9:0:0:0: Direct-Access UNDEF storage 1.0 PQ: 0 ANSI: 0
[198681.866267] sd 9:0:0:0: [sdc] 8265 512-byte logical blocks: (4.23 MB/4.03 MiB)
[198681.867897] sd 9:0:0:0: [sdc] Write Protect is off
[198681.867906] sd 9:0:0:0: [sdc] Mode Sense: 04 00 00 00
[198681.868894] sd 9:0:0:0: [sdc] No Caching mode page present
[198681.868902] sd 9:0:0:0: [sdc] Assuming drive cache: write through
[198681.875921] sd 9:0:0:0: [sdc] No Caching mode page present
[198681.875929] sd 9:0:0:0: [sdc] Assuming drive cache: write through
[198681.885107] sdc: unknown partition table
[198681.893907] sd 9:0:0:0: [sdc] No Caching mode page present
[198681.893916] sd 9:0:0:0: [sdc] Assuming drive cache: write through
[198681.893923] sd 9:0:0:0: [sdc] Attached SCSI removable disk
[198723.408062] usb 1-5: USB disconnect, device number 16
[198796.486921] usb 1-5: new high-speed USB device number 17 using ehci_hcd
[198811.593537] usb 1-5: device descriptor read/64, error -110
[198826.803586] usb 1-5: device descriptor read/64, error -110
[198827.013588] usb 1-5: new high-speed USB device number 18 using ehci_hcd
[198835.743723] hub 1-0:1.0: unable to enumerate USB device on port 5
[198887.830541] hub 1-0:1.0: unable to enumerate USB device on port 5
[198889.163561] usb 1-5: new high-speed USB device number 20 using ehci_hcd
[198889.294648] scsi10 : usb-storage 1-5:1.0
[198890.297786] scsi 10:0:0:0: Direct-Access SanDisk Sansa Clip+ 4GB v01. PQ: 0 ANSI: 0
[198890.299140] scsi 10:0:0:1: Direct-Access SanDisk Sansa Clip+ 4GB v01. PQ: 0 ANSI: 0
[198890.299750] sd 10:0:0:0: [sdc] 7683072 512-byte logical blocks: (3.93 GB/3.66 GiB)
[198890.301475] sd 10:0:0:0: [sdc] Write Protect is off
[198890.301485] sd 10:0:0:0: [sdc] Mode Sense: 04 00 00 00
[198890.302146] sd 10:0:0:0: [sdc] No Caching mode page present
[198890.302155] sd 10:0:0:0: [sdc] Assuming drive cache: write through
[198890.305781] sd 10:0:0:1: [sdd] Attached SCSI removable disk
[198890.306345] sd 10:0:0:0: [sdc] No Caching mode page present
[198890.306354] sd 10:0:0:0: [sdc] Assuming drive cache: write through
[198890.309471] sdc:
[198890.311724] sd 10:0:0:0: [sdc] No Caching mode page present
[198890.311733] sd 10:0:0:0: [sdc] Assuming drive cache: write through
[198890.311741] sd 10:0:0:0: [sdc] Attached SCSI removable disk
Inscription à :
Articles (Atom)