Skip to main content

Home/ Groups/ GNUstep
David Corking

10/24/88 STEVE JOBS: CAN HE DO IT AGAIN - Business Week - 0 views

  •  
    This fascinating 1988 article profiles the project that was the genesis of Mac OS X.
David Corking

Best practices for passing data between processes in Cocoa - Stack Overflow - 0 views

  •  
    IPC for data - suitable library APIs
David Corking

Industry Misinterpretations 129: Smalltalk in Small Places podcast - James Robertson an... - 0 views

  •  
    The preview of McIntosh's iPhone/Touch App Store apps based on Squeak and Seaside: he describes cutting down the image, connecting with UIkit (and webkit?), the objective-c bridge, and porting the VM itself. In the comments, John McIntosh complains about the lack of an Android Squeak VM.
David Corking

Bug #269224 in etoile (Ubuntu): "Make more of Etoile available as binaries" - 0 views

  •  
    Would be nice to see Etoile packaged for Debian and Ubuntu.
David Corking

xmppframework for Cocoa - Google Code - 0 views

  •  
    open source framework for XMPP - started in 2008 - I don't know how mature it has become - though I think I might prefer to use D-BUS
David Corking

Lemonodor: MCL Screenshots - 2002 - 0 views

  • screenshot of him editing the OpenMCL listener window in the cocoa Interface Builder.
    • David Corking
       
      Interesting screenshot - open source Common Lisp with a bridge to Objective J and Cocoa.
  •  
    Lisp collaborates with Interface Builder.
David Corking

CocoaDev: AmbraiSmalltalk - 0 views

  • I can't imagine building a user interface intensive application through this technique. It would be extremely cool if they could integrate Interface Builder,
    • David Corking
       
      This Smalltalk company seems to have reified the Cocoa UI toolkit beautifully. Judging by the Ambrai website, there don't seem to be any retail Smalltalk compilers in the pipeline. However this could be a great lesson in how to reify John McIntosh's new Objective-C bridge for Squeak, or Etoile's Smalltalk library, if it hasn't been done already.
David Corking

Étoilé - Pragmatic Smalltalk 0.5 - David Chisnall - July 2008 - 0 views

  • The compiler is in three components. SmalltalkKit contains everything required to take a string containing Smalltalk code and compile it to a set of Objective-C objects.
  • The Support library contains things needed by Smalltalk but not Objective-C. The most important class here is the BlockClosure class, which implements a Smalltalk block as an Objective-C object with a function pointer as an instance variable and pointers to bound variables and space for promoting other variables (eliminating the need for garbage collected stack frames).
  • The final part is a tool which compiles a Smalltalk file, instantiates a specified class, and send the instance a run message. This is very small and shows how the compiler can be used, and will serve as the framework for writing complete applications in Smalltalk.
David Corking

Talk Like A Duck : Will It Go Round in Circles? - Rick DeNatale - 0 views

  • VisualAge started out as a demonstration prototype I wrote using Digitalk Smalltalk/V. The idea was to make something like the NeXT interface builder in Smalltalk as an adjunct to the Smalltalk IDE. For those who are not hip to such things, the Interface Builder, originally a Lisp program before Steve Jobs hired the author, lives on as part of Apple’s XCode tool suite for OS/X for the Mac and the iPhone.
    • David Corking
       
      Beautifully convoluted history! Lisp -> Objective-C -> Smalltalk -> Java -> Smalltalk
  • VisualAge started out as a demonstration prototype I wrote using Digitalk Smalltalk/V. The idea was to make something like the NeXT interface builder in Smalltalk as an adjunct to the Smalltalk IDE. For those who are not hip to such things, the Interface Builder, originally a Lisp program before Steve Jobs hired the author, lives on as part of Apple’s XCode tool suite for OS/X for the Mac and the iPhone.
  •  
    A fascinating and brief horse's mouth history of dynamic languages and IDEs - with several things I didn't know already.
  •  
    Some things you may not have known about the family tree of Interface Builder.
David Corking

