background preloader

Amber Smalltalk

Amber Smalltalk

One Div Zero Newspeak Using a Regular Expression to Match HTML UPDATE: There was a big mistake in the above expression. Unfortunately .TEXT (trying to be helpful) munged the code I posted and uppercased some characters. I’m using FireFox to post so that I don’t get the helpful text editor. Also, the above didn’t take into account multi-line html tags. That’s been corrected now. I just love regular expressions. </? What’s not to like? Ok I admit, I was a bit intimidated by regular expressions when I first started off as a developer. So let’s look at a common task of matching HTML tags within the body of some text. </? Roughly Translated, this expression looks for the beginning tag and tag name, followed by some white-space and then anything that doesn’t end the tag. Now this will probably work 99 times out of 100, but there’s a flaw in this expression. <img title="displays >" src="big.gif"> Hopefully you see the issue here. Unfortunately, this implementation is too naive. Now there are four possible formats for an Html attribute \w+\s*=\s*"[^"]*"

Is Smalltalk a secret rock star in the programming languages world? | Joachims Small World So you thought Amber and Redline Smalltalk were the latest Smalltalk derivatives out there? Wrong. Every week or so, somebody somewhere comes up with a new programming language. Most of the times, their makers reference Smalltalk as one of the most influential predecessors. A lightweight, image based, encapsulated development environment based around Smalltalk, specifically, “A Little Smalltalk” version 3.0 by Timothy A. Martin McClure’s Mist project Mist is a project to create a Smalltalk dialect (or possibly a very Smalltalk-like language) that is implemented without a virtual machine, is implemented without depending on any other language, is simple, and is reasonably fast. Minori Yamashita’s LittleSmallScript Little Smallscript is a dialect of Smalltalk that compiles into JavaScript. So what is it that makes people always come back to a programming language that is going to celebrate its 30th birthday of its publication next year? My personal theses here are: Like this: Like Loading...

My computer adventures HPI This website hosts selected Squeak projects that have been developed in teaching and research activities at the ​Software Architecture Group, which is led by Prof. Dr. Robert Hirschfeld at the ​Hasso Plattner Insitute (University of Potsdam). All content is made available under the ​MIT license unless specified differently, e.g., ​Creative Commons. The source code is hosted on a ​SqueakSource installation at our site. Additionally, ​Metacello configurations are maintained to ensure a simple installation process. Applications & Tools CodeTalk chat about code by annotating it and exchanging the resulting markups Deli managing courses and providing for submission of deliverables The Path Tools Framework offers several new development tools for improving testing, debugging, and program comprehension Libraries & Extensions Animations good-looking user feedback for morphic applications Macros provides support for generating additional code at compile-time, in dependence of the annotated code

Blog de Diego Gómez Deck Hola gente, Hace algunos días les comentaba de los proyectos, relacionados con la web 2.0, que estoy desarrollando con Smalltalk. Estoy en un punto donde puedo decir que podemos lograr bastante más de los browsers (de internet), y los ejemplos que fui generando (SocialShopping, Unnamed, LiveWiki, etc) lo prueban. Hasta ahora fui desarrollando las herramientas conforme las necesite, así que el framework tiene un poquito de todo. Ese "poquito de todo" prueba que se pueden hacer muchas cosas, pero para que el framework se convierta en una herramienta posible debería hacer más que "un poquito" de todo. Para completarlo necesito ayuda. Hay bastante trabajo para hacer, desde traducir la documentación que estoy haciendo al Inglés, completar clases de “ayuda” (como Color, Rectangle, etc) y, sobre todo, completar en cantidad y funcionalidad los widgets. Para dar el primer empuje, hice algo que no suelo hacer: Documentación ;-) Los proyectos en marcha son:

Blog Andres Valloud Pharo Libclang FFI, part 1, preamble | openInWorld Table of contents Background I wanted to better understand the opensmalltalk-vm that Pharo runs on. New to Pharo? If you’ve ended up here more from an interest in libclang than knowing anything about Pharo, these links will give you an idea of what Pharo is about… You can download Pharo here. Breaking the ice As a FFI neophyte myself, the first simple example from the UniffiedFFI chapter helped settle my nerves, so I reproduce it here. LibC class >> ticksSinceStart ^ self ffiCall: #( uint clock () ) module: LibC and in Playground inspect following… LibC ticksSinceStart "==> 32709046 (or something similar)" If for some reason that doesn’t work, please report to the pharo-users mail list. Class initializations At times the FFI classes we define need to be initialized before use. Colour legend To help distinguish things, C code is in blue, Pharo code in brown, and red will show any modifications to previously defined code. Clang install Right off the bat, lets get the pronunciation right. huh?

Related: