Seinfeld Programming Language

Seinfeld is an Apache2 licensed programming language about nothing.

Warning

What you see here is a joke-in-progress!

Here’s what it looks like:

pass  # TODO

Who will make programming language jokes for the next generation of developers?

Testimonials

“You, my friend, have crossed the line between man and bum.” ~ Jerry Seinfeld

“If you can’t say something bad about a programming language you shouldn’t say anything at all.” ~ George Costanza

“I’m speechless. I’m without speech.” ~ Elaine Benes

“If you’re not gonna be a part of a civil society, then just get in your car and drive on down to the Bay Area.” ~ Kramer

Does your company or project use Seinfeld? Send us a message and let us know.

Features

Todo

  • Elegant syntax

  • Dynamic typing

  • Automatic memory management?

  • Variety of basic data types

  • Object-oriented programming

  • Large standard library

  • Interactive mode and bundled development environment

  • Easily extended with C++

  • Code formatter: elaine – more exclamation points!

  • Package manager: newman

  • “Modern C++ with the ergonomics of Python”

  • Can’t reprogram “dot” operator.

  • Still has staticmethod, classmethod, and property

  • Ref counting with shared_ptr but analysis for stack-allocated variables?

  • Keep metaclasses? - Maybe just promote namedtuple and enum to language.

  • for-loop and while-loop have “nobreak:” option rather than “else:”

  • https://legacy.python.org/doc/essays/ppt/regrets/PythonRegrets.pdf

  • Maybe Seinfeld should simply be Python with cdef annotations?

  • For GC, would incminimark in PyPy be a good choice?

  • map and zip should have counterparts itermap and iterzip

  • Ditch dict views, prefer iterkeys, itervalues, iteritems.

  • Async/await are a mistake, gevent is better. - Keywords should be meaningless syntax that are addressed by linters.

  • Allow function calls without parens. - IF at least ONE argument and at start of line.

  • “Python” and “Seinfeld” are “comedic” languages - Comedy is a serious business ;)

  • Seinfeld is developed in front of a live open source audience.

https://api.travis-ci.org/grantjenks/seinfeld-lang.svg?branch=master https://ci.appveyor.com/api/projects/status/github/grantjenks/seinfeld-lang?branch=master&svg=true

Quickstart

Installing Seinfeld is simple with pip:

$ curl https://www.grantjenks.com/docs/seinfeld-lang/install.sh | bash
$ seinfeld --docs

You can access documentation in the shell with Seinfeld’s built-in help system:

> help()

User Guide

For those wanting more details, this part of the documentation describes introduction, benchmarks, development, and API.

Reference and Indices

Seinfeld License

Copyright 2018 Grant Jenks

Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.