InfoQ: Avi Bryant on DabbleDB, Smalltalk and Persistence | 2008 - 0 views

  • Before Cocoa was really big and before there were a lot of objective C programmers because of that, I think they saw Java as being the future and they ported it to Java and since then I think Objective C has really seen a resurgence because Cocoa has really won as the way of developing application was then and I think they probably wouldn't have done that if they knew what they know now.
  • Web objects was what really opened my eyes to the idea of having extreme amounts of session state and extreme amounts of session state in a form of a tree of state full objects that represented part of the web page and that by keeping that around between requests you could keep much more information there and you could have a much higher level of abstraction when you were building a web application than using the kind of more traditional approach, which is to have a small amount of session states other stored on the cookies or stored on the server but have the best majority of the states be passed in the URL be passed in the form parameters and that core idea certainly was taken from web objects.
  • web objects didn't use continuations and Seaside doesn't have to use continuations now either, in the more recent versions of Seaside you can optionally use them
  • ...15 more annotations...
  • So we have on any given server for Dabble DB we'll have thousands and thousands of these images, for thousands of customers who are at any one time mapped to that server but maybe only twenty or thirty of them will be in memory. So typically this would be maybe hundred meg memory images, we'll have twenty or thirty of them so we're using 2-3 gigs of memory.
  • But the people especially somewhere like an orchestra or small business they don't have a lot of IT support, they probably don't have a lot of money to maintain a traditional or Access database or file maker database or something like that. Certainly they don't have anyone who is going to build them a custom web application for it. And so this Dabble DB is a tool that lets them collaboratively online build a mini application that has their data model and they can do a lot of the things that they might expect from a custom web application.
  • without forcing them to make any kind of upfront decision like you might for a database
  • our design rule is it should not be possible to have a syntax error. And so there are formulas in that if you have multiple columns of data you can say "I want to create a new column, that is times this one”.
  • really we've had no problems with it as a platform. If we had we would have just moved to a commercial Smalltalk but so far, and I mean if there were any problems we would have seen them by now.
  • all of the I/O is non blocking. And the VM takes care of that I mean it looks to your Smalltalk process like it's blocking but other Smalltalk processes run just fine at the same time.
  • Having twenty concurrent requests being serviced by twenty Squeak VMs on the same machine performs better than having twenty concurrent requests serviced by let's say four Squeak VMs on the same machine.
  • The number of people concurrently accessing the database is something that can be handled by one Squeak VM, the dataset is something that can all fit into memory, into the Squeak image.
  • under a hundred megs of data, under twenty people that need to access this data, and those are really the people that we are targeting which isn't to say that we don't support people with larger data sets or larger teams, but it's not the majority of our customers.
  • The largest images we see are hundreds of megs not giga bytes.
  • you can have sort of an object space that is Tera bytes big and you can spread the load to accessing that object space over however many processes or even machines that you need because you can have many VMs that are all accessing that same shared set of objects.
  • having many VMs running but all kind of transactionally sharing the same large set of objects,
  • Gemstone also is a native code complier and so performs better than Squeak does.
  • one of the nice things about the Smalltalk world is that like the Java world and somewhat unlike the Ruby world, there is a bit of an obsession with keeping everything sort of in pure Smalltalk.
  • I think probably it's more common for people to use for example a relational database for storage, or kind of an external object database, like OmniBase one that is available for Smalltalk, there is GOODS which is kind of language agnostic object database that I wrote a client for Smalltalk a while ago.
  •  
    Avi Bryant is clearly a NeXTstep/Cocoa fan. He traces Seaside to the Objective-C version of Apple's Web Objects application server.
  •  
    There is philosophy, design and history in here. Pretty interesting. (Annoying javascript to turn on to see the transcript.)
David Corking

iSqueak Wikki: ObjectiveC - 0 views

  • third attempt at having an Objective-C bridge in Squeak.
  • once we resolve the classOop we just send messages to the instance like we would do with a normal Smalltalk object.
  •  
    Documentation for a new (2008) Objective-C bridge for Squeak - as created by John McIntosh This was used to get a local Pier wiki server on the iPhone / iPod Touch.
David Corking

F-Script: Command-line Cocoa shell goes beta - Ars Technica - Feb 2009 - Page 2 - 0 views

  • Its interactive Smalltalk-like Object-browser offers an intense way to explore the objects you've created, traverse their instance variables and methods and really start to interact with them in a way not normally permitted by Xcode. You can visually review the object's current state. You can pick new messages to send.
David Corking

F-Script: Command-line Cocoa shell goes beta - Ars Technica - Feb 2009 - Page 1 - 0 views

  • So you win in terms of the interactive nature of F-Script but you don't move past the fussy little details that come along with Cocoa.
David Corking

F-Script: Command-line Cocoa shell goes beta - Feb 2009 - Topic Powered by Eve For Ente... - 0 views

  • F-Script Anywhere, which is included in the standard F-Script binary distribution.With FSA, you can inject F-Script into any running Cocoa application and inspect the object tree at runtime -- without having source! Or even requiring source changes! From a development perspective, this lets you script your applications much more simply than AppleScript -- you don't have to create a parallel and incomplete object model.
  •  
    Ars Technica comments
David Corking

