Factor is a programming language which has been in development for a little over 5 years. Factor is influenced by Forth, Lisp, Smalltalk. Factor takes the best ideas from Forth -- simplicity, short, succint, code, emphasis on interactive testing, and meta-programming. Factor also brings modern high-level language features such as garbage collection, object orientation and functional programming familiar to users of languages such as Lisp, Smalltalk and Python...In this talk, I will give the rationale for Factor's creation, present an overview of the language, and show how Factor can be used to solve real-world problems with a minimum of fuss. At the same time, I will emphasize Factor's extensible syntax, meta-programming and reflection capabilities, and show that these features, which are unheard of in the world of mainstream programming languages, make programs easier to write, more robust, and fun.
"I have a mind like a steel... uh... thingy." Patrick Logan's weblog.
Search This Blog
Saturday, October 25, 2008
Factor Talk at Galois
Friday, October 24, 2008
Enterprise 2.0
"Very little in the way of Enterprise Software has properly understood
the potential impact the web has on that niche or how to even begin to
respond to it."
http://smoothspan.wordpress.com/2008/10/21/is-enterprise-20-a-real-trend-or-a-bubble-that-has-burst/
Every success I have seen in enterprise IT has been based on making
essential data better, and/or making the technology of getting to that
data simpler. Web 2.0, and by extension Enterprise 2.0, is about
"social" computing. The societies withing and around an enterprise are
by necessity based on the core information of that enterprise.
The web now *is* the way to make data better and accessing it simpler.
If the future of your enterprise IT is not making it more like the
web, what the heck *is* the future of your enterprise?
Smalltalk and CPUs
historical, and multiple.
Thursday, October 23, 2008
Antennae for Flex
than Eclipse. Provides a lot of tools, templates, utils. Ant-based.
http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&postId=7322&productId=2
Wednesday, October 22, 2008
Facts, More or Less
* 12 - percentage of Republicans who believed in June that Obama is a Muslim
* 14 - percentage now
Finally...
* 90 - perentage of the human brain that consists of fat.
Can't we just get the election over with?
Monday, October 20, 2008
Smalltalk Superpowers
"After each snippet, the group would give it thumbs up or thumbs down.
Thumbs down meaning it's evil and thumbs up meaning it's good. We
generally judged by whether we would want to use this technique for an
actual production system.. it's a sign of success if you get all
thumbs down in my opinion :)...
When we have an evil talk, we dim the lights. When we have a "for
good" we turn the lights back on. It adds to the atmosphere."
Sunday, October 19, 2008
P&G Goes Direct, More Or Less
Financial Times on Proctor and Gamble's moves toward direct-selling products over the web...
Procter & Gamble is testing its ability to use the internet to sell its toothpaste, household cleaners and nappies directly to US households, in a potential long-term strategic challenge to its retail partners...Nappies? Oh yeah... Financial Times is a UK publication.In another indication of the flux, Wal-Mart, P&G’s largest customer, is hiring a strategy executive whose tasks include assessing the potential effect of direct-to-consumer sales by its own suppliers.
Emacs: Query Replace Over Multiple Files
I've received a number of comments on my earlier Query Replace post. Today Kaom Te asked about query replace over multiple files.
One of my favorite shell commands is "find" and in particular, emacs supports "find" as part of its "dired" mode. (dired == directory editing)
Type "meta-x find-dired" and emacs will prompt you through the arguments to "find" multiple files in various ways. The result is a dired buffer listing all the matching files, which you can operate on as with any dired buffer, including query/replace.
The other common way to query and replace over multiple files is to use "tags". Tag files are like indexes you build over various kinds of sources. Tag files can be built for multiple source directories and files in C, Java, Lisp, Erlang, HTML, etc.
Then, of course, there is an emacs function called "tags-query-replace" which will perform a query/replace over the files in your TAGS file with fewer steps than using "find-dired". Tags have many other uses as well since they understand the definitions of the source format, e.g. "meta-." can be used to open a buffer on the definition of the name currently under the cursor ("point" in emacs).
Blog Archive
-
►
2011
(19)
- ► 12/04 - 12/11 (2)
- ► 08/21 - 08/28 (5)
- ► 07/17 - 07/24 (1)
- ► 04/03 - 04/10 (3)
- ► 03/27 - 04/03 (5)
- ► 03/20 - 03/27 (1)
- ► 03/13 - 03/20 (1)
- ► 03/06 - 03/13 (1)
-
►
2010
(2)
- ► 11/07 - 11/14 (2)
-
►
2009
(40)
- ► 06/07 - 06/14 (2)
- ► 05/31 - 06/07 (1)
- ► 05/17 - 05/24 (1)
- ► 04/05 - 04/12 (2)
- ► 03/22 - 03/29 (7)
- ► 03/15 - 03/22 (1)
- ► 03/08 - 03/15 (4)
- ► 03/01 - 03/08 (2)
- ► 02/22 - 03/01 (1)
- ► 02/15 - 02/22 (5)
- ► 02/08 - 02/15 (1)
- ► 02/01 - 02/08 (7)
- ► 01/25 - 02/01 (2)
- ► 01/04 - 01/11 (4)
-
▼
2008
(402)
- ► 12/28 - 01/04 (12)
- ► 12/14 - 12/21 (3)
- ► 12/07 - 12/14 (10)
- ► 11/30 - 12/07 (14)
- ► 11/23 - 11/30 (7)
- ► 11/16 - 11/23 (14)
- ► 11/09 - 11/16 (7)
- ► 11/02 - 11/09 (11)
- ► 10/26 - 11/02 (14)
- ▼ 10/19 - 10/26 (10)
- ► 10/12 - 10/19 (11)
- ► 10/05 - 10/12 (16)
- ► 09/28 - 10/05 (26)
- ► 09/21 - 09/28 (16)
- ► 09/14 - 09/21 (3)
- ► 09/07 - 09/14 (9)
- ► 08/31 - 09/07 (8)
- ► 08/24 - 08/31 (10)
- ► 08/17 - 08/24 (12)
- ► 08/10 - 08/17 (4)
- ► 08/03 - 08/10 (5)
- ► 07/27 - 08/03 (10)
- ► 07/20 - 07/27 (6)
- ► 07/13 - 07/20 (7)
- ► 07/06 - 07/13 (3)
- ► 06/29 - 07/06 (8)
- ► 06/22 - 06/29 (6)
- ► 06/15 - 06/22 (5)
- ► 06/08 - 06/15 (10)
- ► 06/01 - 06/08 (4)
- ► 05/25 - 06/01 (5)
- ► 05/18 - 05/25 (6)
- ► 05/11 - 05/18 (3)
- ► 05/04 - 05/11 (7)
- ► 04/27 - 05/04 (7)
- ► 04/20 - 04/27 (7)
- ► 04/13 - 04/20 (6)
- ► 04/06 - 04/13 (9)
- ► 03/30 - 04/06 (7)
- ► 03/23 - 03/30 (5)
- ► 03/16 - 03/23 (15)
- ► 03/09 - 03/16 (7)
- ► 03/02 - 03/09 (5)
- ► 02/24 - 03/02 (4)
- ► 02/17 - 02/24 (2)
- ► 02/10 - 02/17 (3)
- ► 02/03 - 02/10 (1)
- ► 01/27 - 02/03 (8)
- ► 01/20 - 01/27 (4)
- ► 01/13 - 01/20 (3)
- ► 01/06 - 01/13 (7)
-
►
2007
(388)
- ► 12/30 - 01/06 (11)
- ► 12/16 - 12/23 (5)
- ► 12/09 - 12/16 (3)
- ► 12/02 - 12/09 (5)
- ► 11/25 - 12/02 (5)
- ► 11/18 - 11/25 (4)
- ► 11/11 - 11/18 (4)
- ► 11/04 - 11/11 (11)
- ► 10/28 - 11/04 (11)
- ► 10/21 - 10/28 (3)
- ► 10/14 - 10/21 (6)
- ► 10/07 - 10/14 (5)
- ► 09/30 - 10/07 (18)
- ► 09/23 - 09/30 (13)
- ► 09/16 - 09/23 (9)
- ► 09/09 - 09/16 (12)
- ► 09/02 - 09/09 (15)
- ► 08/26 - 09/02 (2)
- ► 08/19 - 08/26 (8)
- ► 08/12 - 08/19 (25)
- ► 08/05 - 08/12 (7)
- ► 07/29 - 08/05 (8)
- ► 07/22 - 07/29 (2)
- ► 07/15 - 07/22 (4)
- ► 07/08 - 07/15 (11)
- ► 07/01 - 07/08 (3)
- ► 06/24 - 07/01 (8)
- ► 06/17 - 06/24 (4)
- ► 06/10 - 06/17 (17)
- ► 06/03 - 06/10 (6)
- ► 05/27 - 06/03 (12)
- ► 05/20 - 05/27 (5)
- ► 05/13 - 05/20 (15)
- ► 05/06 - 05/13 (10)
- ► 04/29 - 05/06 (14)
- ► 04/22 - 04/29 (5)
- ► 04/15 - 04/22 (6)
- ► 04/08 - 04/15 (16)
- ► 04/01 - 04/08 (8)
- ► 03/25 - 04/01 (5)
- ► 03/18 - 03/25 (3)
- ► 03/11 - 03/18 (3)
- ► 03/04 - 03/11 (5)
- ► 02/25 - 03/04 (1)
- ► 02/18 - 02/25 (4)
- ► 02/04 - 02/11 (10)
- ► 01/28 - 02/04 (11)
- ► 01/21 - 01/28 (2)
- ► 01/14 - 01/21 (1)
- ► 01/07 - 01/14 (7)
-
►
2006
(261)
- ► 12/31 - 01/07 (7)
- ► 12/24 - 12/31 (13)
- ► 12/17 - 12/24 (6)
- ► 12/10 - 12/17 (7)
- ► 12/03 - 12/10 (6)
- ► 11/26 - 12/03 (1)
- ► 11/19 - 11/26 (5)
- ► 11/05 - 11/12 (2)
- ► 10/29 - 11/05 (4)
- ► 10/22 - 10/29 (5)
- ► 10/15 - 10/22 (2)
- ► 10/08 - 10/15 (3)
- ► 10/01 - 10/08 (9)
- ► 09/24 - 10/01 (8)
- ► 09/17 - 09/24 (1)
- ► 09/10 - 09/17 (5)
- ► 09/03 - 09/10 (6)
- ► 08/27 - 09/03 (2)
- ► 08/13 - 08/20 (9)
- ► 08/06 - 08/13 (6)
- ► 07/30 - 08/06 (6)
- ► 07/23 - 07/30 (6)
- ► 07/16 - 07/23 (3)
- ► 07/09 - 07/16 (2)
- ► 07/02 - 07/09 (2)
- ► 06/25 - 07/02 (10)
- ► 06/18 - 06/25 (9)
- ► 06/11 - 06/18 (10)
- ► 06/04 - 06/11 (6)
- ► 05/28 - 06/04 (9)
- ► 05/21 - 05/28 (9)
- ► 05/14 - 05/21 (3)
- ► 05/07 - 05/14 (4)
- ► 04/30 - 05/07 (10)
- ► 04/23 - 04/30 (1)
- ► 04/16 - 04/23 (2)
- ► 04/09 - 04/16 (4)
- ► 04/02 - 04/09 (4)
- ► 03/19 - 03/26 (9)
- ► 03/12 - 03/19 (11)
- ► 03/05 - 03/12 (1)
- ► 02/26 - 03/05 (5)
- ► 02/19 - 02/26 (14)
- ► 02/12 - 02/19 (2)
- ► 02/05 - 02/12 (1)
- ► 01/29 - 02/05 (1)
- ► 01/22 - 01/29 (2)
- ► 01/01 - 01/08 (8)
-
►
2005
(335)
- ► 12/25 - 01/01 (9)
- ► 12/18 - 12/25 (4)
- ► 11/27 - 12/04 (1)
- ► 11/20 - 11/27 (1)
- ► 11/13 - 11/20 (1)
- ► 10/23 - 10/30 (1)
- ► 10/16 - 10/23 (2)
- ► 10/09 - 10/16 (3)
- ► 10/02 - 10/09 (11)
- ► 09/18 - 09/25 (4)
- ► 09/11 - 09/18 (4)
- ► 09/04 - 09/11 (1)
- ► 08/28 - 09/04 (7)
- ► 08/21 - 08/28 (10)
- ► 08/14 - 08/21 (6)
- ► 08/07 - 08/14 (2)
- ► 07/31 - 08/07 (16)
- ► 07/24 - 07/31 (5)
- ► 07/17 - 07/24 (6)
- ► 07/10 - 07/17 (5)
- ► 06/19 - 06/26 (1)
- ► 05/29 - 06/05 (7)
- ► 05/22 - 05/29 (7)
- ► 05/15 - 05/22 (16)
- ► 05/08 - 05/15 (10)
- ► 05/01 - 05/08 (8)
- ► 04/24 - 05/01 (6)
- ► 04/03 - 04/10 (7)
- ► 03/27 - 04/03 (19)
- ► 03/20 - 03/27 (15)
- ► 03/13 - 03/20 (27)
- ► 03/06 - 03/13 (7)
- ► 02/27 - 03/06 (16)
- ► 02/20 - 02/27 (7)
- ► 02/13 - 02/20 (10)
- ► 02/06 - 02/13 (23)
- ► 01/30 - 02/06 (4)
- ► 01/23 - 01/30 (12)
- ► 01/16 - 01/23 (15)
- ► 01/09 - 01/16 (2)
- ► 01/02 - 01/09 (17)
-
►
2004
(534)
- ► 12/26 - 01/02 (18)
- ► 12/19 - 12/26 (5)
- ► 12/12 - 12/19 (5)
- ► 12/05 - 12/12 (25)
- ► 11/28 - 12/05 (8)
- ► 11/21 - 11/28 (3)
- ► 11/14 - 11/21 (4)
- ► 11/07 - 11/14 (7)
- ► 10/31 - 11/07 (13)
- ► 10/24 - 10/31 (7)
- ► 10/17 - 10/24 (10)
- ► 10/10 - 10/17 (15)
- ► 10/03 - 10/10 (1)
- ► 09/19 - 09/26 (9)
- ► 09/12 - 09/19 (4)
- ► 09/05 - 09/12 (4)
- ► 08/29 - 09/05 (9)
- ► 08/08 - 08/15 (11)
- ► 08/01 - 08/08 (4)
- ► 07/11 - 07/18 (12)
- ► 07/04 - 07/11 (19)
- ► 06/27 - 07/04 (12)
- ► 06/20 - 06/27 (7)
- ► 06/13 - 06/20 (5)
- ► 06/06 - 06/13 (1)
- ► 05/30 - 06/06 (8)
- ► 05/23 - 05/30 (27)
- ► 05/16 - 05/23 (16)
- ► 05/09 - 05/16 (36)
- ► 05/02 - 05/09 (31)
- ► 04/25 - 05/02 (13)
- ► 04/18 - 04/25 (25)
- ► 04/11 - 04/18 (15)
- ► 03/28 - 04/04 (9)
- ► 03/21 - 03/28 (12)
- ► 03/14 - 03/21 (9)
- ► 03/07 - 03/14 (7)
- ► 02/29 - 03/07 (16)
- ► 02/22 - 02/29 (11)
- ► 02/15 - 02/22 (6)
- ► 02/08 - 02/15 (8)
- ► 02/01 - 02/08 (9)
- ► 01/25 - 02/01 (18)
- ► 01/18 - 01/25 (12)
- ► 01/11 - 01/18 (14)
- ► 01/04 - 01/11 (14)
-
►
2003
(286)
- ► 12/28 - 01/04 (7)
- ► 12/21 - 12/28 (10)
- ► 12/14 - 12/21 (5)
- ► 11/30 - 12/07 (5)
- ► 11/23 - 11/30 (5)
- ► 11/16 - 11/23 (2)
- ► 11/09 - 11/16 (3)
- ► 10/26 - 11/02 (6)
- ► 10/19 - 10/26 (9)
- ► 10/12 - 10/19 (8)
- ► 10/05 - 10/12 (5)
- ► 09/28 - 10/05 (3)
- ► 09/21 - 09/28 (3)
- ► 09/14 - 09/21 (4)
- ► 09/07 - 09/14 (3)
- ► 08/31 - 09/07 (6)
- ► 08/24 - 08/31 (12)
- ► 08/17 - 08/24 (3)
- ► 08/10 - 08/17 (6)
- ► 08/03 - 08/10 (8)
- ► 07/27 - 08/03 (9)
- ► 07/20 - 07/27 (5)
- ► 07/13 - 07/20 (8)
- ► 07/06 - 07/13 (15)
- ► 06/29 - 07/06 (12)
- ► 06/22 - 06/29 (5)
- ► 06/15 - 06/22 (6)
- ► 06/08 - 06/15 (1)
- ► 06/01 - 06/08 (5)
- ► 05/18 - 05/25 (7)
- ► 05/11 - 05/18 (9)
- ► 05/04 - 05/11 (13)
- ► 04/27 - 05/04 (9)
- ► 04/20 - 04/27 (4)
- ► 04/13 - 04/20 (10)
- ► 04/06 - 04/13 (15)
- ► 03/30 - 04/06 (7)
- ► 03/23 - 03/30 (13)
- ► 03/16 - 03/23 (9)
- ► 03/09 - 03/16 (3)
- ► 03/02 - 03/09 (8)
About Me
- Patrick Logan
- Portland, Oregon, United States
- I'm usually writing from my favorite location on the planet, the pacific northwest of the u.s. I write for myself only and unless otherwise specified my posts here should not be taken as representing an official position of my employer. Contact me at my gee mail account, username patrickdlogan.