"I have a mind like a steel... uh... thingy." Patrick Logan's weblog.

Search This Blog

Friday, February 06, 2009

What Do Nintendo, Squeak Smalltalk, and an EMCAScript-based OS Have in Common?

I knew some people at Nintendo have been doing something with Squeak Smalltalk. At least this aspect of that was not something I'd expected...

Using commands

From the command line shell, you can use the programs like below. Most of the commands are written in ECMAScript:

Command Name  Description
cat [file ...]  Prints the contents of files to the screen
cd [dir]  Sets the current directory to dir
clear  Clears the canvas for drawing graphics
date [-u]  Displays the current date and time.
echo [arg ...]  Prints the arguments to the screen
edit [file]  Edits text files
exit  Exits the command line shell
figure  Draws chars using the CanvasRenderingContext2D interface (A demo script)
ls [dir ...]  Lists names of objects in the directory
rm [file ...]  Removes the files
squeak  Squeak - a Smalltalk programming environment

Thursday, February 05, 2009

Bertrand / Wm Leler at pdxfunc meeting - Feb 9, 7pm

This month, Wm Leler will talk about Constraint Satisfaction Systems
and the Bertrand Programming Language. Wm is the creator of Bertrand
and the author of the book "Constraint Programming Languages: Their
Specification and Generation".

Constraint Satisfaction Systems were a hot topic of research in the
80's -- famous constraint systems include Ivan Sutherland's Sketchpad,
Alan Borning's ThingLab (built on top of Smalltalk), Guy Steele's
constraint language, and James Gosling's Magritte. These systems were
used for computer graphics, design, and general numeric problem
solving, but most of these solvers were domain specific and thus of
limited usefulness.

Bertrand is an equational programming system whose purpose is to build
constraint satisfaction systems using simple equational rules.
Bertrand has an purely declarative semantics and an absurdly simple
syntax, yet it is a powerful and expressive language, capable of
solving problems in a large number of domains including graphics, word
problems, electrical circuits, or -- with the right rules -- virtually
any mostly-linear domain.

Since this is the Functional Programming Study Group, this talk will
cover the underlying equational programming language of Bertrand and
ways in which it could be extended to make it more powerful.

--~--~---------~--~----~------------~-------~--~----~
visit this group at http://groups.google.com/group/pdxfunc?hl=en
-~----------~----~----~----~------~----~------~--~---

Tuesday, February 03, 2009

Original Hotcake House

I was recently reminded how much I love the Original Hotcake House on Powell Blvd. here in PDX. Really, really, "diner" good. As captured in this review from alt.portland...

The hot cakes were absolutely hot cake-like, doused in some butter-like substance, and then served with something that is heated, but probably not pure maple syrup. Hell, it may contain no maple syrup for all I know (I saw some patrons bring in their own)!

...

The coffee looks scary—we didn't go there.

The coffee, like everything else, is great. It's just sitting in a pot over there, and you go up and pour yourself a cup, then squirt some milk into it from this big squirter thing.

Now I have to plan a trip there soon.

PITA

Ron Jeffries again...

"I often tell teams that apparently my purpose in life is to tell
people that the sensation in their butt is called "pain", and that
they should get rid of it."

http://xprogramming.com/blog/2009/02/02/discovering-essential-technical-practices/

Grade: Incomplete

Ron Jeffries writes...

Jeff Sutherland, co-inventor of Scrum, says he has never seen a Scrum team become hyper-productive without adopting the XP practices. Less elegantly, I have said that teaching Scrum teams how to get Done-Done is why I have such a lovely blue convertible...

Well, my dear little children, I’ve got bad news for you. It is your precious context that is holding you back. It is your C-level Exeuctives and high-level managers who can’t delegate real responsibility and authority to their people. It is your product people who are too busy to explain what really needs to be done. It is your facilities people who can’t make a workspace fit to work in. It is your programmers who won’t learn the techniques necessary to succeed. It is your managers and product owners who keep increasing pressure until any focus on quality is driven out of the project.

So Called

I get frustrated listening to smart people talk about things they are only marginally familiar with. Part I of this recording was interesting... people talking about their own experience with specific systems and practices.

