Dynamic
Hacking
with
Guile
Greetings!
Andy Wingo
http://wingolog.org/
Guile co-maintainer
(along with Ludovic Courtès)
Goal
Shameless promotion
To inform, and to entertain
Agenda
Brief intro
What are the haps?
Live-hack a twitter-alike
Forward-looking statements
What is it? (1)
The GNU extension language
Implementation of Scheme
Embeddable, great C API
Standalone programs
"Scripting...
What is it? (2)
Bytecode virtual machine
Compiler, and compiler toolkit
Module set: threads, ffi, web,
goops
Fantastic REPL
...
What happened in 2010?
Nine 1.9.x releases
* six of which were the last
before 2.0 (oops!)
(One 1.8 release)
Awesome new REPL
Debugger on error
Profiler
Tracing and tracepoints
Breakpoints
Source stepping
Dynamic FFI
Bind C libraries without C code
Seatbelts not included
Prompts

Composable, delimited
continuations
catch, throw implemented in
Scheme
More powerful than call/cc
Process abstrac...
Elisp improvements
Clever #nil
* (if #nil "hey" "ho") => "ho"
* (null? #nil) => #t
SoC work from Brian Templeton
Getting c...
R6RS support
Imports from elsewhere
LALR parser generator
* PEG SoC work to be merged
SXML, sxml-match
Statistical profiler
Web stack

HTTP URI parsers and serializers
,
WSGI-like abstraction for web
programs
Now that we have web modules,
let's m...
Misc
Futures: fine-grained parallelism
Code coverage
Letrec* for internal definitions
The coming 2.0
27 developers
3790 changesets
1,127,437 lines added
792,425 removed
Mostly compatible with 1.8
16 February ...
Peeple
[hack goes here]
The Future
CPAN
Native compilation
2.2, 2.4, ...
Guile & GNU
Unix or the Lisp Machine?
Guile & Emacs
Implement Elisp for Guile
runtime
Allow Scheme (& JS, Lua) in
Emacs
No rewrites
Status
Guile & You
Give it a hack!
Questions?
www.gnu.org/software/guile
wingolog.org/git/skeleton.git
Thanks for listening!
Upcoming SlideShare
Loading in...5
×

Dynamic hacking with Guile (FOSDEM 2011)

140

Published on

By Andy Wingo.

Hacking GNU with Guile

I'll start by giving my standard propaganda schtick about guile, and how it can make hacking GNU more like hacking lisp machines. I'll go on like that for about 15 minutes.

In the latter 15 minutes I'll do some live hacking. I think what I'd like to show would be live-hacking a web application through emacs and geiser, in which I show what it's like to hack on a running application, what it's like to hack the web in sxml, how to make new bindings to C functions without restarting the process, things like that.

Links:
- Guile homepage: http://www.gnu.org/software/guile

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
140
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Dynamic hacking with Guile (FOSDEM 2011)

  1. 1. Dynamic Hacking with Guile
  2. 2. Greetings! Andy Wingo http://wingolog.org/ Guile co-maintainer (along with Ludovic Courtès)
  3. 3. Goal Shameless promotion To inform, and to entertain
  4. 4. Agenda Brief intro What are the haps? Live-hack a twitter-alike Forward-looking statements
  5. 5. What is it? (1) The GNU extension language Implementation of Scheme Embeddable, great C API Standalone programs "Scripting"
  6. 6. What is it? (2) Bytecode virtual machine Compiler, and compiler toolkit Module set: threads, ffi, web, goops Fantastic REPL Much of this is new
  7. 7. What happened in 2010? Nine 1.9.x releases * six of which were the last before 2.0 (oops!) (One 1.8 release)
  8. 8. Awesome new REPL Debugger on error Profiler Tracing and tracepoints Breakpoints Source stepping
  9. 9. Dynamic FFI Bind C libraries without C code Seatbelts not included
  10. 10. Prompts Composable, delimited continuations catch, throw implemented in Scheme More powerful than call/cc Process abstractions in userspace
  11. 11. Elisp improvements Clever #nil * (if #nil "hey" "ho") => "ho" * (null? #nil) => #t SoC work from Brian Templeton Getting closer; needs champion
  12. 12. R6RS support
  13. 13. Imports from elsewhere LALR parser generator * PEG SoC work to be merged SXML, sxml-match Statistical profiler
  14. 14. Web stack HTTP URI parsers and serializers , WSGI-like abstraction for web programs Now that we have web modules, let's make a CPAN, finally
  15. 15. Misc Futures: fine-grained parallelism Code coverage Letrec* for internal definitions
  16. 16. The coming 2.0 27 developers 3790 changesets 1,127,437 lines added 792,425 removed Mostly compatible with 1.8 16 February 2011
  17. 17. Peeple [hack goes here]
  18. 18. The Future CPAN Native compilation 2.2, 2.4, ...
  19. 19. Guile & GNU Unix or the Lisp Machine?
  20. 20. Guile & Emacs Implement Elisp for Guile runtime Allow Scheme (& JS, Lua) in Emacs No rewrites Status
  21. 21. Guile & You Give it a hack!
  22. 22. Questions? www.gnu.org/software/guile wingolog.org/git/skeleton.git Thanks for listening!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×