Skip to content
Why is a raven like a writing desk?

Thoughts both confusing and enlightening.

Why is a raven like a writing desk?

Thoughts both confusing and enlightening.

Curve and Vector

elbeno, 30 March, 200830 March, 2008

Curve (com.elbeno.curve) is my common lisp package for doing cool things with two-dimensional curves. In particular, modulating cubic Bézier curves and splines, but also approximating arbitrary elliptical and circular arc segments with cubic Bézier curves.

It depends on Vector (com.elbeno.vector), a cobbled together set of functionality for representing and manipulating points on the 2D Cartesian plane. It also depends on Zach Beane’s excellent Vecto, for ease of drawing. Both Curve and Vector are available under the GPLv3 license.

Download Curve
Download Vector

Currently both Curve and Vector are at v0.1.

Lisp Programming

Post navigation

Previous post
Next post

Related Posts

C++ Guru Question – followup

12 August, 201430 June, 2015

(following on from C++ Guru Question) There are a few reasons why the code before didn’t work: mainly a) C++ template argument deduction works one-way with a list of candidates, it’s not H-M type inference. b) A C++ lambda is a thing with some internal type, not a std::function (although…

Read More

Exercising Ranges (part 8)

1 July, 20152 July, 2015

(Start at the beginning of the series if you want more context.) Extras from the Haskell Prelude Having implemented iterate, there were a couple of other useful things from the Haskell Prelude that I wanted to have available with ranges. First, there’s cycle. It simply takes a finite range and…

Read More

Atomic brain to power, fingers to speed…

17 February, 200529 July, 2007

I’m not a touch typer, but I am a pretty fast (8-finger or so) typer after 20 years of keyboarding, and I don’t actually have to look at the keys much. Of course, most of the kind of typing that I do is quite different from actual written English –…

Read More

Comments (3)

  1. Zach Beane says:
    1 April, 2008 at 7:14 am

    CL-VECTORS also represents points as conses. I found I was able to get about a 25% speedup using a specialized two-element vector of double-floats, and declaring it appropriately for various operations.

  2. Pingback: Why is a raven like a writing desk? » Blog Archive » How many programming languages do you know?
  3. john_doe says:
    12 November, 2008 at 5:37 pm

    Why GPL3 ?! This is the sort of thing that renders Common Lisp utterly useless!

    The community is already small…and we have to fight to push Lisp…AND if a project can’t be business-friendly, then WE HAVE NO CASE!

    It’s widely known that if you want to spread technology then you must use a BSD-style license!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

©2026 Why is a raven like a writing desk? | WordPress Theme by SuperbThemes