打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
what is the sfl

What Is The SFL

Origins

At iMatix we develop portable free and commercial software. We work in ANSI C to cover the widest range possible. A major part of our toolkit has always been our subroutine library. This was initially written for MS-DOS in 1991 but has developed into a more ambitious project since then.

From the outset, we ignored commercial libraries. Our software is usually Open Source and using a commercial library would have been a problem. We looked for free libraries, but found only specialised and mostly non-portable collections of functions. So, we built our own. We hope you like it. We certainly use it all the time.

Objectives

When we designed the SFL, we had certain things in mind:

  • Portability: we are lazy, and don‘t have much time. So, we want to do our editing and testing on the fastest PC possible, then move the results to a ‘real‘ system (UNIX, VMS, whatever) recompile, and test. Obviously, some code cannot be tested fully on all systems - we don‘t have sockets under MS-DOS - but this approach works for most projects. The SFL encapsulates non-portable aspects so that application programs do not need to know about specific systems.
  • Building servers, i.e. programs that run in the background, for a long time, without intervention from a user or operator. Servers have specific needs, and must be extremely robust, since they must run for long periods. The SFL provides many functions that are specifically meant for this type of program.
  • Functionality: the classic purpose of any library. If a problem has a clean, tested, documented, and portable solution, we will use that instead of re-inventing it. The SFL provides a stable home for code that might otherwise float around in various projects.
  • Discipline: we make our code public, and expect people to read it. We actually include the code for each function as part of its documentation. This forces us to be crystal clear.
  • Hubris: we think our code is so great that it should live for ever. So, we take great pains to make it useful, clean, efficient, and well-packaged, so you‘ll think so too.

Portability

The SFL is in use on at least these systems:

  • MS-Windows (MSVC, Borland, Watcom, gcc)
  • MS-DOS (MSVC, Borland Turbo-C)
  • OS/2 (EMX)
  • Linux
  • IBM RS/6000 AIX
  • Sun SunOS
  • Sun Solaris
  • HP HP/UX
  • Digital UNIX
  • FreeBSD
  • NetBSD
  • SCO OpenServer
  • SCO UnixWare
  • Digital OpenVMS

Some recent functions may not have been tested or implemented across all platforms. Some functions are empty on some platforms. Since the SFL is continually improving and enlarging, there are always newer functions that are less tested, and possibly less than 100% portable. Our intention is that the transparency of the SFL makes these functions easy to test and improve.

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Lua 5.1 参考手册
怎么看自己的ip地址? 五种方法
《MS DOS操作详解》
std::max 错误
Linkers part 4 | Airs - Ian Lance Taylor
dyncall.org
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服