Report on source containers

Report on source updating.

A gitlab rebuild is in response to a branch push.

Report on building prototype

An example prototype of a CLISP build system could be libsigsegv

  • Prerequisite to CLISP
  • Multi platform - release artifacts are
  • Git hosted on savanah

How the build(s) are structured

  • There is a build interface
  • There are instances of Runner for each artifact target.
  • Each runner has a tag - the tag is platform/artifact type.

building CLISP - Dependencies

Building CLISP dependencies.

Design a general build process.

  • Specify requirements
  • build a prototype
  • report considerations
  • is it suffiencent?
    • Yes - move to a release build
    • No - Report; modify requirement and iterate

Requirements

  • artifacts in a docker volume

    • Where docker can find it.
    • Can gitlab find it too?
  • source in a docker volume

    • source means current source
    • The source is updatable
    • The source is versionable
    • docker issues ??
    • gitlab issues ??
  • build log is accessable

    [Read More]

building CLISP

Building CLISP on gitlab

Attempt to build CLISP on gitlab as a CI project.

Multiple platform support.

CLISP can be built on many platforms. Among them are

  • Windows
    • MSC
    • mingw64 - a Unix
    • cygwin - a Unix
  • MacOS - I don’t have this.
  • Unix
    • Linux
    • FreeBDS

CLISP documentation

For Windows - install.WINDOWS

For UNIX - unix/INSTALL

For Porting general - unix/PLATFORMS

General Approach for docker build

  • Create a base platform with all needed dependecies
  • Do the configure and build
  • Do the tests.
  • Export the build artifacts

Each platform is defined by a key string

The build tools are a large case statement based on the key string, or perhaps there is a key.platform statement which tells the specific build conditions and methods.

[Read More]

Tom's explanation of LISP history

Church, Turing and von Neuman

Alonzo Church solved the halting problem with the invention of lambda calculus. Alan Turing solved the equivanent problem by the invention of the Turning machine. John Von Neuman proposed an electronic computer based on the Universal Turing Machine to do physics calculation for nuclear fusion evaluation, his model is the basis for our modern computer systems.

FORTRAN and LISP

The first high level compiled language was FORTRAN. First proposed in 1953 the first compiler was delivered in 1957. In 1958 John McCarthy proposed a language LISP which concerned ideas of Church’s lambda calculus. The first compiler was implmented in 1959, during 1962 the first ocmpiler of LISP written completely in LISP was delivered. This was an incremental compiler which piece by piece compiled itself. This began the tradition of the interactive REPL that is part of today’s LISP system, as a consequence the concept of the IMAGE of a LISP system was also developed.

[Read More]

The History of LISP

How we got Common LISP Standard

Calculations for atomic weapons and space based delivery systems for the same are the step father the computer industry. LISP is the second oldest high level programming language, FORTRAN was the first. Both conceieved in the 1950s. Artificial Intelligence, a term coined by LISP’s father John McCarthy, to pigeon hole the space he was interested in exploring.

LISP was developed in several dialects thought the ’80s, a stanard committee was created to create a common dialect which we call Common LISP.

[Read More]

The LISP Problem

Smoothing data in R

Smooth six months twice daily data in R

The data is entered on a LibreOffice spread sheet, and read into R wih read_ods(). I adjust the time data like this:

data$Time <- as.POSIXct(strptime(data$Time , "%m/%d/%y %I:%M %p"))
data$TimeCode <- as.numeric(data$Time)

My goal

I want to average all items, within a averaging time window of a given size, for the entire data set, the window starts at the first day of the data set and is advanced a single day until the window is beyond the last day of the data set.

[Read More]

Smoothing Date formats

Whats in a day?

86400 Seconds

When do seconds start counting?

January 1, 1970 00:00:00 GMT is the zero second.

That is on 2019-05-01 08:39:00 there have been 1541598420 seconds since Jan 1, 1970

R dates are the number of days since January 1, 1970

This means the numeric date time is date-number*86400

The earliest time-code is min(data$TimeCode) and the last time-code in max(data$TimeCode). The begining data-time-window time-code is 86400*as.numeric(min(data$Date)) the ending date-time-window time-code is the beginning plus the window size in seconds.

[Read More]