Part II of this recording is frustrating because they've not called in anyone with experience with XP, and so debate XP as they understand it. Not that they don't have good experiences and smart things to say here and there. Just that this one could have been much better.

Good software development evolves from a team's conversation about what's working for them. The heart of XP in my experience are practices that foster a teams conversations. Those practices should themselves evolve from those conversations.

This recording has some good conversations, but mostly I am frustrated because I'd love to be a part of their conversation.

Sunday, February 01, 2009

Agile Open Northwest 2009, Feb. 10-11

We've had two great AONW open space conferences, 2007 in Portland, and 2008 in Seattle.

This year we are back in Portland, close to the MAX, and as low-cost as ever: $125. There's still a bit of room to sign-up if you don't wait. The conference is Feb 10-11.

Agile Open Northwest 2009, the best open space conference in the world. Learn from each other at AONW 2009...

"These two-day Agile Open Northwest conferences are an extremely good value. ..[Y]ou learn directly from practitioners in the agile community what works and what doesn't. I attended the first two of these conferences, they were stunningly good... loads of practical, useful stuff and stimulating discussions." -- Ian Savage, PNSQC Program Chair

Friday, January 30, 2009

As Scheme Moves Forward

On the Scheme Language Steering Committee Nominees page, Will Clinger writes...

The R6RS has given us the option of writing programs in the new and more static language it describes. Two implementations of the dynamic language most recently described by the R5RS have added support for this new mode of execution, and four brand new implementations of R6 Scheme are well under way.

That represents a partial success, but this process has disappointed users of the language formerly known as Scheme...

As demonstrated by ERR5RS, the major new features of the R6RS could have been added without forbidding... the dynamic language paradigm of IEEE/R5 Scheme...

Tuesday, January 27, 2009

Do you practice hygiene (with your macros)?

No. God no.

Hygienic macro systems are a sign of weakness and a false crutch. If you can't write a macro that doesn't inadvertently capture a variable, you shouldn't be writing programs that write programs.

(Been a while since I've ranted. Hasn't it?)

Wednesday, January 07, 2009

Many, Cooperating, Screens That Compute

John Dowdell writes about recent internet-ready TV news from CES, and extrapolates...

We've got to start designing to the range of inter-cooperating display screens a person may use throughout a typical day in 2012.

And we've really got to work hard at bringing in your friends' and teachers' understandings of what's worth your attention onto those varied screens.

Future applications will be multi-screened, using the cloud, to connect with your friends. That's where the highgrowth markets are going.

Sunday, January 04, 2009

Beavs Beat Trojans All Over Again

The Oregon State Beavers basketball team did not win a conference game
last year, and had not won a conference game since February 2007.
Until today, when they upset the USC Trojans at home, just as the
football team did in the fall. Nice for them to have that monkey off
their back in just the second conference game this season. The team
with nowhere to go but up just elevated themselves a notch.

http://www.latimes.com/sports/la-sp-uschoops5-2009jan05,0,6109731.story

http://blog.oregonlive.com/behindbeaversbeat/2009/01/haynes_sounds_warning_to_rest.html

Tim Riley Podcast Begins

Subscribe to Tim Riley's podcasts. They begin Monday and cost
something like $4/month. Definitely worth the few bucks for Tim
Riley's unique approach to local and national news, and everything
else. This could be the beginning to a new format for Riley, and
perhaps Emerson, that transcends the fickle, short-sighted 20th
century media companies.

http://timrileylive.wordpress.com/2008/12/31/we-just-cant-wait-for-2009/

Waiting on WiMax

Looks like waiting for more complete reviews and early adopter
feedback is warranted before signing up for the WiMax. Mobile is what
I would get, but mostly for use indoors.

http://blog.oregonlive.com/siliconforest/2009/01/more_time_with_wimax.html

Wednesday, December 31, 2008

The Dark Pools of Finance

I am not sure "dark pools" are what's needed to resolve a crisis
worsened by, if not due to, opacity...

http://www.ft.com/cms/s/0/872657de-cf8b-11dd-abf9-000077b07658.html

Multnomah County Sheriff’s Office: “Naked Home Invader Captured After Senior Citizen Grabs His ‘Cahoochies.’”

From the Portland Tribune...

