The Performance of Dosubl vs Call Execute

Both dosubl and call execute accept raw SAS code as input.  The difference between them is that call execute will take your code and add it to the stack (so, after your data step completes) whilst dosubl will execute your code immediately. Dosubl is a fantastic...

About the SAS London Users Group (SLUG)

The SAS London Users Group (SLUG) is a London-based user led community dedicated to realising the value of SAS software.  Sounds great.  But what does this actually mean? London Based Whilst our meetups take place in London, users are welcomed from across the UK and...
Launching SMC on Mac OS over SSH with X11

Launching SMC on Mac OS over SSH with X11

As an avid developer of SAS Stored Process Web Applications, the Macbook Pro is my development machine of choice.  Since building a macro to programmatically create STPs, I’ve had few reasons to launch a VM to use client tools – but today I actually...

proc fcmp – file log put % bug

Having worked a lot with proc fcmp lately, I think it’s fair to say that the procedure should be ‘handled with care’ Here’s an example of one of these weird / wonderful bugs (LIN X64, 9.04.01M3P062415): proc fcmp outlib=work.funcs.pkg;...
SAS L is StiLL aLive

SAS L is StiLL aLive

If you’ve ever done any moderate googling on a SAS topic you’ve probably unearthed a thread on SAS-L, quite possibly from several decades ago.  You’d be forgiven for assuming that this simply something that “used to exist’ because –...
Tabs v Spaces – which is more popular in SAS?

Tabs v Spaces – which is more popular in SAS?

Tabs or Spaces?  Does it even matter, so long as you / your team are consistent?  For many SAS developers the standard place to write code is the Program Editor – for which the default setting is to use tabs, else 4 spaces. Interestingly – the generated...