یکی از داستان‌های جذاب در تاریخ محاسبات، به رابطه غیرمنتظره بین بافندگی و منطق برمی‌گردد. در قرن نوزدهم، دستگاهی به نام دستگاه بافندگی جاکارد وجود داشت که می‌توانست با استفاده از کارت‌های پانچ شده، الگوهای پیچیده‌ای را بر روی پارچه ببافد.

هر کارت پانچ، حاوی مجموعه‌ای از سوراخ‌ها بود که به دستگاه می‌گفت کدام نخ‌ها را بالا ببرد و کدام‌ها را پایین نگه دارد.


آدا لاولیس، ریاضیدان و نویسنده‌ی بریتانیایی، با مطالعه‌ی دستگاه بافندگی جاکارد، ایده‌ای نوآورانه به ذهنش رسید. او متوجه شد که می‌توان از این دستگاه برای انجام محاسبات پیچیده‌تر استفاده کرد. به جای اینکه کارت‌های پانچ برای کنترل نخ‌ها استفاده شوند، می‌توانستند برای کنترل عملیات ریاضی به کار روند. لاولیس، اولین برنامه‌ی کامپیوتری را برای ماشین تحلیلی چارلز بابج نوشت، که هرگز به طور کامل ساخته نشد. با این حال، ایده‌های او، اساس برنامه‌نویسی مدرن را شکل داد