tail-reversion / elle

A Racket-like language with reimagined syntax and updated features.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Elle

A Racket-like language with reimagined syntax and updated features.

Goals for the language include (all WIP):

  • Immutable data is emphasized but not required
  • Encourage well-structured, higher-order programming
  • Clearly and easily track and manage effects
  • Provide generic interfaces instead of overly concrete ones
  • Reduce unnecessary/confusing variety of interfaces
  • Streamline common patterns
  • Remove/replace outdated interfaces
  • Sophisticated metaprogramming

Note that paradigms are not mentioned, in part because programming paradigms are vaguely-defined, and also because, since Elle is a dialect of Racket, any programming technique or language can be easily embedded into or built on top of the core language.

Note that, while I (Kelly) hope that many programmers will find Elle useful, I am imparting many of my ideas and preferences, so you may find this language to be more opinionated than Racket or ⟨your favorite lang⟩.

Quick License Blurb

Copyright 2020 Kelly Smith

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. The full license can be found in the file "LICENSE.txt". You may also obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

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.

About

A Racket-like language with reimagined syntax and updated features.

License:Apache License 2.0


Languages

Language:Racket 100.0%