Dave Cooper

David John Cooper

Michigan, USA · [email protected] · davecooper.name · @dcooper8 · u/dcooper8

Software engineer and company founder. I have built knowledge-based engineering systems in Common Lisp since 1993, first at Ford Motor Company and since 1997 at Genworks, which I founded in 1996: languages and engines that capture engineering rules as executable models, the geometry and web layers around them, and the infrastructure they are built, tested and served on. Founder of Genworks and of the Common Lisp Foundation.

Experience

Founder, President and Chief Technology Officer, Genworks International

November 1996 to present

  • Founded the company on 1 November 1996 and went full time with it a year later, on 1 November 1997, the day after leaving Ford.
  • 1997 to 2002: knowledge-based engineering consulting and training with the ICAD System, under contract at Ford and General Motors, with trainings for Raytheon in Wichita and Embraer in Brazil.
  • 2002: put GDL online as open source. Alstom Power asked for a commercially supported edition, the source closed again for nine years, and the company has made its living by its own software since.
  • Designed and built GDL, a declarative object language embedded in ANSI Common Lisp for knowledge-based engineering, with dependency tracking, demand-driven evaluation and caching.
  • Delivered and supported production applications since 2002 in power generation, steel, window manufacture, defense and aerospace, and automotive, and educational deployments, among them the curriculum at Delft University of Technology and companies of the YES!Delft incubator.
  • Released the kernel as open source again, as the Gendl project under the AGPL, on 24 October 2011, and have maintained it since on Allegro CL, Clozure CL and SBCL.
  • Integrated a NURBS solid-modeling kernel and STEP and IGES translation into the commercial engine; wrote the geometry, drawing and web-application layers of both engines.
  • Built the present workstation around the engines: container deployment, an Emacs editing console, and a Model Context Protocol layer through which AI agents work in the running Lisp.
  • Built the products around them: the Prompt Lab, where a modeling agent turns a part described in plain words into a parametric Gendl model, and the Cyclops reverse proxy.
  • Run the company's build, CI and hosting: GitLab pipelines across amd64 and arm64, container images, and a reverse proxy and web fleet serving the company's sites.

How Genworks came about: the story of those first years.

Founder and President, Genworks B.V.

2009 to present

  • Founded and run the Dutch subsidiary: licensing and support for Genworks GDL in continental Europe.
  • Worked with the Faculty of Aerospace Engineering at Delft University of Technology, and took part in the European research project AGILE.

System Analyst, Ford Motor Company

1993 to October 1997

  • Developed and deployed rule-based generative design and engineering applications with the ICAD System, a declarative superset of Common Lisp with built-in geometric primitives and CAD system interfaces.

Software Engineer, Schlumberger CAD/CAM (Applicon)

July 1990 to February 1991

  • CAD software developer on Applicon's Editor suite of CAD systems.

Analyst, summer internship, Ford Research Laboratory

1989

  • Programmed data acquisition test equipment for the ETX-II prototype electric vehicle.

Community

Founder, President and Director, Common Lisp Foundation

2010 to present

  • Founded the Foundation as the legal entity that manages funding for Common Lisp projects, meetings and initiatives.
  • Maintain common-lisp.net, the community's project hosting: the website, GitLab, the mailing lists and the meeting room.
  • Maintain the container images of the Common Lisp implementations that the community's CI, hosted IDEs and application deployment services run on.

Board Member, Association of Lisp Users

2013 to present

Program Chair, ELS 2018, European Lisp Symposium

2018

  • Chaired the program of the 11th symposium, Marbella, Spain.

Publications and talks

Skills

Languages
Common Lisp (Allegro CL, Clozure CL, SBCL), Emacs Lisp, JavaScript, shell
Engineering software
Knowledge-based engineering, declarative and generative modeling, NURBS surfaces and solids, STEP and IGES, technical drawing output (PDF, SVG, DXF)
Web
Server-side application frameworks, AllegroServe, 3D in the browser (X3D)
Infrastructure
Linux, Docker and Compose, GitLab CI, reverse proxies and TLS, multi-architecture builds
AI tooling
Model Context Protocol servers, agents working in live Lisp images
Spoken languages
English, German

Education

Code and sites

The public repositories and the sites I maintain are listed on the home page.

Comments

Comments, corrections and complaints are all welcome. Plain text, no links, 1000 characters at most.