F-Script - 0 views

  • F-Script is a lightweight open-source scripting layer specifically designed for the Mac OS X object system (i.e. Cocoa). F-Script provides scripting and interactive access to Cocoa frameworks and custom Objective-C objects. It aims to be a useful and fun tool for both beginners and experts, allowing interactively exploring, testing and using Cocoa-based objects and frameworks. Based on Smalltalk, F-Script provides a pure object-oriented environment that leverage Mac OS X technologies and includes significant innovations
  • Exploring Cocoa with F-Script Learn F-Script in 20 Minutes and Have Fun Playing with Core Image Scripting Cocoa with F-Script Creating Cocoa Classes with F-Script System-wide Scripting with F-Script Embedding F-Script into Cocoa Applications
  •  
    Smalltalk shell scripting, open source, with Cocoa!
David Corking

One Div Zero: A Brief, Incomplete, and Mostly Wrong History of Programming Languages | ... - 0 views

  • string of characters on Larry Wall's monitor isn't random but an example program in a programming language that God wants
  • Erlang is the first language to properly execute a bullet-proof thread safe hot updating seamlessly distributed super-scalable VM which is destined to rule the web,
  • she doesn't have any actual computers to run her code. Enterprise architects will later relearn her techniques in order to program in UML.
  • ...5 more annotations...
  • All my years of obsessive, insular study, and the sacrifice of a well-rounded personality in favour of a detailed grasp of programming paradigms, suddenly became worthwhile.
  • Every language[n] seems to be influenced by that great language[n-2] but swears it has never heard of that pathetic language[n-1].
  • not one of them mentioning Dijkstra being sensible and just using a typewriter
  • "No matter how much kung fu you know, someone else always knows more."
  • I think you forgot Plankalkül by Konrad Zuse, that was published in 1948,
  •  
    A whole page of programming in jokes, many are both original and funny if you know the history. You only have to have written a "Hello World" program, or read a language war on Usenet, to understand what is going on here. Some of the dates are deliberately wrong.
  •  
    Last minute mention of Objective-C. Allegation of dyslexia.
David Corking

Dr. Dobb's | A Moving Target | March 28, 2009 - 0 views

  • iPhone uses Objective-C -- challenging even for experienced C, C++, and C# programmers.
    • David Corking
       
      ???
  • Many companies first venture into mobile technology is providing BlackBerry e-mail access. Next, they often look to appplications for sales and other field employees, CRM, and business intelligence, such as performane dashboards. In short, mobile applications are integrating with corporate systems and other programs on a much more complex level.
  • One-fourth of companies are deploying CRM to handhelds,
  • ...1 more annotation...
  • We don't cover Palm in depth, since it's slipped to 2% of the smartphone market, says Gartner, while Symbian has half the world market, and the BlackBerry and iPhone make up about 70% of North America.
  •  
    I have to admit, I found this article a little confusing : I didn't understand how to use a 'usage profile' to choose a platform for clients or servers.
David Corking

