Archive for the ‘Teaching’ Category

ML Basis Library, MLton links

Wednesday, February 11th, 2009

snow in woods in winter, Falmouth, Virginia, US

  • documentation for the BASIS Library
  • MLton is run from the command line with a collection of options fol lowed by a file name and a list of files with which to compile,
    assemble, and link with. The simplest case is to run mlton foo.sml, where foo.sml contains a valid SML program, in which case MLton compiles the program to produce an executable foo. Since MLton does not support separate compilation, the program must be the entire program you wish to compile. However, the program may refer to signatures and structures defined in the Basis Library.
    (tags: sml mlton)
  • (tags: sml ml i/o)
  • The ability to define new identifiers is central to every high-level programming language. Identifiers are the way that programmers refer to constructs they create; different uses of identifiers correspond to the different abstraction mechanisms provided by the programming language. Let’s take a closer look at the way that identifiers are used in ML.
    (tags: ml sml binding)

Applets & A Place to Bury Strangers links for 2009-02-07

Saturday, February 7th, 2009

sun-lit woods in winter, Falmouth, Virginia, US

Applets, Audio w Java, & A Place to Bury Strangers links for 2009-02-04

Wednesday, February 4th, 2009

beaver pond in woods, Falmouth, Virginia, US

  • Demonstration applets and source code are included below. To run the applets, click on a link below with your web browser, or use AppletViewer to open the file named example1.html in the the applet’s subdirectory.
  • When you put an applet on your page you will need to save the applet on your server as well as the HTML page the applet is embedded in. When the page is loaded by a visitor the applet will be loaded and inserted on the page where you embedded it.
    (tags: applet html java)
  • This tutorial will take you step by step through the process of building applets. I have chosen for a Learn-By-Example method, the fastest way to learn.
    You will not learn the “Why” but the “How”. Throughout the java tutorial all new lines of code are explained, the ones you have already seen aren’t commented anymore.
  • This site is meant to be a quick-and-dirty introduction to writing Java applets. A set of example applets are given to be used as exercises. Feel free to download the source code herein, try it out on your own machine, and modify it.
  • (tags: java mp3 audio)
  • The JavaSound API adds audio capabilities to the Java platform. It’s been part of J2SE since version 1.3 and it supports the WAV, AU, and AIFF audio formats, and provides MIDI support. It doesn’t support some other audio formats, such as MP3, but it provides a flexible plugin architecture allowing any third-party vendor to add custom audio format support through the JavaSound Service Provider Interfaces (SPIs). This article deals with this plugin architecture and API, how to write and use a custom SPI implementation, how metadata such as title, artist, and copyright are exposed, and how multiple SPI implementations could be integrated in an application such as player or a game.
  • Here is the official web page of the JLayer project:
    MP3 decoder/player/converter library for Java™ platform.
  • Director Dylan Mulick envisions A Place to Bury Strangers’ lo-fi sonic assault with an over-saturated, grainy fuzz-bomb of a video, interspersing some Smokey and the Bandit-era roadster film with live footage of the band. It’s a psychedelic roadtrip whose chopped cuts and strobe-light shutter effects manage to match the song’s intensity.
  • There are some really epic bands, but they are sprinkled over 3 days instead of the traditional 2, which really leaves me hard pressed to find the “winner” show date. Friday boasts such bands as Leonard Cohen, Beirut, Crystal Castles, and A Place to Bury Strangers.

Integrating an Applet

Tuesday, February 3rd, 2009

vive roots on wall, Stafford, Virginia, US

Using Javadoc

Friday, January 30th, 2009

Fountain, Montreal, CanadaI’m teaching a section of Object-oriented Analysis & Design. We’re using java, and so we’re using Javadoc. Here are some links to which I refer my students.

Observer Pattern

Tuesday, January 27th, 2009

Vines & roots,Stafford, Virginia, USA
In my aforementioned class on Object-oriented Analysis and Design we, of course, study design patterns. Here are a few links concerning the observer pattern.

  • Here’s the problem: You’re designing a program that will render data describing a three-dimensional scene in two dimensions. The program must be modular and must permit multiple, simultaneous views of the same scene. Each view must be able to display the scene from a different vantage point, under different lighting conditions. More importantly, if any portion of the underlying scene changes, the views must update themselves.
  • The so-called Observer design pattern is introduced in [1]. The following article describes this pattern, tries to explain why the pattern is helpful and takes a closer look at several consequences of using the pattern. Code examples are given in a java-like syntax.
  • Design patterns document recurring solutions to recurring problems in object-oriented software design. They capture design expertise in reusable form. A design pattern has a name, a description of the problem it addresses, and a general solution that designers must tailor to their particular variant of the problem

UML & Netbeans links for 2009-01-26

Monday, January 26th, 2009

Flame at the end of a candle, Home, Falmouth, Virginia, USA
I got these together for my aforementioned class in Object-oriented Analysis & Design.

5 Minutes with Python & A Place to Bury Strangers links for 2009-01-23

Friday, January 23rd, 2009

Fountain, Montreal, Canada

Getting rid of adverbs, the differences between active and passive voice and A Place to Bury Strangerslinks for 2009-01-19

Monday, January 19th, 2009

Self portrait. Montreal, Canada

  • But here’s the truth: The overuse of adverbs is taboo in these days of “I’m in a hurry and don’t waste my time.” If you use too many unnecessary words, your words won’t get read.
  • A passive verb and adverb flagger for Mozilla-derived browsers, Safari, and Opera 7.5, with caveats. NOTE! NOTE! FOR ENTERTAINMENT PURPOSES ONLY–DOES NOT REPLACE REAL GRAMMAR KNOWLEDGE
  • differentiates active and passive voice
  • If Tom Waits’ burbony voice doesn’t do it for you, there’s also the new kids, A Place To Bury Strangers, who’s song “I Know I’ll See You” is astonishingly similar to early stuff from The Cure. FreeIndie writes, “These guys create psychedelic surf music by playing clean guitars over loud feedback and drums. Warning to the close minded: this is unlike anything you’ve ever heard.” He’s right, it’s serious stuff and falls a bit into the experimental but, it’s definately worth a listen.
    (tags: aptbs)

File Compression and laptop recommendations links for 2009-01-15

Thursday, January 15th, 2009

Sculptures at Hirshorn Museum, Washington, DC, USA

  • If you download many programs and files off the Internet, you’ve probably encountered ZIP files before. This compression system is a very handy invention, especially for Web users, because it lets you reduce the overall number of bits and bytes in a file so it can be transmitted faster over slower Internet connections, or take up less space on a disk. Once you download the file, your computer uses a program such as WinZip or Stuffit to expand the file back to its original size. If everything works correctly, the expanded file is identical to the original file before it was compressed.
  • At LaptopAdvisor, we want to provide you with the best information so you can make an informed, educated decision about what kind of laptop or notebook computer you want to buy. Whether you’re someone who’s comfortable with computers and wants a top-of-the-line laptop or a relative novice looking for something easy to learn on, LaptopAdvisor can help you find the perfect computing companion. Take a look around our site.