Gresham resident Michael Gordon Dick (that’s right), 46, is being held on $104,000 bail on accusations of felony burglary, harassment and private indecency at the Multnomah County Detention Center.

The 88-year-old victim was in her robe at 6:30 a.m. when she confronted Dick after finding him in her home...

...the victim reached behind her and grabbed the intruder’s crotch, “giving him a good squeeze,” wrote Deputy Paul McRedmond, a spokesman for the Multnomah County Sheriff’s Office, in a press release titled “Naked Home Invader Captured After Senior Citizen Grabs His ‘Cahoochies.’ ”

Mr. Dick may have to stay on guard in jail once news of his crime gets around.

New Tim Riley Podcasts

Tim Riley begins podcasting on Monday:

http://timrileylive.wordpress.com/2008/12/31/we-just-cant-wait-for-2009/

His xmas christmas special is here:

http://timrileylive.wordpress.com/2008/12/24/1107/

Building Lisps

Some Lisp-related, and just compiler-related papers and things I've been digging up and enjoying all over again...

Expansion-Passing Style: A General Macro Mechanism
A simple way to implement macros (no hygiene, thank you). Moreover compared to a basic defmacro, this approach allows many more kinds of transformations, e.g. currying, call-by-name, call-by-need, macrolet, stepping inspector, etc. Without getting into anything else about compilation, you can plop this thing right on top of your current Lisp and create all kinds of new Lisps and tools.
Rabbit: A Compiler for Scheme
The original Scheme compiler where Steele put all the basic elements together for writing modern compilers for any language.
The 90-minute Scheme-to-C Compiler
This one's fairly recent and has not received enough attention. This is a concise, Cliff Notes, summary of Rabbit, for all intents. Amazingly it is a working Scheme-to-C compiler, of course without optimizations, the full numeric tower, data structures, etc.
Realistic Compilation by Program Transformation
A thesis that came out of the Rabbit, Orbit, SML/NJ, etc. school. Explains why most compilers should not be *-to-C but *-to-Lambda. The cheapest way to do this today: *-to-Gambit-to-C. Takes transformation to an extreme: ultimately the source-to-source transformations restrict the names in the program to those that can be directly mapped onto the machine registers, etc. But the representation is still essentially executable source code, e.g. Scheme code.
ORBIT: An Optimizing Compiler for Scheme (pdf)
See also the T Project. If you've made it this far you are interested in compilers, language implementations, and Lisp. Orbit is Rabbit, but way out there.
I'm not a compiler guru. I've had the courses in school, built some simple Scheme-ish systems, implemented "little languages" dragon-style for employers who had no appetite for Lisp, etc. I just love these papers listed above, among others to be listed some other time.

qotd, sign of the times

"Somebody's going to hell, is all I know."

http://blog.oregonlive.com/madaboutmovies/2008/12/stunner.html

(The great Nat Hentoff being let go from the Village Voice.)

Tuesday, December 30, 2008

pdx sicp grp

Some folks in pdx are gathering to study Structure and Interpretation
of Computer Programs...

http://groups.google.com/group/pdxfunc/browse_thread/thread/807282d048f7d12e/e75a2dd00a55d33d?show_docid=e75a2dd00a55d33d

Oh My God, It's a System!

Via Andres Valloud, a list of the Madoff scheme's dupes sorted by magnitude of their losses.

What this highlights for me is that the worldwide financial system, generally, is both worldwide and a system. It's made of interconnected, independent agents, with varying motivations and levels of self-interest, all feeding back to each other filtered and transformed information, far from ideal, instantaneous knowledge.

A front page article in the Seattle Times this weekend speculated whether the regional home market would experience a rebound in 2009. The gist of the argument is that that market has been relatively untouched. I could be wrong, and whatever else, Seattle may continue to be less affected than other areas. However what I missed in the article was any recognition that Seattle is part of an overall system that continues to be sinking, and even worse: the home mortgage crisis may be not even halfway through its defaults.

Belying any glimmer of hope of a recovery, the Madoff list above provides a long list of banks and other financial institutions that clearly do not engage in sufficient diligence when investing billions of dollars. The Madoff case may be the most blatant but I imagine it is exemplary in exposing rampant negligence.

Blog Archive

About Me

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.