User:Kevin Reid/Common Lisp tasks: Difference between revisions

From Rosetta Code
Content added Content deleted
(-exceptions)
(updates)
Line 1: Line 1:
This is [[User:Kevin Reid|Kevin Reid]]'s classification of [[tasks not implemented in Common Lisp]], or just poorly done in CL, by what kind of problem they are.
This is [[User:Kevin Reid|Kevin Reid]]'s classification of [[tasks not implemented in Common Lisp]], or just poorly done in CL, by what kind of problem they are.


As of 12:13, 6 August 2009. When updating this list, consult [http://rosettacode.org/mw/index.php?title=Template:Unimp_body_Common_Lisp&action=history the diffs] since then for what to add/remove.
As of 00:13, 8 August 2009. When updating this list, consult [http://rosettacode.org/mw/index.php?title=Template:Unimp_body_Common_Lisp&action=history the diffs] since then for what to add/remove.


<div style="-webkit-column-count: 3">
<div style="-webkit-column-count: 3">
Line 10: Line 10:
* [[Special characters]]
* [[Special characters]]
* [[Variables]]
* [[Variables]]
* [[Y combinator]]
* [[First-class Numbers]]
* [[First-class Numbers]]
===Data structures===
===Data structures===
Line 16: Line 15:


==Algorithms==
==Algorithms==
* [[Combinations]]
* [[Huffman codes]]
* [[Huffman codes]]
* [[LZW compression]]
* [[Point in polygon (ray casting algorithm)]]
* [[Point in polygon (ray casting algorithm)]]


Line 67: Line 64:
* [[Rendezvous]]
* [[Rendezvous]]
* [[Synchronous Concurrency]]
* [[Synchronous Concurrency]]

==Type system==


==Object-oriented==
==Object-oriented==
* [[Adding variables to a class instance at runtime]]
* [[Polymorphic copy]]
* [[Polymorphic copy]]


Line 81: Line 79:
* [[File Modification Time]]
* [[File Modification Time]]
* [[File Rename]]
* [[File Rename]]
* [[Walk Directory Tree]]


==FFI/low-level==
==FFI/low-level==
Line 110: Line 107:
* [[User Input - graphical]]
* [[User Input - graphical]]
* [[Window management]]
* [[Window management]]
* [[Pendulum Animation]]
===Reflective===
===Reflective===
* [[Get Pixel Information]]
* [[Get Pixel Information]]
Line 138: Line 136:
==Use a library==
==Use a library==
* [[Distributed program]]
* [[Distributed program]]
* [[Pattern Matching]]
* [[Play recorded sounds]]
* [[Play recorded sounds]]
===HTTP client===
===HTTP client===
Line 175: Line 172:


==To improve==
==To improve==
* [[Basic bitmap storage#Common Lisp]] - review for efficiency (inlining?), necessity of type declarations, idiom
* [[Basic bitmap storage#Common Lisp]] review for efficiency (inlining?), necessity of type declarations, idiom
* [[Adding variables to a class instance at runtime#Common Lisp]] — This should be a per-*instance* change. Use the MOP to generate a subclass and change-class to it.
* [[Arithmetic Evaluator#Common Lisp]] — I think there could be some simplification by changing to a prefix AST and using the CL operator names (use symbol-function, not eval).
* [[Pattern Matching#Common Lisp]] — See if there's a pattern matching library that offers more-lispy syntax.


==To classify==
==To classify==

Revision as of 01:34, 8 August 2009

This is Kevin Reid's classification of tasks not implemented in Common Lisp, or just poorly done in CL, by what kind of problem they are.

As of 00:13, 8 August 2009. When updating this list, consult the diffs since then for what to add/remove.

Basic language features

Data structures

Algorithms

Algorithmic problems

Miscellaneous programs

Mathematics

Matrices

Integers

Numerics

Concurrency/events

Type system

Object-oriented

Text-bashing

File access

FFI/low-level

OS interfaces

Sockets

Windows

GUI

Reflective

Control flow

Graphics

The image-type tasks

Use a library

HTTP client

Database

SMTP

SOAP

XML

Calendar

OpenGL

Testing

Miscellaneous other

Rosetta Code reflection

To improve

To classify

Insert new tasks here.