Dr. Dobb's | Smartphone Operating Systems: A Developer's Perspective | March 30, 2009 - 0 views

  • The industry stewards have countered Apple's move with their own application stores, so there's a huge opportunity to write the "killer app" for one of several smartphone platforms.
  • 40 MB to less than 4 MB of free RAM
    • David Corking
       
      iPhone ouch! Like a mid-1990s PC.
  • one-app-at-a-time requirement complicates any implementation of a copy-and-paste mechanism.
  • ...45 more annotations...
  • As a security sandbox, the iPhone OS permits only one third-party application to run at a time, and not in the background.
  • adding some useful Bluetooth profiles that supported stereo headsets, data synchronization, or the ability to implement multiplayer games would be usefu
  • iPhone OS 3, that provides some of the missing features mentioned here, such as the A2DP profile for Bluetooth, voice recording, and copy-and-paste.
  • Have to learn Objective-C; is only smartphone platform that uses it.
    • David Corking
       
      Sounds a lot nicer than learning Java!
  • Competitors will soon catch up on the UI.
  • embed navigation and GPS plotting into applications.
  • provide their own map content
  • The OS now supports the use of accessories connected to the iPhone either through its 30-pin docking connector or wirelessly via Bluetooth. Now that the device has been "opened", you can expect an entire ecosystem to build up around the device, much like the iPod has.
  • peer-to-peer connectivity using Bonjour
  • developers can now allow users, from within the application, to purchase and obtain new content
  • No voice dial.
  • A client-server mechanism provides access to low-level system resources, and in fact the kernel itself is a server that parcels out resources to those applications that need them. This transaction scheme allows applications to exchange data without requiring direct access to the OS space.
  • C/C++ for porting existing UNIX applications, and Java to port Java ME MIDlets. As mentioned previously, the software stack offers several run-times that offer application development using WRT widgets, Flash, and Python. The primary programming language for the platform is Symbian C++,
  • Handango has managed the wide-scale distribution of Nokia applications. In February, Nokia announced plans to launch its Ovi Store, which sells applications, videos, games, pod-casts and other content, similar to Apple's App Store. The store will be accessible by Nokia S60 smartphones in May.
  • Non-standard Symbian C++ has steep learning curve, with special idioms to master. Large number of Symbian APIs to learn, since it contains hundreds of classes and thousands of member functions.
  • BlackBerry Device Software executes multiple applications simultaneously
  • Manages multiple e-mail Exchange e-mail accounts, along with support for POP3 and SMTP, and e-mails can have file attachments
  • FIPS 140-2 compliant, and supports AES or Triple DES encryption sessions via BlackBerry Enterprise Servers
  • BlackBerry Device Software has enhanced the capabilities of the platform with its own Java virtual machine (JVM), along with new Java classes that offer multitasking capabilities and UI enhancements to go beyond the capabilities of Java ME.
  • You can also take existing Java ME code and add specific BlackBerry classes to make a hybrid Java ME application
  • don't intermix MIDP 2.0 and BlackBerry API calls that perform either screen drawing or application management.
  • The catch to writing an application that uses BlackBerry API extensions is that it ties the application this smartphone. However, this is no worse than using the unique Java classes found in Google's Android.
  • Apple promotes the design goal that applications should accomplish one purpose.
  • no Flash support, and you can't download files.
  • For non-Exchange users, Apple's MobileMe online service, after some fits and starts in 2008, now supports the push of e-mails and changes to the calendar and contacts.
  • The iPhone 3G can work in tandem with Microsoft Exhange Server 2003 and 2007 to support enterprise operations.
  • Cocoa Touch is a subset of Apple's Cocoa,
  • Cocoa Touch components manage most of the writing to the screen and playing media, yet there are APIs exposed that let you access the accelerometer and camera.
  • Quartz engine is identical to the one found in Mac OS X
  • Only a select few higher-level frameworks have access to the kernel and drivers. If necessary, an application can indirectly access some of these services through C-based interfaces provided in a LibSystem library.
  • the SDK provides Dashcode, which is a framework based on a Web page composed of HTML and Javascript. You can use DashCode's simulator to write and test your web application. You can also use several other third-party frameworks to write web applications, and debug these with Aptanna Studio's tools.
  • Made by HTC, the G1 is the first smartphone using the Android platform.
  • e-mail program (which makes use of Google's Gmail), a mapping program (using the company's Google Maps), and a browser that uses WebKit, not Google's Chrome web browser
  • Android is not Java ME, nor does it support such applications
  • ability to both browse and manage multiple IM conversations. On the other hand, such heavy use of the smartphone's CPU shortens battery life significantly. Maybe Apple is on to something in limiting the number of applications that the platform can run.
  • On the positive side, the Android APIs support a touch interface (and the G1 has a capacitive touch screen), but not any multi-touch gestures.
  • copying text from the web pages is the browser isn't allowed
  • The advantage to Android's use of a different bytecode interpreter is that the DVM was designed so that multiple instances of it can run, each in their own protected memory space, and each executing an application. While this approach offers stability and a robust environment for running multiple applications, it does so at the expense of compatibility with Java ME applications.
  • Seasoned Java programmers will find the Android SDK an amalgam of Java SE and Java ME methods and classes, along with unique new ones
  • compile the Java code to generate Dalvik bytecode files, with an extension of .dex. These files, along with the manifest, graphics files, and XML files, are packaged into an .apk file that is similar to a Java JAR file.
  • The certificate that you use to generate the private key does not require a signing authority, and you can use self-signed certificates for this purpose.
  • The Developer Phone provides access to a shipping Android device without the cash outlay or contract contortions required when developing for the other platforms.
  • in February the site began supporting priced applications. Google allows developers to take seventy percent of the proceeds.
  • it's possible that you might pick up a malicious application before it is detected by the user community.
  • Open source, open platform: if you hate the mail program, some third-party is writing a better one.
  •  
    Lengthy developer's overview of Symbian, Mac OS X iPhone, Blackberry, Android. This talks about the leading app platforms except Java ME and Windows Mobile, though it does explain how Blackberry and Symbian support Java ME.
  •  
    No mention of GNUstep here, but I suspect that GNUstep coders will feel at home with iPhone
David Corking

Message passing - Wikipedia - 0 views

  •  
    Concept in a nutshell; references Alan Kay's complaint about focus on objects
1 - 20 of 31 Next ›
Showing 20 items per page