Edge Script Edge Shell esh David Simmons Smallscript

  • Slides: 10
Download presentation
Edge. Script & Edge. Shell “esh” David Simmons Smallscript LLC, © 2019

Edge. Script & Edge. Shell “esh” David Simmons Smallscript LLC, © 2019

Who am I? David Simmons – a “few years” developing languages What Where •

Who am I? David Simmons – a “few years” developing languages What Where • Basic and 6812 assembler • NBS – NIST 1976 -1980 s • Object-C • • • NBS Net Switches • (Lisp, Forth, Snobol, APL, Unix systems, etc) • Agile Object System Family of V 8 like VMs • • Smalltalk since 1991 Apple. Script, and various other Apple/IBM Tech Object Databases S# since 1998 • . NET CLR, Mobile, and Other Runtimes • VB, Java. Script, C#, Power. Shell • Af. Box – Edge. S • Edge. Script, Edge. Shell • NBS Net U of MD NSF SRC QKS – 1990 s AOS, Apple -> Smallscript (various Linux) Microsoft Architect 2005 -2014 Smallscript 2015 -present

This talk is about something called Edge. S Built with Aos® Family Execution Engine

This talk is about something called Edge. S Built with Aos® Family Execution Engine Coff Box Technology, first released in 1992. Short form “Af. Box Technology”

How is it deployed and structured? • no install to run • no force

How is it deployed and structured? • no install to run • no force linked so/dlls • single coff binary • default-name “afm. exe” • 12 MB working set • 8 MB shared • 30 ms start-to-exit • 6 ms+ url page serving Similar to Busy. Box for embedded Af. Box enables Edge. S to be delivered as a single multi-functional binary purpose built for developing and delivering software using IIo. T and Edge standards It is an alternative to using full-stack systems and their overhead

When run, what is the execution architecture? An activity could be concurrent things like

When run, what is the execution architecture? An activity could be concurrent things like a cmd or a web-page-request … … Activity (iocp) Task (fiber) In each Run. Space there always 2+ tasks • runspace dispatcher • iocp kernel scheduler … task-pools (language instance) Run. Space (Thread) … Af. Box EE (Process) engine Telemetry & sqlite stddbg Diagnostics stderr iocp workers os-host log io streams

Great. So what’s inside that makes it useful? ess E d g e S

Great. So what’s inside that makes it useful? ess E d g e S c r i p t TCL lex based extensible language cmd suite; scm-package based module file-system repo file system TCL Lex Core fossil-scm regex markdown sqlite xml http + sockets zip telemetry diagnostics NTFS … xjson console-shell api pthread api openssl PAL iocp rfs builtin filesystem Core System APIs OS Services Af. Box Execution Engine (EE) Edge. Script language, formerly TSL, is a TCL lex transpiler on Af. Box multi-language object architecture

Hmm, so how are programs organized? The hard stuff: package-module management is scm-based using

Hmm, so how are programs organized? The hard stuff: package-module management is scm-based using sqlite workspace g i t s c m f o s s i l repo. afr sqlite • . afws (workspace db) • . af/ • repo. afr (symlink) bin/ • essc/cmds • etc/ • auth/ • certs/ • var/ • lib/ • opt/pkg • sites/default/ directory patterns adopt familiar names Web Server Site this-site, this-site. db, this. http, this. url, this. acl, this. session t h i s p l i s t this-activity versions, packages, updates, deployment, configuration, … this-io this-task cmd module opt/ modules … user-home. afconf. /bin/essc/cmds shell app ~/. af/ pkgs → repo branch : : global –> module [mixins ]

Enough talk, let’s experience code

Enough talk, let’s experience code

Can I get a copy to try? • Within the next week or so

Can I get a copy to try? • Within the next week or so • https: //edges. sm. st • alt: • https: //edgescript. io • https: //edgescript. dev

Closing Q&A

Closing Q&A